]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/panel: Don't store+check prepared/enabled for simple cases
authorDouglas Anderson <dianders@chromium.org>
Fri, 4 Aug 2023 21:06:04 +0000 (14:06 -0700)
committerDouglas Anderson <dianders@chromium.org>
Wed, 13 Sep 2023 15:36:18 +0000 (08:36 -0700)
As talked about in commit d2aacaf07395 ("drm/panel: Check for already
prepared/enabled in drm_panel"), we want to remove needless code from
panel drivers that was storing and double-checking the
prepared/enabled state. Even if someone was relying on the
double-check before, that double-check is now in the core and not
needed in individual drivers.

This pile of panel drivers appears to be simple to handle. Based on
code inspection they seemed to be using the prepared/enabled state
simply for double-checking that nothing else in the kernel called them
inconsistently. Now that the core drm_panel is doing the double
checking (and warning) it should be very clear that these devices
don't need their own double-check.

Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20230804140605.RFC.1.Ia54954fd2f7645c1b86597494902973f57feeb71@changeid
16 files changed:
drivers/gpu/drm/panel/panel-asus-z00t-tm5p5-n35596.c
drivers/gpu/drm/panel/panel-boe-bf060y8m-aj0.c
drivers/gpu/drm/panel/panel-jdi-fhd-r63452.c
drivers/gpu/drm/panel/panel-novatek-nt35950.c
drivers/gpu/drm/panel/panel-novatek-nt36523.c
drivers/gpu/drm/panel/panel-raydium-rm68200.c
drivers/gpu/drm/panel/panel-samsung-s6e88a0-ams452ef01.c
drivers/gpu/drm/panel/panel-samsung-sofef00.c
drivers/gpu/drm/panel/panel-sharp-ls060t1sx01.c
drivers/gpu/drm/panel/panel-sony-td4353-jdi.c
drivers/gpu/drm/panel/panel-sony-tulip-truly-nt35521.c
drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c
drivers/gpu/drm/panel/panel-truly-nt35597.c
drivers/gpu/drm/panel/panel-visionox-r66451.c
drivers/gpu/drm/panel/panel-visionox-rm69299.c
drivers/gpu/drm/panel/panel-visionox-vtdr6130.c

index 075a7af81eff02cee6333b80a9cea653bbcced9f..bcaa63d1955fd773e368a9bbf232ad7e6ef1169b 100644 (file)
@@ -16,7 +16,6 @@ struct tm5p5_nt35596 {
        struct mipi_dsi_device *dsi;
        struct regulator_bulk_data supplies[2];
        struct gpio_desc *reset_gpio;
-       bool prepared;
 };
 
 static inline struct tm5p5_nt35596 *to_tm5p5_nt35596(struct drm_panel *panel)
@@ -112,9 +111,6 @@ static int tm5p5_nt35596_prepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (ctx->prepared)
-               return 0;
-
        ret = regulator_bulk_enable(ARRAY_SIZE(ctx->supplies), ctx->supplies);
        if (ret < 0) {
                dev_err(dev, "Failed to enable regulators: %d\n", ret);
@@ -132,7 +128,6 @@ static int tm5p5_nt35596_prepare(struct drm_panel *panel)
                return ret;
        }
 
-       ctx->prepared = true;
        return 0;
 }
 
@@ -142,9 +137,6 @@ static int tm5p5_nt35596_unprepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (!ctx->prepared)
-               return 0;
-
        ret = tm5p5_nt35596_off(ctx);
        if (ret < 0)
                dev_err(dev, "Failed to un-initialize panel: %d\n", ret);
@@ -153,7 +145,6 @@ static int tm5p5_nt35596_unprepare(struct drm_panel *panel)
        regulator_bulk_disable(ARRAY_SIZE(ctx->supplies),
                               ctx->supplies);
 
-       ctx->prepared = false;
        return 0;
 }
 
