1
Deals and Great Z Buys / Sell Poodle 5600+wlan+cfu1
« on: November 15, 2006, 01:57:59 pm »
Item no 140053257876,140053262922,140053260861.
cheers
cheers
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
You're not using liquid as a style or are you?
[div align=\"right\"][a href=\"index.php?act=findpost&pid=103063\"][{POST_SNAPBACK}][/a][/div]
Ah, sorry, I mis-understood.
So you have OE setup and working fine? Have you built something to test that it's working okay (try 'bitbake virtual/kernel')
Now you want to build the kernel modules & build the cfu1 driver I take it?
Si
[div align=\"right\"][a href=\"index.php?act=findpost&pid=103480\"][{POST_SNAPBACK}][/a][/div]
I'm glad you've got it sorted - you don't need to post an entire 'ROM', just the ipks for the kernel modules will be enough for others to install and use.No it's not sorted out, I just need the other steps that you were talking about.
Si
[div align=\"right\"][a href=\"index.php?act=findpost&pid=103434\"][{POST_SNAPBACK}][/a][/div]
Get OE setup (see http://openembedded.org -> wiki -> GettingStarted), then I'll run you through it,
Si
[div align=\"right\"][a href=\"index.php?act=findpost&pid=96291\"][{POST_SNAPBACK}][/a][/div]
Copied/Pasted from another topic about this (although that topic seems to be quite dead)
Well, first of all, those truncated LTV records are consistent with what I'm seeing. I can also run wellenreiter without problem, but lock up the moment I touch the opie network app or iwconfig
my MAC is also scrambled, but some of the octets are recognizable. But all of our addresses here SHOULD be starting with 00, and they're not. So something is definitely borken
Now let's have a look at this dmesg log, specifically the names of the RIDs that are failing
STAIdentity (I'm betting the firmware revision is NOT 18-thousand some odd number, just a hunch)
hermes @ IO 0xf6000000: Truncating LTV record from 129544 to 8 bytes. (rid=0xfd20, len=0xfd05)
eth0: Station identity 0002:0001:4920:2000
eth0: Looks like a Lucent/Agere firmware version 18720.8192
eth0: Ad-hoc demo mode supported
eth0: IEEE standard IBSS ad-hoc mode supported
eth0: WEP supported, 104-bit key
cnfOwnMACAddress (note this is where the MAC is failing)
hermes @ IO 0xf6000000: hermes_read_ltv(): rid (0xfc01) does not match type (0x5e00)
hermes @ IO 0xf6000000: Truncating LTV record from 129030 to 6 bytes. (rid=0xfc01, len=0xfc04)
eth0: MAC address 14:1C:01:00:20:49
cnfOwnName (not really sure what this value should be, but chances are "m I" is going to end up being wrong. Quick google shows me this is probably trying to set "Prism I")
hermes @ IO 0xf6000000: hermes_read_ltv(): rid (0xfc0e) does not match type (0x7200)
hermes @ IO 0xf6000000: Truncating LTV record from 129058 to 34 bytes. (rid=0xfc0e, len=0xfc12)
eth0: Station name "m I"
ChannelList
hermes @ IO 0xf6000000: hermes_read_ltv(): rid (0xfd10) does not match type (0x72ff)
hermes @ IO 0xf6000000: Truncating LTV record from 129538 to 2 bytes. (rid=0xfd10, len=0xfd02)
cnfSystemScale
hermes @ IO 0xf6000000: hermes_read_ltv(): rid (0xfc06) does not match type (0x72ff)
hermes @ IO 0xf6000000: Truncating LTV record from 129022 to 2 bytes. (rid=0xfc06, len=0xfc00)
RTSThreshold
hermes @ IO 0xf6000000: hermes_read_ltv(): rid (0xfc83) does not match type (0x722b)
hermes @ IO 0xf6000000: Truncating LTV record from 129026 to 2 bytes. (rid=0xfc83, len=0xfc02)
cnfDefaultKey1
hermes @ IO 0xf6000000: hermes_read_ltv(): rid (0xfc25) does not match type (0x722b)
hermes @ IO 0xf6000000: Truncating LTV record from 129022 to 2 bytes. (rid=0xfc25, len=0xfc00)
cnfMaxSleepDuration
hermes @ IO 0xf6000000: hermes_read_ltv(): rid (0xfc0c) does not match type (0x7264)
hermes @ IO 0xf6000000: Truncating LTV record from 129026 to 2 bytes. (rid=0xfc0c, len=0xfc02)
cnfPMHoldoverDuration
hermes @ IO 0xf6000000: hermes_read_ltv(): rid (0xfc0d) does not match type (0x7264)
hermes @ IO 0xf6000000: Truncating LTV record from 129026 to 2 bytes. (rid=0xfc0d, len=0xfc02)
eth0: ready
eth0: index 0x01: Vcc 3.3, irq 39, io 0xf6000000-0xf6000047
I also doubt each of these messages is supposed to be in excess of 128k.
I'm no kernel debugger here, but let's take a look at the MAC address record, for one:
hermes @ IO 0xf6000000: Truncating LTV record from 129030 to 6 bytes.
That makes sense. A MAC address should be 6 bytes long, not 129030. So it appears that we are doing the correct thing by truncating these records, but what we need to find out is why these records are over one hundred thousand bytes long to begin with.
Now, it appears that hermes.c defines the hermes_read_ltv function, which is called by orinoco.c - so that PROBABLY means that orinoco.c is doing Something Wrong or is being passed bad data from spectrum_cs.
It might be worthwhile checking what paramaters we can pass to these modules at load time, but gut feeling here is that these modules will need to be recompiled.
EDIT:
Looking at the following:QuoteThe other weird part is the mis-interpretation of the MAC address, it is really:We see that it seems to be getting the last 2 bytes of the MAC correct, but setting them as the FIRST two bytes in software (the rest is probably junk data).
MAC 00 A0 F8 5E 14 1C
instead of the
MAC address 14:1C:01:00:02:88 that is shows above
Also noticing that in the cnfOwnName record, it's getting the last three bytes ("m I") correct. Presumably, it's getting the last four, since the fourth would be a null terminator - which is why we probably don't see any junk data after the "I".
I'm not really sure what this tells us about the driver itself, but it's possible that memory addresses are being shifted/transposed here, which may also have something to do with the length of these LTV records being horribly, horribly WRONG (ie. the variable that stores the record length isn't pointing at record length data).
[div align=\"right\"][a href=\"index.php?act=findpost&pid=96335\"][{POST_SNAPBACK}][/a][/div]
You'll need to modify your defconfig file (called defconfig-poodle in packages/linux/openzaurus-pxa_2.4.18-rmk7-pxa3-embedix20031107 I think) to add the appropriate lines - see my shepherd patch, then patch the kernel (see below) re-build the kernel so that usbcore is built.QuoteMessage: 1
Date: Fri, 11 Feb 2005 15:59:14 -0000
From: Simon Pickering <S.G.Pickering@bath.ac.uk>
Subject: [Oe] Proposed patch to enable usbcore.o (and other usb)
module build
To: oe@handhelds.org
Message-ID: <200502111601.aa27442@bath.ac.uk>
Content-Type: text/plain; charset="us-ascii"
I submitted the driver for the REX-cfu1 usb host CF card earlier today. It needs the usbcore.o module to run.
I have modified the defconfig-shepherd (via make menuconfig) to produce some USB related modules (I just went through and clicked on anything that looked interesting). The patch is here:
http://students.bath.ac.uk/enpsgp/Zaurus/d...g-shepherd.diff
The kernel also needs a patch to remove an ifneq check I'd guess comes directly from the Sharp code, otherwise usbcore.o isn't built.
Lines 45-47 of drivers/usb/Makefile are as follows:
ifneq ($(CONFIG_ARCH_SHARP_SL),y)
obj-$(CONFIG_USB)Â += usbcore.o
endif
To make usbcore build I simply removed the ifneq/endif from around the middle line.
Patch here: http://students.bath.ac.uk/enpsgp/Zaurus/e...e-usbcore.patch
I don't know why this ifneq is in there, and hopefully this patch won't break anything (the kernel and modules all built correctly, but I've only tested the usbcore.o module).
Cheers,
Si
You'll also need to build cfu1 for your kernel/machine combo. This is in OE:QuoteMessage: 5[div align=\"right\"][a href=\"index.php?act=findpost&pid=96019\"][{POST_SNAPBACK}][/a][/div]
Date: Fri, 11 Feb 2005 11:21:44 -0000
From: Simon Pickering <S.G.Pickering@bath.ac.uk>
Subject: [Oe] cfu1-driver (ratoc CF usb host card driver)
To: oe@handhelds.org
Message-ID: <200502111123.aa26043@bath.ac.uk>
Content-Type: text/plain; charset="us-ascii"
Builds, and works fine on my Shepherd.
http://students.bath.ac.uk/enpsgp/Zaurus/cfu1-driver.tar.gz
Requires usbcore.o (kernel-module-usbcore) to run (this is in the bb as an RDEPENDS), defconfig patch and kernel patch to follow to create this module as part of openzaurus-pxa_2.4.18-rmk7-pxa3-embedix20031107.bb
Cheers,
Si
usbcore and usbdcore are different things - usbdcore is what allows ethernet over usb iirc.
You probably need to modify the defconfig for your machine to enable usb (you may also need a minor patch - I sent the defconfig and patch for the Shepherd to the OE mailing list a long time agao, that should get you started looking in the right place).
Si
[div align=\"right\"][a href=\"index.php?act=findpost&pid=95943\"][{POST_SNAPBACK}][/a][/div]
You have to set the write permissions for the card in fstab,
Si
[div align=\"right\"][a href=\"index.php?act=findpost&pid=95305\"][{POST_SNAPBACK}][/a][/div]