I'm not exactly sure where Gentoo sits with Raspberry Pi compatibility, but best of luck!
If you take a look at ArchLinux and, more specifically Debian's documentation on using aarch64
/amd64
, you may find some hints.
Michael Stapelberg has some notes, and there is the Debian Raspberry Pi 3 Wiki that helps explain some of the new architecture, including how to get WiFi working. The current image comes with WiFi, so you'll have to look at instructions for images prior to the 2018 one.
I know that you're on Gentoo, but I'm curious if you could follow a similar set of instructions, which is to compile this module, and provide a missing .txt
file (/lib/firmware/brcm/brcmfmac43430-sdio.txt
).
The steps are documented here but consist of:
- Compiling your kernel with the Broadcom drivers
- Providing the missing
.txt
file:/lib/firmware/brcm/brcmfmac43430-sdio.txt
- This paste is the current version as of June, 2018.
- This is sourced from Raspbian
firmware-brcm80211*.deb
, so grabbing it from here is a 'better' way of getting the latest version.
You mention that you've had it working previously. I'm curious if the .txt
is missing when you re-compile, incompatible, or if you've compared the files generated by you build to the original.
As for your question around UART, yes, UART, WiFi and Bluetooth are all tied together. This issue discusses some of the limitations and user findings. On my Raspberry Pi that I use GPIO UART, I have disabled Bluetooth and have added core_freq=250
in /boot/config.txt
. You'll want to read more information and updates about this, which will point you at the .dts
documentation.
I'm not entirely sure what you're doing, but notro's fbtft_tools is a great example of a module that was brought into the mainline Raspberry Pi kernel, showing how to build a new module and how things surrounding that work.