index 90098b753e3b9c9857fd952c22eb8cb4d368beb4..e77db8597eb7c17e086ccff86b18f2a8dd4f0f13 100644 (file)
@@ -34,7 +34,6 @@ struct boe_bf060y8m_aj0 {
        struct mipi_dsi_device *dsi;
        struct regulator_bulk_data vregs[BF060Y8M_VREG_MAX];
        struct gpio_desc *reset_gpio;
-       bool prepared;
 };
 
 static inline
@@ -129,9 +128,6 @@ static int boe_bf060y8m_aj0_prepare(struct drm_panel *panel)
        struct device *dev = &boe->dsi->dev;
        int ret;
 
-       if (boe->prepared)
-               return 0;
-
        /*
         * Enable EL Driving Voltage first - doing that at the beginning
         * or at the end of the power sequence doesn't matter, so enable
@@ -166,7 +162,6 @@ static int boe_bf060y8m_aj0_prepare(struct drm_panel *panel)
                return ret;
        }
 
-       boe->prepared = true;
        return 0;
 
 err_vci:
@@ -186,9 +181,6 @@ static int boe_bf060y8m_aj0_unprepare(struct drm_panel *panel)
        struct device *dev = &boe->dsi->dev;
        int ret;
 
-       if (!boe->prepared)
-               return 0;
-
        ret = boe_bf060y8m_aj0_off(boe);
        if (ret < 0)
                dev_err(dev, "Failed to un-initialize panel: %d\n", ret);
@@ -196,7 +188,6 @@ static int boe_bf060y8m_aj0_unprepare(struct drm_panel *panel)
        gpiod_set_value_cansleep(boe->reset_gpio, 1);
        ret = regulator_bulk_disable(ARRAY_SIZE(boe->vregs), boe->vregs);
 
-       boe->prepared = false;
        return 0;
 }
 
index 8912757a6f4258943cd10ec2707cbab3898bcd13..3e0a8e0d58a0f53a403af3aacd988cd82b960552 100644 (file)
@@ -21,7 +21,6 @@ struct jdi_fhd_r63452 {
        struct drm_panel panel;
        struct mipi_dsi_device *dsi;
        struct gpio_desc *reset_gpio;
-       bool prepared;
 };
 
 static inline struct jdi_fhd_r63452 *to_jdi_fhd_r63452(struct drm_panel *panel)
@@ -157,9 +156,6 @@ static int jdi_fhd_r63452_prepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (ctx->prepared)
-               return 0;
-
        jdi_fhd_r63452_reset(ctx);
 
        ret = jdi_fhd_r63452_on(ctx);
@@ -169,7 +165,6 @@ static int jdi_fhd_r63452_prepare(struct drm_panel *panel)
                return ret;
        }
 
-       ctx->prepared = true;
        return 0;
 }
 
@@ -179,16 +174,12 @@ static int jdi_fhd_r63452_unprepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (!ctx->prepared)
-               return 0;
-
        ret = jdi_fhd_r63452_off(ctx);
        if (ret < 0)
                dev_err(dev, "Failed to un-initialize panel: %d\n", ret);
 
        gpiod_set_value_cansleep(ctx->reset_gpio, 1);
 
-       ctx->prepared = false;
        return 0;
 }
 
index 412ca84d05811053ce01189ffc812d5cae433b22..648ce9201426561ca2049d4c832d89f3e31109f9 100644 (file)
@@ -59,7 +59,6 @@ struct nt35950 {
 
        int cur_mode;
        u8 last_page;
-       bool prepared;
 };
 
 struct nt35950_panel_mode {
@@ -431,9 +430,6 @@ static int nt35950_prepare(struct drm_panel *panel)
        struct device *dev = &nt->dsi[0]->dev;
        int ret;
 
-       if (nt->prepared)
-               return 0;
-
        ret = regulator_enable(nt->vregs[0].consumer);
        if (ret)
                return ret;
@@ -460,7 +456,6 @@ static int nt35950_prepare(struct drm_panel *panel)
                dev_err(dev, "Failed to initialize panel: %d\n", ret);
                goto end;
        }
-       nt->prepared = true;
 
 end:
        if (ret < 0) {
@@ -477,9 +472,6 @@ static int nt35950_unprepare(struct drm_panel *panel)
        struct device *dev = &nt->dsi[0]->dev;
        int ret;
 
-       if (!nt->prepared)
-               return 0;
-
        ret = nt35950_off(nt);
        if (ret < 0)
                dev_err(dev, "Failed to deinitialize panel: %d\n", ret);
@@ -487,7 +479,6 @@ static int nt35950_unprepare(struct drm_panel *panel)
        gpiod_set_value_cansleep(nt->reset_gpio, 0);
        regulator_bulk_disable(ARRAY_SIZE(nt->vregs), nt->vregs);
 
-       nt->prepared = false;
        return 0;
 }
 
index 9632b9e95b7159d2e852593bf82bf7e4f60d574e..9b9a7eb1bc606aae0449e3dda3af9879066cf314 100644 (file)
@@ -38,8 +38,6 @@ struct panel_info {
        struct gpio_desc *reset_gpio;
        struct backlight_device *backlight;
        struct regulator *vddio;
-
-       bool prepared;
 };
 
 struct panel_desc {
@@ -1046,9 +1044,6 @@ static int nt36523_prepare(struct drm_panel *panel)
        struct panel_info *pinfo = to_panel_info(panel);
        int ret;
 
-       if (pinfo->prepared)
-               return 0;
-
        ret = regulator_enable(pinfo->vddio);
        if (ret) {
                dev_err(panel->dev, "failed to enable vddio regulator: %d\n", ret);
@@ -1064,8 +1059,6 @@ static int nt36523_prepare(struct drm_panel *panel)
                return ret;
        }
 
-       pinfo->prepared = true;
-
        return 0;
 }
 
@@ -1095,14 +1088,9 @@ static int nt36523_unprepare(struct drm_panel *panel)
 {
        struct panel_info *pinfo = to_panel_info(panel);
 
-       if (!pinfo->prepared)
-               return 0;
-
        gpiod_set_value_cansleep(pinfo->reset_gpio, 1);
        regulator_disable(pinfo->vddio);
 
-       pinfo->prepared = false;
-
        return 0;
 }
 
index 5f9b340588fb25d7984c7500764347c4be65520c..7b7fe987e2929f6f6ebe9a644bf4ef0cf9292256 100644 (file)
@@ -77,8 +77,6 @@ struct rm68200 {
        struct drm_panel panel;
        struct gpio_desc *reset_gpio;
        struct regulator *supply;
-       bool prepared;
-       bool enabled;
 };
 
 static const struct drm_display_mode default_mode = {
@@ -231,27 +229,12 @@ static void rm68200_init_sequence(struct rm68200 *ctx)
        dcs_write_seq(ctx, MCS_CMD_MODE_SW, MCS_CMD1_UCS);
 }
 
-static int rm68200_disable(struct drm_panel *panel)
-{
-       struct rm68200 *ctx = panel_to_rm68200(panel);
-
-       if (!ctx->enabled)
-               return 0;
-
-       ctx->enabled = false;
-
-       return 0;
-}
-
 static int rm68200_unprepare(struct drm_panel *panel)
 {
        struct rm68200 *ctx = panel_to_rm68200(panel);
        struct mipi_dsi_device *dsi = to_mipi_dsi_device(ctx->dev);
        int ret;
 
-       if (!ctx->prepared)
-               return 0;
-
        ret = mipi_dsi_dcs_set_display_off(dsi);
        if (ret)
                dev_warn(panel->dev, "failed to set display off: %d\n", ret);
@@ -269,8 +252,6 @@ static int rm68200_unprepare(struct drm_panel *panel)
 
        regulator_disable(ctx->supply);
 
-       ctx->prepared = false;
-
        return 0;
 }
 
@@ -280,9 +261,6 @@ static int rm68200_prepare(struct drm_panel *panel)
        struct mipi_dsi_device *dsi = to_mipi_dsi_device(ctx->dev);
        int ret;
 
-       if (ctx->prepared)
-               return 0;
-
        ret = regulator_enable(ctx->supply);
        if (ret < 0) {
                dev_err(ctx->dev, "failed to enable supply: %d\n", ret);
@@ -310,20 +288,6 @@ static int rm68200_prepare(struct drm_panel *panel)
 
        msleep(20);
 
-       ctx->prepared = true;
-
-       return 0;
-}
-
-static int rm68200_enable(struct drm_panel *panel)
-{
-       struct rm68200 *ctx = panel_to_rm68200(panel);
-
-       if (ctx->enabled)
-               return 0;
-
-       ctx->enabled = true;
-
        return 0;
 }
 
@@ -352,10 +316,8 @@ static int rm68200_get_modes(struct drm_panel *panel,
 }
 
 static const struct drm_panel_funcs rm68200_drm_funcs = {
-       .disable = rm68200_disable,
        .unprepare = rm68200_unprepare,
        .prepare = rm68200_prepare,
-       .enable = rm68200_enable,
        .get_modes = rm68200_get_modes,
 };
 
index 7431cae7427e2ce8333e8de366a982937b87f79f..d2df227abbea557acb849bfc76dd4b561158bf11 100644 (file)
@@ -18,8 +18,6 @@ struct s6e88a0_ams452ef01 {
        struct mipi_dsi_device *dsi;
        struct regulator_bulk_data supplies[2];
        struct gpio_desc *reset_gpio;
-
-       bool prepared;
 };
 
 static inline struct
@@ -115,9 +113,6 @@ static int s6e88a0_ams452ef01_prepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (ctx->prepared)
-               return 0;
-
        ret = regulator_bulk_enable(ARRAY_SIZE(ctx->supplies), ctx->supplies);
        if (ret < 0) {
                dev_err(dev, "Failed to enable regulators: %d\n", ret);
@@ -135,7 +130,6 @@ static int s6e88a0_ams452ef01_prepare(struct drm_panel *panel)
                return ret;
        }
 
-       ctx->prepared = true;
        return 0;
 }
 
@@ -145,9 +139,6 @@ static int s6e88a0_ams452ef01_unprepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (!ctx->prepared)
-               return 0;
-
        ret = s6e88a0_ams452ef01_off(ctx);
        if (ret < 0)
                dev_err(dev, "Failed to un-initialize panel: %d\n", ret);
@@ -155,7 +146,6 @@ static int s6e88a0_ams452ef01_unprepare(struct drm_panel *panel)
        gpiod_set_value_cansleep(ctx->reset_gpio, 0);
        regulator_bulk_disable(ARRAY_SIZE(ctx->supplies), ctx->supplies);
 
-       ctx->prepared = false;
        return 0;
 }
 
index cbf9607dd5761bf55e55964c3892ff9028894950..04ce925b3d9dbd91841f4b4e4a12320eac8e03af 100644 (file)
@@ -23,7 +23,6 @@ struct sofef00_panel {
        struct regulator *supply;
        struct gpio_desc *reset_gpio;
        const struct drm_display_mode *mode;
-       bool prepared;
 };
 
 static inline
@@ -113,9 +112,6 @@ static int sofef00_panel_prepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (ctx->prepared)
-               return 0;
-
        ret = regulator_enable(ctx->supply);
        if (ret < 0) {
                dev_err(dev, "Failed to enable regulator: %d\n", ret);
@@ -131,7 +127,6 @@ static int sofef00_panel_prepare(struct drm_panel *panel)
                return ret;
        }
 
-       ctx->prepared = true;
        return 0;
 }
 
@@ -141,16 +136,12 @@ static int sofef00_panel_unprepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (!ctx->prepared)
-               return 0;
-
        ret = sofef00_panel_off(ctx);
        if (ret < 0)
                dev_err(dev, "Failed to un-initialize panel: %d\n", ret);
 
        regulator_disable(ctx->supply);
 
-       ctx->prepared = false;
        return 0;
 }
 
index 68f52eaaf4fa57ec50aecb629a92507bfb6bbf8c..74c760ee0c2d1c4f1e857872e6ad38de08ab8b2a 100644 (file)
@@ -24,7 +24,6 @@ struct sharp_ls060 {
        struct regulator *avdd_supply;
        struct regulator *avee_supply;
        struct gpio_desc *reset_gpio;
-       bool prepared;
 };
 
 static inline struct sharp_ls060 *to_sharp_ls060(struct drm_panel *panel)
@@ -101,9 +100,6 @@ static int sharp_ls060_prepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (ctx->prepared)
-               return 0;
-
        ret = regulator_enable(ctx->vddi_supply);
        if (ret < 0)
                return ret;
@@ -134,8 +130,6 @@ static int sharp_ls060_prepare(struct drm_panel *panel)
                goto err_on;
        }
 
-       ctx->prepared = true;
-
        return 0;
 
 err_on:
@@ -163,9 +157,6 @@ static int sharp_ls060_unprepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (!ctx->prepared)
-               return 0;
-
        ret = sharp_ls060_off(ctx);
        if (ret < 0)
                dev_err(dev, "Failed to un-initialize panel: %d\n", ret);
@@ -181,7 +172,6 @@ static int sharp_ls060_unprepare(struct drm_panel *panel)
 
        regulator_disable(ctx->vddi_supply);
 
-       ctx->prepared = false;
        return 0;
 }
 
index 1bde2f01786b55bfbca2386dcc5d169f805f5ffe..472195d4bbbe43fe81037707888f0e87ddb9c615 100644 (file)
@@ -36,7 +36,6 @@ struct sony_td4353_jdi {
        struct regulator_bulk_data supplies[3];
        struct gpio_desc *panel_reset_gpio;
        struct gpio_desc *touch_reset_gpio;
-       bool prepared;
        int type;
 };
 
@@ -150,9 +149,6 @@ static int sony_td4353_jdi_prepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (ctx->prepared)
-               return 0;
-
        ret = regulator_bulk_enable(ARRAY_SIZE(ctx->supplies), ctx->supplies);
        if (ret < 0) {
                dev_err(dev, "Failed to enable regulators: %d\n", ret);
@@ -171,7 +167,6 @@ static int sony_td4353_jdi_prepare(struct drm_panel *panel)
                return ret;
        }
 
-       ctx->prepared = true;
        return 0;
 }
 
@@ -181,9 +176,6 @@ static int sony_td4353_jdi_unprepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (!ctx->prepared)
-               return 0;
-
        ret = sony_td4353_jdi_off(ctx);
        if (ret < 0)
                dev_err(dev, "Failed to power off panel: %d\n", ret);
@@ -191,7 +183,6 @@ static int sony_td4353_jdi_unprepare(struct drm_panel *panel)
        sony_td4353_assert_reset_gpios(ctx, 0);
        regulator_bulk_disable(ARRAY_SIZE(ctx->supplies), ctx->supplies);
 
-       ctx->prepared = false;
        return 0;
 }
 
index ee5d20ecc57723e2497b50f547274b956263aef5..6d44970dccd9bd5fad1d658e5ce0c1204ac5387b 100644 (file)
@@ -23,8 +23,6 @@ struct truly_nt35521 {
        struct regulator_bulk_data supplies[2];
        struct gpio_desc *reset_gpio;
        struct gpio_desc *blen_gpio;
-       bool prepared;
-       bool enabled;
 };
 
 static inline
@@ -296,9 +294,6 @@ static int truly_nt35521_prepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (ctx->prepared)
-               return 0;
-
        ret = regulator_bulk_enable(ARRAY_SIZE(ctx->supplies), ctx->supplies);
        if (ret < 0) {
                dev_err(dev, "Failed to enable regulators: %d\n", ret);
@@ -314,7 +309,6 @@ static int truly_nt35521_prepare(struct drm_panel *panel)
                return ret;
        }
 
-       ctx->prepared = true;
        return 0;
 }
 
@@ -324,9 +318,6 @@ static int truly_nt35521_unprepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (!ctx->prepared)
-               return 0;
-
        ret = truly_nt35521_off(ctx);
        if (ret < 0)
                dev_err(dev, "Failed to un-initialize panel: %d\n", ret);
@@ -335,7 +326,6 @@ static int truly_nt35521_unprepare(struct drm_panel *panel)
        regulator_bulk_disable(ARRAY_SIZE(ctx->supplies),
                               ctx->supplies);
 
-       ctx->prepared = false;
        return 0;
 }
 
@@ -343,12 +333,8 @@ static int truly_nt35521_enable(struct drm_panel *panel)
 {
        struct truly_nt35521 *ctx = to_truly_nt35521(panel);
 
-       if (ctx->enabled)
-               return 0;
-
        gpiod_set_value_cansleep(ctx->blen_gpio, 1);
 
-       ctx->enabled = true;
        return 0;
 }
 
@@ -356,12 +342,8 @@ static int truly_nt35521_disable(struct drm_panel *panel)
 {
        struct truly_nt35521 *ctx = to_truly_nt35521(panel);
 
-       if (!ctx->enabled)
-               return 0;
-
        gpiod_set_value_cansleep(ctx->blen_gpio, 0);
 
-       ctx->enabled = false;
        return 0;
 }
 
index 6e77a2d71d81e6fd73ea89996725db5c6ee1aed5..0156689f41cdaf96a27d118cb3e328ffd5f50947 100644 (file)
@@ -35,7 +35,6 @@ enum {
 };
 
 struct stk_panel {
-       bool prepared;
        const struct drm_display_mode *mode;
        struct backlight_device *backlight;
        struct drm_panel base;
@@ -145,16 +144,11 @@ static int stk_panel_unprepare(struct drm_panel *panel)
 {
        struct stk_panel *stk = to_stk_panel(panel);
 
-       if (!stk->prepared)
-               return 0;
-
        stk_panel_off(stk);
        regulator_bulk_disable(ARRAY_SIZE(stk->supplies), stk->supplies);
        gpiod_set_value(stk->reset_gpio, 0);
        gpiod_set_value(stk->enable_gpio, 1);
 
-       stk->prepared = false;
-
        return 0;
 }
 
@@ -164,9 +158,6 @@ static int stk_panel_prepare(struct drm_panel *panel)
        struct device *dev = &stk->dsi->dev;
        int ret;
 
-       if (stk->prepared)
-               return 0;
-
        gpiod_set_value(stk->reset_gpio, 0);
        gpiod_set_value(stk->enable_gpio, 0);
        ret = regulator_enable(stk->supplies[IOVCC].consumer);
@@ -195,8 +186,6 @@ static int stk_panel_prepare(struct drm_panel *panel)
                goto poweroff;
        }
 
-       stk->prepared = true;
-
        return 0;
 
 poweroff:
index 4f4009f9fe25ad71c4cecc72150fe914dd85dd02..b73448cf349d2c40e8442a268bae304b6cfbe830 100644 (file)
@@ -64,8 +64,6 @@ struct truly_nt35597 {
        struct mipi_dsi_device *dsi[2];
 
        const struct nt35597_config *config;
-       bool prepared;
-       bool enabled;
 };
 
 static inline struct truly_nt35597 *panel_to_ctx(struct drm_panel *panel)
@@ -313,16 +311,12 @@ static int truly_nt35597_disable(struct drm_panel *panel)
        struct truly_nt35597 *ctx = panel_to_ctx(panel);
        int ret;
 
-       if (!ctx->enabled)
-               return 0;
-
        if (ctx->backlight) {
                ret = backlight_disable(ctx->backlight);
                if (ret < 0)
                        dev_err(ctx->dev, "backlight disable failed %d\n", ret);
        }
 
-       ctx->enabled = false;
        return 0;
 }
 
@@ -331,9 +325,6 @@ static int truly_nt35597_unprepare(struct drm_panel *panel)
        struct truly_nt35597 *ctx = panel_to_ctx(panel);
        int ret = 0;
 
-       if (!ctx->prepared)
-               return 0;
-
        ctx->dsi[0]->mode_flags = 0;
        ctx->dsi[1]->mode_flags = 0;
 
@@ -354,7 +345,6 @@ static int truly_nt35597_unprepare(struct drm_panel *panel)
        if (ret < 0)
                dev_err(ctx->dev, "power_off failed ret = %d\n", ret);
 
-       ctx->prepared = false;
        return ret;
 }
 
@@ -367,9 +357,6 @@ static int truly_nt35597_prepare(struct drm_panel *panel)
        const struct nt35597_config *config;
        u32 num_cmds;
 
-       if (ctx->prepared)
-               return 0;
-
        ret = truly_35597_power_on(ctx);
        if (ret < 0)
                return ret;
@@ -409,8 +396,6 @@ static int truly_nt35597_prepare(struct drm_panel *panel)
        /* Per DSI spec wait 120ms after sending set_display_on DCS command */
        msleep(120);
 
