I am developing a device based on the beaglebone, using the Angstrom distribution, that needs both CAN and WiFi. I am using my own CAN hardware (i.e. not using a cape with eeprom) and have successfully modified ‘board-am335xevm.c’ to enable CAN in the absence of a cape, rebuilt the kernel, and am able to use CAN as desired.
After spending a lot of time messing with WiFi, I found I was only able to get it to work (reliably in both client and AP modes) by updating the rfkill kernel module (opkg install kernel-module-rfkill - this was required because for some reason the wifi was soft-blocked by rfkill and could not be unblocked with the older version of this module). Unfortunately this module requires version 3.2.30 of the kernel and so automatically updated uImage to the newer version - thus nuking my CAN hack residing in the older uImage. So while I could now use WiFi as desired, I could no longer use CAN.
My original kernel source files were version 3.2.23. After rerunning the entire angstrom environment setup/build last night I ended up with 3.2.28 - so closer to 3.2.30, but not quite there.
So my question is: how can I update my kernel source files to 3.2.30 (or in general, to the latest that any packages will be dependent on) so I can use the latest packages without my custom kernel image needing to be upgraded?
Any help would be much appreciated.