PCMCIA on an MPC860

3 messages, 3 authors, 2002-08-23 · open the first message on its own page

PCMCIA on an MPC860

From: Alex Zeffertt <hidden>
Date: 2002-08-22 12:34:09

All,

Has anybody had any luck getting PCMCIA to work on an MPC860?

I have a custom MPC860 board, with a single PCMCIA socket connected to Slot B.  This is what I have
so far done:

1.
Downloaded pcmcia-cs-3.2.0.tar.gz
2.
Added board specific definitions in modules/m8xx_pcmcia.c for
		hardware_enable()
		hardware_disable()
		voltage_set()
		socket_get()
3.
Cross compiled for the 8xx.
4.
In my kernel (linux-2.4.4-2001-11-24 from Denx) I added the following lines
		include/asm-ppc/<board>.h:
			/* define IO_BASE for pcmcia */
			#define _IO_BASE 0x80000000
			#define _IO_BASE_SIZE (1024*64)
		arch/ppc/mm/init.c:
			void __init MMU_init(void) {
			...
			ioremap(_IO_BASE,_IO_BASE_SIZE);


	...as suggested by Magnus Damm in
	http://lists.linuxppc.org/linuxppc-embedded/200005/msg00227.html


HOWEVER,

5. 	When I boot my board with a Flash card in the PCMCIA slot, and I run:
	/etc/rc.d/rc.pcmcia start
	I find that ide_cs.o causes an Oops when it calls ide_register().  "cardctl status"
	and "cardctl ident" work though.


Can anybody suggest what I'm doing wrong?

Thanks in advance,

Alex


** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

Re: PCMCIA on an MPC860

From: Steven Scholz <hidden>
Date: 2002-08-23 08:09:36

Alex,

actually I had the Card Service running on MPC855/860 systems with Ethernet,
WaveLAN and ATA Cards.

It's a while back so I try to remember realy hard now!

I had this problem too.

1.) Did you try another PC Card, i.e. ethernet?
2.) How are your settings for IDE in your kernel configuration?
3.) I think I remember that I had to change something about the request_irq /
request_8xxirq.
    I think the oops comes because the driver can't request the irq!!!

Could you please show us you're oops!?

Steven


Alex Zeffertt wrote:
All,

Has anybody had any luck getting PCMCIA to work on an MPC860?

I have a custom MPC860 board, with a single PCMCIA socket connected to Slot B.  This is what I have
so far done:

1.
Downloaded pcmcia-cs-3.2.0.tar.gz
2.
Added board specific definitions in modules/m8xx_pcmcia.c for
                hardware_enable()
                hardware_disable()
                voltage_set()
                socket_get()
3.
Cross compiled for the 8xx.
4.
In my kernel (linux-2.4.4-2001-11-24 from Denx) I added the following lines
                include/asm-ppc/<board>.h:
                        /* define IO_BASE for pcmcia */
                        #define _IO_BASE 0x80000000
                        #define _IO_BASE_SIZE (1024*64)
                arch/ppc/mm/init.c:
                        void __init MMU_init(void) {
                        ...
                        ioremap(_IO_BASE,_IO_BASE_SIZE);

        ...as suggested by Magnus Damm in
        http://lists.linuxppc.org/linuxppc-embedded/200005/msg00227.html

HOWEVER,

5.      When I boot my board with a Flash card in the PCMCIA slot, and I run:
        /etc/rc.d/rc.pcmcia start
        I find that ide_cs.o causes an Oops when it calls ide_register().  "cardctl status"
        and "cardctl ident" work though.

Can anybody suggest what I'm doing wrong?

Thanks in advance,

Alex
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

Re: PCMCIA on an MPC860

From: Magnus Damm <hidden>
Date: 2002-08-23 09:32:20

I've not used the driver together with a 2.4 kernel,
so I'm not sure how well modules from pcmcia-cs plays
with pcmcia stuff in the kernel.

Linux-2.4.19 has a version of the driver that
Matthew Locke modified and bugfixed. Maybe that one
works better with 2.4 kernels.

What happens if you decode the OOPS?

To get symbols, use the file System.map from
the kernel together with the map generated by
"insmod -m".
Or use /proc/ksysms from the running system.

"cardctl ident" and "cardctl status" only reads
the CIS and checks the pin status. (Correct me
if I remember wrong).

I think it will be the ide-driver that starts
accessing the IO-space. Maybe that doesn't work.

/ Magnus

Alex Zeffertt wrote:
All,

Has anybody had any luck getting PCMCIA to work on an MPC860?

I have a custom MPC860 board, with a single PCMCIA socket connected to Slot B.  This is what I have
so far done:

1.
Downloaded pcmcia-cs-3.2.0.tar.gz
2.
Added board specific definitions in modules/m8xx_pcmcia.c for
                hardware_enable()
                hardware_disable()
                voltage_set()
                socket_get()
3.
Cross compiled for the 8xx.
4.
In my kernel (linux-2.4.4-2001-11-24 from Denx) I added the following lines
                include/asm-ppc/<board>.h:
                        /* define IO_BASE for pcmcia */
                        #define _IO_BASE 0x80000000
                        #define _IO_BASE_SIZE (1024*64)
                arch/ppc/mm/init.c:
                        void __init MMU_init(void) {
                        ...
                        ioremap(_IO_BASE,_IO_BASE_SIZE);

        ...as suggested by Magnus Damm in
        http://lists.linuxppc.org/linuxppc-embedded/200005/msg00227.html

HOWEVER,

5.      When I boot my board with a Flash card in the PCMCIA slot, and I run:
        /etc/rc.d/rc.pcmcia start
        I find that ide_cs.o causes an Oops when it calls ide_register().  "cardctl status"
        and "cardctl ident" work though.

Can anybody suggest what I'm doing wrong?

Thanks in advance,

Alex
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help