-       ctx->prepared = true;
-
        return 0;
 
 power_off:
@@ -424,17 +409,12 @@ static int truly_nt35597_enable(struct drm_panel *panel)
        struct truly_nt35597 *ctx = panel_to_ctx(panel);
        int ret;
 
-       if (ctx->enabled)
-               return 0;
-
        if (ctx->backlight) {
                ret = backlight_enable(ctx->backlight);
                if (ret < 0)
                        dev_err(ctx->dev, "backlight enable failed %d\n", ret);
        }
 
-       ctx->enabled = true;
-
        return 0;
 }
 
index 00fc28ad3d07b63bb897d1b1838492b4727909b0..fbb73464de332cb6d0282e957281f696c1cd91e3 100644 (file)
@@ -22,7 +22,6 @@ struct visionox_r66451 {
        struct mipi_dsi_device *dsi;
        struct gpio_desc *reset_gpio;
        struct regulator_bulk_data supplies[2];
-       bool prepared, enabled;
 };
 
 static inline struct visionox_r66451 *to_visionox_r66451(struct drm_panel *panel)
@@ -124,9 +123,6 @@ static int visionox_r66451_prepare(struct drm_panel *panel)
        struct device *dev = &dsi->dev;
        int ret;
 
-       if (ctx->prepared)
-               return 0;
-
        ret = regulator_bulk_enable(ARRAY_SIZE(ctx->supplies),
                                    ctx->supplies);
        if (ret < 0)
@@ -144,7 +140,6 @@ static int visionox_r66451_prepare(struct drm_panel *panel)
 
        mipi_dsi_compression_mode(ctx->dsi, true);
 
-       ctx->prepared = true;
        return 0;
 }
 
@@ -154,9 +149,6 @@ static int visionox_r66451_unprepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (!ctx->prepared)
-               return 0;
-
        ret = visionox_r66451_off(ctx);
        if (ret < 0)
                dev_err(dev, "Failed to un-initialize panel: %d\n", ret);
@@ -164,7 +156,6 @@ static int visionox_r66451_unprepare(struct drm_panel *panel)
        gpiod_set_value_cansleep(ctx->reset_gpio, 1);
        regulator_bulk_disable(ARRAY_SIZE(ctx->supplies), ctx->supplies);
 
-       ctx->prepared = false;
        return 0;
 }
 
@@ -190,9 +181,6 @@ static int visionox_r66451_enable(struct drm_panel *panel)
        struct drm_dsc_picture_parameter_set pps;
        int ret;
 
-       if (ctx->enabled)
-               return 0;
-
        if (!dsi->dsc) {
                dev_err(&dsi->dev, "DSC not attached to DSI\n");
                return -ENODEV;
@@ -219,8 +207,6 @@ static int visionox_r66451_enable(struct drm_panel *panel)
        }
        msleep(20);
 
