Message ID | 20230401145926.596216-1-hdegoede@redhat.com (mailing list archive) |
---|---|
Headers | show |
Series | media: atomisp: Further sensor rework + exotic features removal | expand |
On Sat, Apr 1, 2023 at 4:59 PM Hans de Goede <hdegoede@redhat.com> wrote: > > Hi All, > > Here is another set of atomisp patches from yours truely. > > This basically consists of 2 parts: > > 1. Further sensor driver modernization to work towards using standard > v4l2 sensor drivers instead of atomisp specific copies > 1a. For some sensors some GPIOs have different polarity depending on > which board they are on and the order in which GPIOs are listed in > in the ACPI resources also is not consistent between boards. > Fixing this without relying on per board DMI quirks requires parsing > the results of a special Intel ACPI _DSM. Add a new > v4l2_get_acpi_sensor_info() helper for this > 1b. Convert the gc0310 driver to use ACPI runtime pm instead of relying > on the direct PMIC poking from atomisp_gmin_platform > > 2. Further work on removing various exotic features, specifically > prep work + remove support for streaming from 2 sensors at once, > as discussed here: > https://lore.kernel.org/linux-media/5309d845-063b-6dd9-529d-0f82654290f2@redhat.com/ Traditionally, for the non-commented ones: Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> For the rest depending on the severity of the comment. Feel free to add my tag where it makes sense in your opinion (no discussion required). > Regards, > > Hans > > > Hans de Goede (28): > media: atomisp: Add v4l2_get_acpi_sensor_info() helper > media: atomisp: ov2680: Use v4l2_get_acpi_sensor_info() for the GPIO > lookups > media: atomisp: ov2680: Error handling fixes > media: atomisp: gc0310: Remove some unused structure definitions > media: atomisp: gc0310: Remove GC0310_TOK_* > media: atomisp: gc0310: Simplify gc0310_write_reg_array() > media: atomisp: gc0310: Remove enum gc0310_tok_type > media: atomisp: gc0310: Replace custom reg access functions with smbus > helpers > media: atomisp: gc0310: Remove non working flip-controls > media: atomisp: gc0310: Remove read-only exposure control > media: atomisp: gc0310: Drop custom ATOMISP_IOC_S_EXPOSURE support > media: atomisp: gc0310: Add exposure and gain controls > media: atomisp: gc0310: Add error_unlock label to s_stream() > media: atomisp: gc0310: Modernize and simply set_fmt(), get_fmt(), > etc. > media: atomisp: gc0310: Delay power-on till streaming is started > media: atomisp: gc0310: Add runtime-pm support > media: atomisp: gc0310: Use devm_kzalloc() for data struct > media: atomisp: gc0310: Switch over to ACPI powermanagement > media: atomisp: Remove duplicate atomisp_[start|stop]_streaming > prototypes > media: atomisp: Remove continuous mode related code from > atomisp_set_fmt() > media: atomisp: Remove custom V4L2_CID_FMT_AUTO control > media: atomisp: Remove snr_mbus_fmt local var from atomisp_try_fmt() > media: atomisp: Remove unused ATOM_ISP_MAX_WIDTH_TMP and > ATOM_ISP_MAX_HEIGHT_TMP > media: atomisp: Remove atomisp_try_fmt() call from atomisp_set_fmt() > media: atomisp: Drop support for streaming from 2 sensors at once > media: atomisp: Remove struct atomisp_sub_device index field > media: atomisp: gmin_platform: Make DMI quirks take precedence over > the _DSM table > media: atomisp: gmin_platform: Add Lenovo Ideapad Miix 310 gmin_vars > > .../media/atomisp/i2c/atomisp-gc0310.c | 999 ++++-------------- > .../media/atomisp/i2c/atomisp-ov2680.c | 33 +- > drivers/staging/media/atomisp/i2c/gc0310.h | 416 +++----- > drivers/staging/media/atomisp/i2c/ov2680.h | 1 - > .../media/atomisp/include/linux/atomisp.h | 2 - > .../atomisp/include/linux/atomisp_platform.h | 2 + > .../staging/media/atomisp/pci/atomisp_cmd.c | 356 ++----- > .../media/atomisp/pci/atomisp_compat.h | 4 +- > .../media/atomisp/pci/atomisp_compat_css20.c | 89 +- > .../staging/media/atomisp/pci/atomisp_fops.c | 9 +- > .../media/atomisp/pci/atomisp_gmin_platform.c | 289 ++++- > .../media/atomisp/pci/atomisp_internal.h | 20 +- > .../staging/media/atomisp/pci/atomisp_ioctl.c | 64 +- > .../staging/media/atomisp/pci/atomisp_ioctl.h | 3 - > .../media/atomisp/pci/atomisp_subdev.c | 111 +- > .../media/atomisp/pci/atomisp_subdev.h | 6 - > .../staging/media/atomisp/pci/atomisp_v4l2.c | 36 +- > 17 files changed, 844 insertions(+), 1596 deletions(-) > > -- > 2.39.1 >
Hi Andy, On 4/2/23 21:13, Andy Shevchenko wrote: > On Sat, Apr 1, 2023 at 4:59 PM Hans de Goede <hdegoede@redhat.com> wrote: >> >> Hi All, >> >> Here is another set of atomisp patches from yours truely. >> >> This basically consists of 2 parts: >> >> 1. Further sensor driver modernization to work towards using standard >> v4l2 sensor drivers instead of atomisp specific copies >> 1a. For some sensors some GPIOs have different polarity depending on >> which board they are on and the order in which GPIOs are listed in >> in the ACPI resources also is not consistent between boards. >> Fixing this without relying on per board DMI quirks requires parsing >> the results of a special Intel ACPI _DSM. Add a new >> v4l2_get_acpi_sensor_info() helper for this >> 1b. Convert the gc0310 driver to use ACPI runtime pm instead of relying >> on the direct PMIC poking from atomisp_gmin_platform >> >> 2. Further work on removing various exotic features, specifically >> prep work + remove support for streaming from 2 sensors at once, >> as discussed here: >> https://lore.kernel.org/linux-media/5309d845-063b-6dd9-529d-0f82654290f2@redhat.com/ > > Traditionally, for the non-commented ones: > Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> > > For the rest depending on the severity of the comment. Feel free to > add my tag where it makes sense in your opinion (no discussion > required). Thank you for all the reviews. I've pushed a new version addressing all your comments and adding your Reviewd-by to: https://git.kernel.org/pub/scm/linux/kernel/git/hansg/linux.git/log/?h=media-atomisp I'll send out a pull-req to Mauro for this, wrapping up the atomisp changes for this cycle. Regards, Hans >> Hans de Goede (28): >> media: atomisp: Add v4l2_get_acpi_sensor_info() helper >> media: atomisp: ov2680: Use v4l2_get_acpi_sensor_info() for the GPIO >> lookups >> media: atomisp: ov2680: Error handling fixes >> media: atomisp: gc0310: Remove some unused structure definitions >> media: atomisp: gc0310: Remove GC0310_TOK_* >> media: atomisp: gc0310: Simplify gc0310_write_reg_array() >> media: atomisp: gc0310: Remove enum gc0310_tok_type >> media: atomisp: gc0310: Replace custom reg access functions with smbus >> helpers >> media: atomisp: gc0310: Remove non working flip-controls >> media: atomisp: gc0310: Remove read-only exposure control >> media: atomisp: gc0310: Drop custom ATOMISP_IOC_S_EXPOSURE support >> media: atomisp: gc0310: Add exposure and gain controls >> media: atomisp: gc0310: Add error_unlock label to s_stream() >> media: atomisp: gc0310: Modernize and simply set_fmt(), get_fmt(), >> etc. >> media: atomisp: gc0310: Delay power-on till streaming is started >> media: atomisp: gc0310: Add runtime-pm support >> media: atomisp: gc0310: Use devm_kzalloc() for data struct >> media: atomisp: gc0310: Switch over to ACPI powermanagement >> media: atomisp: Remove duplicate atomisp_[start|stop]_streaming >> prototypes >> media: atomisp: Remove continuous mode related code from >> atomisp_set_fmt() >> media: atomisp: Remove custom V4L2_CID_FMT_AUTO control >> media: atomisp: Remove snr_mbus_fmt local var from atomisp_try_fmt() >> media: atomisp: Remove unused ATOM_ISP_MAX_WIDTH_TMP and >> ATOM_ISP_MAX_HEIGHT_TMP >> media: atomisp: Remove atomisp_try_fmt() call from atomisp_set_fmt() >> media: atomisp: Drop support for streaming from 2 sensors at once >> media: atomisp: Remove struct atomisp_sub_device index field >> media: atomisp: gmin_platform: Make DMI quirks take precedence over >> the _DSM table >> media: atomisp: gmin_platform: Add Lenovo Ideapad Miix 310 gmin_vars >> >> .../media/atomisp/i2c/atomisp-gc0310.c | 999 ++++-------------- >> .../media/atomisp/i2c/atomisp-ov2680.c | 33 +- >> drivers/staging/media/atomisp/i2c/gc0310.h | 416 +++----- >> drivers/staging/media/atomisp/i2c/ov2680.h | 1 - >> .../media/atomisp/include/linux/atomisp.h | 2 - >> .../atomisp/include/linux/atomisp_platform.h | 2 + >> .../staging/media/atomisp/pci/atomisp_cmd.c | 356 ++----- >> .../media/atomisp/pci/atomisp_compat.h | 4 +- >> .../media/atomisp/pci/atomisp_compat_css20.c | 89 +- >> .../staging/media/atomisp/pci/atomisp_fops.c | 9 +- >> .../media/atomisp/pci/atomisp_gmin_platform.c | 289 ++++- >> .../media/atomisp/pci/atomisp_internal.h | 20 +- >> .../staging/media/atomisp/pci/atomisp_ioctl.c | 64 +- >> .../staging/media/atomisp/pci/atomisp_ioctl.h | 3 - >> .../media/atomisp/pci/atomisp_subdev.c | 111 +- >> .../media/atomisp/pci/atomisp_subdev.h | 6 - >> .../staging/media/atomisp/pci/atomisp_v4l2.c | 36 +- >> 17 files changed, 844 insertions(+), 1596 deletions(-) >> >> -- >> 2.39.1 >> > >
On Sun, Apr 9, 2023 at 4:09 PM Hans de Goede <hdegoede@redhat.com> wrote: > On 4/2/23 21:13, Andy Shevchenko wrote: ... > Thank you for all the reviews. I've pushed a new version > addressing all your comments and adding your Reviewd-by to: Reviewed-by? > https://git.kernel.org/pub/scm/linux/kernel/git/hansg/linux.git/log/?h=media-atomisp This is what answers my question in the reply to patch 28 I think. I'll refer to this branch for AtomISP latest code. > I'll send out a pull-req to Mauro for this, wrapping up > the atomisp changes for this cycle. ACK.