-
-
Notifications
You must be signed in to change notification settings - Fork 497
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DietPi-Config | Odroid C2: Support for HiFi Shields with mainline kernel #5235
Comments
Many thanks for your report. I feared that with the new mainline kernel image the required modules have changed. The same should be true for the modprobe aml_i2c snd-soc-pcm512x snd-soc-pcm512x-i2c snd-soc-odroid-dac2 Fails the same way, probably not for We need to check which ones are required, or whether it is actually required to manually load any kernel driver. Can you try to proceed by using the "Change command" option from the error prompt and replace everything with a single colon Also, is the DAC/shield probably listed in the "Auto detection" section already? |
Also, regarding another topic, can you please paste the output of: cat /proc/interrupts |
|
Okay great, so another obsolete step we could remove on mainline kernel images when selecting "usb-dac" as sound card: ad6dbde What about the other questions? |
--> it changes the sounf card -> but there is still no sound |
Can you show: aplay -l And check whether in |
alsa-mixer does not start with --> odroid-hifishield-plus |
when i try an USB-DAC it works... |
Okay, so what is shown above seems to be the onboard sound card. Would be also interesting whether this works OOTB. On Odroid N2 it was quite complicated to configure it: b575b52#diff-e1f2e63b74209db8768bc28025d8727d20f2a2fa96ef44a0db7991724abeb507R2089 Btw, USB DACs usually work OOTB since the generic kernel driver works, at least with all basic functionality. The HiFi Shield Plus is connected via I2S header. So the header itself needs to work and probably a driver is required. The official instructions refer to the legacy kernel only (which is so old that it cannot be used with recent distro versions): https://wiki.odroid.com/accessory/sound/hifi_shield The driver sources are here, but it surely won't work with mainline Linux. I will ask at the Armbian forum whether someone knows whether/how to get the Odroid HiFi shields working. I would have tried to contact Hardkernel as well, but HiFi Shield Plus is for C1/C2 with are both EOL. A pain that SBC manufacturers (probably forced by SoC manufacturers, like Amlogic here) maintain their own, often single Linux version with drivers instead of working on support for mainline Linux. This single kernel version is then unusable after some years, so that the SBC cannot be maintained anymore with full features... |
By the way - the sound card works fine with VOLUMIO - but may have the former LINUX kernel used |
Jep, Volumio uses the legacy Hardkernel kernel. For audio only this is fine, for other network and server tasks, Docker and other things, it's not really usable anymore. Okay, so I2S (the header/pins) in general and the Odroid HiFi Shields are something to check back on the Armbian forum. Until then, I'm afraid you either need to keep using onboard audio or USB DAC, or use Volumio. |
the odroid-sound-card works also with the HARDKERNEL - Ubuntu MATE 20.04 desktop image By the way is there a possibility to get the latest 7.x revision for ODROID C2 |
All Hardkernel provided images use the legacy Hardkernel kernel, so yes it is supposed to work there.
Do you mean a PCB (hardware) revision or DietPi version? The first of course cannot be upgraded, if you mean the second: The DietPi version is not tied to the kernel/firmware stack. We intentionally replaced the legacy kernel image since it does not work anymore with several software implementations and system parts which expect newer Linux features to be present, so we do not offer an image with the old kernel anymore. You can however create one yourself, starting with the Buster image provided by Meveric: https://oph.mdrjr.net/meveric/images/Buster/ |
- DietPi-Config | Do not list Odroid C2 HiFi Should sound cards on mainline kernel image, but only when the related kernel module is actually available: #5235 - DietPi-Config | Fix H3 3.5mm sound card selection, but whether it is selectable like that on mainline kernel images needs to be tested as well (ToDo) - DietPi-Set_hardware | When toggling Bluetooth, check whether related services are actually available before trying to enable/disable them
I disabled the HiFi Shield sound card selection for now, when the related kernel modules are not available: ac45a2d On FriendlyARM SBCs (NanoPi), I2S indeed needs to be enabled via (custom) device tree overlay first. I can imagine that it is the same for Odroid C2: https://forum.armbian.com/topic/9009-info-friendlyarm-pcm5102a-hat-with-nanopi-neo-under-mainline-4xx-and-dev-5xx/ Need to ask at the Armbian forum: https://forum.armbian.com/topic/8761-odroid-c2-general/page/2/#comment-125553 As a first step, could you check whether an I2S device is generally available in the tree and whether its enabled or not? for i in /proc/device-tree/soc/*i2s*
do
[[ -d $i ]] || continue
echo -n "${i}: "
cat "$i/status"
echo
done |
Sorry I have some issues with the starting behavior of DIETPI after version 8. When I start your code - there is NO echo. |
I am sorry, could not create a working BUSTER image with the link you have provided. |
What do you mean with "issue" and "string behaviour"? Our current Odroid C2 image did never support the HiFi Shields out of the box, but I2S needs to be enabled first. This is independent of the DietPi version but a question of the kernel version only. Hmm, when there is no I2S at all in the device tree, then we indeed have an issue. Does the following return something? for i in /proc/device-tree/__symbols__/*i2s*
do
[[ -e $i ]] || continue
echo -n "${i}: "
cat "$i"
echo
done |
Creating a bug report/issue
Required Information
Additional Information (if applicable)
Steps to reproduce
Expected behaviour
Actual behaviour
Extra details
The text was updated successfully, but these errors were encountered: