From patchwork Fri Aug 23 01:40:32 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Pinchart X-Patchwork-Id: 11110419 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 2DFFC14DB for ; Fri, 23 Aug 2019 01:40:55 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 1500823404 for ; Fri, 23 Aug 2019 01:40:55 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 1500823404 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=ideasonboard.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 10D366EB9F; Fri, 23 Aug 2019 01:40:53 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by gabe.freedesktop.org (Postfix) with ESMTPS id 247896EB95 for ; Fri, 23 Aug 2019 01:40:51 +0000 (UTC) Received: from pendragon.bb.dnainternet.fi (dfj612yhrgyx302h3jwwy-3.rev.dnainternet.fi [IPv6:2001:14ba:21f5:5b00:ce28:277f:58d7:3ca4]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 875B82B2; Fri, 23 Aug 2019 03:40:46 +0200 (CEST) From: Laurent Pinchart To: dri-devel@lists.freedesktop.org Subject: [PATCH 1/2] drm/panel: Add and fill drm_panel type field Date: Fri, 23 Aug 2019 04:40:32 +0300 Message-Id: <20190823014033.2971-1-laurent.pinchart@ideasonboard.com> X-Mailer: git-send-email 2.21.0 MIME-Version: 1.0 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1566524448; bh=/mZ2GEi5FYGQIK783H1/dID+NJtoPol6iWDDHhVrHV8=; h=From:To:Cc:Subject:Date:From; b=HIyeBkW2rs3yd/EGnTlUGbmnxJ2jaNxpP2PNE4cqjE2m12I5U5Rr72ZZxtGQS4QnO OyxrEs12ghGzFc7ihAXeZkV34eUUW5U967WVhjel+FAOOgJY0EV29N0q8IHIOGrdXs If+PGalxj2G+t2OmTp9nxrrdoCXfYeR8BD6SWiAw= X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Alexandre Belloni , Neil Armstrong , =?utf-8?q?Guido_G=C3=BCnther?= , Philippe Cornu , Paul Cercueil , Thierry Reding , Sam Ravnborg , Tomi Valkeinen , Ludovic Desroches , Boris Brezillon , Jagan Teki , Robert Chiras , Alexandre Torgue , Jonas Karlman , Jyri Sarha , Vincent Abriou , Jernej Skrabec , Purism Kernel Team , Stefan Mavrodiev , Nicolas Ferre , Yannick Fertre , Kieran Bingham , Maxime Coquelin Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Add a type field to the drm_panel structure to report the panel type, using DRM_MODE_CONNECTOR_* macros (the values that make sense are LVDS, eDP, DSI and DPI). This will be used to initialise the corresponding connector type. Update all panel drivers to fill the new field. Signed-off-by: Laurent Pinchart --- drivers/gpu/drm/panel/panel-arm-versatile.c | 1 + .../drm/panel/panel-feiyang-fy07024di26a30d.c | 1 + drivers/gpu/drm/panel/panel-ilitek-ili9322.c | 1 + drivers/gpu/drm/panel/panel-ilitek-ili9881c.c | 1 + drivers/gpu/drm/panel/panel-innolux-p079zca.c | 1 + .../gpu/drm/panel/panel-jdi-lt070me05000.c | 1 + .../drm/panel/panel-kingdisplay-kd097d04.c | 1 + drivers/gpu/drm/panel/panel-lg-lb035q02.c | 1 + drivers/gpu/drm/panel/panel-lg-lg4573.c | 1 + drivers/gpu/drm/panel/panel-lvds.c | 1 + drivers/gpu/drm/panel/panel-nec-nl8048hl11.c | 1 + drivers/gpu/drm/panel/panel-novatek-nt39016.c | 1 + .../drm/panel/panel-olimex-lcd-olinuxino.c | 1 + .../gpu/drm/panel/panel-orisetech-otm8009a.c | 1 + .../drm/panel/panel-osd-osd101t2587-53ts.c | 1 + .../drm/panel/panel-panasonic-vvx10f034n00.c | 1 + .../drm/panel/panel-raspberrypi-touchscreen.c | 1 + drivers/gpu/drm/panel/panel-raydium-rm67191.c | 1 + drivers/gpu/drm/panel/panel-raydium-rm68200.c | 1 + .../drm/panel/panel-rocktech-jh057n00900.c | 1 + drivers/gpu/drm/panel/panel-ronbo-rb070d30.c | 1 + drivers/gpu/drm/panel/panel-samsung-ld9040.c | 1 + drivers/gpu/drm/panel/panel-samsung-s6d16d0.c | 1 + drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c | 1 + .../gpu/drm/panel/panel-samsung-s6e63j0x03.c | 1 + drivers/gpu/drm/panel/panel-samsung-s6e63m0.c | 1 + drivers/gpu/drm/panel/panel-samsung-s6e8aa0.c | 1 + drivers/gpu/drm/panel/panel-seiko-43wvf1g.c | 1 + .../gpu/drm/panel/panel-sharp-lq101r1sx01.c | 1 + .../gpu/drm/panel/panel-sharp-ls037v7dw01.c | 1 + .../gpu/drm/panel/panel-sharp-ls043t1le01.c | 1 + drivers/gpu/drm/panel/panel-simple.c | 23 +++++++++++++++++++ drivers/gpu/drm/panel/panel-sitronix-st7701.c | 1 + .../gpu/drm/panel/panel-sitronix-st7789v.c | 1 + drivers/gpu/drm/panel/panel-sony-acx565akm.c | 1 + drivers/gpu/drm/panel/panel-tpo-td028ttec1.c | 1 + drivers/gpu/drm/panel/panel-tpo-td043mtea1.c | 1 + drivers/gpu/drm/panel/panel-tpo-tpg110.c | 1 + drivers/gpu/drm/panel/panel-truly-nt35597.c | 1 + include/drm/drm_panel.h | 7 ++++++ 40 files changed, 68 insertions(+) diff --git a/drivers/gpu/drm/panel/panel-arm-versatile.c b/drivers/gpu/drm/panel/panel-arm-versatile.c index 5f72c922a04b..5c335fc1632b 100644 --- a/drivers/gpu/drm/panel/panel-arm-versatile.c +++ b/drivers/gpu/drm/panel/panel-arm-versatile.c @@ -353,6 +353,7 @@ static int versatile_panel_probe(struct platform_device *pdev) drm_panel_init(&vpanel->panel); vpanel->panel.dev = dev; vpanel->panel.funcs = &versatile_panel_drm_funcs; + vpanel->panel.type = DRM_MODE_CONNECTOR_DPI; return drm_panel_add(&vpanel->panel); } diff --git a/drivers/gpu/drm/panel/panel-feiyang-fy07024di26a30d.c b/drivers/gpu/drm/panel/panel-feiyang-fy07024di26a30d.c index dabf59e0f56f..58894a4bf02c 100644 --- a/drivers/gpu/drm/panel/panel-feiyang-fy07024di26a30d.c +++ b/drivers/gpu/drm/panel/panel-feiyang-fy07024di26a30d.c @@ -207,6 +207,7 @@ static int feiyang_dsi_probe(struct mipi_dsi_device *dsi) drm_panel_init(&ctx->panel); ctx->panel.dev = &dsi->dev; ctx->panel.funcs = &feiyang_funcs; + ctx->panel.type = DRM_MODE_CONNECTOR_DSI; ctx->dvdd = devm_regulator_get(&dsi->dev, "dvdd"); if (IS_ERR(ctx->dvdd)) { diff --git a/drivers/gpu/drm/panel/panel-ilitek-ili9322.c b/drivers/gpu/drm/panel/panel-ilitek-ili9322.c index 3c58f63adbf7..10a6f4ab53e2 100644 --- a/drivers/gpu/drm/panel/panel-ilitek-ili9322.c +++ b/drivers/gpu/drm/panel/panel-ilitek-ili9322.c @@ -898,6 +898,7 @@ static int ili9322_probe(struct spi_device *spi) drm_panel_init(&ili->panel); ili->panel.dev = dev; ili->panel.funcs = &ili9322_drm_funcs; + ili->panel.type = DRM_MODE_CONNECTOR_DPI; return drm_panel_add(&ili->panel); } diff --git a/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c b/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c index 3ad4a46c4e94..360b87ff62a1 100644 --- a/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c +++ b/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c @@ -436,6 +436,7 @@ static int ili9881c_dsi_probe(struct mipi_dsi_device *dsi) drm_panel_init(&ctx->panel); ctx->panel.dev = &dsi->dev; ctx->panel.funcs = &ili9881c_funcs; + ctx->panel.type = DRM_MODE_CONNECTOR_DSI; ctx->power = devm_regulator_get(&dsi->dev, "power"); if (IS_ERR(ctx->power)) { diff --git a/drivers/gpu/drm/panel/panel-innolux-p079zca.c b/drivers/gpu/drm/panel/panel-innolux-p079zca.c index d92d1c98878c..00b24662ebb5 100644 --- a/drivers/gpu/drm/panel/panel-innolux-p079zca.c +++ b/drivers/gpu/drm/panel/panel-innolux-p079zca.c @@ -490,6 +490,7 @@ static int innolux_panel_add(struct mipi_dsi_device *dsi, drm_panel_init(&innolux->base); innolux->base.funcs = &innolux_panel_funcs; innolux->base.dev = dev; + innolux->base.type = DRM_MODE_CONNECTOR_DSI; err = drm_panel_add(&innolux->base); if (err < 0) diff --git a/drivers/gpu/drm/panel/panel-jdi-lt070me05000.c b/drivers/gpu/drm/panel/panel-jdi-lt070me05000.c index ff3e89e61e3f..8e6035557297 100644 --- a/drivers/gpu/drm/panel/panel-jdi-lt070me05000.c +++ b/drivers/gpu/drm/panel/panel-jdi-lt070me05000.c @@ -440,6 +440,7 @@ static int jdi_panel_add(struct jdi_panel *jdi) drm_panel_init(&jdi->base); jdi->base.funcs = &jdi_panel_funcs; jdi->base.dev = &jdi->dsi->dev; + jdi->base.type = DRM_MODE_CONNECTOR_DSI; ret = drm_panel_add(&jdi->base); diff --git a/drivers/gpu/drm/panel/panel-kingdisplay-kd097d04.c b/drivers/gpu/drm/panel/panel-kingdisplay-kd097d04.c index 3ac04eb8d0fe..930e72bffc8c 100644 --- a/drivers/gpu/drm/panel/panel-kingdisplay-kd097d04.c +++ b/drivers/gpu/drm/panel/panel-kingdisplay-kd097d04.c @@ -394,6 +394,7 @@ static int kingdisplay_panel_add(struct kingdisplay_panel *kingdisplay) drm_panel_init(&kingdisplay->base); kingdisplay->base.funcs = &kingdisplay_panel_funcs; kingdisplay->base.dev = &kingdisplay->link->dev; + kingdisplay->base.type = DRM_MODE_CONNECTOR_DSI; return drm_panel_add(&kingdisplay->base); } diff --git a/drivers/gpu/drm/panel/panel-lg-lb035q02.c b/drivers/gpu/drm/panel/panel-lg-lb035q02.c index fc82a525b071..790d44794a10 100644 --- a/drivers/gpu/drm/panel/panel-lg-lb035q02.c +++ b/drivers/gpu/drm/panel/panel-lg-lb035q02.c @@ -199,6 +199,7 @@ static int lb035q02_probe(struct spi_device *spi) drm_panel_init(&lcd->panel); lcd->panel.dev = &lcd->spi->dev; lcd->panel.funcs = &lb035q02_funcs; + lcd->panel.type = DRM_MODE_CONNECTOR_DPI; return drm_panel_add(&lcd->panel); } diff --git a/drivers/gpu/drm/panel/panel-lg-lg4573.c b/drivers/gpu/drm/panel/panel-lg-lg4573.c index 41bf02d122a1..376d38bf3670 100644 --- a/drivers/gpu/drm/panel/panel-lg-lg4573.c +++ b/drivers/gpu/drm/panel/panel-lg-lg4573.c @@ -262,6 +262,7 @@ static int lg4573_probe(struct spi_device *spi) drm_panel_init(&ctx->panel); ctx->panel.dev = &spi->dev; ctx->panel.funcs = &lg4573_drm_funcs; + ctx->panel.type = DRM_MODE_CONNECTOR_DPI; return drm_panel_add(&ctx->panel); } diff --git a/drivers/gpu/drm/panel/panel-lvds.c b/drivers/gpu/drm/panel/panel-lvds.c index ad47cc95459e..311ce5067fd7 100644 --- a/drivers/gpu/drm/panel/panel-lvds.c +++ b/drivers/gpu/drm/panel/panel-lvds.c @@ -263,6 +263,7 @@ static int panel_lvds_probe(struct platform_device *pdev) drm_panel_init(&lvds->panel); lvds->panel.dev = lvds->dev; lvds->panel.funcs = &panel_lvds_funcs; + lvds->panel.type = DRM_MODE_CONNECTOR_LVDS; ret = drm_panel_add(&lvds->panel); if (ret < 0) diff --git a/drivers/gpu/drm/panel/panel-nec-nl8048hl11.c b/drivers/gpu/drm/panel/panel-nec-nl8048hl11.c index 299b217c83e1..d7d07677879b 100644 --- a/drivers/gpu/drm/panel/panel-nec-nl8048hl11.c +++ b/drivers/gpu/drm/panel/panel-nec-nl8048hl11.c @@ -208,6 +208,7 @@ static int nl8048_probe(struct spi_device *spi) drm_panel_init(&lcd->panel); lcd->panel.dev = &lcd->spi->dev; lcd->panel.funcs = &nl8048_funcs; + lcd->panel.type = DRM_MODE_CONNECTOR_DPI; return drm_panel_add(&lcd->panel); } diff --git a/drivers/gpu/drm/panel/panel-novatek-nt39016.c b/drivers/gpu/drm/panel/panel-novatek-nt39016.c index 2ad1063b068d..fbe549fb1f06 100644 --- a/drivers/gpu/drm/panel/panel-novatek-nt39016.c +++ b/drivers/gpu/drm/panel/panel-novatek-nt39016.c @@ -295,6 +295,7 @@ static int nt39016_probe(struct spi_device *spi) drm_panel_init(&panel->drm_panel); panel->drm_panel.dev = dev; panel->drm_panel.funcs = &nt39016_funcs; + panel->drm_panel.type = DRM_MODE_CONNECTOR_DPI; err = drm_panel_add(&panel->drm_panel); if (err < 0) { diff --git a/drivers/gpu/drm/panel/panel-olimex-lcd-olinuxino.c b/drivers/gpu/drm/panel/panel-olimex-lcd-olinuxino.c index 2bae1db3ff34..469b99e547f6 100644 --- a/drivers/gpu/drm/panel/panel-olimex-lcd-olinuxino.c +++ b/drivers/gpu/drm/panel/panel-olimex-lcd-olinuxino.c @@ -291,6 +291,7 @@ static int lcd_olinuxino_probe(struct i2c_client *client, drm_panel_init(&lcd->panel); lcd->panel.dev = dev; lcd->panel.funcs = &lcd_olinuxino_funcs; + lcd->panel.type = DRM_MODE_CONNECTOR_DPI; return drm_panel_add(&lcd->panel); } diff --git a/drivers/gpu/drm/panel/panel-orisetech-otm8009a.c b/drivers/gpu/drm/panel/panel-orisetech-otm8009a.c index c7b48df8869a..9a19dd5f70ca 100644 --- a/drivers/gpu/drm/panel/panel-orisetech-otm8009a.c +++ b/drivers/gpu/drm/panel/panel-orisetech-otm8009a.c @@ -458,6 +458,7 @@ static int otm8009a_probe(struct mipi_dsi_device *dsi) drm_panel_init(&ctx->panel); ctx->panel.dev = dev; ctx->panel.funcs = &otm8009a_drm_funcs; + ctx->panel.type = DRM_MODE_CONNECTOR_DSI; ctx->bl_dev = devm_backlight_device_register(dev, dev_name(dev), dsi->host->dev, ctx, diff --git a/drivers/gpu/drm/panel/panel-osd-osd101t2587-53ts.c b/drivers/gpu/drm/panel/panel-osd-osd101t2587-53ts.c index e0e20ecff916..f68e40ecef6e 100644 --- a/drivers/gpu/drm/panel/panel-osd-osd101t2587-53ts.c +++ b/drivers/gpu/drm/panel/panel-osd-osd101t2587-53ts.c @@ -169,6 +169,7 @@ static int osd101t2587_panel_add(struct osd101t2587_panel *osd101t2587) drm_panel_init(&osd101t2587->base); osd101t2587->base.funcs = &osd101t2587_panel_funcs; osd101t2587->base.dev = &osd101t2587->dsi->dev; + osd101t2587->base.type = DRM_MODE_CONNECTOR_DSI; return drm_panel_add(&osd101t2587->base); } diff --git a/drivers/gpu/drm/panel/panel-panasonic-vvx10f034n00.c b/drivers/gpu/drm/panel/panel-panasonic-vvx10f034n00.c index 3dff0b3f73c2..5e04bb6d89ce 100644 --- a/drivers/gpu/drm/panel/panel-panasonic-vvx10f034n00.c +++ b/drivers/gpu/drm/panel/panel-panasonic-vvx10f034n00.c @@ -226,6 +226,7 @@ static int wuxga_nt_panel_add(struct wuxga_nt_panel *wuxga_nt) drm_panel_init(&wuxga_nt->base); wuxga_nt->base.funcs = &wuxga_nt_panel_funcs; wuxga_nt->base.dev = &wuxga_nt->dsi->dev; + wuxga_nt->base.type = DRM_MODE_CONNECTOR_DSI; ret = drm_panel_add(&wuxga_nt->base); if (ret < 0) diff --git a/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c b/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c index b5b14aa059ea..cac074939e2c 100644 --- a/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c +++ b/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c @@ -428,6 +428,7 @@ static int rpi_touchscreen_probe(struct i2c_client *i2c, ts->base.dev = dev; ts->base.funcs = &rpi_touchscreen_funcs; + ts->base.type = DRM_MODE_CONNECTOR_DSI; /* This appears last, as it's what will unblock the DSI host * driver's component bind function. diff --git a/drivers/gpu/drm/panel/panel-raydium-rm67191.c b/drivers/gpu/drm/panel/panel-raydium-rm67191.c index 6a5d37006103..458b8826fe85 100644 --- a/drivers/gpu/drm/panel/panel-raydium-rm67191.c +++ b/drivers/gpu/drm/panel/panel-raydium-rm67191.c @@ -609,6 +609,7 @@ static int rad_panel_probe(struct mipi_dsi_device *dsi) drm_panel_init(&panel->panel); panel->panel.funcs = &rad_panel_funcs; panel->panel.dev = dev; + panel->panel.type = DRM_MODE_CONNECTOR_DSI; dev_set_drvdata(dev, panel); ret = drm_panel_add(&panel->panel); diff --git a/drivers/gpu/drm/panel/panel-raydium-rm68200.c b/drivers/gpu/drm/panel/panel-raydium-rm68200.c index ba889625ad43..ebb6af1ea331 100644 --- a/drivers/gpu/drm/panel/panel-raydium-rm68200.c +++ b/drivers/gpu/drm/panel/panel-raydium-rm68200.c @@ -407,6 +407,7 @@ static int rm68200_probe(struct mipi_dsi_device *dsi) drm_panel_init(&ctx->panel); ctx->panel.dev = dev; ctx->panel.funcs = &rm68200_drm_funcs; + ctx->panel.type = DRM_MODE_CONNECTOR_DSI; drm_panel_add(&ctx->panel); diff --git a/drivers/gpu/drm/panel/panel-rocktech-jh057n00900.c b/drivers/gpu/drm/panel/panel-rocktech-jh057n00900.c index b9109922397f..b959d0581c95 100644 --- a/drivers/gpu/drm/panel/panel-rocktech-jh057n00900.c +++ b/drivers/gpu/drm/panel/panel-rocktech-jh057n00900.c @@ -346,6 +346,7 @@ static int jh057n_probe(struct mipi_dsi_device *dsi) drm_panel_init(&ctx->panel); ctx->panel.dev = dev; ctx->panel.funcs = &jh057n_drm_funcs; + ctx->panel.type = DRM_MODE_CONNECTOR_DSI; drm_panel_add(&ctx->panel); diff --git a/drivers/gpu/drm/panel/panel-ronbo-rb070d30.c b/drivers/gpu/drm/panel/panel-ronbo-rb070d30.c index 3c15764f0c03..c0f1262e080c 100644 --- a/drivers/gpu/drm/panel/panel-ronbo-rb070d30.c +++ b/drivers/gpu/drm/panel/panel-ronbo-rb070d30.c @@ -176,6 +176,7 @@ static int rb070d30_panel_dsi_probe(struct mipi_dsi_device *dsi) drm_panel_init(&ctx->panel); ctx->panel.dev = &dsi->dev; ctx->panel.funcs = &rb070d30_panel_funcs; + ctx->panel.type = DRM_MODE_CONNECTOR_DSI; ctx->gpios.reset = devm_gpiod_get(&dsi->dev, "reset", GPIOD_OUT_LOW); if (IS_ERR(ctx->gpios.reset)) { diff --git a/drivers/gpu/drm/panel/panel-samsung-ld9040.c b/drivers/gpu/drm/panel/panel-samsung-ld9040.c index 3be902dcedc0..78e484727661 100644 --- a/drivers/gpu/drm/panel/panel-samsung-ld9040.c +++ b/drivers/gpu/drm/panel/panel-samsung-ld9040.c @@ -354,6 +354,7 @@ static int ld9040_probe(struct spi_device *spi) drm_panel_init(&ctx->panel); ctx->panel.dev = dev; ctx->panel.funcs = &ld9040_drm_funcs; + ctx->panel.type = DRM_MODE_CONNECTOR_DPI; return drm_panel_add(&ctx->panel); } diff --git a/drivers/gpu/drm/panel/panel-samsung-s6d16d0.c b/drivers/gpu/drm/panel/panel-samsung-s6d16d0.c index f75bef24e050..4430c730026c 100644 --- a/drivers/gpu/drm/panel/panel-samsung-s6d16d0.c +++ b/drivers/gpu/drm/panel/panel-samsung-s6d16d0.c @@ -218,6 +218,7 @@ static int s6d16d0_probe(struct mipi_dsi_device *dsi) drm_panel_init(&s6->panel); s6->panel.dev = dev; s6->panel.funcs = &s6d16d0_drm_funcs; + s6->panel.type = DRM_MODE_CONNECTOR_DSI; ret = drm_panel_add(&s6->panel); if (ret < 0) diff --git a/drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c b/drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c index b923de23ed65..8b65ee4dabc7 100644 --- a/drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c +++ b/drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c @@ -735,6 +735,7 @@ static int s6e3ha2_probe(struct mipi_dsi_device *dsi) drm_panel_init(&ctx->panel); ctx->panel.dev = dev; ctx->panel.funcs = &s6e3ha2_drm_funcs; + ctx->panel.type = DRM_MODE_CONNECTOR_DSI; ret = drm_panel_add(&ctx->panel); if (ret < 0) diff --git a/drivers/gpu/drm/panel/panel-samsung-s6e63j0x03.c b/drivers/gpu/drm/panel/panel-samsung-s6e63j0x03.c index cd90fa700c49..f0dbcd9eddf6 100644 --- a/drivers/gpu/drm/panel/panel-samsung-s6e63j0x03.c +++ b/drivers/gpu/drm/panel/panel-samsung-s6e63j0x03.c @@ -469,6 +469,7 @@ static int s6e63j0x03_probe(struct mipi_dsi_device *dsi) drm_panel_init(&ctx->panel); ctx->panel.dev = dev; ctx->panel.funcs = &s6e63j0x03_funcs; + ctx->panel.type = DRM_MODE_CONNECTOR_DSI; ctx->bl_dev = backlight_device_register("s6e63j0x03", dev, ctx, &s6e63j0x03_bl_ops, NULL); diff --git a/drivers/gpu/drm/panel/panel-samsung-s6e63m0.c b/drivers/gpu/drm/panel/panel-samsung-s6e63m0.c index 142d395ea512..2a41ff055244 100644 --- a/drivers/gpu/drm/panel/panel-samsung-s6e63m0.c +++ b/drivers/gpu/drm/panel/panel-samsung-s6e63m0.c @@ -476,6 +476,7 @@ static int s6e63m0_probe(struct spi_device *spi) drm_panel_init(&ctx->panel); ctx->panel.dev = dev; ctx->panel.funcs = &s6e63m0_drm_funcs; + ctx->panel.type = DRM_MODE_CONNECTOR_DPI; ret = s6e63m0_backlight_register(ctx); if (ret < 0) diff --git a/drivers/gpu/drm/panel/panel-samsung-s6e8aa0.c b/drivers/gpu/drm/panel/panel-samsung-s6e8aa0.c index 81858267723a..c1d723296d33 100644 --- a/drivers/gpu/drm/panel/panel-samsung-s6e8aa0.c +++ b/drivers/gpu/drm/panel/panel-samsung-s6e8aa0.c @@ -1020,6 +1020,7 @@ static int s6e8aa0_probe(struct mipi_dsi_device *dsi) drm_panel_init(&ctx->panel); ctx->panel.dev = dev; ctx->panel.funcs = &s6e8aa0_drm_funcs; + ctx->panel.type = DRM_MODE_CONNECTOR_DSI; ret = drm_panel_add(&ctx->panel); if (ret < 0) diff --git a/drivers/gpu/drm/panel/panel-seiko-43wvf1g.c b/drivers/gpu/drm/panel/panel-seiko-43wvf1g.c index 18b22b1294fb..0951b9b84dc1 100644 --- a/drivers/gpu/drm/panel/panel-seiko-43wvf1g.c +++ b/drivers/gpu/drm/panel/panel-seiko-43wvf1g.c @@ -277,6 +277,7 @@ static int seiko_panel_probe(struct device *dev, drm_panel_init(&panel->base); panel->base.dev = dev; panel->base.funcs = &seiko_panel_funcs; + panel->base.type = DRM_MODE_CONNECTOR_DPI; err = drm_panel_add(&panel->base); if (err < 0) diff --git a/drivers/gpu/drm/panel/panel-sharp-lq101r1sx01.c b/drivers/gpu/drm/panel/panel-sharp-lq101r1sx01.c index e910b4ad1310..3dbbd3f9ba1a 100644 --- a/drivers/gpu/drm/panel/panel-sharp-lq101r1sx01.c +++ b/drivers/gpu/drm/panel/panel-sharp-lq101r1sx01.c @@ -332,6 +332,7 @@ static int sharp_panel_add(struct sharp_panel *sharp) drm_panel_init(&sharp->base); sharp->base.funcs = &sharp_panel_funcs; sharp->base.dev = &sharp->link1->dev; + sharp->base.type = DRM_MODE_CONNECTOR_DSI; return drm_panel_add(&sharp->base); } diff --git a/drivers/gpu/drm/panel/panel-sharp-ls037v7dw01.c b/drivers/gpu/drm/panel/panel-sharp-ls037v7dw01.c index 46cd9a250129..099a29da7998 100644 --- a/drivers/gpu/drm/panel/panel-sharp-ls037v7dw01.c +++ b/drivers/gpu/drm/panel/panel-sharp-ls037v7dw01.c @@ -188,6 +188,7 @@ static int ls037v7dw01_probe(struct platform_device *pdev) drm_panel_init(&lcd->panel); lcd->panel.dev = &pdev->dev; lcd->panel.funcs = &ls037v7dw01_funcs; + lcd->panel.type = DRM_MODE_CONNECTOR_DPI; return drm_panel_add(&lcd->panel); } diff --git a/drivers/gpu/drm/panel/panel-sharp-ls043t1le01.c b/drivers/gpu/drm/panel/panel-sharp-ls043t1le01.c index c39abde9f9f1..1764e4cadea4 100644 --- a/drivers/gpu/drm/panel/panel-sharp-ls043t1le01.c +++ b/drivers/gpu/drm/panel/panel-sharp-ls043t1le01.c @@ -267,6 +267,7 @@ static int sharp_nt_panel_add(struct sharp_nt_panel *sharp_nt) drm_panel_init(&sharp_nt->base); sharp_nt->base.funcs = &sharp_nt_panel_funcs; sharp_nt->base.dev = &sharp_nt->dsi->dev; + sharp_nt->base.type = DRM_MODE_CONNECTOR_DSI; return drm_panel_add(&sharp_nt->base); } diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c index 28fa6ba7b767..6d5d0c51e97e 100644 --- a/drivers/gpu/drm/panel/panel-simple.c +++ b/drivers/gpu/drm/panel/panel-simple.c @@ -94,6 +94,7 @@ struct panel_desc { u32 bus_format; u32 bus_flags; + unsigned int type; }; struct panel_simple { @@ -467,6 +468,7 @@ static int panel_simple_probe(struct device *dev, const struct panel_desc *desc) drm_panel_init(&panel->base); panel->base.dev = dev; panel->base.funcs = &panel_simple_funcs; + panel->base.type = desc->type ? desc->type : DRM_MODE_CONNECTOR_DPI; err = drm_panel_add(&panel->base); if (err < 0) @@ -833,6 +835,7 @@ static const struct panel_desc auo_g133han01 = { .unprepare = 1000, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_JEIDA, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct display_timing auo_g185han01_timings = { @@ -862,6 +865,7 @@ static const struct panel_desc auo_g185han01 = { .unprepare = 1000, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct display_timing auo_p320hvn03_timings = { @@ -890,6 +894,7 @@ static const struct panel_desc auo_p320hvn03 = { .unprepare = 500, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct drm_display_mode auo_t215hvn01_mode = { @@ -1205,6 +1210,7 @@ static const struct panel_desc dlc_dlc0700yzg_1 = { .disable = 200, }, .bus_format = MEDIA_BUS_FMT_RGB666_1X7X3_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct display_timing dlc_dlc1010gig_timing = { @@ -1235,6 +1241,7 @@ static const struct panel_desc dlc_dlc1010gig = { .unprepare = 60, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct drm_display_mode edt_et035012dm6_mode = { @@ -1501,6 +1508,7 @@ static const struct panel_desc hannstar_hsd070pww1 = { .height = 94, }, .bus_format = MEDIA_BUS_FMT_RGB666_1X7X3_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct display_timing hannstar_hsd100pxn1_timing = { @@ -1525,6 +1533,7 @@ static const struct panel_desc hannstar_hsd100pxn1 = { .height = 152, }, .bus_format = MEDIA_BUS_FMT_RGB666_1X7X3_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct drm_display_mode hitachi_tx23d38vm0caa_mode = { @@ -1631,6 +1640,7 @@ static const struct panel_desc innolux_g070y2_l01 = { .unprepare = 800, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct display_timing innolux_g101ice_l01_timing = { @@ -1659,6 +1669,7 @@ static const struct panel_desc innolux_g101ice_l01 = { .disable = 200, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct display_timing innolux_g121i1_l01_timing = { @@ -1686,6 +1697,7 @@ static const struct panel_desc innolux_g121i1_l01 = { .disable = 20, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct drm_display_mode innolux_g121x1_l03_mode = { @@ -1869,6 +1881,7 @@ static const struct panel_desc koe_tx31d200vm0baa = { .height = 109, }, .bus_format = MEDIA_BUS_FMT_RGB666_1X7X3_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct display_timing kyo_tcg121xglp_timing = { @@ -1893,6 +1906,7 @@ static const struct panel_desc kyo_tcg121xglp = { .height = 184, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct drm_display_mode lemaker_bl035_rgb_002_mode = { @@ -1941,6 +1955,7 @@ static const struct panel_desc lg_lb070wv8 = { .height = 91, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct drm_display_mode lg_lp079qx1_sp0v_mode = { @@ -2063,6 +2078,7 @@ static const struct panel_desc mitsubishi_aa070mc01 = { .disable = 400, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, .bus_flags = DRM_BUS_FLAG_DE_HIGH, }; @@ -2091,6 +2107,7 @@ static const struct panel_desc nec_nl12880bc20_05 = { .disable = 50, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct drm_display_mode nec_nl4827hc19_05b_mode = { @@ -2193,6 +2210,7 @@ static const struct panel_desc nlt_nl192108ac18_02d = { .unprepare = 500, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct drm_display_mode nvd_9128_mode = { @@ -2216,6 +2234,7 @@ static const struct panel_desc nvd_9128 = { .height = 88, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct display_timing okaya_rs800480t_7x0gp_timing = { @@ -2628,6 +2647,7 @@ static const struct panel_desc sharp_lq101k1ly04 = { .height = 136, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_JEIDA, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct display_timing sharp_lq123p1jx31_timing = { @@ -2807,6 +2827,7 @@ static const struct panel_desc tianma_tm070jdhg30 = { .height = 95, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct display_timing tianma_tm070rvhg71_timing = { @@ -2831,6 +2852,7 @@ static const struct panel_desc tianma_tm070rvhg71 = { .height = 86, }, .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct drm_display_mode ti_nspire_cx_lcd_mode[] = { @@ -2983,6 +3005,7 @@ static const struct panel_desc urt_umsh_8596md_lvds = { .height = 91, }, .bus_format = MEDIA_BUS_FMT_RGB666_1X7X3_SPWG, + .type = DRM_MODE_CONNECTOR_LVDS, }; static const struct panel_desc urt_umsh_8596md_parallel = { diff --git a/drivers/gpu/drm/panel/panel-sitronix-st7701.c b/drivers/gpu/drm/panel/panel-sitronix-st7701.c index 09c5d9a6f9fa..863de44b1389 100644 --- a/drivers/gpu/drm/panel/panel-sitronix-st7701.c +++ b/drivers/gpu/drm/panel/panel-sitronix-st7701.c @@ -383,6 +383,7 @@ static int st7701_dsi_probe(struct mipi_dsi_device *dsi) st7701->sleep_delay = 120 + desc->panel_sleep_delay; st7701->panel.funcs = &st7701_funcs; st7701->panel.dev = &dsi->dev; + st7701->panel.type = DRM_MODE_CONNECTOR_DSI; ret = drm_panel_add(&st7701->panel); if (ret < 0) diff --git a/drivers/gpu/drm/panel/panel-sitronix-st7789v.c b/drivers/gpu/drm/panel/panel-sitronix-st7789v.c index 5e3e92ea9ea6..eb5f01629d92 100644 --- a/drivers/gpu/drm/panel/panel-sitronix-st7789v.c +++ b/drivers/gpu/drm/panel/panel-sitronix-st7789v.c @@ -383,6 +383,7 @@ static int st7789v_probe(struct spi_device *spi) ctx->panel.dev = &spi->dev; ctx->panel.funcs = &st7789v_drm_funcs; + ctx->panel.type = DRM_MODE_CONNECTOR_DPI; ctx->power = devm_regulator_get(&spi->dev, "power"); if (IS_ERR(ctx->power)) diff --git a/drivers/gpu/drm/panel/panel-sony-acx565akm.c b/drivers/gpu/drm/panel/panel-sony-acx565akm.c index 305259b58767..1cbcbd0e213a 100644 --- a/drivers/gpu/drm/panel/panel-sony-acx565akm.c +++ b/drivers/gpu/drm/panel/panel-sony-acx565akm.c @@ -651,6 +651,7 @@ static int acx565akm_probe(struct spi_device *spi) drm_panel_init(&lcd->panel); lcd->panel.dev = &lcd->spi->dev; lcd->panel.funcs = &acx565akm_funcs; + lcd->panel.type = DRM_MODE_CONNECTOR_DPI; ret = drm_panel_add(&lcd->panel); if (ret < 0) { diff --git a/drivers/gpu/drm/panel/panel-tpo-td028ttec1.c b/drivers/gpu/drm/panel/panel-tpo-td028ttec1.c index d7b2e34626ef..f643e55ef90d 100644 --- a/drivers/gpu/drm/panel/panel-tpo-td028ttec1.c +++ b/drivers/gpu/drm/panel/panel-tpo-td028ttec1.c @@ -350,6 +350,7 @@ static int td028ttec1_probe(struct spi_device *spi) drm_panel_init(&lcd->panel); lcd->panel.dev = &lcd->spi->dev; lcd->panel.funcs = &td028ttec1_funcs; + lcd->panel.type = DRM_MODE_CONNECTOR_DPI; return drm_panel_add(&lcd->panel); } diff --git a/drivers/gpu/drm/panel/panel-tpo-td043mtea1.c b/drivers/gpu/drm/panel/panel-tpo-td043mtea1.c index 3b4f30c0fdae..885ea1a8c1f6 100644 --- a/drivers/gpu/drm/panel/panel-tpo-td043mtea1.c +++ b/drivers/gpu/drm/panel/panel-tpo-td043mtea1.c @@ -461,6 +461,7 @@ static int td043mtea1_probe(struct spi_device *spi) drm_panel_init(&lcd->panel); lcd->panel.dev = &lcd->spi->dev; lcd->panel.funcs = &td043mtea1_funcs; + lcd->panel.type = DRM_MODE_CONNECTOR_DPI; ret = drm_panel_add(&lcd->panel); if (ret < 0) { diff --git a/drivers/gpu/drm/panel/panel-tpo-tpg110.c b/drivers/gpu/drm/panel/panel-tpo-tpg110.c index 71591e5f5938..73ec6ff7eefb 100644 --- a/drivers/gpu/drm/panel/panel-tpo-tpg110.c +++ b/drivers/gpu/drm/panel/panel-tpo-tpg110.c @@ -460,6 +460,7 @@ static int tpg110_probe(struct spi_device *spi) drm_panel_init(&tpg->panel); tpg->panel.dev = dev; tpg->panel.funcs = &tpg110_drm_funcs; + tpg->panel.type = DRM_MODE_CONNECTOR_DPI; spi_set_drvdata(spi, tpg); return drm_panel_add(&tpg->panel); diff --git a/drivers/gpu/drm/panel/panel-truly-nt35597.c b/drivers/gpu/drm/panel/panel-truly-nt35597.c index 77e1311b7c69..aa2012fb7393 100644 --- a/drivers/gpu/drm/panel/panel-truly-nt35597.c +++ b/drivers/gpu/drm/panel/panel-truly-nt35597.c @@ -521,6 +521,7 @@ static int truly_nt35597_panel_add(struct truly_nt35597 *ctx) drm_panel_init(&ctx->panel); ctx->panel.dev = dev; ctx->panel.funcs = &truly_nt35597_drm_funcs; + ctx->panel.type = DRM_MODE_CONNECTOR_DSI; drm_panel_add(&ctx->panel); return 0; diff --git a/include/drm/drm_panel.h b/include/drm/drm_panel.h index 624bd15ecfab..5899a7d6559c 100644 --- a/include/drm/drm_panel.h +++ b/include/drm/drm_panel.h @@ -139,6 +139,13 @@ struct drm_panel { */ const struct drm_panel_funcs *funcs; + /** + * @type: + * + * Type of the panel as a DRM_MODE_CONNECTOR_* value. + */ + int type; + /** * @list: * From patchwork Fri Aug 23 01:40:33 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Pinchart X-Patchwork-Id: 11110421 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id E07891395 for ; Fri, 23 Aug 2019 01:40:57 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id C8F252173E for ; Fri, 23 Aug 2019 01:40:57 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C8F252173E Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=ideasonboard.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id AD6A26EB95; Fri, 23 Aug 2019 01:40:56 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by gabe.freedesktop.org (Postfix) with ESMTPS id ADFF76EB95 for ; Fri, 23 Aug 2019 01:40:52 +0000 (UTC) Received: from pendragon.bb.dnainternet.fi (dfj612yhrgyx302h3jwwy-3.rev.dnainternet.fi [IPv6:2001:14ba:21f5:5b00:ce28:277f:58d7:3ca4]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 0256433D; Fri, 23 Aug 2019 03:40:48 +0200 (CEST) From: Laurent Pinchart To: dri-devel@lists.freedesktop.org Subject: [PATCH 2/2] drm/bridge: panel: Use drm_panel.type instead of explicit connector_type Date: Fri, 23 Aug 2019 04:40:33 +0300 Message-Id: <20190823014033.2971-2-laurent.pinchart@ideasonboard.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190823014033.2971-1-laurent.pinchart@ideasonboard.com> References: <20190823014033.2971-1-laurent.pinchart@ideasonboard.com> MIME-Version: 1.0 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1566524450; bh=DBkbBx2jegueoNN5wPU1fCBTl5IXRaDwB+IxLUPmOJY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=B4AGBn2F8CibemnufYfvL2dayYVwmkCn6unFQrkPVkuS8DpG5zkdqdAt1yNeHt55i FVt2CuSWrw/MelWvFOpNyWIbjI+15+XMqo23qH7oY3tGCxsp/aniXkRRbhhwf7VZtE XduXCkF4Y1YnkWPW9PVMAghjIeRi7UGUDlanvwHk= X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Alexandre Belloni , Neil Armstrong , =?utf-8?q?Guido_G=C3=BCnther?= , Philippe Cornu , Paul Cercueil , Thierry Reding , Sam Ravnborg , Tomi Valkeinen , Ludovic Desroches , Boris Brezillon , Jagan Teki , Robert Chiras , Alexandre Torgue , Jonas Karlman , Jyri Sarha , Vincent Abriou , Jernej Skrabec , Purism Kernel Team , Stefan Mavrodiev , Nicolas Ferre , Yannick Fertre , Kieran Bingham , Maxime Coquelin Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" The drm panel bridge creates a connector using a connector type explicit passed by the display controller or bridge driver that instantiates the panel bridge. Now that drm_panel reports its connector type, use it and remove the connector_type argument to drm_panel_bridge_add() and devm_drm_panel_bridge_add(). Signed-off-by: Laurent Pinchart Reviewed-by: Linus Walleij --- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c | 2 +- drivers/gpu/drm/bridge/cdns-dsi.c | 2 +- drivers/gpu/drm/bridge/lvds-encoder.c | 2 +- drivers/gpu/drm/bridge/panel.c | 16 ++++------------ drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c | 2 +- drivers/gpu/drm/ingenic/ingenic-drm.c | 6 ++---- drivers/gpu/drm/mcde/mcde_dsi.c | 3 +-- drivers/gpu/drm/pl111/pl111_drv.c | 3 +-- drivers/gpu/drm/rcar-du/rcar_du_encoder.c | 3 +-- drivers/gpu/drm/rockchip/rockchip_rgb.c | 2 +- drivers/gpu/drm/stm/ltdc.c | 3 +-- drivers/gpu/drm/tilcdc/tilcdc_external.c | 3 +-- drivers/gpu/drm/tve200/tve200_drv.c | 3 +-- drivers/gpu/drm/vc4/vc4_dpi.c | 2 +- drivers/gpu/drm/vc4/vc4_dsi.c | 3 +-- include/drm/drm_bridge.h | 6 ++---- 16 files changed, 21 insertions(+), 40 deletions(-) diff --git a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c index c388497366ca..34ce38217350 100644 --- a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c +++ b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c @@ -107,7 +107,7 @@ static int atmel_hlcdc_attach_endpoint(struct drm_device *dev, int endpoint) output->encoder.possible_crtcs = 0x1; if (panel) { - bridge = drm_panel_bridge_add(panel, DRM_MODE_CONNECTOR_Unknown); + bridge = drm_panel_bridge_add(panel); if (IS_ERR(bridge)) return PTR_ERR(bridge); } diff --git a/drivers/gpu/drm/bridge/cdns-dsi.c b/drivers/gpu/drm/bridge/cdns-dsi.c index 2af7f25c7413..aa109b5dc41c 100644 --- a/drivers/gpu/drm/bridge/cdns-dsi.c +++ b/drivers/gpu/drm/bridge/cdns-dsi.c @@ -958,7 +958,7 @@ static int cdns_dsi_attach(struct mipi_dsi_host *host, panel = of_drm_find_panel(np); if (!IS_ERR(panel)) { - bridge = drm_panel_bridge_add(panel, DRM_MODE_CONNECTOR_DSI); + bridge = drm_panel_bridge_add(panel); } else { bridge = of_drm_find_bridge(dev->dev.of_node); if (!bridge) diff --git a/drivers/gpu/drm/bridge/lvds-encoder.c b/drivers/gpu/drm/bridge/lvds-encoder.c index 9ebc750449cf..7b03ba65673d 100644 --- a/drivers/gpu/drm/bridge/lvds-encoder.c +++ b/drivers/gpu/drm/bridge/lvds-encoder.c @@ -107,7 +107,7 @@ static int lvds_encoder_probe(struct platform_device *pdev) } lvds_encoder->panel_bridge = - devm_drm_panel_bridge_add(dev, panel, DRM_MODE_CONNECTOR_LVDS); + devm_drm_panel_bridge_add(dev, panel); if (IS_ERR(lvds_encoder->panel_bridge)) return PTR_ERR(lvds_encoder->panel_bridge); diff --git a/drivers/gpu/drm/bridge/panel.c b/drivers/gpu/drm/bridge/panel.c index f5b8e55301ac..912b0e9ecd5f 100644 --- a/drivers/gpu/drm/bridge/panel.c +++ b/drivers/gpu/drm/bridge/panel.c @@ -16,7 +16,6 @@ struct panel_bridge { struct drm_bridge bridge; struct drm_connector connector; struct drm_panel *panel; - u32 connector_type; }; static inline struct panel_bridge * @@ -72,7 +71,7 @@ static int panel_bridge_attach(struct drm_bridge *bridge, ret = drm_connector_init(bridge->dev, connector, &panel_bridge_connector_funcs, - panel_bridge->connector_type); + panel_bridge->panel->type); if (ret) { DRM_ERROR("Failed to initialize connector\n"); return ret; @@ -137,8 +136,6 @@ static const struct drm_bridge_funcs panel_bridge_bridge_funcs = { * just calls the appropriate functions from &drm_panel. * * @panel: The drm_panel being wrapped. Must be non-NULL. - * @connector_type: The DRM_MODE_CONNECTOR_* for the connector to be - * created. * * For drivers converting from directly using drm_panel: The expected * usage pattern is that during either encoder module probe or DSI @@ -155,8 +152,7 @@ static const struct drm_bridge_funcs panel_bridge_bridge_funcs = { * See devm_drm_panel_bridge_add() for an automatically manged version of this * function. */ -struct drm_bridge *drm_panel_bridge_add(struct drm_panel *panel, - u32 connector_type) +struct drm_bridge *drm_panel_bridge_add(struct drm_panel *panel) { struct panel_bridge *panel_bridge; @@ -168,7 +164,6 @@ struct drm_bridge *drm_panel_bridge_add(struct drm_panel *panel, if (!panel_bridge) return ERR_PTR(-ENOMEM); - panel_bridge->connector_type = connector_type; panel_bridge->panel = panel; panel_bridge->bridge.funcs = &panel_bridge_bridge_funcs; @@ -217,15 +212,12 @@ static void devm_drm_panel_bridge_release(struct device *dev, void *res) * that just calls the appropriate functions from &drm_panel. * @dev: device to tie the bridge lifetime to * @panel: The drm_panel being wrapped. Must be non-NULL. - * @connector_type: The DRM_MODE_CONNECTOR_* for the connector to be - * created. * * This is the managed version of drm_panel_bridge_add() which automatically * calls drm_panel_bridge_remove() when @dev is unbound. */ struct drm_bridge *devm_drm_panel_bridge_add(struct device *dev, - struct drm_panel *panel, - u32 connector_type) + struct drm_panel *panel) { struct drm_bridge **ptr, *bridge; @@ -234,7 +226,7 @@ struct drm_bridge *devm_drm_panel_bridge_add(struct device *dev, if (!ptr) return ERR_PTR(-ENOMEM); - bridge = drm_panel_bridge_add(panel, connector_type); + bridge = drm_panel_bridge_add(panel); if (!IS_ERR(bridge)) { *ptr = bridge; devres_add(dev, ptr); diff --git a/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c b/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c index 9245dde314a8..5b87c3ebb393 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c @@ -316,7 +316,7 @@ static int dw_mipi_dsi_host_attach(struct mipi_dsi_host *host, return ret; if (panel) { - bridge = drm_panel_bridge_add(panel, DRM_MODE_CONNECTOR_DSI); + bridge = drm_panel_bridge_add(panel); if (IS_ERR(bridge)) return PTR_ERR(bridge); } diff --git a/drivers/gpu/drm/ingenic/ingenic-drm.c b/drivers/gpu/drm/ingenic/ingenic-drm.c index 65eb10179ea9..3d0be48dc3cf 100644 --- a/drivers/gpu/drm/ingenic/ingenic-drm.c +++ b/drivers/gpu/drm/ingenic/ingenic-drm.c @@ -675,10 +675,8 @@ static int ingenic_drm_probe(struct platform_device *pdev) return ret; } - if (panel) { - bridge = devm_drm_panel_bridge_add(dev, panel, - DRM_MODE_CONNECTOR_Unknown); - } + if (panel) + bridge = devm_drm_panel_bridge_add(dev, panel); priv->dma_hwdesc = dma_alloc_coherent(dev, sizeof(*priv->dma_hwdesc), &priv->dma_hwdesc_phys, diff --git a/drivers/gpu/drm/mcde/mcde_dsi.c b/drivers/gpu/drm/mcde/mcde_dsi.c index 8feaa1b81473..a4745cfd405b 100644 --- a/drivers/gpu/drm/mcde/mcde_dsi.c +++ b/drivers/gpu/drm/mcde/mcde_dsi.c @@ -926,8 +926,7 @@ static int mcde_dsi_bind(struct device *dev, struct device *master, } } if (panel) { - bridge = drm_panel_bridge_add(panel, - DRM_MODE_CONNECTOR_DSI); + bridge = drm_panel_bridge_add(panel); if (IS_ERR(bridge)) { dev_err(dev, "error adding panel bridge\n"); return PTR_ERR(bridge); diff --git a/drivers/gpu/drm/pl111/pl111_drv.c b/drivers/gpu/drm/pl111/pl111_drv.c index 276b53473a84..d94c896122eb 100644 --- a/drivers/gpu/drm/pl111/pl111_drv.c +++ b/drivers/gpu/drm/pl111/pl111_drv.c @@ -150,8 +150,7 @@ static int pl111_modeset_init(struct drm_device *dev) return -EPROBE_DEFER; if (panel) { - bridge = drm_panel_bridge_add(panel, - DRM_MODE_CONNECTOR_Unknown); + bridge = drm_panel_bridge_add(panel); if (IS_ERR(bridge)) { ret = PTR_ERR(bridge); goto out_config; diff --git a/drivers/gpu/drm/rcar-du/rcar_du_encoder.c b/drivers/gpu/drm/rcar-du/rcar_du_encoder.c index 26603843c318..700923a7c604 100644 --- a/drivers/gpu/drm/rcar-du/rcar_du_encoder.c +++ b/drivers/gpu/drm/rcar-du/rcar_du_encoder.c @@ -84,8 +84,7 @@ int rcar_du_encoder_init(struct rcar_du_device *rcdu, goto done; } - bridge = devm_drm_panel_bridge_add(rcdu->dev, panel, - DRM_MODE_CONNECTOR_DPI); + bridge = devm_drm_panel_bridge_add(rcdu->dev, panel); if (IS_ERR(bridge)) { ret = PTR_ERR(bridge); goto done; diff --git a/drivers/gpu/drm/rockchip/rockchip_rgb.c b/drivers/gpu/drm/rockchip/rockchip_rgb.c index f586e06f3df2..ad8869bccc0e 100644 --- a/drivers/gpu/drm/rockchip/rockchip_rgb.c +++ b/drivers/gpu/drm/rockchip/rockchip_rgb.c @@ -135,7 +135,7 @@ struct rockchip_rgb *rockchip_rgb_init(struct device *dev, drm_encoder_helper_add(encoder, &rockchip_rgb_encoder_helper_funcs); if (panel) { - bridge = drm_panel_bridge_add(panel, DRM_MODE_CONNECTOR_LVDS); + bridge = drm_panel_bridge_add(panel); if (IS_ERR(bridge)) return ERR_CAST(bridge); } diff --git a/drivers/gpu/drm/stm/ltdc.c b/drivers/gpu/drm/stm/ltdc.c index 18561d977d84..e117d5fdf423 100644 --- a/drivers/gpu/drm/stm/ltdc.c +++ b/drivers/gpu/drm/stm/ltdc.c @@ -1236,8 +1236,7 @@ int ltdc_load(struct drm_device *ddev) /* Add endpoints panels or bridges if any */ for (i = 0; i < MAX_ENDPOINTS; i++) { if (panel[i]) { - bridge[i] = drm_panel_bridge_add(panel[i], - DRM_MODE_CONNECTOR_DPI); + bridge[i] = drm_panel_bridge_add(panel[i]); if (IS_ERR(bridge[i])) { DRM_ERROR("panel-bridge endpoint %d\n", i); ret = PTR_ERR(bridge[i]); diff --git a/drivers/gpu/drm/tilcdc/tilcdc_external.c b/drivers/gpu/drm/tilcdc/tilcdc_external.c index 1ed765ce9349..9e52d97711b6 100644 --- a/drivers/gpu/drm/tilcdc/tilcdc_external.c +++ b/drivers/gpu/drm/tilcdc/tilcdc_external.c @@ -139,8 +139,7 @@ int tilcdc_attach_external_device(struct drm_device *ddev) } if (panel) { - bridge = devm_drm_panel_bridge_add(ddev->dev, panel, - DRM_MODE_CONNECTOR_DPI); + bridge = devm_drm_panel_bridge_add(ddev->dev, panel); if (IS_ERR(bridge)) { ret = PTR_ERR(bridge); goto err_encoder_cleanup; diff --git a/drivers/gpu/drm/tve200/tve200_drv.c b/drivers/gpu/drm/tve200/tve200_drv.c index 416f24823c0a..4bbbe635a62f 100644 --- a/drivers/gpu/drm/tve200/tve200_drv.c +++ b/drivers/gpu/drm/tve200/tve200_drv.c @@ -80,8 +80,7 @@ static int tve200_modeset_init(struct drm_device *dev) if (ret && ret != -ENODEV) return ret; if (panel) { - bridge = drm_panel_bridge_add(panel, - DRM_MODE_CONNECTOR_Unknown); + bridge = drm_panel_bridge_add(panel); if (IS_ERR(bridge)) { ret = PTR_ERR(bridge); goto out_bridge; diff --git a/drivers/gpu/drm/vc4/vc4_dpi.c b/drivers/gpu/drm/vc4/vc4_dpi.c index 59662d735432..a13b4e4d7879 100644 --- a/drivers/gpu/drm/vc4/vc4_dpi.c +++ b/drivers/gpu/drm/vc4/vc4_dpi.c @@ -249,7 +249,7 @@ static int vc4_dpi_init_bridge(struct vc4_dpi *dpi) } if (panel) - bridge = drm_panel_bridge_add(panel, DRM_MODE_CONNECTOR_DPI); + bridge = drm_panel_bridge_add(panel); return drm_bridge_attach(dpi->encoder, bridge, NULL, 0); } diff --git a/drivers/gpu/drm/vc4/vc4_dsi.c b/drivers/gpu/drm/vc4/vc4_dsi.c index f5d5b6837831..c692af50778f 100644 --- a/drivers/gpu/drm/vc4/vc4_dsi.c +++ b/drivers/gpu/drm/vc4/vc4_dsi.c @@ -1575,8 +1575,7 @@ static int vc4_dsi_bind(struct device *dev, struct device *master, void *data) } if (panel) { - dsi->bridge = devm_drm_panel_bridge_add(dev, panel, - DRM_MODE_CONNECTOR_DSI); + dsi->bridge = devm_drm_panel_bridge_add(dev, panel); if (IS_ERR(dsi->bridge)) return PTR_ERR(dsi->bridge); } diff --git a/include/drm/drm_bridge.h b/include/drm/drm_bridge.h index a2960a77f5cf..7fff677f59a5 100644 --- a/include/drm/drm_bridge.h +++ b/include/drm/drm_bridge.h @@ -625,12 +625,10 @@ void drm_bridge_hpd_notify(struct drm_bridge *bridge, enum drm_connector_status status); #ifdef CONFIG_DRM_PANEL_BRIDGE -struct drm_bridge *drm_panel_bridge_add(struct drm_panel *panel, - u32 connector_type); +struct drm_bridge *drm_panel_bridge_add(struct drm_panel *panel); void drm_panel_bridge_remove(struct drm_bridge *bridge); struct drm_bridge *devm_drm_panel_bridge_add(struct device *dev, - struct drm_panel *panel, - u32 connector_type); + struct drm_panel *panel); #endif #endif