Re: [PATCH] media: ov5695: Add suport for registering sensor-related

2019-09-27 Thread Andy Shevchenko
arse_fwnode_sensor_common() > and registers the async sub-devices. > > After applying this change, we can see the VCM move when changing the scene. When you derive Cc list, set some threshold to the get_maintainer.pl, like scripts/get_maintainer.pl --git --git-min-percent=67 -- With Best Regards, Andy Shevchenko

Re: [V2, 2/2] media: i2c: Add more sensor modes for ov8856 camera sensor

2019-09-10 Thread Andy Shevchenko
", > +GPIOD_OUT_LOW); > + if (IS_ERR(ov8856->n_shutdn_gpio)) { > + dev_err(&client->dev, "failed to get reset-gpios\n"); > + return -EINVAL; > + } Ditto. > +static const struct of_device_id ov8856_of_match[] = { > + { .compatible = "ovti,ov8856" }, > + {}, No comma needed for terminator line. > +}; -- With Best Regards, Andy Shevchenko

Re: [V2, 1/2] media: dt-bindings: media: i2c: Add bindings for ov8856

2019-09-10 Thread Andy Shevchenko
On Tue, Sep 10, 2019 at 09:04:45PM +0800, dongchun@mediatek.com wrote: > From: Dongchun Zhu > > This patch adds device tree bindings documentation for the ov8856 CMOS > image sensor. New bindings in YAML, please. -- With Best Regards, Andy Shevchenko

Re: [V4, 1/2] media: dt-bindings: media: i2c: Add bindings for OV02A10

2019-09-09 Thread Andy Shevchenko
On Mon, Sep 09, 2019 at 12:57:15PM +0300, Sakari Ailus wrote: > Hi Andy, > > On Mon, Sep 09, 2019 at 12:45:01PM +0300, Andy Shevchenko wrote: > > On Sat, Sep 07, 2019 at 05:27:27PM +0800, dongchun@mediatek.com wrote: > > > From: Dongchun Zhu > > > > >

Re: [V4, 1/2] media: dt-bindings: media: i2c: Add bindings for OV02A10

2019-09-09 Thread Andy Shevchenko
ov02a10.txt | 54 > ++ > MAINTAINERS| 7 +++ This doesn't belong to dt-bindings. -- With Best Regards, Andy Shevchenko

Re: [V2, 1/2] media: i2c: dw9768: Add DT support and MAINTAINERS entry

2019-09-05 Thread Andy Shevchenko
On Thu, Sep 05, 2019 at 03:00:12PM +0300, Sakari Ailus wrote: > And I see no reason to add a separate patch just for > MAINTAINERS change. It's up to maintainers of the subsystem. -- With Best Regards, Andy Shevchenko

Re: [V2, 2/2] media: i2c: Add DW9768 VCM driver

2019-09-05 Thread Andy Shevchenko
On Thu, Sep 05, 2019 at 12:57:34PM +0200, Javier Martinez Canillas wrote: > On 9/5/19 12:40 PM, Sakari Ailus wrote: > > On Thu, Sep 05, 2019 at 01:19:08PM +0300, Andy Shevchenko wrote: > >> On Thu, Sep 05, 2019 at 11:21:34AM +0300, Sakari Ailus wrote: > >>> On Thu, Se

Re: [V2, 1/2] media: i2c: dw9768: Add DT support and MAINTAINERS entry

2019-09-05 Thread Andy Shevchenko
On Thu, Sep 05, 2019 at 01:48:30PM +0300, Sakari Ailus wrote: > On Thu, Sep 05, 2019 at 01:14:06PM +0300, Andy Shevchenko wrote: > > On Thu, Sep 05, 2019 at 03:21:41PM +0800, dongchun@mediatek.com wrote: > > > From: Dongchun Zhu > > > > > > This pa

Re: [V2, 2/2] media: i2c: Add DW9768 VCM driver

2019-09-05 Thread Andy Shevchenko
struct v4l2_subdev *sd = i2c_get_clientdata(client); Ditto. > + struct dw9768 *dw9768 = sd_to_dw9768_vcm(sd); > + > + return dw9768_power_on(dw9768); > +} > +static const struct i2c_device_id dw9768_id_table[] = { > + { DW9768_NAME, 0 }, > + { }, No comma. > +}; > +static const struct of_device_id dw9768_of_table[] = { > + { .compatible = "dongwoon,dw9768" }, > + { }, Ditto. > +}; -- With Best Regards, Andy Shevchenko

Re: [V2, 2/2] media: i2c: Add DW9768 VCM driver

2019-09-05 Thread Andy Shevchenko
; > Could you drop the I²C ID table? But why? It will allow you to instanciate the device from user space. +Cc: Javier. Javier, is it needed in new code? -- With Best Regards, Andy Shevchenko

Re: [V2, 1/2] media: i2c: dw9768: Add DT support and MAINTAINERS entry

2019-09-05 Thread Andy Shevchenko
etree/bindings/media/i2c/dongwoon,dw9768.txt | 9 + > MAINTAINERS | 7 +++ This should be: 1) two separate patches 2) binding in YAML -- With Best Regards, Andy Shevchenko

Re: [PATCH 2/2] media: i2c: dw9768: Add DW9768 VCM driver

2019-09-04 Thread Andy Shevchenko
ower_lock); > + dw9768_subdev_cleanup(dw9768_dev); > + dev_err(dev, "Probe failed: %d\n", rval); Noise. Device core has this already. > + return rval; > +} > +static const struct i2c_device_id dw9768_id_table[] = { > + { DW9768_NAME, 0 }, > + { { 0 } } {} is enough. > +}; > +MODULE_DEVICE_TABLE(i2c, dw9768_id_table); > + > +static const struct of_device_id dw9768_of_table[] = { > + { .compatible = "dongwoon,dw9768" }, > + { { 0 } } Ditto. > +}; -- With Best Regards, Andy Shevchenko

