From: Heiner Kallweit <hkallweit1@gmail.com>
To: Wolfram Sang <wsa@kernel.org>, Helge Deller <deller@gmx.de>
Cc: linux-i2c@vger.kernel.org, Heiner Kallweit <hkallweit1@gmail.com>,
linux-fbdev@vger.kernel.org, dri-devel@lists.freedesktop.org,
linux-kernel@vger.kernel.org
Subject: [PATCH 05/20] drivers/video/fbdev: remove I2C_CLASS_DDC support
Date: Mon, 13 Nov 2023 12:23:29 +0100 [thread overview]
Message-ID: <20231113112344.719-6-hkallweit1@gmail.com> (raw)
In-Reply-To: <20231113112344.719-1-hkallweit1@gmail.com>
After removal of the legacy EEPROM driver and I2C_CLASS_DDC support in
olpc_dcon there's no i2c client driver left supporting I2C_CLASS_DDC.
Class-based device auto-detection is a legacy mechanism and shouldn't
be used in new code. So we can remove this class completely now.
Preferably this series should be applied via the i2c tree.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
---
drivers/video/fbdev/i740fb.c | 1 -
drivers/video/fbdev/matrox/i2c-matroxfb.c | 12 ++++--------
drivers/video/fbdev/s3fb.c | 1 -
drivers/video/fbdev/tdfxfb.c | 1 -
drivers/video/fbdev/tridentfb.c | 1 -
5 files changed, 4 insertions(+), 12 deletions(-)
diff --git a/drivers/video/fbdev/i740fb.c b/drivers/video/fbdev/i740fb.c
index 1897e65ab..9b74dae71 100644
--- a/drivers/video/fbdev/i740fb.c
+++ b/drivers/video/fbdev/i740fb.c
@@ -163,7 +163,6 @@ static int i740fb_setup_ddc_bus(struct fb_info *info)
strscpy(par->ddc_adapter.name, info->fix.id,
sizeof(par->ddc_adapter.name));
par->ddc_adapter.owner = THIS_MODULE;
- par->ddc_adapter.class = I2C_CLASS_DDC;
par->ddc_adapter.algo_data = &par->ddc_algo;
par->ddc_adapter.dev.parent = info->device;
par->ddc_algo.setsda = i740fb_ddc_setsda;
diff --git a/drivers/video/fbdev/matrox/i2c-matroxfb.c b/drivers/video/fbdev/matrox/i2c-matroxfb.c
index e2e4705e3..fa07e1e5c 100644
--- a/drivers/video/fbdev/matrox/i2c-matroxfb.c
+++ b/drivers/video/fbdev/matrox/i2c-matroxfb.c
@@ -100,8 +100,7 @@ static const struct i2c_algo_bit_data matrox_i2c_algo_template =
};
static int i2c_bus_reg(struct i2c_bit_adapter* b, struct matrox_fb_info* minfo,
- unsigned int data, unsigned int clock, const char *name,
- int class)
+ unsigned int data, unsigned int clock, const char *name)
{
int err;
@@ -112,7 +111,6 @@ static int i2c_bus_reg(struct i2c_bit_adapter* b, struct matrox_fb_info* minfo,
snprintf(b->adapter.name, sizeof(b->adapter.name), name,
minfo->fbcon.node);
i2c_set_adapdata(&b->adapter, b);
- b->adapter.class = class;
b->adapter.algo_data = &b->bac;
b->adapter.dev.parent = &minfo->pcidev->dev;
b->bac = matrox_i2c_algo_template;
@@ -160,20 +158,18 @@ static void* i2c_matroxfb_probe(struct matrox_fb_info* minfo) {
case MGA_2164:
err = i2c_bus_reg(&m2info->ddc1, minfo,
DDC1B_DATA, DDC1B_CLK,
- "DDC:fb%u #0", I2C_CLASS_DDC);
+ "DDC:fb%u #0");
break;
default:
err = i2c_bus_reg(&m2info->ddc1, minfo,
DDC1_DATA, DDC1_CLK,
- "DDC:fb%u #0", I2C_CLASS_DDC);
+ "DDC:fb%u #0");
break;
}
if (err)
goto fail_ddc1;
if (minfo->devflags.dualhead) {
- err = i2c_bus_reg(&m2info->ddc2, minfo,
- DDC2_DATA, DDC2_CLK,
- "DDC:fb%u #1", I2C_CLASS_DDC);
+ err = i2c_bus_reg(&m2info->ddc2, minfo, DDC2_DATA, DDC2_CLK, "DDC:fb%u #1");
if (err == -ENODEV) {
printk(KERN_INFO "i2c-matroxfb: VGA->TV plug detected, DDC unavailable.\n");
} else if (err)
diff --git a/drivers/video/fbdev/s3fb.c b/drivers/video/fbdev/s3fb.c
index 589b349cb..07722a5ea 100644
--- a/drivers/video/fbdev/s3fb.c
+++ b/drivers/video/fbdev/s3fb.c
@@ -252,7 +252,6 @@ static int s3fb_setup_ddc_bus(struct fb_info *info)
strscpy(par->ddc_adapter.name, info->fix.id,
sizeof(par->ddc_adapter.name));
par->ddc_adapter.owner = THIS_MODULE;
- par->ddc_adapter.class = I2C_CLASS_DDC;
par->ddc_adapter.algo_data = &par->ddc_algo;
par->ddc_adapter.dev.parent = info->device;
par->ddc_algo.setsda = s3fb_ddc_setsda;
diff --git a/drivers/video/fbdev/tdfxfb.c b/drivers/video/fbdev/tdfxfb.c
index 22aa95313..51ebe7835 100644
--- a/drivers/video/fbdev/tdfxfb.c
+++ b/drivers/video/fbdev/tdfxfb.c
@@ -1267,7 +1267,6 @@ static int tdfxfb_setup_ddc_bus(struct tdfxfb_i2c_chan *chan, const char *name,
strscpy(chan->adapter.name, name, sizeof(chan->adapter.name));
chan->adapter.owner = THIS_MODULE;
- chan->adapter.class = I2C_CLASS_DDC;
chan->adapter.algo_data = &chan->algo;
chan->adapter.dev.parent = dev;
chan->algo.setsda = tdfxfb_ddc_setsda;
diff --git a/drivers/video/fbdev/tridentfb.c b/drivers/video/fbdev/tridentfb.c
index 816d40b6f..516cf2a18 100644
--- a/drivers/video/fbdev/tridentfb.c
+++ b/drivers/video/fbdev/tridentfb.c
@@ -274,7 +274,6 @@ static int tridentfb_setup_ddc_bus(struct fb_info *info)
strscpy(par->ddc_adapter.name, info->fix.id,
sizeof(par->ddc_adapter.name));
par->ddc_adapter.owner = THIS_MODULE;
- par->ddc_adapter.class = I2C_CLASS_DDC;
par->ddc_adapter.algo_data = &par->ddc_algo;
par->ddc_adapter.dev.parent = info->device;
if (is_oldclock(par->chip_id)) { /* not sure if this check is OK */
WARNING: multiple messages have this Message-ID (diff)
From: Heiner Kallweit <hkallweit1@gmail.com>
To: Wolfram Sang <wsa@kernel.org>, Helge Deller <deller@gmx.de>
Cc: linux-kernel@vger.kernel.org, linux-fbdev@vger.kernel.org,
linux-i2c@vger.kernel.org, dri-devel@lists.freedesktop.org,
Heiner Kallweit <hkallweit1@gmail.com>
Subject: [PATCH 05/20] drivers/video/fbdev: remove I2C_CLASS_DDC support
Date: Mon, 13 Nov 2023 12:23:29 +0100 [thread overview]
Message-ID: <20231113112344.719-6-hkallweit1@gmail.com> (raw)
In-Reply-To: <20231113112344.719-1-hkallweit1@gmail.com>
After removal of the legacy EEPROM driver and I2C_CLASS_DDC support in
olpc_dcon there's no i2c client driver left supporting I2C_CLASS_DDC.
Class-based device auto-detection is a legacy mechanism and shouldn't
be used in new code. So we can remove this class completely now.
Preferably this series should be applied via the i2c tree.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
---
drivers/video/fbdev/i740fb.c | 1 -
drivers/video/fbdev/matrox/i2c-matroxfb.c | 12 ++++--------
drivers/video/fbdev/s3fb.c | 1 -
drivers/video/fbdev/tdfxfb.c | 1 -
drivers/video/fbdev/tridentfb.c | 1 -
5 files changed, 4 insertions(+), 12 deletions(-)
diff --git a/drivers/video/fbdev/i740fb.c b/drivers/video/fbdev/i740fb.c
index 1897e65ab..9b74dae71 100644
--- a/drivers/video/fbdev/i740fb.c
+++ b/drivers/video/fbdev/i740fb.c
@@ -163,7 +163,6 @@ static int i740fb_setup_ddc_bus(struct fb_info *info)
strscpy(par->ddc_adapter.name, info->fix.id,
sizeof(par->ddc_adapter.name));
par->ddc_adapter.owner = THIS_MODULE;
- par->ddc_adapter.class = I2C_CLASS_DDC;
par->ddc_adapter.algo_data = &par->ddc_algo;
par->ddc_adapter.dev.parent = info->device;
par->ddc_algo.setsda = i740fb_ddc_setsda;
diff --git a/drivers/video/fbdev/matrox/i2c-matroxfb.c b/drivers/video/fbdev/matrox/i2c-matroxfb.c
index e2e4705e3..fa07e1e5c 100644
--- a/drivers/video/fbdev/matrox/i2c-matroxfb.c
+++ b/drivers/video/fbdev/matrox/i2c-matroxfb.c
@@ -100,8 +100,7 @@ static const struct i2c_algo_bit_data matrox_i2c_algo_template =
};
static int i2c_bus_reg(struct i2c_bit_adapter* b, struct matrox_fb_info* minfo,
- unsigned int data, unsigned int clock, const char *name,
- int class)
+ unsigned int data, unsigned int clock, const char *name)
{
int err;
@@ -112,7 +111,6 @@ static int i2c_bus_reg(struct i2c_bit_adapter* b, struct matrox_fb_info* minfo,
snprintf(b->adapter.name, sizeof(b->adapter.name), name,
minfo->fbcon.node);
i2c_set_adapdata(&b->adapter, b);
- b->adapter.class = class;
b->adapter.algo_data = &b->bac;
b->adapter.dev.parent = &minfo->pcidev->dev;
b->bac = matrox_i2c_algo_template;
@@ -160,20 +158,18 @@ static void* i2c_matroxfb_probe(struct matrox_fb_info* minfo) {
case MGA_2164:
err = i2c_bus_reg(&m2info->ddc1, minfo,
DDC1B_DATA, DDC1B_CLK,
- "DDC:fb%u #0", I2C_CLASS_DDC);
+ "DDC:fb%u #0");
break;
default:
err = i2c_bus_reg(&m2info->ddc1, minfo,
DDC1_DATA, DDC1_CLK,
- "DDC:fb%u #0", I2C_CLASS_DDC);
+ "DDC:fb%u #0");
break;
}
if (err)
goto fail_ddc1;
if (minfo->devflags.dualhead) {
- err = i2c_bus_reg(&m2info->ddc2, minfo,
- DDC2_DATA, DDC2_CLK,
- "DDC:fb%u #1", I2C_CLASS_DDC);
+ err = i2c_bus_reg(&m2info->ddc2, minfo, DDC2_DATA, DDC2_CLK, "DDC:fb%u #1");
if (err == -ENODEV) {
printk(KERN_INFO "i2c-matroxfb: VGA->TV plug detected, DDC unavailable.\n");
} else if (err)
diff --git a/drivers/video/fbdev/s3fb.c b/drivers/video/fbdev/s3fb.c
index 589b349cb..07722a5ea 100644
--- a/drivers/video/fbdev/s3fb.c
+++ b/drivers/video/fbdev/s3fb.c
@@ -252,7 +252,6 @@ static int s3fb_setup_ddc_bus(struct fb_info *info)
strscpy(par->ddc_adapter.name, info->fix.id,
sizeof(par->ddc_adapter.name));
par->ddc_adapter.owner = THIS_MODULE;
- par->ddc_adapter.class = I2C_CLASS_DDC;
par->ddc_adapter.algo_data = &par->ddc_algo;
par->ddc_adapter.dev.parent = info->device;
par->ddc_algo.setsda = s3fb_ddc_setsda;
diff --git a/drivers/video/fbdev/tdfxfb.c b/drivers/video/fbdev/tdfxfb.c
index 22aa95313..51ebe7835 100644
--- a/drivers/video/fbdev/tdfxfb.c
+++ b/drivers/video/fbdev/tdfxfb.c
@@ -1267,7 +1267,6 @@ static int tdfxfb_setup_ddc_bus(struct tdfxfb_i2c_chan *chan, const char *name,
strscpy(chan->adapter.name, name, sizeof(chan->adapter.name));
chan->adapter.owner = THIS_MODULE;
- chan->adapter.class = I2C_CLASS_DDC;
chan->adapter.algo_data = &chan->algo;
chan->adapter.dev.parent = dev;
chan->algo.setsda = tdfxfb_ddc_setsda;
diff --git a/drivers/video/fbdev/tridentfb.c b/drivers/video/fbdev/tridentfb.c
index 816d40b6f..516cf2a18 100644
--- a/drivers/video/fbdev/tridentfb.c
+++ b/drivers/video/fbdev/tridentfb.c
@@ -274,7 +274,6 @@ static int tridentfb_setup_ddc_bus(struct fb_info *info)
strscpy(par->ddc_adapter.name, info->fix.id,
sizeof(par->ddc_adapter.name));
par->ddc_adapter.owner = THIS_MODULE;
- par->ddc_adapter.class = I2C_CLASS_DDC;
par->ddc_adapter.algo_data = &par->ddc_algo;
par->ddc_adapter.dev.parent = info->device;
if (is_oldclock(par->chip_id)) { /* not sure if this check is OK */
next prev parent reply other threads:[~2023-11-13 11:24 UTC|newest]
Thread overview: 99+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-13 11:23 [PATCH 00/20] remove I2C_CLASS_DDC support Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` [Intel-gfx] " Heiner Kallweit
2023-11-13 11:23 ` [PATCH 01/20] drivers/gpu/drm/rockchip: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 20:42 ` Heiko Stübner
2023-11-13 20:42 ` Heiko Stübner
2023-11-13 20:42 ` Heiko Stübner
2023-11-13 20:42 ` Heiko Stübner
2023-11-13 11:23 ` [PATCH 02/20] drivers/gpu/drm/mgag200/mgag200_i2c.c: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` [PATCH 03/20] drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 17:50 ` Harry Wentland
2023-11-13 17:50 ` Harry Wentland
2023-11-13 17:50 ` Harry Wentland
2023-11-13 18:32 ` Heiner Kallweit
2023-11-13 18:32 ` Heiner Kallweit
2023-11-13 18:32 ` Heiner Kallweit
2023-11-16 19:18 ` Alex Deucher
2023-11-16 19:18 ` Alex Deucher
2023-11-16 19:18 ` Alex Deucher
2023-11-13 11:23 ` [PATCH 04/20] drivers/gpu/drm/sun4i/sun4i_hdmi_i2c.c: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit [this message]
2023-11-13 11:23 ` [PATCH 05/20] drivers/video/fbdev: " Heiner Kallweit
2023-11-13 11:23 ` [PATCH 06/20] drivers/video/fbdev/core/fb_ddc.c: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` [PATCH 07/20] drivers/gpu/drm: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-16 19:16 ` Alex Deucher
2023-11-16 19:16 ` Alex Deucher
2023-11-13 11:23 ` [PATCH 08/20] drivers/gpu/drm/loongson/lsdc_i2c.c: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` [PATCH 09/20] drivers/video/fbdev/via/via_i2c.c: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` [PATCH 10/20] drivers/video/fbdev/cyber2000fb.c: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` [PATCH 11/20] drivers/gpu/drm/bridge/synopsys/dw-hdmi.c: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` [PATCH 12/20] drivers/gpu/drm/mediatek/mtk_hdmi_ddc.c: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` [PATCH 13/20] drivers/video/fbdev/intelfb/intelfb_i2c.c: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` [PATCH 14/20] drivers/gpu/drm/msm/hdmi/hdmi_i2c.c: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` [Intel-gfx] [PATCH 15/20] drivers/gpu/drm/i915/display: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 12:17 ` [Intel-gfx] " Jani Nikula
2023-11-13 12:17 ` Jani Nikula
2023-11-13 12:17 ` Jani Nikula
2023-11-13 12:32 ` [Intel-gfx] " Heiner Kallweit
2023-11-13 12:32 ` Heiner Kallweit
2023-11-13 12:32 ` Heiner Kallweit
2023-11-13 17:50 ` [Intel-gfx] " Jani Nikula
2023-11-13 17:50 ` Jani Nikula
2023-11-13 17:50 ` Jani Nikula
2023-11-13 18:20 ` [Intel-gfx] " Heiner Kallweit
2023-11-13 18:20 ` Heiner Kallweit
2023-11-13 18:20 ` Heiner Kallweit
2023-11-13 11:23 ` [PATCH 16/20] drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_i2c.c: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` [PATCH 17/20] drivers/gpu/drm/ast/ast_i2c.c: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` [PATCH 18/20] drivers/gpu/drm/gma500: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-13 11:23 ` [PATCH 19/20] drivers/gpu/drm/display: " Heiner Kallweit
2023-11-13 11:23 ` Heiner Kallweit
2023-11-16 19:14 ` Alex Deucher
2023-11-16 19:14 ` Alex Deucher
2023-11-13 11:23 ` [PATCH 20/20] include/linux/i2c.h: " Heiner Kallweit
2023-11-13 17:49 ` [PATCH 00/20] " Wolfram Sang
2023-11-13 17:49 ` Wolfram Sang
2023-11-13 17:49 ` Wolfram Sang
2023-11-13 17:49 ` Wolfram Sang
2023-11-13 17:49 ` [Intel-gfx] " Wolfram Sang
2023-11-13 18:21 ` Heiner Kallweit
2023-11-13 18:21 ` Heiner Kallweit
2023-11-13 18:21 ` Heiner Kallweit
2023-11-13 18:21 ` [Intel-gfx] " Heiner Kallweit
2023-11-13 20:54 ` Wolfram Sang
2023-11-13 20:54 ` Wolfram Sang
2023-11-13 20:54 ` Wolfram Sang
2023-11-13 20:54 ` Wolfram Sang
2023-11-13 20:54 ` [Intel-gfx] " Wolfram Sang
2023-11-16 19:17 ` Alex Deucher
2023-11-16 19:17 ` Alex Deucher
2023-11-16 19:17 ` Alex Deucher
2023-11-16 19:17 ` [Intel-gfx] " Alex Deucher
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=20231113112344.719-6-hkallweit1@gmail.com \
--to=hkallweit1@gmail.com \
--cc=deller@gmx.de \
--cc=dri-devel@lists.freedesktop.org \
--cc=linux-fbdev@vger.kernel.org \
--cc=linux-i2c@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=wsa@kernel.org \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.