The nouveau driver is the only user of the drm_encoder_slave interface. Demote it from KMS helpers module to the nouveau driver itself, moving corresponding I2C encoders to be handled by nouveau driver too. Ideally those two drivers should be converted to the drm_bridge interface, but it's unclear if it's worth spending time on that. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> --- Changes in v2: - Renamed symbols in defconfig (Laurent) - Added missing Kbuild file (Laurent, LKP) - Renamed guarding defines in include files. - Dropped mentions of two removed functions. - Link to v1: https://lore.kernel.org/r/20241214-nouveau-encoder-slave-v1-0-beda767472e3@xxxxxxxxxx --- Dmitry Baryshkov (2): drm/nouveau: incorporate I2C TV encoder drivers drm/nouveau: vendor in drm_encoder_slave API arch/arm/configs/multi_v7_defconfig | 4 +- arch/parisc/configs/generic-32bit_defconfig | 4 +- arch/parisc/configs/generic-64bit_defconfig | 4 +- drivers/gpu/drm/Makefile | 1 - drivers/gpu/drm/i2c/Kconfig | 18 ---- drivers/gpu/drm/i2c/Makefile | 6 -- drivers/gpu/drm/nouveau/Kconfig | 20 ++++ drivers/gpu/drm/nouveau/dispnv04/Kbuild | 3 + drivers/gpu/drm/nouveau/dispnv04/dfp.c | 12 +-- drivers/gpu/drm/nouveau/dispnv04/i2c/Kbuild | 5 + .../drm/{ => nouveau/dispnv04}/i2c/ch7006_drv.c | 30 +++--- .../drm/{ => nouveau/dispnv04}/i2c/ch7006_mode.c | 8 +- .../drm/{ => nouveau/dispnv04}/i2c/ch7006_priv.h | 11 ++- .../drm/{ => nouveau/dispnv04}/i2c/sil164_drv.c | 33 ++++--- .../dispnv04/nouveau_i2c_encoder.c} | 85 +++++----------- drivers/gpu/drm/nouveau/dispnv04/tvnv04.c | 20 ++-- drivers/gpu/drm/nouveau/dispnv04/tvnv17.c | 4 +- .../gpu/drm/nouveau/include}/i2c/ch7006.h | 4 +- .../gpu/drm/nouveau/include/i2c/encoder_i2c.h | 109 ++++++++------------- .../gpu/drm/nouveau/include}/i2c/sil164.h | 4 +- drivers/gpu/drm/nouveau/nouveau_connector.c | 6 +- drivers/gpu/drm/nouveau/nouveau_encoder.h | 13 +-- 22 files changed, 172 insertions(+), 232 deletions(-) --- base-commit: 4176cf5c5651c33769de83bb61b0287f4ec7719f change-id: 20241214-nouveau-encoder-slave-a6dd422fa4a9 Best regards, -- Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>