-       ctx->enabled = true;
-
        return 0;
 }
 
@@ -231,8 +217,6 @@ static int visionox_r66451_disable(struct drm_panel *panel)
        struct device *dev = &dsi->dev;
        int ret;
 
-       ctx->enabled = false;
-
        ret = mipi_dsi_dcs_set_display_off(dsi);
        if (ret < 0) {
                dev_err(dev, "Failed to set display off: %d\n", ret);
index c2806e4fd553b1159a98b93673b5cc5614b6e08c..775144695283f54dcb1c527e58c9604cfd6da207 100644 (file)
@@ -20,8 +20,6 @@ struct visionox_rm69299 {
        struct regulator_bulk_data supplies[2];
        struct gpio_desc *reset_gpio;
        struct mipi_dsi_device *dsi;
-       bool prepared;
-       bool enabled;
 };
 
 static inline struct visionox_rm69299 *panel_to_ctx(struct drm_panel *panel)
@@ -80,7 +78,6 @@ static int visionox_rm69299_unprepare(struct drm_panel *panel)
 
        ret = visionox_rm69299_power_off(ctx);
 
-       ctx->prepared = false;
        return ret;
 }
 
@@ -89,9 +86,6 @@ static int visionox_rm69299_prepare(struct drm_panel *panel)
        struct visionox_rm69299 *ctx = panel_to_ctx(panel);
        int ret;
 
