Ian,

Thanks for the extra effort to look into the kernel tree! Not sure why it
wasn't merged but probably because of decreased interests about this SBC.
I guess I will have to choose between modern Fedora and HDMI Audio Armbian,
then.

On a side note, I notice Pine64+ was marked with NIC instablibility on Wiki
for Fedora 35:
https://fedoraproject.org/wiki/Architectures/ARM/Fedora_Linux_35
In my experience it seems to run stable enough to download and finish all
post-launch upgrades. I will try more and update the Wiki accordingly.

Thanks to all who have helped me with this!

Tommy




On Sun, Nov 7, 2021 at 9:21 PM Ian McInerney <[email protected]>
wrote:

> On Fri, Nov 5, 2021 at 3:41 AM Tommy He <[email protected]> wrote:
>
>> Like the content in alsa-ucm package?
>>
>> I checked the corresponding folder(/usr/share/alsa) under Armbian.
>> There's no folder like ucm2/ as on Fedora.
>>
>> Out of curiosity, I checked the kernel build configure for both and may
>> step on the cause:
>>
>> On Fedora with kernel 5.14.14:
>>
>> $ cat /boot/config-5.14.14-300.fc35.aarch64 | grep CONFIG_DRM_SUN4I
>> CONFIG_DRM_SUN4I=m
>> CONFIG_DRM_SUN4I_HDMI=m
>> CONFIG_DRM_SUN4I_HDMI_CEC=y
>> CONFIG_DRM_SUN4I_BACKEND=m
>>
>> While on Armbian with kernel 5.10.16:
>>
>> $ zcat /proc/config.gz | grep CONFIG_DRM_SUN4I
>> CONFIG_DRM_SUN4I=y
>> CONFIG_DRM_SUN4I_HDMI=y*CONFIG_DRM_SUN4I_HDMI_AUDIO=y*
>> CONFIG_DRM_SUN4I_HDMI_CEC=y
>> CONFIG_DRM_SUN4I_BACKEND=y
>>
>> Note it has an extra kernel build configure that is dedicated to HDMI audio.
>> It would be good if I can recompile a fedora kernel with that build 
>> configuration enabled to test. However, I am not sure how to do that on 
>> Aarch64. I only knew how to do it via kernel SRPM on x86_64.
>>
>>
> Armbian runs a heavily patched kernel with many things that aren't in the
> upstream kernel yet, and I think the CONFIG_DRM_SUN4I_HDMI_AUDIO config
> option is one of them that is not in the upstream kernel yet. Looking
> through the kernel tree, they don't have the audio driver for the sun4i
> HDMI device merged (there was a v3 of the patch series proposing it over a
> year ago, but I haven't found anything since). Since it isn't in the
> upstream kernel, you won't have that config option available in a Fedora
> kernel sources.
>
> -Ian
>
>
>> Kind regards,
>>
>> Tommy
>>
>>
>> On Thu, Nov 4, 2021 at 3:48 AM Peter Robinson <[email protected]>
>> wrote:
>>
>>> Does Armbian ship a UCM2 profile for the device that's not upstream?
>>>
>>> On Wed, Nov 3, 2021 at 7:59 AM Tommy He <[email protected]> wrote:
>>> >
>>> > Hello,
>>> >
>>> > My Pine64 has served my daughter well for her online courses during
>>> the pandemic, loaded with Armbian. As someone more into Fedora, I'm always
>>> looking for opportunity to switch on this cheap SBC.
>>> > It hasn't been successful until Fedora 35 XFCE AArch64. With the help
>>> of arm-image-installer, the recent AArch64 booted and runs quite well, with
>>> one exception: no Sound from HDMI port.
>>> > There's audio from 3.5mm jack thus I'm pretty sure the player, codec
>>> and sound server are all right.
>>> >
>>> > I tried to poke around the XFCE sound server widget but it seems HDMI
>>> wasn't recognized as a device under Fedora 35. Below are output from Fedora
>>> running updated kernel 5.14.14:
>>> >
>>> > $ aplay -l
>>> > **** List of PLAYBACK Hardware Devices ****
>>> > card 0: sun50ia64audio [sun50i-a64-audio], device 0:
>>> 1c22c00.dai-sun8i-codec-aif1 sun8i-codec-aif1-0
>>> [1c22c00.dai-sun8i-codec-aif1 sun8i-codec-aif1-0]
>>> >   Subdevices: 1/1
>>> >   Subdevice #0: subdevice #0
>>> >
>>> > $ lsmod
>>> > Module                  Size  Used by
>>> > snd_seq_dummy          16384  0
>>> > snd_hrtimer            20480  1
>>> > nft_fib_inet           16384  1
>>> > nft_fib_ipv4           16384  1 nft_fib_inet
>>> > nft_fib_ipv6           16384  1 nft_fib_inet
>>> > nft_fib                16384  3 nft_fib_ipv6,nft_fib_ipv4,nft_fib_inet
>>> > nft_reject_inet        16384  6
>>> > nf_reject_ipv4         16384  1 nft_reject_inet
>>> > nf_reject_ipv6         20480  1 nft_reject_inet
>>> > nft_reject             16384  1 nft_reject_inet
>>> > nft_ct                 24576  11
>>> > nft_chain_nat          16384  2
>>> > nf_nat                 49152  1 nft_chain_nat
>>> > nf_conntrack          176128  2 nf_nat,nft_ct
>>> > nf_defrag_ipv6         24576  1 nf_conntrack
>>> > nf_defrag_ipv4         16384  1 nf_conntrack
>>> > rfkill                 40960  1
>>> > ip_set                 57344  0
>>> > nf_tables             217088  204
>>> nft_ct,nft_reject_inet,nft_fib_ipv6,nft_fib_ipv4,nft_chain_nat,nft_reject,nft_fib,nft_fib_inet
>>> > nfnetlink              20480  3 nf_tables,ip_set
>>> > qrtr                   28672  4
>>> > ns                     32768  1 qrtr
>>> > sunrpc                626688  1
>>> > vfat                   28672  1
>>> > fat                    94208  1 vfat
>>> > snd_soc_hdmi_codec     24576  0
>>> > dw_hdmi_cec            16384  0
>>> > dw_hdmi_i2s_audio      16384  0
>>> > sun50i_codec_analog    36864  1
>>> > snd_soc_simple_card    24576  2
>>> > sun4i_i2s              24576  2
>>> > snd_soc_simple_card_utils    28672  1 snd_soc_simple_card
>>> > axp20x_adc             20480  0
>>> > sun8i_adda_pr_regmap    16384  1 sun50i_codec_analog
>>> > axp20x_pek             16384  0
>>> > sun8i_codec            49152  1
>>> > snd_soc_core          311296  6
>>> sun4i_i2s,snd_soc_hdmi_codec,sun50i_codec_analog,sun8i_codec,snd_soc_simple_card_utils,snd_soc_simple_card
>>> > snd_compress           32768  1 snd_soc_core
>>> > ac97_bus               16384  1 snd_soc_core
>>> > snd_pcm_dmaengine      20480  1 snd_soc_core
>>> > snd_seq                98304  7 snd_seq_dummy
>>> > snd_seq_device         20480  1 snd_seq
>>> > snd_pcm               143360  6
>>> sun4i_i2s,snd_soc_hdmi_codec,snd_compress,sun8i_codec,snd_soc_core,snd_pcm_dmaengine
>>> > joydev                 32768  0
>>> > sun8i_rotate           28672  0
>>> > sun8i_di               28672  0
>>> > sunxi_cedrus           53248  0
>>> > sun8i_drm_hdmi         24576  0
>>> > v4l2_mem2mem           45056  3 sunxi_cedrus,sun8i_rotate,sun8i_di
>>> > dw_hdmi                53248  2 sun8i_drm_hdmi,dw_hdmi_i2s_audio
>>> > videobuf2_dma_contig    24576  3 sunxi_cedrus,sun8i_rotate,sun8i_di
>>> > videobuf2_memops       20480  1 videobuf2_dma_contig
>>> > snd_timer              45056  3 snd_seq,snd_hrtimer,snd_pcm
>>> > snd                   114688  13
>>> snd_seq,snd_seq_device,snd_soc_hdmi_codec,snd_timer,snd_compress,snd_soc_core,snd_pcm
>>> > videobuf2_v4l2         32768  4
>>> sunxi_cedrus,sun8i_rotate,sun8i_di,v4l2_mem2mem
>>> > soundcore              20480  1 snd
>>> > sun8i_thermal          16384  0
>>> > videobuf2_common       69632  7
>>> sunxi_cedrus,sun8i_rotate,videobuf2_dma_contig,videobuf2_v4l2,sun8i_di,v4l2_mem2mem,videobuf2_memops
>>> > nvmem_sunxi_sid        16384  1
>>> > videodev              278528  6
>>> sunxi_cedrus,sun8i_rotate,videobuf2_v4l2,sun8i_di,videobuf2_common,v4l2_mem2mem
>>> > mc                     65536  5
>>> sunxi_cedrus,videodev,videobuf2_v4l2,videobuf2_common,v4l2_mem2mem
>>> > sun8i_mixer            45056  0
>>> > cpufreq_dt             20480  0
>>> > fuse                  167936  1
>>> > zram                   32768  2
>>> > ip_tables              32768  0
>>> > mmc_block              53248  3
>>> > axp20x_battery         16384  0
>>> > axp20x_ac_power        16384  0
>>> > industrialio           94208  3
>>> axp20x_battery,axp20x_ac_power,axp20x_adc
>>> > axp20x_regulator       49152  6
>>> > pinctrl_axp209         16384  0
>>> > axp20x_rsb             16384  0
>>> > dwmac_sun8i            28672  0
>>> > stmmac_platform        24576  1 dwmac_sun8i
>>> > stmmac                249856  2 dwmac_sun8i,stmmac_platform
>>> > pcs_xpcs               24576  1 stmmac
>>> > phylink                53248  1 stmmac
>>> > crct10dif_ce           20480  1
>>> > lima                   69632  2
>>> > display_connector      20480  0
>>> > sunxi                  24576  0
>>> > ghash_ce               24576  0
>>> > phy_generic            20480  2 sunxi
>>> > sunxi_rsb              24576  1 axp20x_rsb
>>> > musb_hdrc             139264  1 sunxi
>>> > des_generic            16384  0
>>> > libdes                 24576  1 des_generic
>>> > gpu_sched              49152  1 lima
>>> > ohci_platform          16384  0
>>> > mdio_mux               16384  1 dwmac_sun8i
>>> > sunxi_wdt              20480  0
>>> > sun4i_drm              20480  6
>>> > sun4i_frontend         20480  1 sun4i_drm
>>> > i2c_mv64xxx            24576  0
>>> > sun4i_tcon             40960  1 sun4i_drm
>>> > sun8i_tcon_top         20480  3 sun8i_drm_hdmi,sun4i_tcon,sun4i_drm
>>> > drm_kms_helper        294912  8
>>> sun8i_mixer,sun8i_drm_hdmi,sun4i_frontend,sun4i_tcon,sun4i_drm,dw_hdmi
>>> > ohci_hcd               61440  1 ohci_platform
>>> > sunxi_mmc              32768  0
>>> > phy_sun4i_usb          28672  6 sunxi
>>> > udc_core               69632  1 musb_hdrc
>>> > sun8i_ce               49152  0
>>> > syscopyarea            16384  1 drm_kms_helper
>>> > sysfillrect            16384  1 drm_kms_helper
>>> > sysimgblt              16384  1 drm_kms_helper
>>> > fb_sys_fops            20480  1 drm_kms_helper
>>> > cec                    73728  3 drm_kms_helper,dw_hdmi_cec,dw_hdmi
>>> > sun6i_dma              36864  2
>>> > ehci_platform          20480  0
>>> > drm                   634880  15
>>> gpu_sched,sun8i_mixer,drm_kms_helper,display_connector,sun8i_drm_hdmi,lima,sun4i_frontend,sun4i_tcon,sun4i_drm,dw_hdmi
>>> > aes_neon_bs            32768  0
>>> >
>>> >
>>> > In comparison, the aplay and lsmod output from Armbian running
>>> mainline kernel 5.10.16:
>>> >
>>> > $ aplay -l
>>> > **** List of PLAYBACK Hardware Devices ****
>>> > card 0: sun50ia64audio [sun50i-a64-audio], device 0:
>>> 1c22c00.dai-sun8i-codec-aif1 sun8i-codec-aif1-0
>>> [1c22c00.dai-sun8i-codec-aif1 sun8i-codec-aif1-0]
>>> >   Subdevices: 1/1
>>> >   Subdevice #0: subdevice #0
>>> > card 1: sun50ia64hdmi [sun50i-a64-hdmi], device 0:
>>> 1c22800.i2s-i2s-hifi i2s-hifi-0 [1c22800.i2s-i2s-hifi i2s-hifi-0]
>>> >   Subdevices: 1/1
>>> >   Subdevice #0: subdevice #0
>>> >
>>> > $ lsmod
>>> > Module                  Size  Used by
>>> > fuse                  122880  3
>>> > overlay               114688  2
>>> > bnep                   28672  2
>>> > snd_soc_hdmi_codec     20480  1
>>> > axp20x_ac_power        16384  0
>>> > axp20x_battery         16384  0
>>> > hci_uart              126976  0
>>> > axp20x_adc             20480  0
>>> > btqca                  20480  1 hci_uart
>>> > btrtl                  24576  1 hci_uart
>>> > btbcm                  24576  1 hci_uart
>>> > btintel                24576  1 hci_uart
>>> > bluetooth             577536  13
>>> btrtl,btqca,btintel,hci_uart,btbcm,bnep
>>> > ecdh_generic           16384  1 bluetooth
>>> > dw_hdmi_i2s_audio      16384  0
>>> > dw_hdmi_cec            16384  0
>>> > rfkill                 28672  4 bluetooth
>>> > hid_multitouch         28672  0
>>> > ecc                    28672  1 ecdh_generic
>>> > lima                   57344  11
>>> > gpu_sched              32768  1 lima
>>> > joydev                 32768  0
>>> > sun4i_gpadc_iio        24576  0
>>> > industrialio           65536  4
>>> axp20x_battery,sun4i_gpadc_iio,axp20x_ac_power,axp20x_adc
>>> > sun4i_i2s              24576  4
>>> > sunxi_cedrus           40960  0
>>> > videobuf2_dma_contig    24576  1 sunxi_cedrus
>>> > v4l2_mem2mem           36864  1 sunxi_cedrus
>>> > videobuf2_memops       20480  1 videobuf2_dma_contig
>>> > videobuf2_v4l2         24576  2 sunxi_cedrus,v4l2_mem2mem
>>> > videobuf2_common       49152  3
>>> sunxi_cedrus,videobuf2_v4l2,v4l2_mem2mem
>>> > videodev              237568  4
>>> sunxi_cedrus,videobuf2_v4l2,videobuf2_common,v4l2_mem2mem
>>> > mc                     49152  5
>>> sunxi_cedrus,videodev,videobuf2_v4l2,videobuf2_common,v4l2_mem2mem
>>> > display_connector      20480  0
>>> > snd_soc_simple_card    24576  0
>>> > snd_soc_simple_card_utils    24576  1 snd_soc_simple_card
>>> > zram                   32768  2
>>> > cpufreq_dt             20480  0
>>> > sch_fq_codel           24576  2
>>> > pinctrl_axp209         16384  0
>>> > realtek                24576  1
>>> > i2c_mv64xxx            24576  0
>>> > dwmac_sun8i            28672  0
>>> > mdio_mux               16384  1 dwmac_sun8i
>>> >
>>> > Despite snd_soc_hdmi_codec being loaded in both systems, the Fedora 35
>>> lacks the sound subdevice sun50ia64hdmi that presents under Armbian.
>>> >
>>> > I had tried searching Pine64 and Armbian forums for clues. But the
>>> threads showing up are either several years ago on BSP kernel, or trying to
>>> get sound from 3.5mm jack port.
>>> >
>>> > Much appreciated if someone here can point me in the right direction
>>> to further diagnose or solve this problem.
>>> >
>>> > Kind regards,
>>> > Tommy
>>> > --
>>> > Take a Deep Breath out of Windows
>>> > _______________________________________________
>>> > arm mailing list -- [email protected]
>>> > To unsubscribe send an email to [email protected]
>>> > Fedora Code of Conduct:
>>> https://docs.fedoraproject.org/en-US/project/code-of-conduct/
>>> > List Guidelines:
>>> https://fedoraproject.org/wiki/Mailing_list_guidelines
>>> > List Archives:
>>> https://lists.fedoraproject.org/archives/list/[email protected]
>>> > Do not reply to spam on the list, report it:
>>> https://pagure.io/fedora-infrastructure
>>>
>>
>>
>> --
>> Take a Deep Breath out of Windows
>> _______________________________________________
>> arm mailing list -- [email protected]
>> To unsubscribe send an email to [email protected]
>> Fedora Code of Conduct:
>> https://docs.fedoraproject.org/en-US/project/code-of-conduct/
>> List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
>> List Archives:
>> https://lists.fedoraproject.org/archives/list/[email protected]
>> Do not reply to spam on the list, report it:
>> https://pagure.io/fedora-infrastructure
>>
>

-- 
Take a Deep Breath out of Windows
_______________________________________________
arm mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/[email protected]
Do not reply to spam on the list, report it: 
https://pagure.io/fedora-infrastructure

Reply via email to