On 6/11/19 2:50 PM, Philipp Zabel wrote:
> There are several other SoCs that contain Hantro IP based VPUs, such as
> NXP i.MX8MQ (Hantro G1 and G2) and i.MX8MM (Hantro G1, G2, and H1). To
> maximize code sharing, add initial support for these SoCs to the
> Rockchip VPU driver, after renaming it to Hantro VPU.
>
> This series is based on the br-v5.3g tag, commit e568d2cc1ef6
> ("rockchip/vpu: Add support for MPEG-2 decoding on RK3288") with
> https://patchwork.linuxtv.org/patch/56402/ ("rockchip/vpu: Add support
> for MPEG-2 decoding on RK3328") applied on top. It supports MPEG-2
> decoding on i.MX8MQ. MPEG-2 decoding and JPEG encoding on i.MX8MM may
> or may not work, I don't have the hardware to test.
>
> Changes since v3:
> - Split rk3288_vpu_regs.h into hantro_g1_regs.h and hantro_h1_regs.h,
> rename VDPU register defines to G1 and VEPU register defines to H1.
> - Make Rockchip / i.MX8M support configurable.
> - Keep staging/media Kconfig in alphabetic order.
> - Rename bases to reg_bases
> - Move dynamic clocks before i.MX8M support.
Can you please rebase this on top of the media_tree master? This series
doesn't apply there.
I'd like to get this rename series in asap since keeping this out-of-tree
is a pain.
It looks in good shape in general.
Regards,
Hans
>
> regards
> Philipp
>
> Philipp Zabel (10):
> rockchip/vpu: rename from rockchip to hantro
> media: hantro: print video device name in addition to device node
> media: hantro: add PM runtime resume callback
> media: hantro: make irq names configurable
> media: hantro: add support for named register ranges
> media: hantro: add support for separate control block
> media: hantro: allow arbitrary number of clocks
> media: dt-bindings: Document i.MX8MQ and i.MX8MM VPU bindings
> media: hantro: add initial i.MX8MQ support
> media: hantro: add initial i.MX8MM support (untested)
>
> .../devicetree/bindings/media/imx8m-vpu.txt | 56 +++
> MAINTAINERS | 4 +-
> drivers/staging/media/Kconfig | 4 +-
> drivers/staging/media/Makefile | 2 +-
> drivers/staging/media/hantro/Kconfig | 31 ++
> drivers/staging/media/hantro/Makefile | 18 +
> .../media/{rockchip/vpu => hantro}/TODO | 0
> .../vpu/rockchip_vpu.h => hantro/hantro.h} | 167 ++++---
> .../hantro_drv.c} | 335 ++++++-------
> .../media/hantro/hantro_g1_mpeg2_dec.c | 260 ++++++++++
> drivers/staging/media/hantro/hantro_g1_regs.h | 301 ++++++++++++
> .../staging/media/hantro/hantro_h1_jpeg_enc.c | 125 +++++
> drivers/staging/media/hantro/hantro_h1_regs.h | 154 ++++++
> drivers/staging/media/hantro/hantro_hw.h | 104 ++++
> .../hantro_jpeg.c} | 18 +-
> drivers/staging/media/hantro/hantro_jpeg.h | 13 +
> .../hantro_mpeg2.c} | 14 +-
> .../hantro_v4l2.c} | 234 +++++----
> .../hantro_v4l2.h} | 16 +-
> drivers/staging/media/hantro/imx8m_vpu_hw.c | 311 ++++++++++++
> drivers/staging/media/hantro/rk3288_vpu_hw.c | 187 ++++++++
> .../{rockchip/vpu => hantro}/rk3399_vpu_hw.c | 92 ++--
> .../vpu => hantro}/rk3399_vpu_hw_jpeg_enc.c | 32 +-
> .../vpu => hantro}/rk3399_vpu_hw_mpeg2_dec.c | 37 +-
> .../vpu => hantro}/rk3399_vpu_regs.h | 2 +-
> drivers/staging/media/rockchip/vpu/Kconfig | 14 -
> drivers/staging/media/rockchip/vpu/Makefile | 14 -
> .../media/rockchip/vpu/rk3288_vpu_hw.c | 177 -------
> .../rockchip/vpu/rk3288_vpu_hw_jpeg_enc.c | 125 -----
> .../rockchip/vpu/rk3288_vpu_hw_mpeg2_dec.c | 261 -----------
> .../media/rockchip/vpu/rk3288_vpu_regs.h | 443 ------------------
> .../media/rockchip/vpu/rockchip_vpu_hw.h | 103 ----
> .../media/rockchip/vpu/rockchip_vpu_jpeg.h | 14 -
> 33 files changed, 2061 insertions(+), 1607 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/media/imx8m-vpu.txt
> create mode 100644 drivers/staging/media/hantro/Kconfig
> create mode 100644 drivers/staging/media/hantro/Makefile
> rename drivers/staging/media/{rockchip/vpu => hantro}/TODO (100%)
> rename drivers/staging/media/{rockchip/vpu/rockchip_vpu.h =>
> hantro/hantro.h} (66%)
> rename drivers/staging/media/{rockchip/vpu/rockchip_vpu_drv.c =>
> hantro/hantro_drv.c} (69%)
> create mode 100644 drivers/staging/media/hantro/hantro_g1_mpeg2_dec.c
> create mode 100644 drivers/staging/media/hantro/hantro_g1_regs.h
> create mode 100644 drivers/staging/media/hantro/hantro_h1_jpeg_enc.c
> create mode 100644 drivers/staging/media/hantro/hantro_h1_regs.h
> create mode 100644 drivers/staging/media/hantro/hantro_hw.h
> rename drivers/staging/media/{rockchip/vpu/rockchip_vpu_jpeg.c =>
> hantro/hantro_jpeg.c} (95%)
> create mode 100644 drivers/staging/media/hantro/hantro_jpeg.h
> rename drivers/staging/media/{rockchip/vpu/rockchip_vpu_mpeg2.c =>
> hantro/hantro_mpeg2.c} (79%)
> rename drivers/staging/media/{rockchip/vpu/rockchip_vpu_v4l2.c =>
> hantro/hantro_v4l2.c} (69%)
> rename drivers/staging/media/{rockchip/vpu/rockchip_vpu_v4l2.h =>
> hantro/hantro_v4l2.h} (53%)
> create mode 100644 drivers/staging/media/hantro/imx8m_vpu_hw.c
> create mode 100644 drivers/staging/media/hantro/rk3288_vpu_hw.c
> rename drivers/staging/media/{rockchip/vpu => hantro}/rk3399_vpu_hw.c (62%)
> rename drivers/staging/media/{rockchip/vpu =>
> hantro}/rk3399_vpu_hw_jpeg_enc.c (86%)
> rename drivers/staging/media/{rockchip/vpu =>
> hantro}/rk3399_vpu_hw_mpeg2_dec.c (92%)
> rename drivers/staging/media/{rockchip/vpu => hantro}/rk3399_vpu_regs.h (99%)
> delete mode 100644 drivers/staging/media/rockchip/vpu/Kconfig
> delete mode 100644 drivers/staging/media/rockchip/vpu/Makefile
> delete mode 100644 drivers/staging/media/rockchip/vpu/rk3288_vpu_hw.c
> delete mode 100644
> drivers/staging/media/rockchip/vpu/rk3288_vpu_hw_jpeg_enc.c
> delete mode 100644
> drivers/staging/media/rockchip/vpu/rk3288_vpu_hw_mpeg2_dec.c
> delete mode 100644 drivers/staging/media/rockchip/vpu/rk3288_vpu_regs.h
> delete mode 100644 drivers/staging/media/rockchip/vpu/rockchip_vpu_hw.h
> delete mode 100644 drivers/staging/media/rockchip/vpu/rockchip_vpu_jpeg.h
>