[PATCH v2] media: v4l2-fwnode: Switch to use fwnode_property_count_uXX()

2019-07-23 Thread Andy Shevchenko
Use fwnode_property_count_uXX() directly, that makes code neater. Signed-off-by: Andy Shevchenko --- - drop double 'use' in the commit message - add conversion for u64 array drivers/media/v4l2-core/v4l2-fwnode.c | 8 +++- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git

[PATCH v1] media: v4l2-fwnode: Switch to use fwnode_property_count_uXX()

2019-07-23 Thread Andy Shevchenko
Use use fwnode_property_count_uXX() directly, that makes code neater. Signed-off-by: Andy Shevchenko --- drivers/media/v4l2-core/v4l2-fwnode.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/media/v4l2-core/v4l2-fwnode.c b/drivers/media/v4l2-core/v4l2-fwnode.c

Re: [RESEND PATCH v1 0/2] Add a property in at24.c

2018-06-25 Thread Andy Shevchenko
On Mon, Jun 25, 2018 at 11:02 AM, Sakari Ailus wrote: > Hi Alan, > On Mon, Jun 25, 2018 at 03:29:41PM +0800, alanx.chi...@intel.com wrote: Agreed on all Sakari's comments against the series. -- With Best Regards, Andy Shevchenko

Re: Bugfix for Tevii S650

2018-05-21 Thread Andy Shevchenko
; I found a solution for it and uploaded a patch to the kernel bugzilla. > > See here: https://bugzilla.kernel.org/show_bug.cgi?id=197731 > > Can somebody of the maintainers have a look on it and apply the patch to the > kernes sources? You forget to Cc to maintainers (at least Mauro). -- With Best Regards, Andy Shevchenko

Re: [PATCH] media: pt1: use #ifdef CONFIG_PM_SLEEP instead of #if

2018-05-05 Thread Andy Shevchenko
.remove = pt1_remove, > .id_table = pt1_id_table, > -#if CONFIG_PM_SLEEP > +#ifdef CONFIG_PM_SLEEP > .driver.pm = &pt1_pm_ops, > #endif > }; > -- > 2.17.0 > -- With Best Regards, Andy Shevchenko

Re: [PATCH] media: pt1: fix strncmp() size warning

2018-05-05 Thread Andy Shevchenko
es. > + is_sat = !strncmp(cl->name, TC90522_I2C_DEV_SAT, > + strlen(TC90522_I2C_DEV_SAT)); In this case I don't see a point to use strNcmp(). Plain strcmp() would work. -- With Best Regards, Andy Shevchenko

Re: [PATCH] media: staging: atomisp: fix a potential missing-check bug

2018-05-04 Thread Andy Shevchenko
t; > - if (!atomisp_subdev_get_rect(sd, cfg, which, pad, target)) > + p = atomisp_subdev_get_rect(sd, cfg, which, pad, target); > + if (!p) > return -EINVAL; > - *r = *atomisp_subdev_get_rect(sd, cfg, which, pad, target); > + *r = *p; > > dev_dbg(isp->dev, "sel actual: l %d t %d w %d h %d\n", > r->left, r->top, r->width, r->height); -- Andy Shevchenko Intel Finland Oy

Re: [PATCH 2/7] media: meye: allow building it with COMPILE_TEST on non-x86

2018-04-22 Thread Andy Shevchenko
nd, u8 value); > +#else > +static inline int sony_pic_camera_command(int command, u8 value) { return 0; > }; > +#endif > > #endif /* __KERNEL__ */ -- With Best Regards, Andy Shevchenko

Re: [PATCH 07/18] media: staging: atomisp: fix endianess issues

2018-03-27 Thread Andy Shevchenko
2 *wdata = (void *)&data[2]; > + > + *wdata = be32_to_cpu(*(__be32 *)&data[2]); For x86 it is okay, though in general it should use get_unaligned(). -- Andy Shevchenko Intel Finland Oy

Re: Webcams not recognized on a Dell Latitude 5285 laptop

2018-03-13 Thread Andy Shevchenko
a release? > >> > I have no idea. Could you contact the original developers? >> > The answer is interesting, but I have no idea. > >> It seems it will be included in the 4.16 release: > >> https://www.mail-archive.com/linux-media@vger.kernel.org/msg122619.html > >> Probably just a bit too late for 4.15. > >> Frederic > -- > To unsubscribe from this list: send the line "unsubscribe linux-usb" in > the body of a message to majord...@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- With Best Regards, Andy Shevchenko

Re: [PATCH v3 06/10] pwm: add PWM modes

2018-02-22 Thread Andy Shevchenko
- With Best Regards, Andy Shevchenko

Re: [PATCH 2/5] auxdisplay: charlcd: add flush function

2018-02-13 Thread Andy Shevchenko
nother possibility to get rid of them under include/ by (re)moving to drivers/auxdisplay/. -- With Best Regards, Andy Shevchenko

Re: [PATCH] staging: media: atomisp2: remove unused headers

2018-01-29 Thread Andy Shevchenko
done for working driver. -- With Best Regards, Andy Shevchenko

Re: [PATCH v2] staging: media: remove remains of VIDEO_ATOMISP_OV8858

2018-01-29 Thread Andy Shevchenko
emove the OV8858 kconfig and files. Fine with me. We can sort things out later (repository will have the sources still in any case) when the driver itself shows signs of life. -- Andy Shevchenko Intel Finland Oy

Re: [PATCH] staging: media: remove unused VIDEO_ATOMISP_OV8858 kconfig

2018-01-26 Thread Andy Shevchenko
On Fri, Jan 26, 2018 at 2:49 PM, LABBE Corentin wrote: > On Tue, Jan 23, 2018 at 07:20:12PM +0100, Greg Kroah-Hartman wrote: >> On Tue, Jan 23, 2018 at 07:31:27PM +0200, Andy Shevchenko wrote: >> > On Tue, Jan 23, 2018 at 4:37 PM, Corentin Labbe >> > wrote: &

