struct gpio_desc *reset_gpio;
        struct gpio_desc *enable_gpio;
        struct khadas_ts050_panel_data *panel_data;
-
-       bool prepared;
-       bool enabled;
 };
 
 struct khadas_ts050_panel_cmd {
        unsigned int i;
        int err;
 
-       if (khadas_ts050->prepared)
-               return 0;
-
        gpiod_set_value_cansleep(khadas_ts050->enable_gpio, 0);
 
        err = regulator_enable(khadas_ts050->supply);
 
        usleep_range(10000, 11000);
 
-       khadas_ts050->prepared = true;
-
        return 0;
 
 poweroff:
        struct khadas_ts050_panel *khadas_ts050 = to_khadas_ts050_panel(panel);
        int err;
 
-       if (!khadas_ts050->prepared)
-               return 0;
-
-       khadas_ts050->prepared = false;
-
        err = mipi_dsi_dcs_enter_sleep_mode(khadas_ts050->link);
        if (err < 0)
                dev_err(panel->dev, "failed to enter sleep mode: %d\n", err);
        return 0;
 }
 
-static int khadas_ts050_panel_enable(struct drm_panel *panel)
-{
-       struct khadas_ts050_panel *khadas_ts050 = to_khadas_ts050_panel(panel);
-
-       khadas_ts050->enabled = true;
-
-       return 0;
-}
-
 static int khadas_ts050_panel_disable(struct drm_panel *panel)
 {
        struct khadas_ts050_panel *khadas_ts050 = to_khadas_ts050_panel(panel);
        int err;
 
-       if (!khadas_ts050->enabled)
-               return 0;
-
        err = mipi_dsi_dcs_set_display_off(khadas_ts050->link);
        if (err < 0)
                dev_err(panel->dev, "failed to set display off: %d\n", err);
 
        usleep_range(10000, 11000);
 
-       khadas_ts050->enabled = false;
-
        return 0;
 }
 
 static const struct drm_panel_funcs khadas_ts050_panel_funcs = {
        .prepare = khadas_ts050_panel_prepare,
        .unprepare = khadas_ts050_panel_unprepare,
-       .enable = khadas_ts050_panel_enable,
        .disable = khadas_ts050_panel_disable,
        .get_modes = khadas_ts050_panel_get_modes,
 };