Hi Nick, On Wed, Mar 19, 2008 at 11:18:20AM -0500, Nick Moszer wrote: > Hello, > > First I would like to thank you guys for your AR6001 patches, very > helpful. I'm trying to get this chip to work over SDIO on a > at91sam9260 dev board and was wondering if I could talk you gentlemen > into a little assistance. > > I took a vanilla 2.6.24 kernel, applied the at91 patches and then > applied the patches (minus the gta02 patch) found at: > http://svn.openmoko.org/developers/sameo/patches/ar6k-atheros-2.0/2.6.24/ I would use atheros_2_0_* the patches from: http://svn.openmoko.org/branches/src/target/kernel/2.6.24.x/patches/
That is if your ar6k chip is running a 2.0.x firmware. Then you would need a couple more things: 1) Add your Atheros compliant SDIO host controller driver, see: http://svn.openmoko.org/branches/src/target/kernel/2.6.24.x/patches/atheros_2_0_hcd.patch for the s3c24xx one 2) You need to enable PNP on your .config. I have a somehow working patch set for the ar6k, working on top of the kernel's SDIO stack. With that patchset you won't need either of those 2 items. I'll upload those patches to my openmoko SVN repo this week (I've been trying to do so for the past 3 weeks, didn't have time yet...) Cheers, Samuel. > Here are some of the .config entries. I tried to the match the relevant > parts to the defconfig at: > http://svn.openmoko.org/branches/src/target/kernel/2.6.24.x/config/defconfig-gta02 > > # > # Networking options > # > CONFIG_PACKET=y > # CONFIG_PACKET_MMAP is not set > CONFIG_UNIX=y > # CONFIG_NET_KEY is not set > CONFIG_INET=y > # CONFIG_IP_MULTICAST is not set > # CONFIG_IP_ADVANCED_ROUTER is not set > CONFIG_IP_FIB_HASH=y > CONFIG_IP_PNP=y > CONFIG_IP_PNP_DHCP=y > # CONFIG_IP_PNP_BOOTP is not set > > > # > # UBI - Unsorted block images > # > # CONFIG_MTD_UBI is not set > # CONFIG_PARPORT is not set > CONFIG_PNP=y > CONFIG_PNP_DEBUG=y > > > # > # SDIO support > # > CONFIG_SDIO=y > CONFIG_SDIO_AR6000_WLAN=y > CONFIG_MMC=y > CONFIG_MMC_DEBUG=y > # CONFIG_MMC_UNSAFE_RESUME is not set > > # > # MMC/SD Card Drivers > # > CONFIG_MMC_BLOCK=y > CONFIG_MMC_BLOCK_BOUNCE=y > # CONFIG_SDIO_UART is not set > > # > # MMC/SD Host Controller Drivers > # > CONFIG_MMC_AT91=y > # CONFIG_MMC_SPI is not set > CONFIG_NEW_LEDS=y > CONFIG_LEDS_CLASS=y > > > The kernel compiles mostly cleanly (a few warnings). When I boot a > open-embedded minimal image and take a look at dmesg, this is what I get > (having MMC debug enabled): > > > mmc0: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0 timing 0 > MMC: Setting controller bus width to 1 > Added MCI driver > mmc0: clock 0Hz busmode 1 powermode 1 cs 0 Vdd 21 width 0 timing 0 > MMC: Setting controller bus width to 1 > mmc0: clock 375000Hz busmode 1 powermode 2 cs 0 Vdd 21 width 0 timing 0 > clkdiv = 132. mcck = 373413 > MMC: Setting controller bus width to 1 > mmc0: clock 375000Hz busmode 1 powermode 2 cs 1 Vdd 21 width 0 timing 0 > clkdiv = 132. mcck = 373413 > MMC: Setting controller bus width to 1 > mmc0: starting CMD0 arg 00000000 flags 000000c0 > Sending command 0 as 00000800, arg = 00000000, blocks = 0, length = 0 > (MR = 00009B84) > MCI irq: status = 0000C3E5, C07F0001, 00000001 > Command ready > Completed command > Status = 0000C3E5 [00000000 00000000 00000000 00000000] > mmc0: req done (CMD0): 0: 00000000 00000000 00000000 00000000 > mmc0: clock 375000Hz busmode 1 powermode 2 cs 0 Vdd 21 width 0 timing 0 > clkdiv = 132. mcck = 373413 > MMC: Setting controller bus width to 1 > mmc0: starting CMD8 arg 000001aa flags 000002f5 > Sending command 8 as 00001848, arg = 000001AA, blocks = 0, length = 0 > (MR = 00009B84) > pnp: the driver 'sdio_wlan' has been registered > MCI irq: status = 0010C3E4, C07F0001, 00100000 > MMC: Response timeout > Completed command > Status = 0010C3E5 [00000000 00000000 00000000 00000000] > Error detected and set to -110 (cmd = 8, retries = 0) > mmc0: req done (CMD8): -110: 00000000 00000000 00000000 00000000 > mmc0: starting CMD5 arg 00000000 flags 000002e1 > Sending command 5 as 00001845, arg = 00000000, blocks = 0, length = 0 > (MR = 00009B84) > MCI irq: status = 0010C3E4, C07F0001, 00100000 > MMC: Response timeout > Completed command > Status = 0010C3E5 [00000000 00000000 00000000 00000000] > Error detected and set to -110 (cmd = 5, retries = 3) > mmc0: req failed (CMD5): -110, retrying... > Sending command 5 as 00001845, arg = 00000000, blocks = 0, length = 0 > (MR = 00009B84) > MCI irq: status = 0010C3E4, C07F0001, 00100000 > MMC: Response timeout > Completed command > Status = 0010C3E5 [00000000 00000000 00000000 00000000] > Error detected and set to -110 (cmd = 5, retries = 2) > mmc0: req failed (CMD5): -110, retrying... > Sending command 5 as 00001845, arg = 00000000, blocks = 0, length = 0 > (MR = 00009B84) > MCI irq: status = 0010C3E4, C07F0001, 00100000 > MMC: Response timeout > Completed command > Status = 0010C3E5 [00000000 00000000 00000000 00000000] > Error detected and set to -110 (cmd = 5, retries = 1) > mmc0: req failed (CMD5): -110, retrying... > Sending command 5 as 00001845, arg = 00000000, blocks = 0, length = 0 > (MR = 00009B84) > MCI irq: status = 0010C3E4, C07F0001, 00100000 > MMC: Response timeout > Completed command > Status = 0010C3E5 [00000000 00000000 00000000 00000000] > Error detected and set to -110 (cmd = 5, retries = 0) > mmc0: req done (CMD5): -110: 00000000 00000000 00000000 00000000 > mmc0: starting CMD55 arg 00000000 flags 000000f5 > Sending command 55 as 00001877, arg = 00000000, blocks = 0, length = 0 > (MR = 00009B84) > MCI irq: status = 0010C3E4, C07F0001, 00100000 > MMC: Response timeout > Completed command > Status = 0010C3E5 [00000000 00000000 00000000 00000000] > Error detected and set to -110 (cmd = 55, retries = 0) > mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000 > mmc0: starting CMD55 arg 00000000 flags 000000f5 > Sending command 55 as 00001877, arg = 00000000, blocks = 0, length = 0 > (MR = 00009B84) > Registered led device: ds5 > MCI irq: status = 0010C3E5, C07F0001, 00100001 > MMC: Response timeout > Completed command > Status = 0010C3E5 [00000000 00000000 00000000 00000000] > Error detected and set to -110 (cmd = 55, retries = 0) > mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000 > mmc0: starting CMD55 arg 00000000 flags 000000f5 > Sending command 55 as 00001877, arg = 00000000, blocks = 0, length = 0 > (MR = 00009B84) > MCI irq: status = 0010C3E4, C07F0001, 00100000 > MMC: Response timeout > Completed command > Status = 0010C3E5 [00000000 00000000 00000000 00000000] > Error detected and set to -110 (cmd = 55, retries = 0) > mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000 > mmc0: starting CMD55 arg 00000000 flags 000000f5 > Sending command 55 as 00001877, arg = 00000000, blocks = 0, length = 0 > (MR = 00009B84) > Registered led device: ds1 > MCI irq: status = 0010C3E5, C07F0001, 00100001 > MMC: Response timeout > Completed command > Status = 0010C3E5 [00000000 00000000 00000000 00000000] > Error detected and set to -110 (cmd = 55, retries = 0) > mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000 > TCP cubic registered > NET: Registered protocol family 1 > NET: Registered protocol family 17 > mmc0: starting CMD1 arg 00000000 flags 000000e1 > Clearing timeout > Clearing: SR = 0000C3E4 > Clearing: SR = 0000C3E4 > Clearing: SR = 0000C3E4 > Clearing: SR = 0000C3E4 > Clearing: SR = 0000C3E4 > Clearing: SR = 0000C3E4 > Clearing: SR = 0000C3E4 > Sending command 1 as 00001841, arg = 00000000, blocks = 0, length = 0 > (MR = 00009B84) > MCI irq: status = 0010C3E4, C07F0001, 00100000 > MMC: Response timeout > Completed command > Status = 0010C3E5 [00000000 00000000 00000000 00000000] > Error detected and set to -110 (cmd = 1, retries = 0) > mmc0: req done (CMD1): -110: 00000000 00000000 00000000 00000000 > RPC: Registered udp transport module. > RPC: Registered tcp transport module. > mmc0: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0 timing 0 > MMC: Setting controller bus width to 1 > > > > doing a quick cat of /proc/devices shows > > Character devices: > 1 mem > 2 pty > 3 ttyp > 4 /dev/vc/0 > 4 tty > 4 ttyS > 5 /dev/tty > 5 /dev/console > 5 /dev/ptmx > 7 vcs > 10 misc > 13 input > 89 i2c > 90 mtd > 128 ptm > 136 pts > 153 spi > > Block devices: > 1 ramdisk > 7 loop > 8 sd > 31 mtdblock > 65 sd > 66 sd > 67 sd > 68 sd > 69 sd > 70 sd > 71 sd > 128 sd > 129 sd > 130 sd > 131 sd > 132 sd > 133 sd > 134 sd > 135 sd > 179 mmc > > I don't think it's in there?? I do have an entry in sysfs > (sys/class/mmc_host/mmc0....) > A regular SD flash card works just fine on the board, but AR6k wifi > cards obviously do not. > > Does anyone have an idea what is wrong with my current setup? > > Thanks! > > > > > > -- > > * > Nick Moszer > Research Engineer > Packet Digital, LLC > 201 N 5th Street, Suite 1500 > Fargo, ND 58102 > 701.365.4392 > > > This message may contain confidential and privileged information. It is > intended only for the use of the addressee, or any authorized agent of > the addressee. Any unauthorized use, distribution or copying of this > information is strictly prohibited and may be unlawful. If you have > received this communication in error, please notify the sender by > replying immediately and destroy the original message and all > attachments from your electronic files.* >