Re: [PATCH] staging: media: remove unused VIDEO_ATOMISP_OV8858 kconfig

2018-01-23 Thread Andy Shevchenko
ardware to test? This is *most* important reason why to accept or decline a change to the driver. -- With Best Regards, Andy Shevchenko

Re: [PATCH 3/4] tsi108_eth: use dma API properly

2018-01-10 Thread Andy Shevchenko
TSI108_TXRING_LEN * sizeof(tx_desc), > data->txring, data->txdma); > > @@ -1576,6 +1579,7 @@ tsi108_init_one(struct platform_device *pdev) > printk("tsi108_eth%d: probe...\n", pdev->id); > data = netdev_priv(dev); > data->dev = dev; > + data->pdev = pdev; > > > pr_debug("tsi108_eth%d:regs:phyresgs:phy:irq_num=0x%x:0x%x:0x%x:0x%x\n", > pdev->id, einfo->regs, einfo->phyregs, > -- > 2.14.2 > -- With Best Regards, Andy Shevchenko

Re: [BUG] atomisp_ov2680 not initializing correctly

2018-01-04 Thread Andy Shevchenko
On Sat, 2017-12-30 at 20:57 +, Alan Cox wrote: > On Tue, 19 Dec 2017 22:37:01 +0200 > Andy Shevchenko wrote: > > On Tue, 2017-12-19 at 14:00 +0200, Sakari Ailus wrote: > > > > I am trying to get the cameras in a Lenovo IdeaPad Miix 320 > > > > (Atom >

Re: [BUG] atomisp_ov2680 not initializing correctly

2018-01-04 Thread Andy Shevchenko
! > On BYT I can't currently do much as my latest Intel Android tablet has > died and it's getting hard to find more because I guess the rest of > those > made have also died. I have MRD7 with some BIOS on it I even don't know if there is any newer still available inside. -- Andy Shevchenko Intel Finland Oy

Re: [BUG] atomisp_ov2680 not initializing correctly

2018-01-04 Thread Andy Shevchenko
ually > get interrupts from it, but not much more at this point. Seems you are ahead of everyone who is trying AtomISP till now. -- Andy Shevchenko Intel Finland Oy

Re: [BUG] atomisp_ov2680 not initializing correctly

2018-01-01 Thread Andy Shevchenko
On Sun, Dec 31, 2017 at 5:19 PM, Kristian Beilke wrote: > On 12/28/2017 05:03 PM, Andy Shevchenko wrote: >> On Sat, 2017-12-23 at 01:31 +0100, Kristian Beilke wrote: >>> On 12/21/2017 03:23 PM, Andy Shevchenko wrote: >>>> On Thu, 2017-12-21 at 13:54 +0100, Kristian B

Re: [BUG] atomisp_ov2680 not initializing correctly

2017-12-29 Thread Andy Shevchenko
+Cc Hans. On Thu, 2017-12-28 at 18:03 +0200, Andy Shevchenko wrote: > On Sat, 2017-12-23 at 01:31 +0100, Kristian Beilke wrote: > > On 12/21/2017 03:23 PM, Andy Shevchenko wrote: I spend more time on investigating some additional stuff Sakari gave me, but no result so far. So, th

Re: IRQ behaivour has been changed from v4.14 to v4.15-rc1

2017-12-29 Thread Andy Shevchenko
On Fri, 2017-12-29 at 14:10 +0100, Thomas Gleixner wrote: > On Fri, 29 Dec 2017, Andy Shevchenko wrote: > > > On Thu, 2017-12-28 at 22:59 +0100, Thomas Gleixner wrote: > > > On Thu, 28 Dec 2017, Thomas Gleixner wrote: > > > > On Thu, 28 Dec 2017, Andy Shevchenk

Re: IRQ behaivour has been changed from v4.14 to v4.15-rc1

2017-12-29 Thread Andy Shevchenko
On Thu, 2017-12-28 at 22:59 +0100, Thomas Gleixner wrote: > On Thu, 28 Dec 2017, Thomas Gleixner wrote: > > On Thu, 28 Dec 2017, Andy Shevchenko wrote: > > > The result w/o above is (full log is available here > > > https://pastebin.com > > > /J5yaTbM9): &g

Re: IRQ behaivour has been changed from v4.14 to v4.15-rc1

2017-12-28 Thread Andy Shevchenko
On Thu, 2017-12-28 at 21:18 +0100, Thomas Gleixner wrote: > On Thu, 28 Dec 2017, Andy Shevchenko wrote: > > On Thu, 2017-12-28 at 18:44 +0100, Thomas Gleixner wrote: > > > On Thu, 28 Dec 2017, Andy Shevchenko wrote: > > > > On Thu, 2017-12-28 at 18:2

Re: IRQ behaivour has been changed from v4.14 to v4.15-rc1

2017-12-28 Thread Andy Shevchenko
On Thu, 2017-12-28 at 21:31 +0200, Andy Shevchenko wrote: > Anything I missed? Perhaps I could bisect, though it's not so trivial in this case, when I have a little more time. I guess it might take up to ~16 steps. If you can point to more narrow range, it would be great. -- Andy Sh

Re: IRQ behaivour has been changed from v4.14 to v4.15-rc1

2017-12-28 Thread Andy Shevchenko
On Thu, 2017-12-28 at 18:44 +0100, Thomas Gleixner wrote: > On Thu, 28 Dec 2017, Andy Shevchenko wrote: > > On Thu, 2017-12-28 at 18:21 +0100, Thomas Gleixner wrote: > > > > [ 85.167061] spurious APIC interrupt through vector ff on > > > > C

Re: IRQ behaivour has been changed from v4.14 to v4.15-rc1

2017-12-28 Thread Andy Shevchenko
1, > > --- a/arch/x86/kernel/apic/x2apic_cluster.c > +++ b/arch/x86/kernel/apic/x2apic_cluster.c > @@ -184,7 +184,7 @@ static struct apic apic_x2apic_cluster _ > .apic_id_valid = x2apic_apic_id_valid, > .apic_id_registered = > x2apic_apic_id_registered, > > - .irq_delivery_mode = dest_LowestPrio, > + .irq_delivery_mode = dest_Fixed, > .irq_dest_mode = 1, /* logical */ > > .disable_esr= 0, > > -- Andy Shevchenko Intel Finland Oy

Re: IRQ behaivour has been changed from v4.14 to v4.15-rc1

2017-12-28 Thread Andy Shevchenko
On Thu, 2017-12-28 at 19:17 +0200, Andy Shevchenko wrote: > Hi! > > Experimenting with AtomISP (yes, code is ugly and MSI handling rather > hackish, though...). > > So, with v4.14 base: See additional note below. > > [ 33.639224] atomisp-isp2 :00:03.0: Start st

Re: [ov2722 Error] atomisp: ERROR

2017-12-28 Thread Andy Shevchenko
tps://www.spinics.net/lists/linux-media/msg126250.html > > https://patchwork.linuxtv.org/project/linux-media/list/?submitter=Andy > +Shevchenko&state=* > <https://patchwork.linuxtv.org/project/linux-media/list/?submitter=And > y+Shevchenko&state=*> > > as a resu

Re: [BUG] atomisp_ov2680 not initializing correctly

2017-12-28 Thread Andy Shevchenko
On Sat, 2017-12-23 at 01:31 +0100, Kristian Beilke wrote: > On 12/21/2017 03:23 PM, Andy Shevchenko wrote: > > On Thu, 2017-12-21 at 13:54 +0100, Kristian Beilke wrote: > > > On Tue, Dec 19, 2017 at 10:37:01PM +0200, Andy Shevchenko wrote: > > > > On Tue, 2017-12-1

Re: [BUG] atomisp_ov2680 not initializing correctly

2017-12-21 Thread Andy Shevchenko
On Thu, 2017-12-21 at 13:54 +0100, Kristian Beilke wrote: > On Tue, Dec 19, 2017 at 10:37:01PM +0200, Andy Shevchenko wrote: > > On Tue, 2017-12-19 at 14:00 +0200, Sakari Ailus wrote: > > > Cc Alan and Andy. > > > > > > On Sat, Dec 16, 2017 at 04:50:04PM +0100,

Re: [PATCH v1 05/10] staging: atomisp: Remove non-ACPI leftovers

2017-12-20 Thread Andy Shevchenko
On Wed, Dec 20, 2017 at 6:54 AM, Dan Carpenter wrote: > On Tue, Dec 19, 2017 at 10:59:52PM +0200, Andy Shevchenko wrote: >> @@ -1147,10 +1145,8 @@ static int gc2235_probe(struct i2c_client *client) >> if (ret) >> gc2235_remove(client); > > This error

[PATCH v1 07/10] staging: atomisp: Remove redundant PCI code

2017-12-19 Thread Andy Shevchenko
There is no need to keep a reference to PCI root bridge. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/pci/atomisp2/atomisp_internal.h | 1 - drivers/staging/media/atomisp/pci/atomisp2/atomisp_v4l2.c | 8 2 files changed, 9 deletions(-) diff --git a/drivers

[PATCH v1 01/10] staging: atomisp: Don't leak GPIO resources if clk_get() failed

2017-12-19 Thread Andy Shevchenko
In case devm_clk_get() call fails the previously requested GPIOs are left requested. Fix this by moving GPIO request code after devm_clk_get() call. Signed-off-by: Andy Shevchenko --- .../staging/media/atomisp/platform/intel-mid/atomisp_gmin_platform.c | 4 ++-- 1 file changed, 2 insertions

[PATCH v1 09/10] staging: atomisp: Use standard DMI match table

2017-12-19 Thread Andy Shevchenko
The traditional pattern is to use DMI matching table and provide a corresponding driver_data in it. Convert driver to use DMI matching table. Signed-off-by: Andy Shevchenko --- .../platform/intel-mid/atomisp_gmin_platform.c | 109 + 1 file changed, 70 insertions(+), 39

[PATCH v1 08/10] staging: atomisp: Unexport local function

2017-12-19 Thread Andy Shevchenko
There is no need to export function which is only used once in the same module where it's defined. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/include/linux/atomisp_gmin_platform.h | 1 - .../staging/media/atomisp/platform/intel-mid/atomisp_gmin_platform.c | 5 ++-

[PATCH v1 04/10] staging: atomisp: Disable custom format for now

2017-12-19 Thread Andy Shevchenko
ned-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/include/linux/atomisp.h | 2 ++ drivers/staging/media/atomisp/pci/atomisp2/atomisp_ioctl.c | 5 - drivers/staging/media/atomisp/pci/atomisp2/atomisp_subdev.c | 2 ++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git

[PATCH v1 10/10] staging: atomisp: Fix DMI matching entry for MRD7

2017-12-19 Thread Andy Shevchenko
MRD7 board has in particular Base Board Information Manufacturer: Intel Corp. Product Name: TABLET Version: MRD 7 Fix the DMI matching entry for it. Signed-off-by: Andy Shevchenko --- .../staging/media/atomisp/platform/intel-mid

[PATCH v1 03/10] staging: atomisp: lm3554: Fix control values

2017-12-19 Thread Andy Shevchenko
Driver fails to initialize due to insane settings in the control init array. Fix this by moving to sanity. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/i2c/atomisp-lm3554.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/staging/media

[PATCH v1 05/10] staging: atomisp: Remove non-ACPI leftovers

2017-12-19 Thread Andy Shevchenko
Since all drivers are solely requiring ACPI enumeration, there is no need to additionally check for legacy platform data or ACPI handle. Remove leftovers from the sensors and platform code. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/i2c/atomisp-gc0310.c | 10

[PATCH v1 02/10] staging: atomisp: Remove duplicate NULL-check

2017-12-19 Thread Andy Shevchenko
GPIO framework checks for NULL pointer when gpiod_set_value() is called. Signed-off-by: Andy Shevchenko --- .../staging/media/atomisp/platform/intel-mid/atomisp_gmin_platform.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/media/atomisp/platform/intel

[PATCH v1 06/10] staging: atomisp: Switch to use struct device_driver directly

2017-12-19 Thread Andy Shevchenko
In a preparation of split PCI glue driver from core part, convert the driver to use more generic struct device_driver. Signed-off-by: Andy Shevchenko --- .../staging/media/atomisp/pci/atomisp2/atomisp_drvfs.c | 17 - .../staging/media/atomisp/pci/atomisp2/atomisp_drvfs.h | 5

Re: [BUG] atomisp_ov2680 not initializing correctly

2017-12-19 Thread Andy Shevchenko
I do not get a camera device. > > > > Am I missing some firmware or dependency? See above. > > Can I somehow help to improve > > the driver? Yes, definitely, but first of all we need to find at least one device and corresponding firmware where it actually works. For me it doesn't generate any interrupt (after huge hacking to make that firmware loaded and settings / platform data applied). -- Andy Shevchenko Intel Finland Oy

Re: [trivial PATCH] treewide: Align function definition open/close braces

2017-12-18 Thread Andy Shevchenko
as a timer interrupt. > */ > static void tpd_led_update(struct work_struct *work) > - { > +{ > struct eeepc_laptop *eeepc; > > eeepc = container_of(work, struct eeepc_laptop, tpd_led_work); > diff --git a/drivers/rtc/rtc-ab-b5ze-s3.c b/drivers/rtc/rtc-ab-

Re: [PATCH v2] [media] staging: atomisp: convert timestamps to ktime_t

2017-11-27 Thread Andy Shevchenko
case of ov2680, we don't seem to use the timestamp at > all, so I just remove it. > Yep, Reviewed-by: Andy Shevchenko > Signed-off-by: Arnd Bergmann > --- > v2: use min_t() as suggested by Andy Shevchenko > --- > drivers/staging/media/atomisp/i2c/ov2680.h|

Re: [PATCH 7/8] [media] staging: atomisp: convert timestamps to ktime_t

2017-11-27 Thread Andy Shevchenko
(u32)DELAY_MAX_PER_STEP_NS)); Since you are touching this, it might make sense to convert to min_t(u32, ...) ...and locate lines something like: ktime_t timeday = ns_to_ktime(min_t(u32, param1, param2)); >From my pov will make readability better. -- Andy Shevchenko Intel Finland Oy

[PATCH v1] [media] v4l2-ctrls: Don't validate BITMASK twice

2017-11-03 Thread Andy Shevchenko
There is no need to repeat what check_range() does for us, i.e. BITMASK validation in v4l2_ctrl_new(). Signed-off-by: Andy Shevchenko --- drivers/media/v4l2-core/v4l2-ctrls.c | 4 1 file changed, 4 deletions(-) diff --git a/drivers/media/v4l2-core/v4l2-ctrls.c b/drivers/media/v4l2-core

[PATCH v1 15/15] media: i2c: adv748x: Remove duplicate NULL check

2017-10-31 Thread Andy Shevchenko
Since i2c_unregister_device() became NULL-aware we may remove duplicate NULL check. Cc: Kieran Bingham Cc: Mauro Carvalho Chehab Cc: linux-media@vger.kernel.org Signed-off-by: Andy Shevchenko --- drivers/media/i2c/adv748x/adv748x-core.c | 6 ++ 1 file changed, 2 insertions(+), 4 deletions

[PATCH v1 14/15] media: adv7180: Remove duplicate checks

2017-10-31 Thread Andy Shevchenko
Since i2c_unregister_device() became NULL-aware we may remove duplicate checks. Cc: Lars-Peter Clausen Cc: Mauro Carvalho Chehab Cc: linux-media@vger.kernel.org Signed-off-by: Andy Shevchenko --- drivers/media/i2c/adv7180.c | 12 1 file changed, 4 insertions(+), 8 deletions

Re: [PATCH v1 00/13] staging: atomisp: clean up bomb

2017-10-19 Thread Andy Shevchenko
On Wed, 2017-10-18 at 23:53 +0300, Sakari Ailus wrote: > On Wed, Sep 27, 2017 at 09:24:55PM +0300, Andy Shevchenko wrote: > > The driver has been submitted with a limitation to few platforms and > > sensors which it does support. Even though two sensor drivers have > > no >

Re: [PATCH v2 08/12] intel-ipu3: params: compute and program ccs

2017-10-11 Thread Andy Shevchenko
On Wed, Oct 11, 2017 at 5:01 PM, Tuukka Toivonen wrote: > On Wed, 2017-10-11 at 16:31 +0300, Andy Shevchenko wrote: >> On Wed, Oct 11, 2017 at 10:29 AM, sakari.ai...@linux.intel.com >> wrote: >> > On Wed, Oct 11, 2017 at 04:14:37AM +, Zhi, Yong wrote: >>

Re: [PATCH v2 08/12] intel-ipu3: params: compute and program ccs

2017-10-11 Thread Andy Shevchenko
der to get it less than counter. I would consider to use something from log2.h. Roughly like if (!counter || divider < counter) return 0; return order_base_2(divider) - order_base_2(counter); -- With Best Regards, Andy Shevchenko

Re: [PATCH v3] staging: atomisp: add a driver for ov5648 camera sensor

2017-10-03 Thread Andy Shevchenko
Name (_CID, "INT5648") // _CID: Compatible ID > Name (_SUB, "INTL") // _SUB: Subsystem ID > Name (_DDN, "ov5648") // _DDN: DOS Device Name > ... > > I was not able to properly test this patch on my Lenovo Miix 310 due > to ot

Re: [PATCH v2] staging: atomisp: add a driver for ov5648 camera sensor

2017-10-01 Thread Andy Shevchenko
converting to smbus calls and regulator framework) would be a material for future changes. Other than that, please, address the rest of comments and we will be fine. You may also refer to my last patch series WRT atomisp driver where I tried to address my own comments to the rest of the code. -- With Best Regards, Andy Shevchenko

Re: [PATCH 1/1] staging: atomisp: Update TODO regarding sensors

2017-10-01 Thread Andy Shevchenko
of the device. > It will not detect those devices enumerated via ACPI as a field of the > i915 GPU driver. > > -5. The driver supports only v2 of the IPU/Camera. It will not work with the > +4. The driver supports only v2 of the IPU/Camera. It will not work with the > versions of the hardware in other SoCs. > > -- > 2.7.4 > -- With Best Regards, Andy Shevchenko

[PATCH v1 08/13] staging: atomisp: Remove ->power_ctrl() callback

2017-09-27 Thread Andy Shevchenko
There is redundant callback which does nothing in upstreamed version of the driver. Remove it along with user call places. Mostly done with help of coccinelle. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/i2c/gc0310.c | 4 drivers/staging/media

[PATCH v1 07/13] staging: atomisp: Remove ->gpio_ctrl() callback

2017-09-27 Thread Andy Shevchenko
There is redundant callback which does nothing in upstreamed version of the driver. Remove it along with user call places. Mostly done with help of coccinelle. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/i2c/gc0310.c | 4 drivers/staging/media

[PATCH v1 10/13] staging: atomisp: Remove Gmin dead code #1

2017-09-27 Thread Andy Shevchenko
struct camera_af_platform_data and bound functions are not used anywhere. Signed-off-by: Andy Shevchenko --- .../media/atomisp/include/linux/atomisp_platform.h | 6 -- .../platform/intel-mid/atomisp_gmin_platform.c | 22 -- 2 files changed, 28 deletions(-) diff

[PATCH v1 03/13] staging: atomisp: Use module_i2c_driver() macro

2017-09-27 Thread Andy Shevchenko
(f); @d depends on a && b && c@ identifier b.e, a.x; declarer name module_exit; declarer name module_i2c_driver; @@ -module_exit(e); +module_i2c_driver(x); // Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/i2c/gc0310.c| 15 +-- drivers/st

[PATCH v1 09/13] staging: atomisp: Remove unused members of camera_sensor_platform_data

2017-09-27 Thread Andy Shevchenko
Remove unused members along with dead code. Mostly done with help of coccinelle. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/i2c/gc0310.c | 13 - drivers/staging/media/atomisp/i2c/gc2235.c | 13 - drivers/staging

[PATCH v1 02/13] staging: atomisp: Remove AP1302 sensor support

2017-09-27 Thread Andy Shevchenko
This sensor is not used by any known ACPI-enabled platform (and no kernel users for it so far). Just remove it for good until we get a platform which actually uses it. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/i2c/Kconfig | 12 - drivers/staging/media/atomisp/i2c

[PATCH v1 13/13] staging: atomisp: Remove FSF snail address

2017-09-27 Thread Andy Shevchenko
d. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/i2c/gc0310.h| 4 drivers/staging/media/atomisp/i2c/libmsrlisthelper.c | 4 drivers/staging/media/atomisp/i2c/lm3554.c| 4 drivers/staging/med

[PATCH v1 11/13] staging: atomisp: Remove Gmin dead code #2

2017-09-27 Thread Andy Shevchenko
media/lm3642.h is not used anywhere. Moreover, there is a driver under LEDs framework for very same IP which would be used anyway. Signed-off-by: Andy Shevchenko --- .../staging/media/atomisp/include/media/lm3642.h | 153 - 1 file changed, 153 deletions(-) delete mode

[PATCH v1 12/13] staging: atomisp: Remove duplicate declaration in header

2017-09-27 Thread Andy Shevchenko
There are 3 declarations that are present in atomisp_platform.h and atomisp_gmin_platform.h. Remove duplications from the latter. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/include/linux/atomisp_gmin_platform.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers

[PATCH v1 00/13] staging: atomisp: clean up bomb

2017-09-27 Thread Andy Shevchenko
as an intermediate clean up. This part toughly related to removal of unused sensor drivers in patches 1 and 2. Patch series has been partially compile tested. It would be nice to see someone with hardware to confirm it doesn't break anything. Andy Shevchenko (13): staging: atomisp: Remove

[PATCH v1 06/13] staging: atomisp: Remove unneeded gpio.h inclusion

2017-09-27 Thread Andy Shevchenko
GPIO handling is done only in two modules, the rest do not need to include linux/gpio.h header. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/i2c/gc0310.c| 1 - drivers/staging/media/atomisp/i2c/gc2235.c| 1 - drivers/staging/media/atomisp/i2c/mt9m114.c

[PATCH v1 04/13] staging: atomisp: Switch i2c drivers to use ->probe_new()

2017-09-27 Thread Andy Shevchenko
Since most of the drivers are being used on ACPI enabled platforms there is no need to keep legacy API support for them. Thus, switch to ->probe_new() callback and remove orphaned code. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/i2c/Kconfig|

[PATCH v1 05/13] staging: atomisp: Do not set GPIO twice

2017-09-27 Thread Andy Shevchenko
gpiod_get() configures GPIO line at the time of successful request. Thus, no need to do this explicitly. Signed-off-by: Andy Shevchenko --- .../atomisp/platform/intel-mid/atomisp_gmin_platform.c | 14 ++ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/drivers

Re: [PATCH v2] staging: atomisp: add a driver for ov5648 camera sensor

2017-09-25 Thread Andy Shevchenko
int ret; + empty line. Please check all functions. > + dev_dbg(&client->dev, "@%s:\n", __func__); Noise. Remove. Do this for all similar cases. > + mutex_lock(&dev->input_lock); > + > + ret = ov5648_write_reg(client, OV5648_8BIT, OV5648_SW_STREAM, > + enable ? OV5648_START_STREAMING : > + OV5648_STOP_STREAMING); > + > + mutex_unlock(&dev->input_lock); > + > + return ret; > +} > +static int ov5648_remove(struct i2c_client *client) > +{ > + struct v4l2_subdev *sd = i2c_get_clientdata(client); > + struct ov5648_device *dev = to_ov5648_sensor(sd); > + dev_dbg(&client->dev, "ov5648_remove...\n"); Noise, remove. > + > + dev->platform_data->csi_cfg(sd, 0); > + > + v4l2_device_unregister_subdev(sd); > + media_entity_cleanup(&dev->sd.entity); > + v4l2_ctrl_handler_free(&dev->ctrl_handler); > + kfree(dev); > + > + return 0; > +} > + > +static int ov5648_probe(struct i2c_client *client, > + const struct i2c_device_id *id) > +{ > + struct ov5648_device *dev; > + size_t len = CAMERA_MODULE_ID_LEN * sizeof(char); > + int ret; > + void *pdata; > + unsigned int i; > + > + dev = kzalloc(sizeof(*dev), GFP_KERNEL); > + if (!dev) { > + dev_err(&client->dev, "out of memory\n"); > + return -ENOMEM; > + } > + > + dev->camera_module = kzalloc(len, GFP_KERNEL); > + if (!dev->camera_module) { > + kfree(dev); > + dev_err(&client->dev, "out of memory\n"); > + return -ENOMEM; > + } > + > + mutex_init(&dev->input_lock); > + > + dev->fmt_idx = 0; > + //otp functions Wrong style, noisy comment. Remove. > + dev->current_otp.otp_en = 1;// enable otp functions Ditto. > + v4l2_i2c_subdev_init(&(dev->sd), client, &ov5648_ops); > + > + if (gmin_get_config_var(&client->dev, "CameraModule", > + dev->camera_module, &len)) { > + kfree(dev->camera_module); > + dev->camera_module = NULL; > + dev_info(&client->dev, "Camera module id is > missing\n"); > + } > + > + if (ACPI_COMPANION(&client->dev)) > + pdata = gmin_camera_platform_data(&dev->sd, > + ATOMISP_INPUT_FORMA > T_RAW_10, > + atomisp_bayer_order > _bggr); > + else > + pdata = client->dev.platform_data; What kind of platforms will use platform_data? > +out_free: > + v4l2_device_unregister_subdev(&dev->sd); Doesn't v4l2 have devm_*() helpers? > + kfree(dev->camera_module); > + kfree(dev); Shouldn't those be devm_kzalloc() ? > + return ret; > +} > + > +static const struct acpi_device_id ov5648_acpi_match[] = { > + {"XXOV5648"}, WTF is that? > + {"INT5648"}, > + {}, > +}; > +MODULE_DEVICE_TABLE(acpi, ov5648_acpi_match); > + > +MODULE_DEVICE_TABLE(i2c, ov5648_id); Where is the table? > +static struct i2c_driver ov5648_driver = { > + .driver = { > + .owner = THIS_MODULE, Redundant. > + .name = OV5648_NAME, > + .acpi_match_table = ACPI_PTR(ov5648_acpi_match), > + }, > + .probe = ov5648_probe, > + .remove = ov5648_remove, > + .id_table = ov5648_id, > +}; > + > +static int init_ov5648(void) > +{ > + return i2c_add_driver(&ov5648_driver); > +} > + > +static void exit_ov5648(void) > +{ > + > + i2c_del_driver(&ov5648_driver); > +} > + > +module_init(init_ov5648); > +module_exit(exit_ov5648); module_i2c_driver(); > +#ifndef __OV5648_H__ > +#define __OV5648_H__ + empty line. > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include "../include/linux/atomisp_platform.h" Why? Are they all needed for definitions below? I'm pretty sure you may leave only couple out of them. > + > +#define OV5648_NAME "ov5648" Why it's here? > +static const struct i2c_device_id ov5648_id[] = { > + {OV5648_NAME, 0}, > + {} > +}; WTF?! It shouldn't be in the header! -- Andy Shevchenko Intel Finland Oy

Re: [PATCH] [media] staging: atomisp: use clock framework for camera clocks

2017-09-20 Thread Andy Shevchenko
On Wed, 2017-09-20 at 12:01 -0500, Pierre-Louis Bossart wrote: > > On 09/20/2017 04:12 AM, Andy Shevchenko wrote: > > On Tue, 2017-09-19 at 15:45 -0500, Pierre-Louis Bossart wrote: > > > The Atom ISP driver initializes and configures PMC clocks which > > > are >

Re: [PATCH] [media] staging: atomisp: use clock framework for camera clocks

2017-09-20 Thread Andy Shevchenko
nd without -D implied?) Other than that - nice clean up! Reviewed-by: Andy Shevchenko > Tested-by: Carlo Caione > Signed-off-by: Pierre-Louis Bossart com> > --- > drivers/staging/media/atomisp/Kconfig | 1 + > drivers/staging/media/atomisp/platform/Makefile| 1

Re: [PATCH] staging: atomisp: add a driver for ov5648 camera sensor

2017-09-18 Thread Andy Shevchenko
flag here. Second, Devid, please answer to the following: is it an official BIOS which is available in the wild? If it's so, please, add a paragraph to the commit message explaining how do you get this and point to the DSDT excerpt. Put an answer to above question to the commit message as well. -- Andy Shevchenko Intel Finland Oy

[PATCH v1 5/7] staging: atomisp: Move to upstream IOSF MBI API

2017-09-01 Thread Andy Shevchenko
There is a common for x86 IOSF MBI API. Move atomisp code to use it. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/pci/Kconfig | 1 + .../media/atomisp/pci/atomisp2/atomisp_cmd.c | 20 +++- .../media/atomisp/pci/atomisp2/atomisp_v4l2.c | 38

[PATCH v1 3/7] staging: atomisp: Remove dead code for MID (#2)

2017-09-01 Thread Andy Shevchenko
intel_mid_soc_stepping() is not used anywhere. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/include/asm/intel_mid_pcihelpers.h | 1 - .../media/atomisp/platform/intel-mid/intel_mid_pcihelpers.c| 7 --- 2 files changed, 8 deletions(-) diff --git a/drivers

[PATCH v1 7/7] staging: atomisp: Remove unneeded intel-mid.h inclusion

2017-09-01 Thread Andy Shevchenko
In many files in the driver the intel-mid.h header inclusion is redundant. Signed-off-by: Andy Shevchenko --- drivers/staging/media/atomisp/i2c/imx/drv201.c| 1 - drivers/staging/media/atomisp/i2c/imx/dw9714.c| 1 - drivers/staging/media/atomisp

[PATCH v1 6/7] staging: atomisp: Remove dead code for MID (#4)

2017-09-01 Thread Andy Shevchenko
Since we switched to upstream IOSF MBI API the custom code become not in use anymore. Signed-off-by: Andy Shevchenko --- .../atomisp/include/asm/intel_mid_pcihelpers.h | 22 - .../media/atomisp/pci/atomisp2/atomisp_internal.h | 1 - .../media/atomisp/platform/intel-mid/Makefile

[PATCH v1 1/7] staging: atomisp: Remove dead code for MID (#1)

2017-09-01 Thread Andy Shevchenko
Remove dead code. If someone needs it the P-Unit semaphore is handled by I2C DesignWare driver (drivers/i2c/busses/i2c-designware-baytrail.c). Signed-off-by: Andy Shevchenko --- .../atomisp/include/asm/intel_mid_pcihelpers.h | 2 - .../platform/intel-mid/intel_mid_pcihelpers.c | 101

[PATCH v1 4/7] staging: atomisp: Remove dead code for MID (#3)

2017-09-01 Thread Andy Shevchenko
intel_mid_msgbus_*_raw*() are not used anywhere. Signed-off-by: Andy Shevchenko --- .../atomisp/include/asm/intel_mid_pcihelpers.h | 4 -- .../platform/intel-mid/intel_mid_pcihelpers.c | 58 -- 2 files changed, 62 deletions(-) diff --git a/drivers/staging/media

[PATCH v1 2/7] staging: atomisp: Don't override D3 delay settings here

2017-09-01 Thread Andy Shevchenko
The d3_delay parameter is set by arch/x86/pci/intel_mid_pci.c and drivers/pci/quirks.c. No need to override that settings in unrelated driver. Signed-off-by: Andy Shevchenko --- .../atomisp/include/asm/intel_mid_pcihelpers.h | 8 -- .../platform/intel-mid/intel_mid_pcihelpers.c

Re: [PATCH v2 09/12] intel-ipu3: css hardware setup

2017-06-17 Thread Andy Shevchenko
On Sat, Jun 17, 2017 at 9:43 PM, Sakari Ailus wrote: > On Sat, Jun 17, 2017 at 01:54:51AM +0300, Andy Shevchenko wrote: >> On Thu, Jun 15, 2017 at 1:19 AM, Yong Zhi wrote: >> > +static void writes(void *mem, ssize_t len, void __iomem *reg) >> > +{ &

Re: [PATCH v2 12/12] intel-ipu3: imgu top level pci device

2017-06-17 Thread Andy Shevchenko
eed. Thanks for explanation. PM runtime is hard :-) Previously I didn't meet (and actually never used) check for returning code of pm_runtime_get*(). > [1] > http://elixir.free-electrons.com/linux/v4.11.6/source/include/linux/pm_runtime.h#L235 > and the main part: > http://elixir.free-electrons.com/linux/v4.11.6/source/drivers/base/power/runtime.c#L1027 > > [2] > http://elixir.free-electrons.com/linux/v4.11.6/source/Documentation/power/runtime_pm.txt#L128 -- With Best Regards, Andy Shevchenko

Re: [PATCH v2 12/12] intel-ipu3: imgu top level pci device

2017-06-16 Thread Andy Shevchenko
pm_runtime_put(dev); I'm not sure it's a right thing to do. How did you test runtime PM counters in this case? > + return r; > + } -- With Best Regards, Andy Shevchenko

Re: [PATCH v2 09/12] intel-ipu3: css hardware setup

2017-06-16 Thread Andy Shevchenko
+ reg += 4; > + len -= 4; > + } > +} Again, I just looked into patches and first what I see is reinventing the wheel. memcpy_toio() -- With Best Regards, Andy Shevchenko

Re: [PATCH v2 08/12] intel-ipu3: params: compute and program ccs

2017-06-16 Thread Andy Shevchenko
y* recommended you learn what we have under lib/ (and not only there) in kernel bewfore submitting a new version. -- With Best Regards, Andy Shevchenko

Re: [PATCH 00/12] Intel IPU3 ImgU patchset

2017-06-15 Thread Andy Shevchenko
ote: it would be good to put it there. Hopefully the firmware for IPUv3 is not going to be changed two times per day. -- With Best Regards, Andy Shevchenko

[PATCH v1] [media] as3645a: Join string literals back

2017-06-04 Thread Andy Shevchenko
There is no need to split long string literals. Join them back. No functional change intended. Signed-off-by: Andy Shevchenko --- drivers/media/i2c/as3645a.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/media/i2c/as3645a.c b/drivers/media/i2c

Re: [PATCH 2/7] staging: atomisp: Do not call dev_warn with a NULL device

2017-05-28 Thread Andy Shevchenko
ese actually is a good > thing. Perhaps removing all code related explicitly to Gmin is a right thing to do. -- With Best Regards, Andy Shevchenko

  1   2   3   >