We have a custom board with A64. For audio there is only an amplifier connected to LINEOUT. There is no headphone jack and the HP-DET pin is floating. I enabled the sound device in the device tree and card0 shows up. Tools like aplay show that a sound is being played back but there is no sound. I am suspecting that there is something amiss with the audio routing. The dts is including the sun50i-a64.dtsi. These are the device tree nodes in the board's dts:
&sound {
simple-audio-card,aux-devs = <&codec_analog>, <&speaker_amp>;
simple-audio-card,widgets = "Speaker", "Internal Speaker";
simple-audio-card,routing =
"Left DAC", "DACL",
"Right DAC", "DACR",
"Speaker Amp INL", "LINEOUT",
"Speaker Amp INR", "LINEOUT",
"Internal Speaker", "Speaker Amp OUTL",
"Internal Speaker", "Speaker Amp OUTR",
"ADCL", "Left ADC",
"ADCR", "Right ADC";
status = "okay";
};
speaker_amp: audio-amplifier {
compatible = "simple-audio-amplifier";
enable-gpios = <&pio 2 0 GPIO_ACTIVE_HIGH>; /* PC0 AUDIO AMP ENABLE */
sound-name-prefix = "Speaker Amp";
status = "okay";
};
I cannot see anything obvious incorrect with that. I would appreciate your help.