[Letux-kernel] Letux/Alpha 400: small progress with sound

Paul Boddie paul at boddie.org.uk
Fri Apr 30 00:20:42 CEST 2021


On Thursday, 29 April 2021 09:49:47 CEST H. Nikolaus Schaller wrote:
> 
> Ok, the jz4780 has (at least 99%) the same i2s as the jz4740 which has 95%
> the same as jz4730. This is good since it means I can compare the same
> driver code on both...
> 
> What I have found in the programming manuals of all jz47* is:
> 
> 	Please set this bit to 1 to stop BIT_CLK when change AICFR.AUSEL and
> AICFR.BCKD.
> 
> But I can't find that in the (new) driver. This might explain why the driver
> or devmem2 does not set AUSEL.

It starts to sound like I have to investigate a few different peripherals now. 
:-)

> So my plan was to compare to CI20.
> 
> But it turns out that the CI20 has no sound. We can try to port it from
> FreeBSD:
> 
> 	https://github.com/freebsd/freebsd-src/blob/master/sys/gnu/dts/mips/ingenic
> /jz4780.dtsi
> 
> But it uses the internal codec:
> 
> 		codec: codec at 100200a4 {
> 			compatible = "ingenic,jz4780-codec";
> 			reg = <0x100200a4 0x8>;
> 
> 			clocks = <&cgu JZ4780_CLK_I2SPLL>;
> 			clock-names = "i2s";
> 
> 		};
> 
> for which we have no Linux driver :(

Yes, this is very strange. Although there are device tree nodes in the 3.18 
kernel files, I don't find the corresponding drivers. There is audio support 
in the HDMI driver, but since I use a DVI monitor, I never tried to use the 
audio on the CI20 since the cable won't be passing on any audio signal. But I 
imagine that there must be HDMI audio support because there was some effort to 
get video playback working with a special version of MPlayer, as I recall.

> BTW: there seem to be two i2s instances on jz4780 (at least from DMA and
> IRQ) but there is only one base address.
> 
> Cul-de-sac...

Indeed, I don't see how it could be working unless some kind of generic I2S 
support is clever enough, and the hardware is generic enough, for it all to 
"just work". The documentation isn't very helpful about the audio socket on 
the board, however:

https://www.elinux.org/CI20_Hardware#Audio

Paul




More information about the Letux-kernel mailing list