Message ID | 20190611125058.13470-1-p.zabel@pengutronix.de (mailing list archive) |
---|---|
Headers | show |
Series | Rename Rockchip VPU driver to Hantro, add initial i.MX8M support | expand |
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 >
On 6/12/19 9:55 AM, Hans Verkuil wrote: > 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. In fact, I would like to hold off on applying any other rockchip patches until this is in (and that means any pending rockchip patches probably need rebasing). So if a v5 applies cleanly and doesn't throw up new sparse/smatch issues, then I'll take it. Regards, Hans > > 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 >> >
On Wed, 12 Jun 2019 10:00:45 +0200 Hans Verkuil <hverkuil@xs4all.nl> wrote: > On 6/12/19 9:55 AM, Hans Verkuil wrote: > > 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. > > In fact, I would like to hold off on applying any other rockchip patches > until this is in (and that means any pending rockchip patches probably > need rebasing). Ack. Actually, Ezequiel and I are waiting for this series to land before sending new patches, so that'd be nice to have at least patches 1 to 7 applied really soon. > > So if a v5 applies cleanly and doesn't throw up new sparse/smatch issues, > then I'll take it. Great!
On Wed, 2019-06-12 at 10:00 +0200, Hans Verkuil wrote: > On 6/12/19 9:55 AM, Hans Verkuil wrote: > > 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. > > In fact, I would like to hold off on applying any other rockchip patches > until this is in (and that means any pending rockchip patches probably > need rebasing). > > So if a v5 applies cleanly and doesn't throw up new sparse/smatch issues, > then I'll take it. I've rebased onto media-tree master, checked sparse/smatch, and resent. The RK3328 patch is pulled out from under it and sent separately on top of the series. regards Philipp