From: "Martin Povišer" <povik+lin@cutebit.org>
To: "Martin Povišer" <povik+lin@cutebit.org>,
"Vinod Koul" <vkoul@kernel.org>,
"Rob Herring" <robh+dt@kernel.org>,
"Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
"Conor Dooley" <conor+dt@kernel.org>
Cc: asahi@lists.linux.dev, dmaengine@vger.kernel.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH v3 0/2] Apple SIO driver
Date: Fri, 13 Oct 2023 18:49:34 +0200 [thread overview]
Message-ID: <20231013164936.60718-1-povik+lin@cutebit.org> (raw)
Hi,
on v2 of this driver we had discussion over the device_config op not
following the dmaengine spec. I came up with a lazy solution I am
happy with. See sio_device_config for details.
Changes since v2:
https://lore.kernel.org/asahi/CAEg-Je8_f_hZ3VyBg+8tK8uobWNaEqCwp==2JhV6jVpPYXj_Pg@mail.gmail.com/T/#t
- do requested formatting fixes
- fix device_config up to spec in a lazy way
Changes since v1:
https://lore.kernel.org/asahi/20230712133806.4450-1-povik+lin@cutebit.org/T/#t
- move to using virt-dma
- drop redundant cookie field from `sio_tx`
- use DECLARE_BITMAP for `allocated` in sio_tagdata
Original cover letter from v1 follows.
--
Hi all,
see attached a driver for the SIO coprocessor found on recent Apple
SoCs. This coprocessor provides general DMA services, it can feed
many peripherals but so far it seems it will only be useful for
audio output over HDMI/DisplayPort. So the driver here only supports
the DMA_CYCLIC mode of transactions with the focus being on audio.
There's a downstream prototype ALSA driver the DMA driver is being
tested against.
Some of the boilerplate code in implementing the dmaengine interface
was lifted from apple-admac.c. Among other things these two drivers
have in common that they implement the DMA_CYCLIC regime on top of
hardware/coprocessor layer supporting linear transactions only.
The binding schema saw two RFC rounds before and has a reviewed-by
from Rob.
https://lore.kernel.org/asahi/167693643966.613996.10372170526471864080.robh@kernel.org
Best regards,
Martin
Martin Povišer (2):
dt-bindings: dma: apple,sio: Add schema
dmaengine: apple-sio: Add Apple SIO driver
.../devicetree/bindings/dma/apple,sio.yaml | 111 +++
MAINTAINERS | 2 +
drivers/dma/Kconfig | 11 +
drivers/dma/Makefile | 1 +
drivers/dma/apple-sio.c | 907 ++++++++++++++++++
5 files changed, 1032 insertions(+)
create mode 100644 Documentation/devicetree/bindings/dma/apple,sio.yaml
create mode 100644 drivers/dma/apple-sio.c
--
2.38.3
next reply other threads:[~2023-10-13 16:50 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-13 16:49 Martin Povišer [this message]
2023-10-13 16:49 ` [PATCH v3 1/2] dt-bindings: dma: apple,sio: Add schema Martin Povišer
2023-10-13 16:49 ` [PATCH v3 2/2] dmaengine: apple-sio: Add Apple SIO driver Martin Povišer
2023-10-16 7:11 ` Vinod Koul
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20231013164936.60718-1-povik+lin@cutebit.org \
--to=povik+lin@cutebit.org \
--cc=asahi@lists.linux.dev \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dmaengine@vger.kernel.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=robh+dt@kernel.org \
--cc=vkoul@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox