On Fri, Mar 14, 2003 at 01:34:28PM -0800, Pete Popov wrote: > Yep, I had to do that way back then when I got the same sort of setup > working. Good job figuring that out :) > > Just to confirm, this setup works with the current linux-mips.org plus > the above info? No other patches are required, correct? > > I think I'll start an Alchemy/AMD FAQ or something in my directory and > put this information there. Thanks! The patches that I'm using: Pete's 36bit_addr_2.4.21-pre4.patch Pete's 64bit_pcmcia.patch Additionally, I had to apply the patch to include/asm-mips/io.h in order to get the hermes/orinoco drivers to compile. (I posted this patch earlier, and someone suggested that the SLOW_DOWN_IO; call was not necessary). Find it below. I have some other patches applied; they should not affect PCMCIA. I'll check out clean source and patch it with this bare minimum, and let you know if something else is required. Thanks, Pete -- a FAQ about your patches will really help people who are starting out on the Alchemy platform. Regards, Jeff Index: io.h =================================================================== RCS file: /home/cvs/linux/include/asm-mips/io.h,v retrieving revision 1.29.2.20 diff -u -r1.29.2.20 io.h --- io.h 25 Feb 2003 22:03:12 -0000 1.29.2.20 +++ io.h 14 Mar 2003 21:50:14 -0000 @@ -332,12 +332,25 @@ SLOW_DOWN_IO; \ } while(0) ° -#define outw_p(val,port) \ -do { \ - *(volatile u16 *)(mips_io_port_base + __swizzle_addr_w(port)) = \ - __ioswab16(val); \ - SLOW_DOWN_IO; \ -} while(0) +/* baitisj */ +static inline u16 outw_p(u16 val, unsigned long port) +{ + register u16 retval; + do { + retval = *(volatile u16 *)(mips_io_port_base + __swizzle_addr_w(port)) = + __ioswab16(val); + SLOW_DOWN_IO; + } while(0); + return retval; +} +/*°° + * #define outw_p(val,port) \ + * do { \ + * *(volatile u16 *)(mips_io_port_base + __swizzle_addr_w(port)) = \ + * __ioswab16(val); \ + * SLOW_DOWN_IO; \ + * } while(0) + */ ° #define outl_p(val,port) \ do { \ > On Fri, 2003-03-14 at 12:23, Jeff Baitis wrote: > > Everyone: > > > > Thank you very much for helping this green hand get up to speed on the MIPS > > platform. I have successfully configured card services to work with the > > current linux_2_4 CVS, in conjunction with a TI PCI1510 PCI->CardBus bridge. > > > > There are a few card services options that you will need, in order to replicate > > my work: > > > > 1. The pcmcia_core cis_speed needs to be set to a fairly low value. > > I have successfully used `modprobe pcmcia_core cis_speed=10` and > > `modprobe pcmcia_core cis_speed=1.` > > > > 2. The PCMCIA memory window must map into the memory window assigned > > by the PCI device autoconfiguration. Since my `lspci -v` shows: > > > > 00:0d.0 CardBus bridge: Texas Instruments: Unknown device ac56 > > Subsystem: Unknown device 5678:1234 > > Flags: bus master, medium devsel, latency 168, IRQ 1 > > Memory at 40000000 (32-bit, non-prefetchable) [size=4K] > > Bus: primary=00, secondary=05, subordinate=00, sec-latency=176 > > Memory window 0: 40001000-40002000 (prefetchable) > > Memory window 1: 40400000-407ff000 > > I/O window 0: 00004000-000040ff > > I/O window 1: 00004400-000044ff > > 16-bit legacy interface ports at 0001 > > > > I configured /etc/pcmcia/config.opts as follows: > > > > # > > # Local PCMCIA Configuration File > > # > > #---------------------------------------------------------------------- > > > > # System resources available for PCMCIA devices > > # remember to modprobe pcmcia_core cis_speed=10 > > > > include port 0x100-0x4ff, port 0xc00-0xcff > > include memory 0x40000000-0x40ffffff > > > > #-------------------------- eof > > > Pete > > > -- Jeffrey Baitis - Associate Software Engineer Evolution Robotics, Inc. 130 West Union Street Pasadena CA 91103 tel: 626.535.2776 | fax: 626.535.2777 | baitisj@evolution.com