From: Helen Koike <helen.koike@collabora.com> To: Hans Verkuil <hverkuil@xs4all.nl>, linux-rockchip@lists.infradead.org Cc: devicetree@vger.kernel.org, eddie.cai.linux@gmail.com, kernel@collabora.com, heiko@sntech.de, jacob2.chen@rock-chips.com, jeffy.chen@rock-chips.com, zyc@rock-chips.com, linux-kernel@vger.kernel.org, tfiga@chromium.org, hans.verkuil@cisco.com, laurent.pinchart@ideasonboard.com, sakari.ailus@linux.intel.com, zhengsq@rock-chips.com, mchehab@kernel.org, ezequiel@collabora.com, linux-arm-kernel@lists.infradead.org, linux-media@vger.kernel.org Subject: Re: [PATCH v8 00/14] Rockchip ISP1 Driver Date: Tue, 30 Jul 2019 17:50:11 -0300 Message-ID: <41e7e574-2708-eb4c-ea30-e6a1ac9c073e@collabora.com> (raw) In-Reply-To: <dbdfed3e-7bb6-bf1f-64b9-ab7298193e2d@xs4all.nl> On 7/30/19 5:15 PM, Hans Verkuil wrote: > On 7/30/19 8:42 PM, Helen Koike wrote: >> Hello, >> >> I'm re-sending a new version of ISP(Camera) v4l2 driver for rockchip >> rk3399 SoC. >> >> I didn't change much from the last version, just applying the >> suggestions made in the previous one. >> >> This patchset is also available at: >> https://gitlab.collabora.com/koike/linux/tree/rockchip/isp/v8 >> >> Libcamera patched to work with this version: >> https://gitlab.collabora.com/koike/libcamera >> (also sent to the mailing list) >> >> I tested on the rockpi 4 with a rpi v1.3 sensor and also with the >> Scarlet Chromebook. >> >> Known issues (same as in v7): >> ------------- >> - Reloading the module doesn't work (there is some missing cleanup when >> unloading) >> - When capturing in bayer format, changing the size doesn't seem to >> affect the image. >> - crop needs more tests >> - v4l2-compliance error: >> fail: v4l2-test-controls.cpp(824): subscribe event for control 'Image Processing Controls' failed >> test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: FAIL > > Can you mail me the full v4l2-compliance output? Sure, please check here: http://ix.io/1Q5u I updated v4l-utils with the latest version and I re-ran bootstrap/configure/make, but for some reason the hash from the link above is not the latest commit, probably some old configuration somewhere. I'll resend this log as soon as I get v4l2-compliance properly updated. Thanks Helen > > Regards, > > Hans > >> It seems that if controls are supported, v4l2-compliance says that >> controls of type 'Image Processing Controls' are mandatory, is this >> correct? >> - It seems there are still some issues with interrupts, but I couldn't >> isolate them yet. >> >> Previous changelog: >> ------------------- >> >> changes in V6: >> - add mipi txrx phy support >> - remove bool and enum from uapi header >> - add buf_prepare op >> - correct some spelling problems >> - return all queued buffers when starting stream failed >> >> changes in V5: Sync with local changes, >> - fix the SP height limit >> - speed up the second stream capture >> - the second stream can't force sync for rsz when start/stop streaming >> - add frame id to param vb2 buf >> - enable luminance maximum threshold >> >> changes in V4: >> - fix some bugs during development >> - move quantization settings to rkisp1 subdev >> - correct some spelling problems >> - describe ports in dt-binding documents >> >> changes in V3: >> - add some comments >> - fix wrong use of v4l2_async_subdev_notifier_register >> - optimize two paths capture at a time >> - remove compose >> - re-struct headers >> - add a tmp wiki page: http://opensource.rock-chips.com/wiki_Rockchip-isp1 >> >> changes in V2: >> mipi-phy: >> - use async probing >> - make it be a child device of the GRF >> isp: >> - add dummy buffer >> - change the way to get bus configuration, which make it possible to >> add parallel sensor support in the future(without mipi-phy driver). >> >> ------------------ >> >> Changes in v8: >> - Add SPDX in the header >> - Remove emacs configs >> - Fix doc style >> - Remove boiler plate license text >> >> Changes in v7: >> - s/IPU3/RK_ISP1 >> - s/correspond/corresponding >> - s/use/uses >> - s/docuemnt/document >> - Fix checkpatch errors (lines over 80 and SPDX) >> - Add TODO to improve docs >> - Migrate dphy specific code from >> drivers/media/platform/rockchip/isp1/mipi_dphy_sy.c >> to drivers/phy/rockchip/phy-rockchip-dphy.c >> - Drop support for rk3288 >> - Drop support for dphy txrx >> - code styling and checkpatch fixes >> - fixed warning because of unknown entity type >> - fixed v4l2-compliance errors regarding rkisp1 formats, try formats >> and default values >> - fix typo riksp1/rkisp1 >> - redesign: remove mipi/csi subdevice, sensors connect directly to the >> isp subdevice in the media topology now. As a consequence, remove the >> hack in mipidphy_g_mbus_config() where information from the sensor was >> being propagated through the topology. >> - From the old dphy: >> * cache get_remote_sensor() in s_stream >> * use V4L2_CID_PIXEL_RATE instead of V4L2_CID_LINK_FREQ >> - Replace stream state with a boolean >> - code styling and checkpatch fixes >> - fix stop_stream (return after calling stop, do not reenable the stream) >> - fix rkisp1_isp_sd_get_selection when V4L2_SUBDEV_FORMAT_TRY is set >> - fix get format in output (isp_sd->out_fmt.mbus_code was being ignored) >> - s/intput/input >> - remove #define sd_to_isp_sd(_sd), add a static inline as it will be >> reused by the capture >> - s/strlcpy/strscpy >> - sort out the locks in isp stats >> - code styling and checkpatch fixes >> - s/strlcpy/strscpy >> - s/strcpy/strscpy >> - fix config lsc error >> LSC data table size is 17x17, but when configuring data to ISP, >> should be aligned to 18x17. That means every last data of last >> line should be filled with 0, and not filled with the data of >> next line. >> - Update new ISP parameters immediately >> For those sub modules that have shadow registers in core isp, the >> new programing parameters would not be active if both >> CIF_ISP_CTRL_ISP_CFG_UPD_PERMANENT and CFG_UPD are not set. Now >> we configure CFG_UPD to force update the shadow registers when new >> ISP parameters are configured. >> - fix some ISP parameters config error >> Some ISP parameter config functions may override the old enable >> bit value, because the enable bits of these modules are in the >> same registers with parameters. So we should save the old enable >> bits firstly. >> - code styling and checkpatch fixes >> - s/strlcpy/strscpy >> - Fix v4l2-compliance issues: >> * remove input ioctls >> media api can be used to define the topology, this input api is not >> required. Besides it, if an input is enumerated, v4l2-compliance is not >> happy with G_FMT returning the default colorspace instead of something >> more specific. >> * return the pixelformat to the userspace >> G_/S_/TRY_ FORMAT should return a valid pixelformat to the user, even if >> the user gave an invalid one >> * add missing default colorspace and ycbcr >> * fix wrong pixformat in mp_fmts[] table >> * add buf type check in s_/g_selection >> * queue_setup - check sizes >> * normalize bus_info name >> * fix field any v4l2-compliance -s complain - set field none >> when streaming >> - Fix compiling error: s/vidioc_enum_fmt_vid_cap_mplane/vidioc_enum_fmt_vid_cap >> - Replace stream state with a boolean >> The rkisp1_state enum consists only of 3 entries, where 1 is completely >> unused and the other two respectively mean not streaming or streaming. >> Replace it with a boolean called "streaming". >> - Simplify MI interrupt handling >> Rather than adding unnecessary indirection, just use stream index to >> handle MI interrupt enable/disable/clear, since the stream index matches >> the order of bits now, thanks to previous patch. While at it, remove >> some dead code. >> - code styling and checkpatch fixes >> - add link_validate: don't allow a link with bayer/non-bayer mismatch >> - VIDEO_ROCKCHIP_ISP1 selects VIDEOBUF2_VMALLOC >> - add PHY_ROCKCHIP_DPHY as a dependency for VIDEO_ROCKCHIP_ISP1 >> - Fix compilation and runtime errors due to bitrotting >> The code has bit-rotten since March 2018, fix compilation errors. >> The new V4L2 async notifier API requires notifiers to be initialized by >> a call to v4l2_async_notifier_init() before being used, do so. >> - Add missing module device table >> - use clk_bulk framework >> - add missing notifiers cleanups >> - s/strlcpy/strscpy >> - normalize bus_info name >> - fix s_stream error path, stream_cnt wans't being decremented properly >> - use devm_platform_ioremap_resource() helper >> - s/deice/device >> - redesign: remove mipi/csi subdevice, sensors connect directly to the >> isp subdevice in the media topology now. >> - remove "saved_state" member from rkisp1_stream struct >> - Reverse the order of MIs >> - Simplify MI interrupt handling >> Rather than adding unnecessary indirection, just use stream index to >> handle MI interrupt enable/disable/clear, since the stream index matches >> the order of bits now, thanks to previous patch. While at it, remove >> some dead code. >> - code styling and checkpatch fixes >> - update document with new design and tested example >> - updated doc with new design and tested example >> - add phy properties >> - add ports >> - add phy-cells >> >> Helen Koike (1): >> MAINTAINERS: add entry for Rockchip ISP1 driver >> >> Jacob Chen (9): >> media: doc: add document for rkisp1 meta buffer format >> media: rkisp1: add Rockchip MIPI Synopsys DPHY driver >> media: rkisp1: add Rockchip ISP1 subdev driver >> media: rkisp1: add ISP1 statistics driver >> media: rkisp1: add ISP1 params driver >> media: rkisp1: add capture device driver >> media: rkisp1: add rockchip isp1 core driver >> dt-bindings: Document the Rockchip ISP1 bindings >> dt-bindings: Document the Rockchip MIPI RX D-PHY bindings >> >> Jeffy Chen (1): >> media: rkisp1: Add user space ABI definitions >> >> Shunqian Zheng (3): >> media: videodev2.h, v4l2-ioctl: add rkisp1 meta buffer format >> arm64: dts: rockchip: add isp0 node for rk3399 >> arm64: dts: rockchip: add rx0 mipi-phy for rk3399 >> >> .../bindings/media/rockchip-isp1.txt | 71 + >> .../bindings/media/rockchip-mipi-dphy.txt | 38 + >> Documentation/media/uapi/v4l/meta-formats.rst | 2 + >> .../uapi/v4l/pixfmt-meta-rkisp1-params.rst | 23 + >> .../uapi/v4l/pixfmt-meta-rkisp1-stat.rst | 22 + >> MAINTAINERS | 8 + >> arch/arm64/boot/dts/rockchip/rk3399.dtsi | 36 + >> drivers/media/platform/Kconfig | 12 + >> drivers/media/platform/Makefile | 1 + >> drivers/media/platform/rockchip/isp1/Makefile | 7 + >> .../media/platform/rockchip/isp1/capture.c | 1754 +++++++++++++++++ >> .../media/platform/rockchip/isp1/capture.h | 164 ++ >> drivers/media/platform/rockchip/isp1/common.h | 101 + >> drivers/media/platform/rockchip/isp1/dev.c | 675 +++++++ >> drivers/media/platform/rockchip/isp1/dev.h | 97 + >> .../media/platform/rockchip/isp1/isp_params.c | 1604 +++++++++++++++ >> .../media/platform/rockchip/isp1/isp_params.h | 50 + >> .../media/platform/rockchip/isp1/isp_stats.c | 508 +++++ >> .../media/platform/rockchip/isp1/isp_stats.h | 60 + >> drivers/media/platform/rockchip/isp1/regs.c | 223 +++ >> drivers/media/platform/rockchip/isp1/regs.h | 1525 ++++++++++++++ >> drivers/media/platform/rockchip/isp1/rkisp1.c | 1286 ++++++++++++ >> drivers/media/platform/rockchip/isp1/rkisp1.h | 111 ++ >> drivers/media/v4l2-core/v4l2-ioctl.c | 2 + >> drivers/phy/rockchip/Kconfig | 8 + >> drivers/phy/rockchip/Makefile | 1 + >> drivers/phy/rockchip/phy-rockchip-dphy.c | 408 ++++ >> include/uapi/linux/rkisp1-config.h | 816 ++++++++ >> include/uapi/linux/videodev2.h | 4 + >> 29 files changed, 9617 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/media/rockchip-isp1.txt >> create mode 100644 Documentation/devicetree/bindings/media/rockchip-mipi-dphy.txt >> create mode 100644 Documentation/media/uapi/v4l/pixfmt-meta-rkisp1-params.rst >> create mode 100644 Documentation/media/uapi/v4l/pixfmt-meta-rkisp1-stat.rst >> create mode 100644 drivers/media/platform/rockchip/isp1/Makefile >> create mode 100644 drivers/media/platform/rockchip/isp1/capture.c >> create mode 100644 drivers/media/platform/rockchip/isp1/capture.h >> create mode 100644 drivers/media/platform/rockchip/isp1/common.h >> create mode 100644 drivers/media/platform/rockchip/isp1/dev.c >> create mode 100644 drivers/media/platform/rockchip/isp1/dev.h >> create mode 100644 drivers/media/platform/rockchip/isp1/isp_params.c >> create mode 100644 drivers/media/platform/rockchip/isp1/isp_params.h >> create mode 100644 drivers/media/platform/rockchip/isp1/isp_stats.c >> create mode 100644 drivers/media/platform/rockchip/isp1/isp_stats.h >> create mode 100644 drivers/media/platform/rockchip/isp1/regs.c >> create mode 100644 drivers/media/platform/rockchip/isp1/regs.h >> create mode 100644 drivers/media/platform/rockchip/isp1/rkisp1.c >> create mode 100644 drivers/media/platform/rockchip/isp1/rkisp1.h >> create mode 100644 drivers/phy/rockchip/phy-rockchip-dphy.c >> create mode 100644 include/uapi/linux/rkisp1-config.h >> > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply index Thread overview: 76+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-07-30 18:42 Helen Koike 2019-07-30 18:42 ` [PATCH v8 01/14] media: videodev2.h, v4l2-ioctl: add rkisp1 meta buffer format Helen Koike 2019-08-15 13:30 ` Laurent Pinchart 2019-07-30 18:42 ` [PATCH v8 02/14] media: doc: add document for " Helen Koike 2019-08-07 13:09 ` Sakari Ailus 2019-08-15 13:51 ` Laurent Pinchart 2019-07-30 18:42 ` [PATCH v8 03/14] media: rkisp1: Add user space ABI definitions Helen Koike 2019-08-15 18:46 ` Laurent Pinchart 2020-07-10 12:59 ` Dafna Hirschfeld 2020-07-10 13:36 ` Laurent Pinchart 2020-07-10 14:30 ` Dafna Hirschfeld 2019-07-30 18:42 ` [PATCH v8 04/14] media: rkisp1: add Rockchip MIPI Synopsys DPHY driver Helen Koike 2019-08-07 13:05 ` Sakari Ailus 2019-08-07 13:37 ` Helen Koike 2019-08-15 17:54 ` Laurent Pinchart 2019-08-15 18:26 ` Heiko Stübner 2019-08-21 21:46 ` Helen Koike 2019-08-22 2:32 ` Laurent Pinchart 2019-07-30 18:42 ` [PATCH v8 05/14] media: rkisp1: add Rockchip ISP1 subdev driver Helen Koike 2019-08-06 18:51 ` Helen Koike 2019-08-07 10:39 ` Hans Verkuil 2019-08-15 19:35 ` Laurent Pinchart 2020-03-25 6:34 ` Dafna Hirschfeld 2020-03-25 7:11 ` Laurent Pinchart 2020-03-25 8:51 ` Dafna Hirschfeld 2020-03-25 9:11 ` Laurent Pinchart 2019-08-08 9:14 ` Sakari Ailus 2019-08-15 0:58 ` Helen Koike 2019-08-15 8:24 ` Sakari Ailus 2019-08-15 10:29 ` Tomasz Figa 2019-08-15 10:45 ` Sakari Ailus 2019-08-15 13:17 ` Sakari Ailus 2020-01-31 19:38 ` Dafna Hirschfeld 2020-02-12 21:13 ` Sakari Ailus 2020-02-13 12:50 ` Dafna Hirschfeld 2019-08-16 0:13 ` Laurent Pinchart 2020-07-11 11:04 ` Dafna Hirschfeld 2020-07-17 7:46 ` Dafna Hirschfeld 2020-07-22 16:01 ` Tomasz Figa 2020-07-22 15:24 ` Tomasz Figa 2020-07-22 16:30 ` Laurent Pinchart 2020-07-22 17:12 ` Tomasz Figa 2020-07-22 17:50 ` Laurent Pinchart 2020-08-05 21:10 ` Dafna Hirschfeld 2020-08-06 9:21 ` Dafna Hirschfeld 2020-08-06 12:22 ` Tomasz Figa 2020-08-07 16:08 ` Dafna Hirschfeld 2020-08-13 6:17 ` Dafna Hirschfeld 2020-08-06 12:08 ` Tomasz Figa 2020-08-07 16:02 ` Dafna Hirschfeld 2019-07-30 18:42 ` [PATCH v8 06/14] media: rkisp1: add ISP1 statistics driver Helen Koike 2019-08-08 9:37 ` Sakari Ailus 2019-07-30 18:42 ` [PATCH v8 07/14] media: rkisp1: add ISP1 params driver Helen Koike 2019-07-30 18:42 ` [PATCH v8 09/14] media: rkisp1: add rockchip isp1 core driver Helen Koike 2019-08-07 15:27 ` Sakari Ailus 2019-08-08 21:59 ` Helen Koike 2019-08-09 12:05 ` Sakari Ailus 2019-08-07 15:36 ` Sakari Ailus 2019-07-30 18:42 ` [PATCH v8 10/14] dt-bindings: Document the Rockchip ISP1 bindings Helen Koike 2019-08-16 0:21 ` Laurent Pinchart 2019-07-30 18:42 ` [PATCH v8 11/14] dt-bindings: Document the Rockchip MIPI RX D-PHY bindings Helen Koike 2019-08-15 18:14 ` Laurent Pinchart 2019-07-30 18:42 ` [PATCH v8 12/14] arm64: dts: rockchip: add isp0 node for rk3399 Helen Koike 2019-07-30 18:42 ` [PATCH v8 13/14] arm64: dts: rockchip: add rx0 mipi-phy " Helen Koike 2019-07-30 18:42 ` [PATCH v8 14/14] MAINTAINERS: add entry for Rockchip ISP1 driver Helen Koike 2019-08-15 13:56 ` Laurent Pinchart 2019-07-30 20:15 ` [PATCH v8 00/14] Rockchip ISP1 Driver Hans Verkuil 2019-07-30 20:50 ` Helen Koike [this message] 2019-07-31 0:08 ` Helen Koike 2019-07-31 4:29 ` Hans Verkuil 2019-07-31 4:33 ` Hans Verkuil 2019-07-31 4:55 ` Hans Verkuil 2019-07-31 14:42 ` Helen Koike 2019-08-07 15:37 ` Sakari Ailus 2019-08-07 17:57 ` Helen Koike 2019-08-09 18:45 ` Manivannan Sadhasivam
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=41e7e574-2708-eb4c-ea30-e6a1ac9c073e@collabora.com \ --to=helen.koike@collabora.com \ --cc=devicetree@vger.kernel.org \ --cc=eddie.cai.linux@gmail.com \ --cc=ezequiel@collabora.com \ --cc=hans.verkuil@cisco.com \ --cc=heiko@sntech.de \ --cc=hverkuil@xs4all.nl \ --cc=jacob2.chen@rock-chips.com \ --cc=jeffy.chen@rock-chips.com \ --cc=kernel@collabora.com \ --cc=laurent.pinchart@ideasonboard.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-media@vger.kernel.org \ --cc=linux-rockchip@lists.infradead.org \ --cc=mchehab@kernel.org \ --cc=sakari.ailus@linux.intel.com \ --cc=tfiga@chromium.org \ --cc=zhengsq@rock-chips.com \ --cc=zyc@rock-chips.com \ /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
Linux-ARM-Kernel Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/linux-arm-kernel/0 linux-arm-kernel/git/0.git git clone --mirror https://lore.kernel.org/linux-arm-kernel/1 linux-arm-kernel/git/1.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 linux-arm-kernel linux-arm-kernel/ https://lore.kernel.org/linux-arm-kernel \ linux-arm-kernel@lists.infradead.org public-inbox-index linux-arm-kernel Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.infradead.lists.linux-arm-kernel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git