* [PATCH 0/6] remove deprecated i2c_new_device API
@ 2020-06-15 7:58 Wolfram Sang
2020-06-15 7:58 ` [PATCH 1/6] drm: encoder_slave: fix refcouting error for modules Wolfram Sang
` (4 more replies)
0 siblings, 5 replies; 8+ messages in thread
From: Wolfram Sang @ 2020-06-15 7:58 UTC (permalink / raw)
To: linux-i2c
Cc: linux-fbdev, x86, linux-kernel, dri-devel, platform-driver-x86,
Wolfram Sang, linux-media
I want to remove the above API this cycle, and just a few patches have
not made it into 5.8-rc1. They have been reviewed and most had been
promised to get into linux-next, but well, things happen. So, I hope it
is okay for everyone to collect them like this and push them via I2C for
5.8-rc2.
One minor exception is the media documentation patch which I simply have
missed so far, but it is trivial.
And then, finally, there is the removal of the old API as the final
patch. Phew, that's been a long ride.
I am open for comments, of course.
Happy hacking,
Wolfram
Wolfram Sang (6):
drm: encoder_slave: fix refcouting error for modules
drm: encoder_slave: use new I2C API
x86/platform/intel-mid: convert to use i2c_new_client_device()
video: backlight: tosa_lcd: convert to use i2c_new_client_device()
Documentation: media: convert to use i2c_new_client_device()
i2c: remove deprecated i2c_new_device API
.../driver-api/media/v4l2-subdev.rst | 2 +-
.../userspace-api/media/conf_nitpick.py | 2 +-
arch/x86/platform/intel-mid/sfi.c | 4 +--
drivers/gpu/drm/drm_encoder_slave.c | 15 ++++-------
drivers/i2c/i2c-core-base.c | 25 -------------------
drivers/video/backlight/tosa_lcd.c | 4 +--
include/linux/i2c.h | 8 +++---
7 files changed, 14 insertions(+), 46 deletions(-)
--
2.27.0
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 1/6] drm: encoder_slave: fix refcouting error for modules
2020-06-15 7:58 [PATCH 0/6] remove deprecated i2c_new_device API Wolfram Sang
@ 2020-06-15 7:58 ` Wolfram Sang
2020-06-15 7:58 ` [PATCH 2/6] drm: encoder_slave: use new I2C API Wolfram Sang
` (3 subsequent siblings)
4 siblings, 0 replies; 8+ messages in thread
From: Wolfram Sang @ 2020-06-15 7:58 UTC (permalink / raw)
To: linux-i2c
Cc: David Airlie, Emil Velikov, linux-kernel, Wolfram Sang,
dri-devel, Thomas Zimmermann, Dave Airlie
module_put() balances try_module_get(), not request_module(). Fix the
error path to match that.
Fixes: 2066facca4c7 ("drm/kms: slave encoder interface.")
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
---
I'd like to push it via I2C for 5.8-rc2.
drivers/gpu/drm/drm_encoder_slave.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/drm_encoder_slave.c b/drivers/gpu/drm/drm_encoder_slave.c
index cf804389f5ec..d50a7884e69e 100644
--- a/drivers/gpu/drm/drm_encoder_slave.c
+++ b/drivers/gpu/drm/drm_encoder_slave.c
@@ -84,7 +84,7 @@ int drm_i2c_encoder_init(struct drm_device *dev,
err = encoder_drv->encoder_init(client, dev, encoder);
if (err)
- goto fail_unregister;
+ goto fail_module_put;
if (info->platform_data)
encoder->slave_funcs->set_config(&encoder->base,
@@ -92,9 +92,10 @@ int drm_i2c_encoder_init(struct drm_device *dev,
return 0;
+fail_module_put:
+ module_put(module);
fail_unregister:
i2c_unregister_device(client);
- module_put(module);
fail:
return err;
}
--
2.27.0
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 2/6] drm: encoder_slave: use new I2C API
2020-06-15 7:58 [PATCH 0/6] remove deprecated i2c_new_device API Wolfram Sang
2020-06-15 7:58 ` [PATCH 1/6] drm: encoder_slave: fix refcouting error for modules Wolfram Sang
@ 2020-06-15 7:58 ` Wolfram Sang
2020-06-15 7:58 ` [PATCH 4/6] video: backlight: tosa_lcd: convert to use i2c_new_client_device() Wolfram Sang
` (2 subsequent siblings)
4 siblings, 0 replies; 8+ messages in thread
From: Wolfram Sang @ 2020-06-15 7:58 UTC (permalink / raw)
To: linux-i2c
Cc: David Airlie, Emil Velikov, linux-kernel, Wolfram Sang,
dri-devel, Thomas Zimmermann
i2c_new_client() is deprecated, use the replacement
i2c_new_client_device(). Also, we have a helper to check if a driver is
bound. Use it to simplify the code. Note that this changes the errno for
a failed device creation from ENOMEM to ENODEV. No callers currently
interpret this errno, though, so we use this condensed error check.
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
---
I'd like to push it via I2C for 5.8-rc2.
drivers/gpu/drm/drm_encoder_slave.c | 10 ++--------
1 file changed, 2 insertions(+), 8 deletions(-)
diff --git a/drivers/gpu/drm/drm_encoder_slave.c b/drivers/gpu/drm/drm_encoder_slave.c
index d50a7884e69e..e464429d32df 100644
--- a/drivers/gpu/drm/drm_encoder_slave.c
+++ b/drivers/gpu/drm/drm_encoder_slave.c
@@ -61,13 +61,8 @@ int drm_i2c_encoder_init(struct drm_device *dev,
request_module("%s%s", I2C_MODULE_PREFIX, info->type);
- client = i2c_new_device(adap, info);
- if (!client) {
- err = -ENOMEM;
- goto fail;
- }
-
- if (!client->dev.driver) {
+ client = i2c_new_client_device(adap, info);
+ if (!i2c_client_has_driver(client)) {
err = -ENODEV;
goto fail_unregister;
}
@@ -96,7 +91,6 @@ int drm_i2c_encoder_init(struct drm_device *dev,
module_put(module);
fail_unregister:
i2c_unregister_device(client);
-fail:
return err;
}
EXPORT_SYMBOL(drm_i2c_encoder_init);
--
2.27.0
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 4/6] video: backlight: tosa_lcd: convert to use i2c_new_client_device()
2020-06-15 7:58 [PATCH 0/6] remove deprecated i2c_new_device API Wolfram Sang
2020-06-15 7:58 ` [PATCH 1/6] drm: encoder_slave: fix refcouting error for modules Wolfram Sang
2020-06-15 7:58 ` [PATCH 2/6] drm: encoder_slave: use new I2C API Wolfram Sang
@ 2020-06-15 7:58 ` Wolfram Sang
2020-06-18 8:43 ` Lee Jones
2020-06-16 12:12 ` [PATCH 0/6] remove deprecated i2c_new_device API Daniel Vetter
2020-06-19 7:21 ` Wolfram Sang
4 siblings, 1 reply; 8+ messages in thread
From: Wolfram Sang @ 2020-06-15 7:58 UTC (permalink / raw)
To: linux-i2c
Cc: Daniel Thompson, Bartlomiej Zolnierkiewicz, Jingoo Han,
linux-fbdev, dri-devel, linux-kernel, Wolfram Sang, Lee Jones
Move away from the deprecated API and return the shiny new ERRPTR where
useful.
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
---
I'd like to push it via I2C for 5.8-rc2.
drivers/video/backlight/tosa_lcd.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/video/backlight/tosa_lcd.c b/drivers/video/backlight/tosa_lcd.c
index e8ab583e5098..113116d3585c 100644
--- a/drivers/video/backlight/tosa_lcd.c
+++ b/drivers/video/backlight/tosa_lcd.c
@@ -107,7 +107,7 @@ static void tosa_lcd_tg_on(struct tosa_lcd_data *data)
/* TG LCD GVSS */
tosa_tg_send(spi, TG_PINICTL, 0x0);
- if (!data->i2c) {
+ if (IS_ERR_OR_NULL(data->i2c)) {
/*
* after the pannel is powered up the first time,
* we can access the i2c bus so probe for the DAC
@@ -119,7 +119,7 @@ static void tosa_lcd_tg_on(struct tosa_lcd_data *data)
.addr = DAC_BASE,
.platform_data = data->spi,
};
- data->i2c = i2c_new_device(adap, &info);
+ data->i2c = i2c_new_client_device(adap, &info);
}
}
--
2.27.0
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH 0/6] remove deprecated i2c_new_device API
2020-06-15 7:58 [PATCH 0/6] remove deprecated i2c_new_device API Wolfram Sang
` (2 preceding siblings ...)
2020-06-15 7:58 ` [PATCH 4/6] video: backlight: tosa_lcd: convert to use i2c_new_client_device() Wolfram Sang
@ 2020-06-16 12:12 ` Daniel Vetter
2020-06-16 14:05 ` Emil Velikov
2020-06-19 7:21 ` Wolfram Sang
4 siblings, 1 reply; 8+ messages in thread
From: Daniel Vetter @ 2020-06-16 12:12 UTC (permalink / raw)
To: Wolfram Sang
Cc: linux-fbdev, x86, linux-kernel, dri-devel, platform-driver-x86,
linux-i2c, linux-media
On Mon, Jun 15, 2020 at 09:58:09AM +0200, Wolfram Sang wrote:
> I want to remove the above API this cycle, and just a few patches have
> not made it into 5.8-rc1. They have been reviewed and most had been
> promised to get into linux-next, but well, things happen. So, I hope it
> is okay for everyone to collect them like this and push them via I2C for
> 5.8-rc2.
for the drm side of things:
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
>
> One minor exception is the media documentation patch which I simply have
> missed so far, but it is trivial.
>
> And then, finally, there is the removal of the old API as the final
> patch. Phew, that's been a long ride.
>
> I am open for comments, of course.
>
> Happy hacking,
>
> Wolfram
>
>
> Wolfram Sang (6):
> drm: encoder_slave: fix refcouting error for modules
> drm: encoder_slave: use new I2C API
> x86/platform/intel-mid: convert to use i2c_new_client_device()
> video: backlight: tosa_lcd: convert to use i2c_new_client_device()
> Documentation: media: convert to use i2c_new_client_device()
> i2c: remove deprecated i2c_new_device API
>
> .../driver-api/media/v4l2-subdev.rst | 2 +-
> .../userspace-api/media/conf_nitpick.py | 2 +-
> arch/x86/platform/intel-mid/sfi.c | 4 +--
> drivers/gpu/drm/drm_encoder_slave.c | 15 ++++-------
> drivers/i2c/i2c-core-base.c | 25 -------------------
> drivers/video/backlight/tosa_lcd.c | 4 +--
> include/linux/i2c.h | 8 +++---
> 7 files changed, 14 insertions(+), 46 deletions(-)
>
> --
> 2.27.0
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/6] remove deprecated i2c_new_device API
2020-06-16 12:12 ` [PATCH 0/6] remove deprecated i2c_new_device API Daniel Vetter
@ 2020-06-16 14:05 ` Emil Velikov
0 siblings, 0 replies; 8+ messages in thread
From: Emil Velikov @ 2020-06-16 14:05 UTC (permalink / raw)
To: Wolfram Sang, linux-i2c, linux-fbdev, x86,
Linux-Kernel@Vger. Kernel. Org, ML dri-devel,
platform-driver-x86, linux-media
Hi all,
On Tue, 16 Jun 2020 at 13:12, Daniel Vetter <daniel@ffwll.ch> wrote:
>
> On Mon, Jun 15, 2020 at 09:58:09AM +0200, Wolfram Sang wrote:
> > I want to remove the above API this cycle, and just a few patches have
> > not made it into 5.8-rc1. They have been reviewed and most had been
> > promised to get into linux-next, but well, things happen. So, I hope it
> > is okay for everyone to collect them like this and push them via I2C for
> > 5.8-rc2.
>
> for the drm side of things:
>
> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
> >
> > One minor exception is the media documentation patch which I simply have
> > missed so far, but it is trivial.
> >
> > And then, finally, there is the removal of the old API as the final
> > patch. Phew, that's been a long ride.
> >
> > I am open for comments, of course.
> >
> > Happy hacking,
> >
> > Wolfram
> >
> >
> > Wolfram Sang (6):
> > drm: encoder_slave: fix refcouting error for modules
> > drm: encoder_slave: use new I2C API
The first two are in drm-misc-next and are to be expected with the 5.9
merge window. As long as that doesn't cause major nuisance proceed as
you prefer.
-Emil
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 4/6] video: backlight: tosa_lcd: convert to use i2c_new_client_device()
2020-06-15 7:58 ` [PATCH 4/6] video: backlight: tosa_lcd: convert to use i2c_new_client_device() Wolfram Sang
@ 2020-06-18 8:43 ` Lee Jones
0 siblings, 0 replies; 8+ messages in thread
From: Lee Jones @ 2020-06-18 8:43 UTC (permalink / raw)
To: Wolfram Sang
Cc: Daniel Thompson, Bartlomiej Zolnierkiewicz, Jingoo Han,
linux-fbdev, dri-devel, linux-kernel, linux-i2c
On Mon, 15 Jun 2020, Wolfram Sang wrote:
> Move away from the deprecated API and return the shiny new ERRPTR where
> useful.
>
> Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
> Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
> ---
>
> I'd like to push it via I2C for 5.8-rc2.
Go for it:
Acked-by: Lee Jones <lee.jones@linaro.org>
--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/6] remove deprecated i2c_new_device API
2020-06-15 7:58 [PATCH 0/6] remove deprecated i2c_new_device API Wolfram Sang
` (3 preceding siblings ...)
2020-06-16 12:12 ` [PATCH 0/6] remove deprecated i2c_new_device API Daniel Vetter
@ 2020-06-19 7:21 ` Wolfram Sang
4 siblings, 0 replies; 8+ messages in thread
From: Wolfram Sang @ 2020-06-19 7:21 UTC (permalink / raw)
To: linux-i2c
Cc: linux-fbdev, x86, linux-kernel, dri-devel, platform-driver-x86,
linux-media
[-- Attachment #1.1: Type: text/plain, Size: 683 bytes --]
On Mon, Jun 15, 2020 at 09:58:09AM +0200, Wolfram Sang wrote:
> I want to remove the above API this cycle, and just a few patches have
> not made it into 5.8-rc1. They have been reviewed and most had been
> promised to get into linux-next, but well, things happen. So, I hope it
> is okay for everyone to collect them like this and push them via I2C for
> 5.8-rc2.
>
> One minor exception is the media documentation patch which I simply have
> missed so far, but it is trivial.
>
> And then, finally, there is the removal of the old API as the final
> patch. Phew, that's been a long ride.
>
> I am open for comments, of course.
Applied to for-current, thanks!
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
[-- Attachment #2: Type: text/plain, Size: 160 bytes --]
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2020-06-22 7:08 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-15 7:58 [PATCH 0/6] remove deprecated i2c_new_device API Wolfram Sang
2020-06-15 7:58 ` [PATCH 1/6] drm: encoder_slave: fix refcouting error for modules Wolfram Sang
2020-06-15 7:58 ` [PATCH 2/6] drm: encoder_slave: use new I2C API Wolfram Sang
2020-06-15 7:58 ` [PATCH 4/6] video: backlight: tosa_lcd: convert to use i2c_new_client_device() Wolfram Sang
2020-06-18 8:43 ` Lee Jones
2020-06-16 12:12 ` [PATCH 0/6] remove deprecated i2c_new_device API Daniel Vetter
2020-06-16 14:05 ` Emil Velikov
2020-06-19 7:21 ` Wolfram Sang
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).