Code: Select all
sudo BRANCH=next rpi-update
We are using device tree overlays to support HAT cards, and to automatically load the required modules.
The hope is that this will avoid some of the issues we are having with conflicting kernel modules (e.g. having to explicitly enable modules you need and blacklist modules you don't need to avoid conflicts). This is a particular problem currently with I2S audio cards.
So, if you have an add-on "HAT" which identifies itself, the firmware will automatically add a device tree overlay for that card which will result in appropriate modules being loaded.
As there are a number of add-on cards that don't support HAT identifcation you can manually choose the device tree overlay. You can see the currently supported overlays in /boot/overlays:
You can manually choose one by adding to the config.txt file a line like:hifiberry-dac-overlay.dtb
hifiberry-dacplus-overlay.dtb
hifiberry-digi-overlay.dtb
iqaudio-dac-overlay.dtb
iqaudio-dacplus-overlay.dtb
Code: Select all
device_tree_overlay=overlays/iqaudio-dac-overlay.dtb
But, for now, testers are welcome to try this "next" firmware. Even if you don't have any HAT cards, then update and report if anything is broken.
If you have a hifiberry or iqaudio card, then it would be good to hear if it works with this firmware.
You shouldn't need to explicitly enable (in /etc/modules) or blacklist (in /etc/modprobe.d/) modules relating to the audio cards, just the device_tree_overlay line in config.txt is enough.
Phil has done most of the work on this scheme, and I'm sure he'll be along if there are any questions.
We will be moving to this scheme (with a 3.17 or 3.18 kernel) on the master branch in the near future, so testing now will be useful.
EDIT: Latest next branch firmware is now using 3.18 kernel.