[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAGb2v67Trz_Dtp5_ME3MnfwBjtp=DwPN4aJ1vrtizgiUn08_3w@mail.gmail.com>
Date: Mon, 28 Apr 2025 16:37:31 +0800
From: Chen-Yu Tsai <wens@...e.org>
To: J. Neuschäfer <j.ne@...teo.net>
Cc: Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>, Jernej Skrabec <jernej.skrabec@...il.com>,
Samuel Holland <samuel@...lland.org>, devicetree@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-sunxi@...ts.linux.dev,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] ARM: dts: allwinner: orangepi-zero: Enable audio codec
On Mon, Apr 28, 2025 at 3:26 PM J. Neuschäfer <j.ne@...teo.net> wrote:
>
> On Sun, Apr 27, 2025 at 01:28:58PM +0800, Chen-Yu Tsai wrote:
> > On Fri, Apr 18, 2025 at 7:32 AM J. Neuschäfer via B4 Relay
> > <devnull+j.ne.posteo.net@...nel.org> wrote:
> > >
> > > From: "J. Neuschäfer" <j.ne@...teo.net>
> > >
> > > Line out playback and microphone capture work, after enabling the
> > > corresponding ALSA controls. Tested with the Orange Pi Zero interface
> > > board, which is a (mostly) passive adapter from the 13-pin header to
> > > standard connectors (2x USB A, 1x Audio/Video output, 1x built-in
> > > microphone).
> > >
> > > https://orangepi.com/index.php?route=product/product&product_id=871
> >
> > What about the USB ports?
>
> Good point, I could test these. I have not mentioned them because they
> are not related to audio.
>
> > In any case, we don't enable peripherals on "headers" by default. That's
> > up to the end user. The description for the whole adapter board could be
> > an overlay that users can then apply directly.
>
> For features such as pinmuxed UARTs (already present and disabled in the
> dts), I fully agree, because they could as well be used as GPIO, and
> that's for the user to decide.
>
> For the audio pins, there's nothing else one can do with them, as far as
> I understand it. It is possible to use at the least the Line Out pins
> with very minimal setup, e.g. just connecting the pins to headphones or
> something else.
Sure, but you are also adding the routing information, which could be
different if someone designs a different adapter board. One could
include GPIOs and I2C from the 26-pin header, and make a headset
adapter (mic on the TRRS instead of tv-out) with a headphone amp
and headset detection IC.
It's easily overridable, and I suppose providing the basic use-case
that one can directly use via the pins does have value. Instead of
doing a lot of editing, the user can just toggle the status via
the bootloader.
> I'll clarify the following points in a comment in the next version:
>
> - The audio signals are exposed on the 1x13 header described in
> https://linux-sunxi.org/Xunlong_Orange_Pi_Zero
>
> - The pins can't be used for anything else according to section
> 3.1. Pin Characteristics of the Allwinner H3 Datasheet.
>
> Although I would prefer to enable the audio pins by default (because
> they are present on the Orange Pi Zero board), I would also be ok with
> adding them as status = "disabled", as is the case with uart1 and uart2.
> Please let me know your opinion.
I think it's better to have them disabled by default. We don't want to
confuse users that don't have the adapter board, who might end up looking
at their audio mixer and wondering where the line out is.
If they have the adapter, or they are explicitly using wires to hook up
things, then they can toggle the status. If they have something else,
then they load whatever overlay that matches their hardware.
Thanks
ChenYu
> I will test the USB ports and write a devicetree overlay at
> arch/arm/boot/dts/allwinner/orangepi-zero-interface-board.dtso
>
>
> Best regards,
> J. Neuschäfer
>
Powered by blists - more mailing lists