-       if (ctx->prepared)
-               return 0;
-
        ret = visionox_rm69299_power_on(ctx);
        if (ret < 0)
                return ret;
@@ -140,8 +134,6 @@ static int visionox_rm69299_prepare(struct drm_panel *panel)
        /* Per DSI spec wait 120ms after sending set_display_on DCS command */
        msleep(120);
 
-       ctx->prepared = true;
-
        return 0;
 
 power_off:
index bb0dfd86ea677970b70c606f0b75dc224f64cd4d..a23407b9f6fb674bf174ba6ec3a6da9a650a87dd 100644 (file)
@@ -20,7 +20,6 @@ struct visionox_vtdr6130 {
        struct mipi_dsi_device *dsi;
        struct gpio_desc *reset_gpio;
        struct regulator_bulk_data supplies[3];
-       bool prepared;
 };
 
 static inline struct visionox_vtdr6130 *to_visionox_vtdr6130(struct drm_panel *panel)
@@ -157,9 +156,6 @@ static int visionox_vtdr6130_prepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (ctx->prepared)
-               return 0;
-
        ret = regulator_bulk_enable(ARRAY_SIZE(ctx->supplies),
                                    ctx->supplies);
        if (ret < 0)
@@ -175,7 +171,6 @@ static int visionox_vtdr6130_prepare(struct drm_panel *panel)
                return ret;
        }
 
-       ctx->prepared = true;
        return 0;
 }
 
@@ -185,9 +180,6 @@ static int visionox_vtdr6130_unprepare(struct drm_panel *panel)
        struct device *dev = &ctx->dsi->dev;
        int ret;
 
-       if (!ctx->prepared)
-               return 0;
-
        ret = visionox_vtdr6130_off(ctx);
        if (ret < 0)
                dev_err(dev, "Failed to un-initialize panel: %d\n", ret);
@@ -196,7 +188,6 @@ static int visionox_vtdr6130_unprepare(struct drm_panel *panel)
 
        regulator_bulk_disable(ARRAY_SIZE(ctx->supplies), ctx->supplies);
 
-       ctx->prepared = false;
        return 0;
 }