* [PATCH 0/2] drm/i2c: tda998x: move under drivers/gpu/drm/bridge
@ 2024-12-15 11:09 Dmitry Baryshkov
2024-12-15 11:09 ` [PATCH 1/2] drm/i2c: tda998x: drop support for platform_data Dmitry Baryshkov
2024-12-15 11:09 ` [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge Dmitry Baryshkov
0 siblings, 2 replies; 12+ messages in thread
From: Dmitry Baryshkov @ 2024-12-15 11:09 UTC (permalink / raw)
To: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Liviu Dudau, Andrzej Hajda, Neil Armstrong,
Robert Foss, Laurent Pinchart, Jonas Karlman, Jernej Skrabec,
Russell King
Cc: linux-kernel, dri-devel
TDA998x is the HDMI bridge driver, incorporating drm_connector and
optional drm_encoder (created via the component bind API by the TICLDC
and HDLCD drivers). TDA9950 is an I2C-CEC translator, being present
on-die on the TDA9989 and TDA19989 chips.
Move both drivers to live next to all DRM bridge drivers, under
drivers/gpu/drm/bridge/tda/. If we ever get a separate subdir for CEC
drivers, then TDA9950 driver can be moved to that dir.
Note to RMK: I didn't change that, but I'd like to propose to use
drm-misc tree for this bridge.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
Dmitry Baryshkov (2):
drm/i2c: tda998x: drop support for platform_data
drm/i2c: move TDA drivers under drivers/gpu/drm/bridge
MAINTAINERS | 3 +-
drivers/gpu/drm/arm/Kconfig | 1 +
drivers/gpu/drm/bridge/Kconfig | 2 +
drivers/gpu/drm/bridge/Makefile | 1 +
drivers/gpu/drm/bridge/tda/Kconfig | 13 ++++++
drivers/gpu/drm/bridge/tda/Makefile | 4 ++
drivers/gpu/drm/{i2c => bridge/tda}/tda9950.c | 0
drivers/gpu/drm/{i2c => bridge/tda}/tda998x_drv.c | 49 ++---------------------
drivers/gpu/drm/i2c/Kconfig | 13 ------
drivers/gpu/drm/i2c/Makefile | 4 --
include/drm/i2c/tda998x.h | 40 ------------------
11 files changed, 26 insertions(+), 104 deletions(-)
---
base-commit: 4176cf5c5651c33769de83bb61b0287f4ec7719f
change-id: 20241214-drm-move-tda998x-8fb4321434d2
Best regards,
--
Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 1/2] drm/i2c: tda998x: drop support for platform_data
2024-12-15 11:09 [PATCH 0/2] drm/i2c: tda998x: move under drivers/gpu/drm/bridge Dmitry Baryshkov
@ 2024-12-15 11:09 ` Dmitry Baryshkov
2024-12-15 12:35 ` Laurent Pinchart
2024-12-15 11:09 ` [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge Dmitry Baryshkov
1 sibling, 1 reply; 12+ messages in thread
From: Dmitry Baryshkov @ 2024-12-15 11:09 UTC (permalink / raw)
To: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Liviu Dudau, Andrzej Hajda, Neil Armstrong,
Robert Foss, Laurent Pinchart, Jonas Karlman, Jernej Skrabec,
Russell King
Cc: linux-kernel, dri-devel
After the commit 0fb2970b4b6b ("drm/armada: remove non-component
support") there are no remaining users of the struct
tda998x_encoder_params. Drop the header and corresponding API from the
TDA998x driver.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
MAINTAINERS | 1 -
drivers/gpu/drm/i2c/tda998x_drv.c | 49 ++++-----------------------------------
include/drm/i2c/tda998x.h | 40 --------------------------------
3 files changed, 4 insertions(+), 86 deletions(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index 81348dbce8ca7c877bd9c2d88cb093368eca5a0a..9a23e80abf309cbd918a74683895f8dbe0507a6e 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -16983,7 +16983,6 @@ S: Maintained
T: git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-devel
T: git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-fixes
F: drivers/gpu/drm/i2c/tda998x_drv.c
-F: include/drm/i2c/tda998x.h
F: include/dt-bindings/display/tda998x.h
K: "nxp,tda998x"
diff --git a/drivers/gpu/drm/i2c/tda998x_drv.c b/drivers/gpu/drm/i2c/tda998x_drv.c
index 2160f05bbd16d2346e27365e5549b75ad26fdcb9..67480dcbbfde4da68ffaeaf20935af467d4da92a 100644
--- a/drivers/gpu/drm/i2c/tda998x_drv.c
+++ b/drivers/gpu/drm/i2c/tda998x_drv.c
@@ -21,10 +21,11 @@
#include <drm/drm_print.h>
#include <drm/drm_probe_helper.h>
#include <drm/drm_simple_kms_helper.h>
-#include <drm/i2c/tda998x.h>
#include <media/cec-notifier.h>
+#include <dt-bindings/display/tda998x.h>
+
#define DBG(fmt, ...) DRM_DEBUG(fmt"\n", ##__VA_ARGS__)
enum {
@@ -1717,10 +1718,10 @@ static int tda998x_get_audio_ports(struct tda998x_priv *priv,
u8 ena_ap = be32_to_cpup(&port_data[2*i+1]);
switch (afmt) {
- case AFMT_I2S:
+ case TDA998x_I2S:
route = AUDIO_ROUTE_I2S;
break;
- case AFMT_SPDIF:
+ case TDA998x_SPDIF:
route = AUDIO_ROUTE_SPDIF;
break;
default:
@@ -1746,44 +1747,6 @@ static int tda998x_get_audio_ports(struct tda998x_priv *priv,
return 0;
}
-static int tda998x_set_config(struct tda998x_priv *priv,
- const struct tda998x_encoder_params *p)
-{
- priv->vip_cntrl_0 = VIP_CNTRL_0_SWAP_A(p->swap_a) |
- (p->mirr_a ? VIP_CNTRL_0_MIRR_A : 0) |
- VIP_CNTRL_0_SWAP_B(p->swap_b) |
- (p->mirr_b ? VIP_CNTRL_0_MIRR_B : 0);
- priv->vip_cntrl_1 = VIP_CNTRL_1_SWAP_C(p->swap_c) |
- (p->mirr_c ? VIP_CNTRL_1_MIRR_C : 0) |
- VIP_CNTRL_1_SWAP_D(p->swap_d) |
- (p->mirr_d ? VIP_CNTRL_1_MIRR_D : 0);
- priv->vip_cntrl_2 = VIP_CNTRL_2_SWAP_E(p->swap_e) |
- (p->mirr_e ? VIP_CNTRL_2_MIRR_E : 0) |
- VIP_CNTRL_2_SWAP_F(p->swap_f) |
- (p->mirr_f ? VIP_CNTRL_2_MIRR_F : 0);
-
- if (p->audio_params.format != AFMT_UNUSED) {
- unsigned int ratio, route;
- bool spdif = p->audio_params.format == AFMT_SPDIF;
-
- route = AUDIO_ROUTE_I2S + spdif;
-
- priv->audio.route = &tda998x_audio_route[route];
- priv->audio.cea = p->audio_params.cea;
- priv->audio.sample_rate = p->audio_params.sample_rate;
- memcpy(priv->audio.status, p->audio_params.status,
- min(sizeof(priv->audio.status),
- sizeof(p->audio_params.status)));
- priv->audio.ena_ap = p->audio_params.config;
- priv->audio.i2s_format = I2S_FORMAT_PHILIPS;
-
- ratio = spdif ? 64 : p->audio_params.sample_width * 2;
- return tda998x_derive_cts_n(priv, &priv->audio, ratio);
- }
-
- return 0;
-}
-
static void tda998x_destroy(struct device *dev)
{
struct tda998x_priv *priv = dev_get_drvdata(dev);
@@ -1982,10 +1945,6 @@ static int tda998x_create(struct device *dev)
if (priv->audio_port_enable[AUDIO_ROUTE_I2S] ||
priv->audio_port_enable[AUDIO_ROUTE_SPDIF])
tda998x_audio_codec_init(priv, &client->dev);
- } else if (dev->platform_data) {
- ret = tda998x_set_config(priv, dev->platform_data);
- if (ret)
- goto fail;
}
priv->bridge.funcs = &tda998x_bridge_funcs;
diff --git a/include/drm/i2c/tda998x.h b/include/drm/i2c/tda998x.h
deleted file mode 100644
index 3cb25ccbe5e68bf95ce13249f15549b7e2582281..0000000000000000000000000000000000000000
--- a/include/drm/i2c/tda998x.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0 */
-#ifndef __DRM_I2C_TDA998X_H__
-#define __DRM_I2C_TDA998X_H__
-
-#include <linux/hdmi.h>
-#include <dt-bindings/display/tda998x.h>
-
-enum {
- AFMT_UNUSED = 0,
- AFMT_SPDIF = TDA998x_SPDIF,
- AFMT_I2S = TDA998x_I2S,
-};
-
-struct tda998x_audio_params {
- u8 config;
- u8 format;
- unsigned sample_width;
- unsigned sample_rate;
- struct hdmi_audio_infoframe cea;
- u8 status[5];
-};
-
-struct tda998x_encoder_params {
- u8 swap_b:3;
- u8 mirr_b:1;
- u8 swap_a:3;
- u8 mirr_a:1;
- u8 swap_d:3;
- u8 mirr_d:1;
- u8 swap_c:3;
- u8 mirr_c:1;
- u8 swap_f:3;
- u8 mirr_f:1;
- u8 swap_e:3;
- u8 mirr_e:1;
-
- struct tda998x_audio_params audio_params;
-};
-
-#endif
--
2.39.5
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge
2024-12-15 11:09 [PATCH 0/2] drm/i2c: tda998x: move under drivers/gpu/drm/bridge Dmitry Baryshkov
2024-12-15 11:09 ` [PATCH 1/2] drm/i2c: tda998x: drop support for platform_data Dmitry Baryshkov
@ 2024-12-15 11:09 ` Dmitry Baryshkov
2024-12-15 12:38 ` Laurent Pinchart
` (2 more replies)
1 sibling, 3 replies; 12+ messages in thread
From: Dmitry Baryshkov @ 2024-12-15 11:09 UTC (permalink / raw)
To: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Liviu Dudau, Andrzej Hajda, Neil Armstrong,
Robert Foss, Laurent Pinchart, Jonas Karlman, Jernej Skrabec,
Russell King
Cc: linux-kernel, dri-devel
TDA998x is the HDMI bridge driver, incorporating drm_connector and
optional drm_encoder (created via the component bind API by the TICLDC
and HDLCD drivers). Thus it should be residing together with the other
DRM bridge drivers under drivers/gpu/drm/bridge/.
TDA9950 is an I2C-CEC translator, being present on-die on the TDA9989
and TDA19989 chips, so it is being instantiated by the TDA998x driver.
Move it together with the TDA998x under bridge drivers subdir.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
MAINTAINERS | 2 +-
drivers/gpu/drm/arm/Kconfig | 1 +
drivers/gpu/drm/bridge/Kconfig | 2 ++
drivers/gpu/drm/bridge/Makefile | 1 +
drivers/gpu/drm/bridge/tda/Kconfig | 13 +++++++++++++
drivers/gpu/drm/bridge/tda/Makefile | 4 ++++
drivers/gpu/drm/{i2c => bridge/tda}/tda9950.c | 0
drivers/gpu/drm/{i2c => bridge/tda}/tda998x_drv.c | 0
drivers/gpu/drm/i2c/Kconfig | 13 -------------
drivers/gpu/drm/i2c/Makefile | 4 ----
10 files changed, 22 insertions(+), 18 deletions(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index 9a23e80abf309cbd918a74683895f8dbe0507a6e..a4c7afd564e721e14aebaf828b75776e50760a45 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -16982,7 +16982,7 @@ M: Russell King <linux@armlinux.org.uk>
S: Maintained
T: git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-devel
T: git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-fixes
-F: drivers/gpu/drm/i2c/tda998x_drv.c
+F: drivers/gpu/drm/bridge/tda/tda998x_drv.c
F: include/dt-bindings/display/tda998x.h
K: "nxp,tda998x"
diff --git a/drivers/gpu/drm/arm/Kconfig b/drivers/gpu/drm/arm/Kconfig
index c901ac00c0c3a8f356bd53d97305c6b39b3e6662..ed3ed617c6884876368c8bd072c53f1b710df443 100644
--- a/drivers/gpu/drm/arm/Kconfig
+++ b/drivers/gpu/drm/arm/Kconfig
@@ -9,6 +9,7 @@ config DRM_HDLCD
select DRM_CLIENT_SELECTION
select DRM_KMS_HELPER
select DRM_GEM_DMA_HELPER
+ select DRM_BRIDGE # for TDA998x
help
Choose this option if you have an ARM High Definition Colour LCD
controller.
diff --git a/drivers/gpu/drm/bridge/Kconfig b/drivers/gpu/drm/bridge/Kconfig
index 6b4664d91faa80f096ac6a0548ed342e802ae68b..1ef16dcc2ae53eb172604de2d6899004c080a979 100644
--- a/drivers/gpu/drm/bridge/Kconfig
+++ b/drivers/gpu/drm/bridge/Kconfig
@@ -438,4 +438,6 @@ source "drivers/gpu/drm/bridge/imx/Kconfig"
source "drivers/gpu/drm/bridge/synopsys/Kconfig"
+source "drivers/gpu/drm/bridge/tda/Kconfig"
+
endmenu
diff --git a/drivers/gpu/drm/bridge/Makefile b/drivers/gpu/drm/bridge/Makefile
index 97304b429a530c108dcbff906965cda091b0a7a2..52e6c9b3094bba0fd6aaf28af1b58f4bd8bf26d0 100644
--- a/drivers/gpu/drm/bridge/Makefile
+++ b/drivers/gpu/drm/bridge/Makefile
@@ -43,3 +43,4 @@ obj-y += analogix/
obj-y += cadence/
obj-y += imx/
obj-y += synopsys/
+obj-y += tda/
diff --git a/drivers/gpu/drm/bridge/tda/Kconfig b/drivers/gpu/drm/bridge/tda/Kconfig
new file mode 100644
index 0000000000000000000000000000000000000000..5f13e4ffc24eeaa8dd0015c7e84d0dbac93e170c
--- /dev/null
+++ b/drivers/gpu/drm/bridge/tda/Kconfig
@@ -0,0 +1,13 @@
+# SPDX-License-Identifier: GPL-2.0-only
+config DRM_I2C_NXP_TDA998X
+ tristate "NXP Semiconductors TDA998X HDMI encoder"
+ default m if DRM_TILCDC
+ select CEC_CORE if CEC_NOTIFIER
+ select SND_SOC_HDMI_CODEC if SND_SOC
+ help
+ Support for NXP Semiconductors TDA998X HDMI encoders.
+
+config DRM_I2C_NXP_TDA9950
+ tristate "NXP Semiconductors TDA9950/TDA998X HDMI CEC"
+ select CEC_NOTIFIER
+ select CEC_CORE
diff --git a/drivers/gpu/drm/bridge/tda/Makefile b/drivers/gpu/drm/bridge/tda/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..31fd35527d99d7eb23851d290175a3ff0c756772
--- /dev/null
+++ b/drivers/gpu/drm/bridge/tda/Makefile
@@ -0,0 +1,4 @@
+# SPDX-License-Identifier: GPL-2.0
+tda998x-y := tda998x_drv.o
+obj-$(CONFIG_DRM_I2C_NXP_TDA998X) += tda998x.o
+obj-$(CONFIG_DRM_I2C_NXP_TDA9950) += tda9950.o
diff --git a/drivers/gpu/drm/i2c/tda9950.c b/drivers/gpu/drm/bridge/tda/tda9950.c
similarity index 100%
rename from drivers/gpu/drm/i2c/tda9950.c
rename to drivers/gpu/drm/bridge/tda/tda9950.c
diff --git a/drivers/gpu/drm/i2c/tda998x_drv.c b/drivers/gpu/drm/bridge/tda/tda998x_drv.c
similarity index 100%
rename from drivers/gpu/drm/i2c/tda998x_drv.c
rename to drivers/gpu/drm/bridge/tda/tda998x_drv.c
diff --git a/drivers/gpu/drm/i2c/Kconfig b/drivers/gpu/drm/i2c/Kconfig
index 6f19e1c35e30b0e595c1a60628a6b8cf313fcabc..3205cdb827b95209a4bba9fb126ad2df27ddbdfb 100644
--- a/drivers/gpu/drm/i2c/Kconfig
+++ b/drivers/gpu/drm/i2c/Kconfig
@@ -20,17 +20,4 @@ config DRM_I2C_SIL164
when used in pairs) TMDS transmitters, used in some nVidia
video cards.
-config DRM_I2C_NXP_TDA998X
- tristate "NXP Semiconductors TDA998X HDMI encoder"
- default m if DRM_TILCDC
- select CEC_CORE if CEC_NOTIFIER
- select SND_SOC_HDMI_CODEC if SND_SOC
- help
- Support for NXP Semiconductors TDA998X HDMI encoders.
-
-config DRM_I2C_NXP_TDA9950
- tristate "NXP Semiconductors TDA9950/TDA998X HDMI CEC"
- select CEC_NOTIFIER
- select CEC_CORE
-
endmenu
diff --git a/drivers/gpu/drm/i2c/Makefile b/drivers/gpu/drm/i2c/Makefile
index a962f6f085686674ed33010345730db776815ebe..1df3869491e277ca210368c4e48efe6d11af62b6 100644
--- a/drivers/gpu/drm/i2c/Makefile
+++ b/drivers/gpu/drm/i2c/Makefile
@@ -4,7 +4,3 @@ obj-$(CONFIG_DRM_I2C_CH7006) += ch7006.o
sil164-y := sil164_drv.o
obj-$(CONFIG_DRM_I2C_SIL164) += sil164.o
-
-tda998x-y := tda998x_drv.o
-obj-$(CONFIG_DRM_I2C_NXP_TDA998X) += tda998x.o
-obj-$(CONFIG_DRM_I2C_NXP_TDA9950) += tda9950.o
--
2.39.5
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 1/2] drm/i2c: tda998x: drop support for platform_data
2024-12-15 11:09 ` [PATCH 1/2] drm/i2c: tda998x: drop support for platform_data Dmitry Baryshkov
@ 2024-12-15 12:35 ` Laurent Pinchart
0 siblings, 0 replies; 12+ messages in thread
From: Laurent Pinchart @ 2024-12-15 12:35 UTC (permalink / raw)
To: Dmitry Baryshkov
Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Liviu Dudau, Andrzej Hajda, Neil Armstrong,
Robert Foss, Jonas Karlman, Jernej Skrabec, Russell King,
linux-kernel, dri-devel
Hi Dmitry,
Thank you for the patch.
On Sun, Dec 15, 2024 at 01:09:07PM +0200, Dmitry Baryshkov wrote:
> After the commit 0fb2970b4b6b ("drm/armada: remove non-component
> support") there are no remaining users of the struct
> tda998x_encoder_params. Drop the header and corresponding API from the
> TDA998x driver.
>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> ---
> MAINTAINERS | 1 -
> drivers/gpu/drm/i2c/tda998x_drv.c | 49 ++++-----------------------------------
> include/drm/i2c/tda998x.h | 40 --------------------------------
> 3 files changed, 4 insertions(+), 86 deletions(-)
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 81348dbce8ca7c877bd9c2d88cb093368eca5a0a..9a23e80abf309cbd918a74683895f8dbe0507a6e 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -16983,7 +16983,6 @@ S: Maintained
> T: git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-devel
> T: git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-fixes
> F: drivers/gpu/drm/i2c/tda998x_drv.c
> -F: include/drm/i2c/tda998x.h
> F: include/dt-bindings/display/tda998x.h
> K: "nxp,tda998x"
>
> diff --git a/drivers/gpu/drm/i2c/tda998x_drv.c b/drivers/gpu/drm/i2c/tda998x_drv.c
> index 2160f05bbd16d2346e27365e5549b75ad26fdcb9..67480dcbbfde4da68ffaeaf20935af467d4da92a 100644
> --- a/drivers/gpu/drm/i2c/tda998x_drv.c
> +++ b/drivers/gpu/drm/i2c/tda998x_drv.c
> @@ -21,10 +21,11 @@
> #include <drm/drm_print.h>
> #include <drm/drm_probe_helper.h>
> #include <drm/drm_simple_kms_helper.h>
> -#include <drm/i2c/tda998x.h>
>
> #include <media/cec-notifier.h>
>
> +#include <dt-bindings/display/tda998x.h>
> +
> #define DBG(fmt, ...) DRM_DEBUG(fmt"\n", ##__VA_ARGS__)
>
> enum {
> @@ -1717,10 +1718,10 @@ static int tda998x_get_audio_ports(struct tda998x_priv *priv,
> u8 ena_ap = be32_to_cpup(&port_data[2*i+1]);
>
> switch (afmt) {
> - case AFMT_I2S:
> + case TDA998x_I2S:
> route = AUDIO_ROUTE_I2S;
> break;
> - case AFMT_SPDIF:
> + case TDA998x_SPDIF:
> route = AUDIO_ROUTE_SPDIF;
> break;
> default:
> @@ -1746,44 +1747,6 @@ static int tda998x_get_audio_ports(struct tda998x_priv *priv,
> return 0;
> }
>
> -static int tda998x_set_config(struct tda998x_priv *priv,
> - const struct tda998x_encoder_params *p)
> -{
> - priv->vip_cntrl_0 = VIP_CNTRL_0_SWAP_A(p->swap_a) |
> - (p->mirr_a ? VIP_CNTRL_0_MIRR_A : 0) |
> - VIP_CNTRL_0_SWAP_B(p->swap_b) |
> - (p->mirr_b ? VIP_CNTRL_0_MIRR_B : 0);
> - priv->vip_cntrl_1 = VIP_CNTRL_1_SWAP_C(p->swap_c) |
> - (p->mirr_c ? VIP_CNTRL_1_MIRR_C : 0) |
> - VIP_CNTRL_1_SWAP_D(p->swap_d) |
> - (p->mirr_d ? VIP_CNTRL_1_MIRR_D : 0);
> - priv->vip_cntrl_2 = VIP_CNTRL_2_SWAP_E(p->swap_e) |
> - (p->mirr_e ? VIP_CNTRL_2_MIRR_E : 0) |
> - VIP_CNTRL_2_SWAP_F(p->swap_f) |
> - (p->mirr_f ? VIP_CNTRL_2_MIRR_F : 0);
> -
> - if (p->audio_params.format != AFMT_UNUSED) {
> - unsigned int ratio, route;
> - bool spdif = p->audio_params.format == AFMT_SPDIF;
> -
> - route = AUDIO_ROUTE_I2S + spdif;
> -
> - priv->audio.route = &tda998x_audio_route[route];
> - priv->audio.cea = p->audio_params.cea;
> - priv->audio.sample_rate = p->audio_params.sample_rate;
> - memcpy(priv->audio.status, p->audio_params.status,
> - min(sizeof(priv->audio.status),
> - sizeof(p->audio_params.status)));
> - priv->audio.ena_ap = p->audio_params.config;
> - priv->audio.i2s_format = I2S_FORMAT_PHILIPS;
> -
> - ratio = spdif ? 64 : p->audio_params.sample_width * 2;
> - return tda998x_derive_cts_n(priv, &priv->audio, ratio);
> - }
> -
> - return 0;
> -}
> -
> static void tda998x_destroy(struct device *dev)
> {
> struct tda998x_priv *priv = dev_get_drvdata(dev);
> @@ -1982,10 +1945,6 @@ static int tda998x_create(struct device *dev)
> if (priv->audio_port_enable[AUDIO_ROUTE_I2S] ||
> priv->audio_port_enable[AUDIO_ROUTE_SPDIF])
> tda998x_audio_codec_init(priv, &client->dev);
> - } else if (dev->platform_data) {
> - ret = tda998x_set_config(priv, dev->platform_data);
> - if (ret)
> - goto fail;
> }
>
> priv->bridge.funcs = &tda998x_bridge_funcs;
> diff --git a/include/drm/i2c/tda998x.h b/include/drm/i2c/tda998x.h
> deleted file mode 100644
> index 3cb25ccbe5e68bf95ce13249f15549b7e2582281..0000000000000000000000000000000000000000
> --- a/include/drm/i2c/tda998x.h
> +++ /dev/null
> @@ -1,40 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0 */
> -#ifndef __DRM_I2C_TDA998X_H__
> -#define __DRM_I2C_TDA998X_H__
> -
> -#include <linux/hdmi.h>
> -#include <dt-bindings/display/tda998x.h>
> -
> -enum {
> - AFMT_UNUSED = 0,
> - AFMT_SPDIF = TDA998x_SPDIF,
> - AFMT_I2S = TDA998x_I2S,
> -};
> -
> -struct tda998x_audio_params {
> - u8 config;
> - u8 format;
> - unsigned sample_width;
> - unsigned sample_rate;
> - struct hdmi_audio_infoframe cea;
> - u8 status[5];
> -};
> -
> -struct tda998x_encoder_params {
> - u8 swap_b:3;
> - u8 mirr_b:1;
> - u8 swap_a:3;
> - u8 mirr_a:1;
> - u8 swap_d:3;
> - u8 mirr_d:1;
> - u8 swap_c:3;
> - u8 mirr_c:1;
> - u8 swap_f:3;
> - u8 mirr_f:1;
> - u8 swap_e:3;
> - u8 mirr_e:1;
> -
> - struct tda998x_audio_params audio_params;
> -};
> -
> -#endif
--
Regards,
Laurent Pinchart
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge
2024-12-15 11:09 ` [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge Dmitry Baryshkov
@ 2024-12-15 12:38 ` Laurent Pinchart
2024-12-15 13:12 ` Dmitry Baryshkov
2025-01-05 22:52 ` Dmitry Baryshkov
2024-12-18 10:22 ` Neil Armstrong
2024-12-19 19:57 ` Liviu Dudau
2 siblings, 2 replies; 12+ messages in thread
From: Laurent Pinchart @ 2024-12-15 12:38 UTC (permalink / raw)
To: Dmitry Baryshkov
Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Liviu Dudau, Andrzej Hajda, Neil Armstrong,
Robert Foss, Jonas Karlman, Jernej Skrabec, Russell King,
linux-kernel, dri-devel
Hi Dmitry,
Thank you for the patch.
On Sun, Dec 15, 2024 at 01:09:08PM +0200, Dmitry Baryshkov wrote:
> TDA998x is the HDMI bridge driver, incorporating drm_connector and
> optional drm_encoder (created via the component bind API by the TICLDC
> and HDLCD drivers). Thus it should be residing together with the other
> DRM bridge drivers under drivers/gpu/drm/bridge/.
>
> TDA9950 is an I2C-CEC translator, being present on-die on the TDA9989
> and TDA19989 chips, so it is being instantiated by the TDA998x driver.
> Move it together with the TDA998x under bridge drivers subdir.
>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
> MAINTAINERS | 2 +-
> drivers/gpu/drm/arm/Kconfig | 1 +
> drivers/gpu/drm/bridge/Kconfig | 2 ++
> drivers/gpu/drm/bridge/Makefile | 1 +
> drivers/gpu/drm/bridge/tda/Kconfig | 13 +++++++++++++
> drivers/gpu/drm/bridge/tda/Makefile | 4 ++++
> drivers/gpu/drm/{i2c => bridge/tda}/tda9950.c | 0
> drivers/gpu/drm/{i2c => bridge/tda}/tda998x_drv.c | 0
I probably wouldn't have created a tda/ subdirectory in bridge/, but I
don't mind much either way.
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> drivers/gpu/drm/i2c/Kconfig | 13 -------------
> drivers/gpu/drm/i2c/Makefile | 4 ----
> 10 files changed, 22 insertions(+), 18 deletions(-)
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 9a23e80abf309cbd918a74683895f8dbe0507a6e..a4c7afd564e721e14aebaf828b75776e50760a45 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -16982,7 +16982,7 @@ M: Russell King <linux@armlinux.org.uk>
> S: Maintained
> T: git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-devel
> T: git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-fixes
> -F: drivers/gpu/drm/i2c/tda998x_drv.c
> +F: drivers/gpu/drm/bridge/tda/tda998x_drv.c
> F: include/dt-bindings/display/tda998x.h
> K: "nxp,tda998x"
>
> diff --git a/drivers/gpu/drm/arm/Kconfig b/drivers/gpu/drm/arm/Kconfig
> index c901ac00c0c3a8f356bd53d97305c6b39b3e6662..ed3ed617c6884876368c8bd072c53f1b710df443 100644
> --- a/drivers/gpu/drm/arm/Kconfig
> +++ b/drivers/gpu/drm/arm/Kconfig
> @@ -9,6 +9,7 @@ config DRM_HDLCD
> select DRM_CLIENT_SELECTION
> select DRM_KMS_HELPER
> select DRM_GEM_DMA_HELPER
> + select DRM_BRIDGE # for TDA998x
> help
> Choose this option if you have an ARM High Definition Colour LCD
> controller.
> diff --git a/drivers/gpu/drm/bridge/Kconfig b/drivers/gpu/drm/bridge/Kconfig
> index 6b4664d91faa80f096ac6a0548ed342e802ae68b..1ef16dcc2ae53eb172604de2d6899004c080a979 100644
> --- a/drivers/gpu/drm/bridge/Kconfig
> +++ b/drivers/gpu/drm/bridge/Kconfig
> @@ -438,4 +438,6 @@ source "drivers/gpu/drm/bridge/imx/Kconfig"
>
> source "drivers/gpu/drm/bridge/synopsys/Kconfig"
>
> +source "drivers/gpu/drm/bridge/tda/Kconfig"
> +
> endmenu
> diff --git a/drivers/gpu/drm/bridge/Makefile b/drivers/gpu/drm/bridge/Makefile
> index 97304b429a530c108dcbff906965cda091b0a7a2..52e6c9b3094bba0fd6aaf28af1b58f4bd8bf26d0 100644
> --- a/drivers/gpu/drm/bridge/Makefile
> +++ b/drivers/gpu/drm/bridge/Makefile
> @@ -43,3 +43,4 @@ obj-y += analogix/
> obj-y += cadence/
> obj-y += imx/
> obj-y += synopsys/
> +obj-y += tda/
> diff --git a/drivers/gpu/drm/bridge/tda/Kconfig b/drivers/gpu/drm/bridge/tda/Kconfig
> new file mode 100644
> index 0000000000000000000000000000000000000000..5f13e4ffc24eeaa8dd0015c7e84d0dbac93e170c
> --- /dev/null
> +++ b/drivers/gpu/drm/bridge/tda/Kconfig
> @@ -0,0 +1,13 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +config DRM_I2C_NXP_TDA998X
> + tristate "NXP Semiconductors TDA998X HDMI encoder"
> + default m if DRM_TILCDC
> + select CEC_CORE if CEC_NOTIFIER
> + select SND_SOC_HDMI_CODEC if SND_SOC
> + help
> + Support for NXP Semiconductors TDA998X HDMI encoders.
> +
> +config DRM_I2C_NXP_TDA9950
> + tristate "NXP Semiconductors TDA9950/TDA998X HDMI CEC"
> + select CEC_NOTIFIER
> + select CEC_CORE
> diff --git a/drivers/gpu/drm/bridge/tda/Makefile b/drivers/gpu/drm/bridge/tda/Makefile
> new file mode 100644
> index 0000000000000000000000000000000000000000..31fd35527d99d7eb23851d290175a3ff0c756772
> --- /dev/null
> +++ b/drivers/gpu/drm/bridge/tda/Makefile
> @@ -0,0 +1,4 @@
> +# SPDX-License-Identifier: GPL-2.0
> +tda998x-y := tda998x_drv.o
> +obj-$(CONFIG_DRM_I2C_NXP_TDA998X) += tda998x.o
> +obj-$(CONFIG_DRM_I2C_NXP_TDA9950) += tda9950.o
> diff --git a/drivers/gpu/drm/i2c/tda9950.c b/drivers/gpu/drm/bridge/tda/tda9950.c
> similarity index 100%
> rename from drivers/gpu/drm/i2c/tda9950.c
> rename to drivers/gpu/drm/bridge/tda/tda9950.c
> diff --git a/drivers/gpu/drm/i2c/tda998x_drv.c b/drivers/gpu/drm/bridge/tda/tda998x_drv.c
> similarity index 100%
> rename from drivers/gpu/drm/i2c/tda998x_drv.c
> rename to drivers/gpu/drm/bridge/tda/tda998x_drv.c
> diff --git a/drivers/gpu/drm/i2c/Kconfig b/drivers/gpu/drm/i2c/Kconfig
> index 6f19e1c35e30b0e595c1a60628a6b8cf313fcabc..3205cdb827b95209a4bba9fb126ad2df27ddbdfb 100644
> --- a/drivers/gpu/drm/i2c/Kconfig
> +++ b/drivers/gpu/drm/i2c/Kconfig
> @@ -20,17 +20,4 @@ config DRM_I2C_SIL164
> when used in pairs) TMDS transmitters, used in some nVidia
> video cards.
>
> -config DRM_I2C_NXP_TDA998X
> - tristate "NXP Semiconductors TDA998X HDMI encoder"
> - default m if DRM_TILCDC
> - select CEC_CORE if CEC_NOTIFIER
> - select SND_SOC_HDMI_CODEC if SND_SOC
> - help
> - Support for NXP Semiconductors TDA998X HDMI encoders.
> -
> -config DRM_I2C_NXP_TDA9950
> - tristate "NXP Semiconductors TDA9950/TDA998X HDMI CEC"
> - select CEC_NOTIFIER
> - select CEC_CORE
> -
> endmenu
> diff --git a/drivers/gpu/drm/i2c/Makefile b/drivers/gpu/drm/i2c/Makefile
> index a962f6f085686674ed33010345730db776815ebe..1df3869491e277ca210368c4e48efe6d11af62b6 100644
> --- a/drivers/gpu/drm/i2c/Makefile
> +++ b/drivers/gpu/drm/i2c/Makefile
> @@ -4,7 +4,3 @@ obj-$(CONFIG_DRM_I2C_CH7006) += ch7006.o
>
> sil164-y := sil164_drv.o
> obj-$(CONFIG_DRM_I2C_SIL164) += sil164.o
> -
> -tda998x-y := tda998x_drv.o
> -obj-$(CONFIG_DRM_I2C_NXP_TDA998X) += tda998x.o
> -obj-$(CONFIG_DRM_I2C_NXP_TDA9950) += tda9950.o
>
--
Regards,
Laurent Pinchart
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge
2024-12-15 12:38 ` Laurent Pinchart
@ 2024-12-15 13:12 ` Dmitry Baryshkov
2025-01-05 22:52 ` Dmitry Baryshkov
1 sibling, 0 replies; 12+ messages in thread
From: Dmitry Baryshkov @ 2024-12-15 13:12 UTC (permalink / raw)
To: Laurent Pinchart
Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Liviu Dudau, Andrzej Hajda, Neil Armstrong,
Robert Foss, Jonas Karlman, Jernej Skrabec, Russell King,
linux-kernel, dri-devel
On Sun, Dec 15, 2024 at 02:38:05PM +0200, Laurent Pinchart wrote:
> Hi Dmitry,
>
> Thank you for the patch.
>
> On Sun, Dec 15, 2024 at 01:09:08PM +0200, Dmitry Baryshkov wrote:
> > TDA998x is the HDMI bridge driver, incorporating drm_connector and
> > optional drm_encoder (created via the component bind API by the TICLDC
> > and HDLCD drivers). Thus it should be residing together with the other
> > DRM bridge drivers under drivers/gpu/drm/bridge/.
> >
> > TDA9950 is an I2C-CEC translator, being present on-die on the TDA9989
> > and TDA19989 chips, so it is being instantiated by the TDA998x driver.
> > Move it together with the TDA998x under bridge drivers subdir.
> >
> > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> > ---
> > MAINTAINERS | 2 +-
> > drivers/gpu/drm/arm/Kconfig | 1 +
> > drivers/gpu/drm/bridge/Kconfig | 2 ++
> > drivers/gpu/drm/bridge/Makefile | 1 +
> > drivers/gpu/drm/bridge/tda/Kconfig | 13 +++++++++++++
> > drivers/gpu/drm/bridge/tda/Makefile | 4 ++++
> > drivers/gpu/drm/{i2c => bridge/tda}/tda9950.c | 0
> > drivers/gpu/drm/{i2c => bridge/tda}/tda998x_drv.c | 0
>
> I probably wouldn't have created a tda/ subdirectory in bridge/, but I
> don't mind much either way.
I created it mostly because tda9950 isn't a bridge. It's a CEC driver
that works in pair with the tda998x driver.
> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge
2024-12-15 11:09 ` [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge Dmitry Baryshkov
2024-12-15 12:38 ` Laurent Pinchart
@ 2024-12-18 10:22 ` Neil Armstrong
2025-01-05 22:48 ` Dmitry Baryshkov
2024-12-19 19:57 ` Liviu Dudau
2 siblings, 1 reply; 12+ messages in thread
From: Neil Armstrong @ 2024-12-18 10:22 UTC (permalink / raw)
To: Dmitry Baryshkov, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie, Simona Vetter, Liviu Dudau,
Andrzej Hajda, Robert Foss, Laurent Pinchart, Jonas Karlman,
Jernej Skrabec, Russell King
Cc: linux-kernel, dri-devel
On 15/12/2024 12:09, Dmitry Baryshkov wrote:
> TDA998x is the HDMI bridge driver, incorporating drm_connector and
> optional drm_encoder (created via the component bind API by the TICLDC
> and HDLCD drivers). Thus it should be residing together with the other
> DRM bridge drivers under drivers/gpu/drm/bridge/.
>
> TDA9950 is an I2C-CEC translator, being present on-die on the TDA9989
> and TDA19989 chips, so it is being instantiated by the TDA998x driver.
> Move it together with the TDA998x under bridge drivers subdir.
>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
> MAINTAINERS | 2 +-
> drivers/gpu/drm/arm/Kconfig | 1 +
> drivers/gpu/drm/bridge/Kconfig | 2 ++
> drivers/gpu/drm/bridge/Makefile | 1 +
> drivers/gpu/drm/bridge/tda/Kconfig | 13 +++++++++++++
> drivers/gpu/drm/bridge/tda/Makefile | 4 ++++
> drivers/gpu/drm/{i2c => bridge/tda}/tda9950.c | 0
> drivers/gpu/drm/{i2c => bridge/tda}/tda998x_drv.c | 0
> drivers/gpu/drm/i2c/Kconfig | 13 -------------
> drivers/gpu/drm/i2c/Makefile | 4 ----
> 10 files changed, 22 insertions(+), 18 deletions(-)
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 9a23e80abf309cbd918a74683895f8dbe0507a6e..a4c7afd564e721e14aebaf828b75776e50760a45 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -16982,7 +16982,7 @@ M: Russell King <linux@armlinux.org.uk>
> S: Maintained
> T: git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-devel
> T: git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-fixes
> -F: drivers/gpu/drm/i2c/tda998x_drv.c
> +F: drivers/gpu/drm/bridge/tda/tda998x_drv.c
I'd rather move the entry it to drm-misc in the same move, I don't think
we want externally maintained bridge drivers mixed in the other bridges.
Russell, so you agree ?
Apart that:
Acked-by: Neil Armstrong <neil.armstrong@linaro.org>
Neil
> F: include/dt-bindings/display/tda998x.h
> K: "nxp,tda998x"
>
> diff --git a/drivers/gpu/drm/arm/Kconfig b/drivers/gpu/drm/arm/Kconfig
> index c901ac00c0c3a8f356bd53d97305c6b39b3e6662..ed3ed617c6884876368c8bd072c53f1b710df443 100644
> --- a/drivers/gpu/drm/arm/Kconfig
> +++ b/drivers/gpu/drm/arm/Kconfig
> @@ -9,6 +9,7 @@ config DRM_HDLCD
> select DRM_CLIENT_SELECTION
> select DRM_KMS_HELPER
> select DRM_GEM_DMA_HELPER
> + select DRM_BRIDGE # for TDA998x
> help
> Choose this option if you have an ARM High Definition Colour LCD
> controller.
> diff --git a/drivers/gpu/drm/bridge/Kconfig b/drivers/gpu/drm/bridge/Kconfig
> index 6b4664d91faa80f096ac6a0548ed342e802ae68b..1ef16dcc2ae53eb172604de2d6899004c080a979 100644
> --- a/drivers/gpu/drm/bridge/Kconfig
> +++ b/drivers/gpu/drm/bridge/Kconfig
> @@ -438,4 +438,6 @@ source "drivers/gpu/drm/bridge/imx/Kconfig"
>
> source "drivers/gpu/drm/bridge/synopsys/Kconfig"
>
> +source "drivers/gpu/drm/bridge/tda/Kconfig"
> +
> endmenu
> diff --git a/drivers/gpu/drm/bridge/Makefile b/drivers/gpu/drm/bridge/Makefile
> index 97304b429a530c108dcbff906965cda091b0a7a2..52e6c9b3094bba0fd6aaf28af1b58f4bd8bf26d0 100644
> --- a/drivers/gpu/drm/bridge/Makefile
> +++ b/drivers/gpu/drm/bridge/Makefile
> @@ -43,3 +43,4 @@ obj-y += analogix/
> obj-y += cadence/
> obj-y += imx/
> obj-y += synopsys/
> +obj-y += tda/
> diff --git a/drivers/gpu/drm/bridge/tda/Kconfig b/drivers/gpu/drm/bridge/tda/Kconfig
> new file mode 100644
> index 0000000000000000000000000000000000000000..5f13e4ffc24eeaa8dd0015c7e84d0dbac93e170c
> --- /dev/null
> +++ b/drivers/gpu/drm/bridge/tda/Kconfig
> @@ -0,0 +1,13 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +config DRM_I2C_NXP_TDA998X
> + tristate "NXP Semiconductors TDA998X HDMI encoder"
> + default m if DRM_TILCDC
> + select CEC_CORE if CEC_NOTIFIER
> + select SND_SOC_HDMI_CODEC if SND_SOC
> + help
> + Support for NXP Semiconductors TDA998X HDMI encoders.
> +
> +config DRM_I2C_NXP_TDA9950
> + tristate "NXP Semiconductors TDA9950/TDA998X HDMI CEC"
> + select CEC_NOTIFIER
> + select CEC_CORE
> diff --git a/drivers/gpu/drm/bridge/tda/Makefile b/drivers/gpu/drm/bridge/tda/Makefile
> new file mode 100644
> index 0000000000000000000000000000000000000000..31fd35527d99d7eb23851d290175a3ff0c756772
> --- /dev/null
> +++ b/drivers/gpu/drm/bridge/tda/Makefile
> @@ -0,0 +1,4 @@
> +# SPDX-License-Identifier: GPL-2.0
> +tda998x-y := tda998x_drv.o
> +obj-$(CONFIG_DRM_I2C_NXP_TDA998X) += tda998x.o
> +obj-$(CONFIG_DRM_I2C_NXP_TDA9950) += tda9950.o
> diff --git a/drivers/gpu/drm/i2c/tda9950.c b/drivers/gpu/drm/bridge/tda/tda9950.c
> similarity index 100%
> rename from drivers/gpu/drm/i2c/tda9950.c
> rename to drivers/gpu/drm/bridge/tda/tda9950.c
> diff --git a/drivers/gpu/drm/i2c/tda998x_drv.c b/drivers/gpu/drm/bridge/tda/tda998x_drv.c
> similarity index 100%
> rename from drivers/gpu/drm/i2c/tda998x_drv.c
> rename to drivers/gpu/drm/bridge/tda/tda998x_drv.c
> diff --git a/drivers/gpu/drm/i2c/Kconfig b/drivers/gpu/drm/i2c/Kconfig
> index 6f19e1c35e30b0e595c1a60628a6b8cf313fcabc..3205cdb827b95209a4bba9fb126ad2df27ddbdfb 100644
> --- a/drivers/gpu/drm/i2c/Kconfig
> +++ b/drivers/gpu/drm/i2c/Kconfig
> @@ -20,17 +20,4 @@ config DRM_I2C_SIL164
> when used in pairs) TMDS transmitters, used in some nVidia
> video cards.
>
> -config DRM_I2C_NXP_TDA998X
> - tristate "NXP Semiconductors TDA998X HDMI encoder"
> - default m if DRM_TILCDC
> - select CEC_CORE if CEC_NOTIFIER
> - select SND_SOC_HDMI_CODEC if SND_SOC
> - help
> - Support for NXP Semiconductors TDA998X HDMI encoders.
> -
> -config DRM_I2C_NXP_TDA9950
> - tristate "NXP Semiconductors TDA9950/TDA998X HDMI CEC"
> - select CEC_NOTIFIER
> - select CEC_CORE
> -
> endmenu
> diff --git a/drivers/gpu/drm/i2c/Makefile b/drivers/gpu/drm/i2c/Makefile
> index a962f6f085686674ed33010345730db776815ebe..1df3869491e277ca210368c4e48efe6d11af62b6 100644
> --- a/drivers/gpu/drm/i2c/Makefile
> +++ b/drivers/gpu/drm/i2c/Makefile
> @@ -4,7 +4,3 @@ obj-$(CONFIG_DRM_I2C_CH7006) += ch7006.o
>
> sil164-y := sil164_drv.o
> obj-$(CONFIG_DRM_I2C_SIL164) += sil164.o
> -
> -tda998x-y := tda998x_drv.o
> -obj-$(CONFIG_DRM_I2C_NXP_TDA998X) += tda998x.o
> -obj-$(CONFIG_DRM_I2C_NXP_TDA9950) += tda9950.o
>
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge
2024-12-15 11:09 ` [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge Dmitry Baryshkov
2024-12-15 12:38 ` Laurent Pinchart
2024-12-18 10:22 ` Neil Armstrong
@ 2024-12-19 19:57 ` Liviu Dudau
2 siblings, 0 replies; 12+ messages in thread
From: Liviu Dudau @ 2024-12-19 19:57 UTC (permalink / raw)
To: Dmitry Baryshkov
Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec, Russell King,
linux-kernel, dri-devel
On Sun, Dec 15, 2024 at 01:09:08PM +0200, Dmitry Baryshkov wrote:
> TDA998x is the HDMI bridge driver, incorporating drm_connector and
> optional drm_encoder (created via the component bind API by the TICLDC
> and HDLCD drivers). Thus it should be residing together with the other
> DRM bridge drivers under drivers/gpu/drm/bridge/.
>
> TDA9950 is an I2C-CEC translator, being present on-die on the TDA9989
> and TDA19989 chips, so it is being instantiated by the TDA998x driver.
> Move it together with the TDA998x under bridge drivers subdir.
>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
> MAINTAINERS | 2 +-
> drivers/gpu/drm/arm/Kconfig | 1 +
> drivers/gpu/drm/bridge/Kconfig | 2 ++
> drivers/gpu/drm/bridge/Makefile | 1 +
> drivers/gpu/drm/bridge/tda/Kconfig | 13 +++++++++++++
> drivers/gpu/drm/bridge/tda/Makefile | 4 ++++
> drivers/gpu/drm/{i2c => bridge/tda}/tda9950.c | 0
> drivers/gpu/drm/{i2c => bridge/tda}/tda998x_drv.c | 0
> drivers/gpu/drm/i2c/Kconfig | 13 -------------
> drivers/gpu/drm/i2c/Makefile | 4 ----
> 10 files changed, 22 insertions(+), 18 deletions(-)
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 9a23e80abf309cbd918a74683895f8dbe0507a6e..a4c7afd564e721e14aebaf828b75776e50760a45 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -16982,7 +16982,7 @@ M: Russell King <linux@armlinux.org.uk>
> S: Maintained
> T: git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-devel
> T: git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-fixes
> -F: drivers/gpu/drm/i2c/tda998x_drv.c
> +F: drivers/gpu/drm/bridge/tda/tda998x_drv.c
> F: include/dt-bindings/display/tda998x.h
> K: "nxp,tda998x"
>
> diff --git a/drivers/gpu/drm/arm/Kconfig b/drivers/gpu/drm/arm/Kconfig
> index c901ac00c0c3a8f356bd53d97305c6b39b3e6662..ed3ed617c6884876368c8bd072c53f1b710df443 100644
> --- a/drivers/gpu/drm/arm/Kconfig
> +++ b/drivers/gpu/drm/arm/Kconfig
> @@ -9,6 +9,7 @@ config DRM_HDLCD
> select DRM_CLIENT_SELECTION
> select DRM_KMS_HELPER
> select DRM_GEM_DMA_HELPER
> + select DRM_BRIDGE # for TDA998x
> help
> Choose this option if you have an ARM High Definition Colour LCD
> controller.
For the above change:
Acked-by: Liviu Dudau <liviu.dudau@arm.com>
Best regards,
Liviu
> diff --git a/drivers/gpu/drm/bridge/Kconfig b/drivers/gpu/drm/bridge/Kconfig
> index 6b4664d91faa80f096ac6a0548ed342e802ae68b..1ef16dcc2ae53eb172604de2d6899004c080a979 100644
> --- a/drivers/gpu/drm/bridge/Kconfig
> +++ b/drivers/gpu/drm/bridge/Kconfig
> @@ -438,4 +438,6 @@ source "drivers/gpu/drm/bridge/imx/Kconfig"
>
> source "drivers/gpu/drm/bridge/synopsys/Kconfig"
>
> +source "drivers/gpu/drm/bridge/tda/Kconfig"
> +
> endmenu
> diff --git a/drivers/gpu/drm/bridge/Makefile b/drivers/gpu/drm/bridge/Makefile
> index 97304b429a530c108dcbff906965cda091b0a7a2..52e6c9b3094bba0fd6aaf28af1b58f4bd8bf26d0 100644
> --- a/drivers/gpu/drm/bridge/Makefile
> +++ b/drivers/gpu/drm/bridge/Makefile
> @@ -43,3 +43,4 @@ obj-y += analogix/
> obj-y += cadence/
> obj-y += imx/
> obj-y += synopsys/
> +obj-y += tda/
> diff --git a/drivers/gpu/drm/bridge/tda/Kconfig b/drivers/gpu/drm/bridge/tda/Kconfig
> new file mode 100644
> index 0000000000000000000000000000000000000000..5f13e4ffc24eeaa8dd0015c7e84d0dbac93e170c
> --- /dev/null
> +++ b/drivers/gpu/drm/bridge/tda/Kconfig
> @@ -0,0 +1,13 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +config DRM_I2C_NXP_TDA998X
> + tristate "NXP Semiconductors TDA998X HDMI encoder"
> + default m if DRM_TILCDC
> + select CEC_CORE if CEC_NOTIFIER
> + select SND_SOC_HDMI_CODEC if SND_SOC
> + help
> + Support for NXP Semiconductors TDA998X HDMI encoders.
> +
> +config DRM_I2C_NXP_TDA9950
> + tristate "NXP Semiconductors TDA9950/TDA998X HDMI CEC"
> + select CEC_NOTIFIER
> + select CEC_CORE
> diff --git a/drivers/gpu/drm/bridge/tda/Makefile b/drivers/gpu/drm/bridge/tda/Makefile
> new file mode 100644
> index 0000000000000000000000000000000000000000..31fd35527d99d7eb23851d290175a3ff0c756772
> --- /dev/null
> +++ b/drivers/gpu/drm/bridge/tda/Makefile
> @@ -0,0 +1,4 @@
> +# SPDX-License-Identifier: GPL-2.0
> +tda998x-y := tda998x_drv.o
> +obj-$(CONFIG_DRM_I2C_NXP_TDA998X) += tda998x.o
> +obj-$(CONFIG_DRM_I2C_NXP_TDA9950) += tda9950.o
> diff --git a/drivers/gpu/drm/i2c/tda9950.c b/drivers/gpu/drm/bridge/tda/tda9950.c
> similarity index 100%
> rename from drivers/gpu/drm/i2c/tda9950.c
> rename to drivers/gpu/drm/bridge/tda/tda9950.c
> diff --git a/drivers/gpu/drm/i2c/tda998x_drv.c b/drivers/gpu/drm/bridge/tda/tda998x_drv.c
> similarity index 100%
> rename from drivers/gpu/drm/i2c/tda998x_drv.c
> rename to drivers/gpu/drm/bridge/tda/tda998x_drv.c
> diff --git a/drivers/gpu/drm/i2c/Kconfig b/drivers/gpu/drm/i2c/Kconfig
> index 6f19e1c35e30b0e595c1a60628a6b8cf313fcabc..3205cdb827b95209a4bba9fb126ad2df27ddbdfb 100644
> --- a/drivers/gpu/drm/i2c/Kconfig
> +++ b/drivers/gpu/drm/i2c/Kconfig
> @@ -20,17 +20,4 @@ config DRM_I2C_SIL164
> when used in pairs) TMDS transmitters, used in some nVidia
> video cards.
>
> -config DRM_I2C_NXP_TDA998X
> - tristate "NXP Semiconductors TDA998X HDMI encoder"
> - default m if DRM_TILCDC
> - select CEC_CORE if CEC_NOTIFIER
> - select SND_SOC_HDMI_CODEC if SND_SOC
> - help
> - Support for NXP Semiconductors TDA998X HDMI encoders.
> -
> -config DRM_I2C_NXP_TDA9950
> - tristate "NXP Semiconductors TDA9950/TDA998X HDMI CEC"
> - select CEC_NOTIFIER
> - select CEC_CORE
> -
> endmenu
> diff --git a/drivers/gpu/drm/i2c/Makefile b/drivers/gpu/drm/i2c/Makefile
> index a962f6f085686674ed33010345730db776815ebe..1df3869491e277ca210368c4e48efe6d11af62b6 100644
> --- a/drivers/gpu/drm/i2c/Makefile
> +++ b/drivers/gpu/drm/i2c/Makefile
> @@ -4,7 +4,3 @@ obj-$(CONFIG_DRM_I2C_CH7006) += ch7006.o
>
> sil164-y := sil164_drv.o
> obj-$(CONFIG_DRM_I2C_SIL164) += sil164.o
> -
> -tda998x-y := tda998x_drv.o
> -obj-$(CONFIG_DRM_I2C_NXP_TDA998X) += tda998x.o
> -obj-$(CONFIG_DRM_I2C_NXP_TDA9950) += tda9950.o
>
> --
> 2.39.5
>
--
====================
| I would like to |
| fix the world, |
| but they're not |
| giving me the |
\ source code! /
---------------
¯\_(ツ)_/¯
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge
2024-12-18 10:22 ` Neil Armstrong
@ 2025-01-05 22:48 ` Dmitry Baryshkov
0 siblings, 0 replies; 12+ messages in thread
From: Dmitry Baryshkov @ 2025-01-05 22:48 UTC (permalink / raw)
To: Neil Armstrong
Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Liviu Dudau, Andrzej Hajda, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec, Russell King,
linux-kernel, dri-devel
On Wed, Dec 18, 2024 at 11:22:51AM +0100, Neil Armstrong wrote:
> On 15/12/2024 12:09, Dmitry Baryshkov wrote:
> > TDA998x is the HDMI bridge driver, incorporating drm_connector and
> > optional drm_encoder (created via the component bind API by the TICLDC
> > and HDLCD drivers). Thus it should be residing together with the other
> > DRM bridge drivers under drivers/gpu/drm/bridge/.
> >
> > TDA9950 is an I2C-CEC translator, being present on-die on the TDA9989
> > and TDA19989 chips, so it is being instantiated by the TDA998x driver.
> > Move it together with the TDA998x under bridge drivers subdir.
> >
> > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> > ---
> > MAINTAINERS | 2 +-
> > drivers/gpu/drm/arm/Kconfig | 1 +
> > drivers/gpu/drm/bridge/Kconfig | 2 ++
> > drivers/gpu/drm/bridge/Makefile | 1 +
> > drivers/gpu/drm/bridge/tda/Kconfig | 13 +++++++++++++
> > drivers/gpu/drm/bridge/tda/Makefile | 4 ++++
> > drivers/gpu/drm/{i2c => bridge/tda}/tda9950.c | 0
> > drivers/gpu/drm/{i2c => bridge/tda}/tda998x_drv.c | 0
> > drivers/gpu/drm/i2c/Kconfig | 13 -------------
> > drivers/gpu/drm/i2c/Makefile | 4 ----
> > 10 files changed, 22 insertions(+), 18 deletions(-)
> >
> > diff --git a/MAINTAINERS b/MAINTAINERS
> > index 9a23e80abf309cbd918a74683895f8dbe0507a6e..a4c7afd564e721e14aebaf828b75776e50760a45 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -16982,7 +16982,7 @@ M: Russell King <linux@armlinux.org.uk>
> > S: Maintained
> > T: git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-devel
> > T: git git://git.armlinux.org.uk/~rmk/linux-arm.git drm-tda998x-fixes
> > -F: drivers/gpu/drm/i2c/tda998x_drv.c
> > +F: drivers/gpu/drm/bridge/tda/tda998x_drv.c
>
> I'd rather move the entry it to drm-misc in the same move, I don't think
> we want externally maintained bridge drivers mixed in the other bridges.
>
> Russell, so you agree ?
Russell, as you are listed as a maintainer, any feedback for the patches
and for the Neil's proposal?
>
> Apart that:
>
> Acked-by: Neil Armstrong <neil.armstrong@linaro.org>
>
> Neil
>
> > F: include/dt-bindings/display/tda998x.h
> > K: "nxp,tda998x"
> > diff --git a/drivers/gpu/drm/arm/Kconfig b/drivers/gpu/drm/arm/Kconfig
> > index c901ac00c0c3a8f356bd53d97305c6b39b3e6662..ed3ed617c6884876368c8bd072c53f1b710df443 100644
> > --- a/drivers/gpu/drm/arm/Kconfig
> > +++ b/drivers/gpu/drm/arm/Kconfig
> > @@ -9,6 +9,7 @@ config DRM_HDLCD
> > select DRM_CLIENT_SELECTION
> > select DRM_KMS_HELPER
> > select DRM_GEM_DMA_HELPER
> > + select DRM_BRIDGE # for TDA998x
> > help
> > Choose this option if you have an ARM High Definition Colour LCD
> > controller.
> > diff --git a/drivers/gpu/drm/bridge/Kconfig b/drivers/gpu/drm/bridge/Kconfig
> > index 6b4664d91faa80f096ac6a0548ed342e802ae68b..1ef16dcc2ae53eb172604de2d6899004c080a979 100644
> > --- a/drivers/gpu/drm/bridge/Kconfig
> > +++ b/drivers/gpu/drm/bridge/Kconfig
> > @@ -438,4 +438,6 @@ source "drivers/gpu/drm/bridge/imx/Kconfig"
> > source "drivers/gpu/drm/bridge/synopsys/Kconfig"
> > +source "drivers/gpu/drm/bridge/tda/Kconfig"
> > +
> > endmenu
> > diff --git a/drivers/gpu/drm/bridge/Makefile b/drivers/gpu/drm/bridge/Makefile
> > index 97304b429a530c108dcbff906965cda091b0a7a2..52e6c9b3094bba0fd6aaf28af1b58f4bd8bf26d0 100644
> > --- a/drivers/gpu/drm/bridge/Makefile
> > +++ b/drivers/gpu/drm/bridge/Makefile
> > @@ -43,3 +43,4 @@ obj-y += analogix/
> > obj-y += cadence/
> > obj-y += imx/
> > obj-y += synopsys/
> > +obj-y += tda/
> > diff --git a/drivers/gpu/drm/bridge/tda/Kconfig b/drivers/gpu/drm/bridge/tda/Kconfig
> > new file mode 100644
> > index 0000000000000000000000000000000000000000..5f13e4ffc24eeaa8dd0015c7e84d0dbac93e170c
> > --- /dev/null
> > +++ b/drivers/gpu/drm/bridge/tda/Kconfig
> > @@ -0,0 +1,13 @@
> > +# SPDX-License-Identifier: GPL-2.0-only
> > +config DRM_I2C_NXP_TDA998X
> > + tristate "NXP Semiconductors TDA998X HDMI encoder"
> > + default m if DRM_TILCDC
> > + select CEC_CORE if CEC_NOTIFIER
> > + select SND_SOC_HDMI_CODEC if SND_SOC
> > + help
> > + Support for NXP Semiconductors TDA998X HDMI encoders.
> > +
> > +config DRM_I2C_NXP_TDA9950
> > + tristate "NXP Semiconductors TDA9950/TDA998X HDMI CEC"
> > + select CEC_NOTIFIER
> > + select CEC_CORE
> > diff --git a/drivers/gpu/drm/bridge/tda/Makefile b/drivers/gpu/drm/bridge/tda/Makefile
> > new file mode 100644
> > index 0000000000000000000000000000000000000000..31fd35527d99d7eb23851d290175a3ff0c756772
> > --- /dev/null
> > +++ b/drivers/gpu/drm/bridge/tda/Makefile
> > @@ -0,0 +1,4 @@
> > +# SPDX-License-Identifier: GPL-2.0
> > +tda998x-y := tda998x_drv.o
> > +obj-$(CONFIG_DRM_I2C_NXP_TDA998X) += tda998x.o
> > +obj-$(CONFIG_DRM_I2C_NXP_TDA9950) += tda9950.o
> > diff --git a/drivers/gpu/drm/i2c/tda9950.c b/drivers/gpu/drm/bridge/tda/tda9950.c
> > similarity index 100%
> > rename from drivers/gpu/drm/i2c/tda9950.c
> > rename to drivers/gpu/drm/bridge/tda/tda9950.c
> > diff --git a/drivers/gpu/drm/i2c/tda998x_drv.c b/drivers/gpu/drm/bridge/tda/tda998x_drv.c
> > similarity index 100%
> > rename from drivers/gpu/drm/i2c/tda998x_drv.c
> > rename to drivers/gpu/drm/bridge/tda/tda998x_drv.c
> > diff --git a/drivers/gpu/drm/i2c/Kconfig b/drivers/gpu/drm/i2c/Kconfig
> > index 6f19e1c35e30b0e595c1a60628a6b8cf313fcabc..3205cdb827b95209a4bba9fb126ad2df27ddbdfb 100644
> > --- a/drivers/gpu/drm/i2c/Kconfig
> > +++ b/drivers/gpu/drm/i2c/Kconfig
> > @@ -20,17 +20,4 @@ config DRM_I2C_SIL164
> > when used in pairs) TMDS transmitters, used in some nVidia
> > video cards.
> > -config DRM_I2C_NXP_TDA998X
> > - tristate "NXP Semiconductors TDA998X HDMI encoder"
> > - default m if DRM_TILCDC
> > - select CEC_CORE if CEC_NOTIFIER
> > - select SND_SOC_HDMI_CODEC if SND_SOC
> > - help
> > - Support for NXP Semiconductors TDA998X HDMI encoders.
> > -
> > -config DRM_I2C_NXP_TDA9950
> > - tristate "NXP Semiconductors TDA9950/TDA998X HDMI CEC"
> > - select CEC_NOTIFIER
> > - select CEC_CORE
> > -
> > endmenu
> > diff --git a/drivers/gpu/drm/i2c/Makefile b/drivers/gpu/drm/i2c/Makefile
> > index a962f6f085686674ed33010345730db776815ebe..1df3869491e277ca210368c4e48efe6d11af62b6 100644
> > --- a/drivers/gpu/drm/i2c/Makefile
> > +++ b/drivers/gpu/drm/i2c/Makefile
> > @@ -4,7 +4,3 @@ obj-$(CONFIG_DRM_I2C_CH7006) += ch7006.o
> > sil164-y := sil164_drv.o
> > obj-$(CONFIG_DRM_I2C_SIL164) += sil164.o
> > -
> > -tda998x-y := tda998x_drv.o
> > -obj-$(CONFIG_DRM_I2C_NXP_TDA998X) += tda998x.o
> > -obj-$(CONFIG_DRM_I2C_NXP_TDA9950) += tda9950.o
> >
>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge
2024-12-15 12:38 ` Laurent Pinchart
2024-12-15 13:12 ` Dmitry Baryshkov
@ 2025-01-05 22:52 ` Dmitry Baryshkov
2025-01-05 23:20 ` Laurent Pinchart
1 sibling, 1 reply; 12+ messages in thread
From: Dmitry Baryshkov @ 2025-01-05 22:52 UTC (permalink / raw)
To: Laurent Pinchart
Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Liviu Dudau, Andrzej Hajda, Neil Armstrong,
Robert Foss, Jonas Karlman, Jernej Skrabec, Russell King,
linux-kernel, dri-devel
On Sun, Dec 15, 2024 at 02:38:05PM +0200, Laurent Pinchart wrote:
> Hi Dmitry,
>
> Thank you for the patch.
>
> On Sun, Dec 15, 2024 at 01:09:08PM +0200, Dmitry Baryshkov wrote:
> > TDA998x is the HDMI bridge driver, incorporating drm_connector and
> > optional drm_encoder (created via the component bind API by the TICLDC
> > and HDLCD drivers). Thus it should be residing together with the other
> > DRM bridge drivers under drivers/gpu/drm/bridge/.
> >
> > TDA9950 is an I2C-CEC translator, being present on-die on the TDA9989
> > and TDA19989 chips, so it is being instantiated by the TDA998x driver.
> > Move it together with the TDA998x under bridge drivers subdir.
> >
> > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> > ---
> > MAINTAINERS | 2 +-
> > drivers/gpu/drm/arm/Kconfig | 1 +
> > drivers/gpu/drm/bridge/Kconfig | 2 ++
> > drivers/gpu/drm/bridge/Makefile | 1 +
> > drivers/gpu/drm/bridge/tda/Kconfig | 13 +++++++++++++
> > drivers/gpu/drm/bridge/tda/Makefile | 4 ++++
> > drivers/gpu/drm/{i2c => bridge/tda}/tda9950.c | 0
> > drivers/gpu/drm/{i2c => bridge/tda}/tda998x_drv.c | 0
>
> I probably wouldn't have created a tda/ subdirectory in bridge/, but I
> don't mind much either way.
A possibly better option is to move tsa9950.c to drivers/media/cec/i2c/
next to ch7332 CEC driver. WDYT?
If I don't get any response from Russell within the next few days, I
think I'll post v2 performing these two moves: tda9950 to
drivers/media/cec/i2c and tda998x to drivers/gpu/drm/bridge without the
tda/ subdir.
> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge
2025-01-05 22:52 ` Dmitry Baryshkov
@ 2025-01-05 23:20 ` Laurent Pinchart
2025-01-06 8:42 ` Hans Verkuil
0 siblings, 1 reply; 12+ messages in thread
From: Laurent Pinchart @ 2025-01-05 23:20 UTC (permalink / raw)
To: Dmitry Baryshkov
Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Liviu Dudau, Andrzej Hajda, Neil Armstrong,
Robert Foss, Jonas Karlman, Jernej Skrabec, Russell King,
linux-kernel, dri-devel, Hans Verkuil
(CC'ing Hans Verkuil)
On Mon, Jan 06, 2025 at 12:52:55AM +0200, Dmitry Baryshkov wrote:
> On Sun, Dec 15, 2024 at 02:38:05PM +0200, Laurent Pinchart wrote:
> > Hi Dmitry,
> >
> > Thank you for the patch.
> >
> > On Sun, Dec 15, 2024 at 01:09:08PM +0200, Dmitry Baryshkov wrote:
> > > TDA998x is the HDMI bridge driver, incorporating drm_connector and
> > > optional drm_encoder (created via the component bind API by the TICLDC
> > > and HDLCD drivers). Thus it should be residing together with the other
> > > DRM bridge drivers under drivers/gpu/drm/bridge/.
> > >
> > > TDA9950 is an I2C-CEC translator, being present on-die on the TDA9989
> > > and TDA19989 chips, so it is being instantiated by the TDA998x driver.
> > > Move it together with the TDA998x under bridge drivers subdir.
> > >
> > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> > > ---
> > > MAINTAINERS | 2 +-
> > > drivers/gpu/drm/arm/Kconfig | 1 +
> > > drivers/gpu/drm/bridge/Kconfig | 2 ++
> > > drivers/gpu/drm/bridge/Makefile | 1 +
> > > drivers/gpu/drm/bridge/tda/Kconfig | 13 +++++++++++++
> > > drivers/gpu/drm/bridge/tda/Makefile | 4 ++++
> > > drivers/gpu/drm/{i2c => bridge/tda}/tda9950.c | 0
> > > drivers/gpu/drm/{i2c => bridge/tda}/tda998x_drv.c | 0
> >
> > I probably wouldn't have created a tda/ subdirectory in bridge/, but I
> > don't mind much either way.
>
> A possibly better option is to move tsa9950.c to drivers/media/cec/i2c/
> next to ch7332 CEC driver. WDYT?
I think that's a question for Hans. I don't mind much either way.
> If I don't get any response from Russell within the next few days, I
> think I'll post v2 performing these two moves: tda9950 to
> drivers/media/cec/i2c and tda998x to drivers/gpu/drm/bridge without the
> tda/ subdir.
>
> > Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
--
Regards,
Laurent Pinchart
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge
2025-01-05 23:20 ` Laurent Pinchart
@ 2025-01-06 8:42 ` Hans Verkuil
0 siblings, 0 replies; 12+ messages in thread
From: Hans Verkuil @ 2025-01-06 8:42 UTC (permalink / raw)
To: Laurent Pinchart, Dmitry Baryshkov
Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Liviu Dudau, Andrzej Hajda, Neil Armstrong,
Robert Foss, Jonas Karlman, Jernej Skrabec, Russell King,
linux-kernel, dri-devel
On 06/01/2025 00:20, Laurent Pinchart wrote:
> (CC'ing Hans Verkuil)
>
> On Mon, Jan 06, 2025 at 12:52:55AM +0200, Dmitry Baryshkov wrote:
>> On Sun, Dec 15, 2024 at 02:38:05PM +0200, Laurent Pinchart wrote:
>>> Hi Dmitry,
>>>
>>> Thank you for the patch.
>>>
>>> On Sun, Dec 15, 2024 at 01:09:08PM +0200, Dmitry Baryshkov wrote:
>>>> TDA998x is the HDMI bridge driver, incorporating drm_connector and
>>>> optional drm_encoder (created via the component bind API by the TICLDC
>>>> and HDLCD drivers). Thus it should be residing together with the other
>>>> DRM bridge drivers under drivers/gpu/drm/bridge/.
>>>>
>>>> TDA9950 is an I2C-CEC translator, being present on-die on the TDA9989
>>>> and TDA19989 chips, so it is being instantiated by the TDA998x driver.
>>>> Move it together with the TDA998x under bridge drivers subdir.
>>>>
>>>> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
>>>> ---
>>>> MAINTAINERS | 2 +-
>>>> drivers/gpu/drm/arm/Kconfig | 1 +
>>>> drivers/gpu/drm/bridge/Kconfig | 2 ++
>>>> drivers/gpu/drm/bridge/Makefile | 1 +
>>>> drivers/gpu/drm/bridge/tda/Kconfig | 13 +++++++++++++
>>>> drivers/gpu/drm/bridge/tda/Makefile | 4 ++++
>>>> drivers/gpu/drm/{i2c => bridge/tda}/tda9950.c | 0
>>>> drivers/gpu/drm/{i2c => bridge/tda}/tda998x_drv.c | 0
>>>
>>> I probably wouldn't have created a tda/ subdirectory in bridge/, but I
>>> don't mind much either way.
>>
>> A possibly better option is to move tsa9950.c to drivers/media/cec/i2c/
>> next to ch7332 CEC driver. WDYT?
>
> I think that's a question for Hans. I don't mind much either way.
I agree, moving it to media/cec/i2c makes sense.
Regards,
Hans
>
>> If I don't get any response from Russell within the next few days, I
>> think I'll post v2 performing these two moves: tda9950 to
>> drivers/media/cec/i2c and tda998x to drivers/gpu/drm/bridge without the
>> tda/ subdir.
>>
>>> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
>
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2025-01-06 8:42 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-15 11:09 [PATCH 0/2] drm/i2c: tda998x: move under drivers/gpu/drm/bridge Dmitry Baryshkov
2024-12-15 11:09 ` [PATCH 1/2] drm/i2c: tda998x: drop support for platform_data Dmitry Baryshkov
2024-12-15 12:35 ` Laurent Pinchart
2024-12-15 11:09 ` [PATCH 2/2] drm/i2c: move TDA drivers under drivers/gpu/drm/bridge Dmitry Baryshkov
2024-12-15 12:38 ` Laurent Pinchart
2024-12-15 13:12 ` Dmitry Baryshkov
2025-01-05 22:52 ` Dmitry Baryshkov
2025-01-05 23:20 ` Laurent Pinchart
2025-01-06 8:42 ` Hans Verkuil
2024-12-18 10:22 ` Neil Armstrong
2025-01-05 22:48 ` Dmitry Baryshkov
2024-12-19 19:57 ` Liviu Dudau
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).