Wp76xx Kernel Compilation PSA / HowTo

Hi,

I recently (successfully) rebuilt my kernel for my wp7603-1 on a MangOH Red. The documentation is all over the place, so I thought I’d summarize what I did for future travelers (and myself when I forget how I got this all working). I did this to get bluetooth drivers running.

  1. Use leaf to get the appropriate kernel sources. leaf getsrc swi-linux
  2. Go to the newly created swi-linux-src directory in your leaf directory.
  3. Run make build_bin which builds a kernel using some proprietary blobs us laypeople don’t have access to.
  4. Activate the yocto tools by running . ./poky/oe-init-build-env build_bin/. Note: it is extremely important that you specify this pre-existing build directory, otherwise you will end up building a for a qemu target (the MangOH guides are incorrect here).
  5. Configure your kernal as required bitbake linux-quic -c menuconfig. Note: for wp76xx targets the kernel is linux-quic rather than linux-yocto. Also, depending on your configuration this may open another tab/window rather show menuconfig in your current terminal. This took me a while to realize.
  6. Build the kernel bitbake -f linux_quic
  7. Package everything up (I think?) bitbake mdm9x28-image-minimal
  8. Navigate to the output directory cd tmp/deploy/images/swi-mdm9x28-wp
  9. Flash the image swiflash -m wp76xx -i yocto_wp76xx.4k.cwe

Cheers,
Ben

3 Likes

Great work @benzn and good to have you in the community.
Can you point us to item 4 doc so we can fix them asap?

Sure, #5 here: https://github.com/mangOH/mangOH/wiki/Bluetooth-WL18xx-driver-for-mangOH

Thanks … we will be doing a few updates in the next couple of weeks and fix this as well