From: Jernej Skrabec <jernej.skrabec@gmail.com>
To: linux-media@vger.kernel.org
Cc: ezequiel@vanguardiasur.com.ar, nicolas.dufresne@collabora.com,
mchehab@kernel.org, robh+dt@kernel.org, mripard@kernel.org,
wens@csie.org, p.zabel@pengutronix.de, andrzej.p@collabora.com,
gregkh@linuxfoundation.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org,
linux-staging@lists.linux.dev,
Jernej Skrabec <jernej.skrabec@gmail.com>
Subject: [PATCH v2 0/9] media: hantro: add Allwinner H6 support
Date: Mon, 29 Nov 2021 19:26:24 +0100 [thread overview]
Message-ID: <20211129182633.480021-1-jernej.skrabec@gmail.com> (raw)
Hi everyone!
Here is patchset which adds support for Hantro G2 core found in Allwinner
H6 SoC. It is slightly older core, so it needs few quirks to be
implemented:
1. It uses slightly different register layout in some cases. However, those
differences are small, so it makes sense only to add quirks.
2. It doesn't use ring buffer for bitstream as newer variants.
3. It needs double buffering to be enabled in order to work correctly.
4. postproc must be enabled at the end of the job. It seems that core has
some issues with latching register values if postproc registers are set
at the beginning of the job
legacy_regs quirk could be split into 2, like legacy_regs, ring_buffer, but
I didn't see the need for that. I examined vendor sources at [1] and it
suggests that legacy_regs implies no ring buffer.
It's also unclear if core supports HEVC decoding or not. This can be
implemented later. VP9 10-bit decoding support is mentioned in manual, but
it doesn't work at the moment. This will be addressed later.
Based on top of:
https://www.spinics.net/lists/linux-media/msg202448.html
Please take a look.
Best regards,
Jernej
[1] https://github.com/CliveLau1990/imx-vpu-hantro
Changes from v1:
- fixed error path in probe function
- sorted register defines by bit number and rename some of them
- added late_postproc quirk and reversed order in condition
- factor out imx8m_vpu_g2_irq to a helper
- updated Allwinner platform code
- collected tags
Jernej Skrabec (9):
media: hantro: Fix probe func error path
media: hantro: add support for reset lines
media: hantro: vp9: use double buffering if needed
media: hantro: vp9: add support for legacy register set
media: hantro: move postproc enablement for old cores
media: hantro: Convert imx8m_vpu_g2_irq to helper
media: dt-bindings: allwinner: document H6 Hantro G2 binding
media: hantro: Add support for Allwinner H6
arm64: dts: allwinner: h6: Add Hantro G2 node
.../media/allwinner,sun50i-h6-vpu-g2.yaml | 64 ++++++++++++++
arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi | 9 ++
drivers/staging/media/hantro/Kconfig | 10 ++-
drivers/staging/media/hantro/Makefile | 3 +
drivers/staging/media/hantro/hantro.h | 9 ++
drivers/staging/media/hantro/hantro_drv.c | 28 +++++-
drivers/staging/media/hantro/hantro_g2.c | 18 ++++
drivers/staging/media/hantro/hantro_g2_regs.h | 17 ++++
.../staging/media/hantro/hantro_g2_vp9_dec.c | 76 ++++++++++++----
drivers/staging/media/hantro/hantro_hw.h | 2 +
drivers/staging/media/hantro/imx8m_vpu_hw.c | 20 +----
drivers/staging/media/hantro/sunxi_vpu_hw.c | 86 +++++++++++++++++++
12 files changed, 303 insertions(+), 39 deletions(-)
create mode 100644 Documentation/devicetree/bindings/media/allwinner,sun50i-h6-vpu-g2.yaml
create mode 100644 drivers/staging/media/hantro/sunxi_vpu_hw.c
--
2.34.1
next reply other threads:[~2021-11-29 18:26 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-29 18:26 Jernej Skrabec [this message]
2021-11-29 18:26 ` [PATCH v2 1/9] media: hantro: Fix probe func error path Jernej Skrabec
2021-11-30 10:26 ` Andrzej Pietrasiewicz
2021-11-30 12:11 ` Ezequiel Garcia
2021-11-29 18:26 ` [PATCH v2 2/9] media: hantro: add support for reset lines Jernej Skrabec
2021-11-30 10:42 ` Andrzej Pietrasiewicz
2021-11-30 12:15 ` Ezequiel Garcia
2021-11-29 18:26 ` [PATCH v2 3/9] media: hantro: vp9: use double buffering if needed Jernej Skrabec
2021-11-29 18:26 ` [PATCH v2 4/9] media: hantro: vp9: add support for legacy register set Jernej Skrabec
2021-11-29 18:26 ` [PATCH v2 5/9] media: hantro: move postproc enablement for old cores Jernej Skrabec
2021-11-30 10:44 ` Andrzej Pietrasiewicz
2021-11-30 12:20 ` Ezequiel Garcia
2021-11-29 18:26 ` [PATCH v2 6/9] media: hantro: Convert imx8m_vpu_g2_irq to helper Jernej Skrabec
2021-11-30 10:45 ` Andrzej Pietrasiewicz
2021-11-30 12:20 ` Ezequiel Garcia
2021-11-29 18:26 ` [PATCH v2 7/9] media: dt-bindings: allwinner: document H6 Hantro G2 binding Jernej Skrabec
2021-12-07 21:14 ` Rob Herring
2021-11-29 18:26 ` [PATCH v2 8/9] media: hantro: Add support for Allwinner H6 Jernej Skrabec
2021-11-30 11:08 ` Andrzej Pietrasiewicz
2021-11-30 12:24 ` Ezequiel Garcia
2021-11-29 18:26 ` [PATCH v2 9/9] arm64: dts: allwinner: h6: Add Hantro G2 node Jernej Skrabec
2021-12-16 7:48 ` (subset) " Maxime Ripard
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=20211129182633.480021-1-jernej.skrabec@gmail.com \
--to=jernej.skrabec@gmail.com \
--cc=andrzej.p@collabora.com \
--cc=devicetree@vger.kernel.org \
--cc=ezequiel@vanguardiasur.com.ar \
--cc=gregkh@linuxfoundation.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-staging@lists.linux.dev \
--cc=linux-sunxi@lists.linux.dev \
--cc=mchehab@kernel.org \
--cc=mripard@kernel.org \
--cc=nicolas.dufresne@collabora.com \
--cc=p.zabel@pengutronix.de \
--cc=robh+dt@kernel.org \
--cc=wens@csie.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