| /Linux-v5.4/drivers/gpu/drm/ |
| D | drm_panel.c | 51 void drm_panel_init(struct drm_panel *panel) in drm_panel_init() argument 53 INIT_LIST_HEAD(&panel->list); in drm_panel_init() 66 int drm_panel_add(struct drm_panel *panel) in drm_panel_add() argument 69 list_add_tail(&panel->list, &panel_list); in drm_panel_add() 82 void drm_panel_remove(struct drm_panel *panel) in drm_panel_remove() argument 85 list_del_init(&panel->list); in drm_panel_remove() 105 int drm_panel_attach(struct drm_panel *panel, struct drm_connector *connector) in drm_panel_attach() argument 107 if (panel->connector) in drm_panel_attach() 110 panel->connector = connector; in drm_panel_attach() 111 panel->drm = connector->dev; in drm_panel_attach() [all …]
|
| /Linux-v5.4/drivers/gpu/drm/i915/display/ |
| D | intel_panel.c | 487 struct intel_panel *panel = &connector->panel; in scale_user_to_hw() local 490 panel->backlight.min, panel->backlight.max); in scale_user_to_hw() 498 struct intel_panel *panel = &connector->panel; in clamp_user_to_hw() local 501 hw_level = scale(user_level, 0, user_max, 0, panel->backlight.max); in clamp_user_to_hw() 502 hw_level = clamp(hw_level, panel->backlight.min, panel->backlight.max); in clamp_user_to_hw() 511 struct intel_panel *panel = &connector->panel; in scale_hw_to_user() local 513 return scale(hw_level, panel->backlight.min, panel->backlight.max, in scale_hw_to_user() 521 struct intel_panel *panel = &connector->panel; in intel_panel_compute_brightness() local 523 WARN_ON(panel->backlight.max == 0); in intel_panel_compute_brightness() 530 return panel->backlight.max - val + panel->backlight.min; in intel_panel_compute_brightness() [all …]
|
| /Linux-v5.4/drivers/gpu/drm/panel/ |
| D | Makefile | 2 obj-$(CONFIG_DRM_PANEL_ARM_VERSATILE) += panel-arm-versatile.o 3 obj-$(CONFIG_DRM_PANEL_LVDS) += panel-lvds.o 4 obj-$(CONFIG_DRM_PANEL_SIMPLE) += panel-simple.o 5 obj-$(CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D) += panel-feiyang-fy07024di26a30d.o 6 obj-$(CONFIG_DRM_PANEL_ILITEK_IL9322) += panel-ilitek-ili9322.o 7 obj-$(CONFIG_DRM_PANEL_ILITEK_ILI9881C) += panel-ilitek-ili9881c.o 8 obj-$(CONFIG_DRM_PANEL_INNOLUX_P079ZCA) += panel-innolux-p079zca.o 9 obj-$(CONFIG_DRM_PANEL_JDI_LT070ME05000) += panel-jdi-lt070me05000.o 10 obj-$(CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04) += panel-kingdisplay-kd097d04.o 11 obj-$(CONFIG_DRM_PANEL_LG_LB035Q02) += panel-lg-lb035q02.o [all …]
|
| D | panel-seiko-43wvf1g.c | 54 static inline struct seiko_panel *to_seiko_panel(struct drm_panel *panel) in to_seiko_panel() argument 56 return container_of(panel, struct seiko_panel, base); in to_seiko_panel() 59 static int seiko_panel_get_fixed_modes(struct seiko_panel *panel) in seiko_panel_get_fixed_modes() argument 61 struct drm_connector *connector = panel->base.connector; in seiko_panel_get_fixed_modes() 62 struct drm_device *drm = panel->base.drm; in seiko_panel_get_fixed_modes() 66 if (!panel->desc) in seiko_panel_get_fixed_modes() 69 for (i = 0; i < panel->desc->num_timings; i++) { in seiko_panel_get_fixed_modes() 70 const struct display_timing *dt = &panel->desc->timings[i]; in seiko_panel_get_fixed_modes() 85 if (panel->desc->num_timings == 1) in seiko_panel_get_fixed_modes() 92 for (i = 0; i < panel->desc->num_modes; i++) { in seiko_panel_get_fixed_modes() [all …]
|
| D | panel-novatek-nt39016.c | 69 static inline struct nt39016 *to_nt39016(struct drm_panel *panel) in to_nt39016() argument 71 return container_of(panel, struct nt39016, drm_panel); in to_nt39016() 124 struct nt39016 *panel = to_nt39016(drm_panel); in nt39016_prepare() local 127 err = regulator_enable(panel->supply); in nt39016_prepare() 129 dev_err(panel->dev, "Failed to enable power supply: %d", err); in nt39016_prepare() 139 gpiod_set_value_cansleep(panel->reset_gpio, 1); in nt39016_prepare() 141 gpiod_set_value_cansleep(panel->reset_gpio, 0); in nt39016_prepare() 145 err = regmap_multi_reg_write(panel->map, nt39016_panel_regs, in nt39016_prepare() 148 dev_err(panel->dev, "Failed to init registers: %d", err); in nt39016_prepare() 155 regulator_disable(panel->supply); in nt39016_prepare() [all …]
|
| D | panel-raydium-rm67191.c | 198 struct drm_panel panel; member 228 static inline struct rad_panel *to_rad_panel(struct drm_panel *panel) in to_rad_panel() argument 230 return container_of(panel, struct rad_panel, panel); in to_rad_panel() 266 static int rad_panel_prepare(struct drm_panel *panel) in rad_panel_prepare() argument 268 struct rad_panel *rad = to_rad_panel(panel); in rad_panel_prepare() 290 static int rad_panel_unprepare(struct drm_panel *panel) in rad_panel_unprepare() argument 292 struct rad_panel *rad = to_rad_panel(panel); in rad_panel_unprepare() 318 static int rad_panel_enable(struct drm_panel *panel) in rad_panel_enable() argument 320 struct rad_panel *rad = to_rad_panel(panel); in rad_panel_enable() 404 static int rad_panel_disable(struct drm_panel *panel) in rad_panel_disable() argument [all …]
|
| D | panel-lg-lg4573.c | 30 struct drm_panel panel; member 35 static inline struct lg4573 *panel_to_lg4573(struct drm_panel *panel) in panel_to_lg4573() argument 37 return container_of(panel, struct lg4573, panel); in panel_to_lg4573() 48 dev_dbg(ctx->panel.dev, "writing data: %x\n", data); in lg4573_spi_write_u16() 115 dev_dbg(ctx->panel.dev, "transfer display mode settings\n"); in lg4573_display_mode_settings() 131 dev_dbg(ctx->panel.dev, "transfer power settings\n"); in lg4573_power_settings() 156 dev_dbg(ctx->panel.dev, "transfer gamma settings\n"); in lg4573_gamma_settings() 165 dev_dbg(ctx->panel.dev, "initializing LCD\n"); in lg4573_init() 183 static int lg4573_disable(struct drm_panel *panel) in lg4573_disable() argument 185 struct lg4573 *ctx = panel_to_lg4573(panel); in lg4573_disable() [all …]
|
| D | panel-feiyang-fy07024di26a30d.c | 22 struct drm_panel panel; member 31 static inline struct feiyang *panel_to_feiyang(struct drm_panel *panel) in panel_to_feiyang() argument 33 return container_of(panel, struct feiyang, panel); in panel_to_feiyang() 50 static int feiyang_prepare(struct drm_panel *panel) in feiyang_prepare() argument 52 struct feiyang *ctx = panel_to_feiyang(panel); in feiyang_prepare() 97 static int feiyang_enable(struct drm_panel *panel) in feiyang_enable() argument 99 struct feiyang *ctx = panel_to_feiyang(panel); in feiyang_enable() 110 static int feiyang_disable(struct drm_panel *panel) in feiyang_disable() argument 112 struct feiyang *ctx = panel_to_feiyang(panel); in feiyang_disable() 118 static int feiyang_unprepare(struct drm_panel *panel) in feiyang_unprepare() argument [all …]
|
| D | panel-ronbo-rb070d30.c | 30 struct drm_panel panel; member 43 static inline struct rb070d30_panel *panel_to_rb070d30_panel(struct drm_panel *panel) in panel_to_rb070d30_panel() argument 45 return container_of(panel, struct rb070d30_panel, panel); in panel_to_rb070d30_panel() 48 static int rb070d30_panel_prepare(struct drm_panel *panel) in rb070d30_panel_prepare() argument 50 struct rb070d30_panel *ctx = panel_to_rb070d30_panel(panel); in rb070d30_panel_prepare() 67 static int rb070d30_panel_unprepare(struct drm_panel *panel) in rb070d30_panel_unprepare() argument 69 struct rb070d30_panel *ctx = panel_to_rb070d30_panel(panel); in rb070d30_panel_unprepare() 78 static int rb070d30_panel_enable(struct drm_panel *panel) in rb070d30_panel_enable() argument 80 struct rb070d30_panel *ctx = panel_to_rb070d30_panel(panel); in rb070d30_panel_enable() 98 static int rb070d30_panel_disable(struct drm_panel *panel) in rb070d30_panel_disable() argument [all …]
|
| D | panel-sharp-ls037v7dw01.c | 25 struct drm_panel panel; member 37 container_of(p, struct ls037v7dw01_panel, panel) 39 static int ls037v7dw01_disable(struct drm_panel *panel) in ls037v7dw01_disable() argument 41 struct ls037v7dw01_panel *lcd = to_ls037v7dw01_device(panel); in ls037v7dw01_disable() 52 static int ls037v7dw01_unprepare(struct drm_panel *panel) in ls037v7dw01_unprepare() argument 54 struct ls037v7dw01_panel *lcd = to_ls037v7dw01_device(panel); in ls037v7dw01_unprepare() 60 static int ls037v7dw01_prepare(struct drm_panel *panel) in ls037v7dw01_prepare() argument 62 struct ls037v7dw01_panel *lcd = to_ls037v7dw01_device(panel); in ls037v7dw01_prepare() 73 static int ls037v7dw01_enable(struct drm_panel *panel) in ls037v7dw01_enable() argument 75 struct ls037v7dw01_panel *lcd = to_ls037v7dw01_device(panel); in ls037v7dw01_enable() [all …]
|
| D | panel-rocktech-jh057n00900.c | 48 struct drm_panel panel; member 58 static inline struct jh057n *panel_to_jh057n(struct drm_panel *panel) in panel_to_jh057n() argument 60 return container_of(panel, struct jh057n, panel); in panel_to_jh057n() 143 static int jh057n_enable(struct drm_panel *panel) in jh057n_enable() argument 145 struct jh057n *ctx = panel_to_jh057n(panel); in jh057n_enable() 158 static int jh057n_disable(struct drm_panel *panel) in jh057n_disable() argument 160 struct jh057n *ctx = panel_to_jh057n(panel); in jh057n_disable() 167 static int jh057n_unprepare(struct drm_panel *panel) in jh057n_unprepare() argument 169 struct jh057n *ctx = panel_to_jh057n(panel); in jh057n_unprepare() 181 static int jh057n_prepare(struct drm_panel *panel) in jh057n_prepare() argument [all …]
|
| D | panel-samsung-s6d16d0.c | 20 struct drm_panel panel; member 50 static inline struct s6d16d0 *panel_to_s6d16d0(struct drm_panel *panel) in panel_to_s6d16d0() argument 52 return container_of(panel, struct s6d16d0, panel); in panel_to_s6d16d0() 55 static int s6d16d0_unprepare(struct drm_panel *panel) in s6d16d0_unprepare() argument 57 struct s6d16d0 *s6 = panel_to_s6d16d0(panel); in s6d16d0_unprepare() 76 static int s6d16d0_prepare(struct drm_panel *panel) in s6d16d0_prepare() argument 78 struct s6d16d0 *s6 = panel_to_s6d16d0(panel); in s6d16d0_prepare() 114 static int s6d16d0_enable(struct drm_panel *panel) in s6d16d0_enable() argument 116 struct s6d16d0 *s6 = panel_to_s6d16d0(panel); in s6d16d0_enable() 130 static int s6d16d0_disable(struct drm_panel *panel) in s6d16d0_disable() argument [all …]
|
| D | Kconfig | 12 tristate "ARM Versatile panel driver" 18 reference designs. The panel is detected using special registers 22 tristate "Generic LVDS panel driver" 29 backlight handling if the panel is attached to a backlight controller. 37 DRM panel driver for dumb panels that need at most a regulator and 39 that it can be automatically turned off when the panel goes into a 43 tristate "Feiyang FY07024DI26A30-D MIPI-DSI LCD panel" 69 tristate "Innolux P079ZCA panel" 75 TFT-LCD modules. The panel has a 1024x768 resolution and uses 80 tristate "JDI LT070ME05000 WUXGA DSI panel" [all …]
|
| D | panel-kingdisplay-kd097d04.c | 181 struct kingdisplay_panel *to_kingdisplay_panel(struct drm_panel *panel) in to_kingdisplay_panel() argument 183 return container_of(panel, struct kingdisplay_panel, base); in to_kingdisplay_panel() 186 static int kingdisplay_panel_disable(struct drm_panel *panel) in kingdisplay_panel_disable() argument 188 struct kingdisplay_panel *kingdisplay = to_kingdisplay_panel(panel); in kingdisplay_panel_disable() 198 DRM_DEV_ERROR(panel->dev, "failed to set display off: %d\n", in kingdisplay_panel_disable() 206 static int kingdisplay_panel_unprepare(struct drm_panel *panel) in kingdisplay_panel_unprepare() argument 208 struct kingdisplay_panel *kingdisplay = to_kingdisplay_panel(panel); in kingdisplay_panel_unprepare() 216 DRM_DEV_ERROR(panel->dev, "failed to enter sleep mode: %d\n", in kingdisplay_panel_unprepare() 235 static int kingdisplay_panel_prepare(struct drm_panel *panel) in kingdisplay_panel_prepare() argument 237 struct kingdisplay_panel *kingdisplay = to_kingdisplay_panel(panel); in kingdisplay_panel_prepare() [all …]
|
| D | panel-olimex-lcd-olinuxino.c | 63 struct drm_panel panel; member 78 static inline struct lcd_olinuxino *to_lcd_olinuxino(struct drm_panel *panel) in to_lcd_olinuxino() argument 80 return container_of(panel, struct lcd_olinuxino, panel); in to_lcd_olinuxino() 83 static int lcd_olinuxino_disable(struct drm_panel *panel) in lcd_olinuxino_disable() argument 85 struct lcd_olinuxino *lcd = to_lcd_olinuxino(panel); in lcd_olinuxino_disable() 97 static int lcd_olinuxino_unprepare(struct drm_panel *panel) in lcd_olinuxino_unprepare() argument 99 struct lcd_olinuxino *lcd = to_lcd_olinuxino(panel); in lcd_olinuxino_unprepare() 112 static int lcd_olinuxino_prepare(struct drm_panel *panel) in lcd_olinuxino_prepare() argument 114 struct lcd_olinuxino *lcd = to_lcd_olinuxino(panel); in lcd_olinuxino_prepare() 130 static int lcd_olinuxino_enable(struct drm_panel *panel) in lcd_olinuxino_enable() argument [all …]
|
| D | panel-lvds.c | 27 struct drm_panel panel; member 44 static inline struct panel_lvds *to_panel_lvds(struct drm_panel *panel) in to_panel_lvds() argument 46 return container_of(panel, struct panel_lvds, panel); in to_panel_lvds() 49 static int panel_lvds_disable(struct drm_panel *panel) in panel_lvds_disable() argument 51 struct panel_lvds *lvds = to_panel_lvds(panel); in panel_lvds_disable() 62 static int panel_lvds_unprepare(struct drm_panel *panel) in panel_lvds_unprepare() argument 64 struct panel_lvds *lvds = to_panel_lvds(panel); in panel_lvds_unprepare() 75 static int panel_lvds_prepare(struct drm_panel *panel) in panel_lvds_prepare() argument 77 struct panel_lvds *lvds = to_panel_lvds(panel); in panel_lvds_prepare() 96 static int panel_lvds_enable(struct drm_panel *panel) in panel_lvds_enable() argument [all …]
|
| D | panel-truly-nt35597.c | 56 struct drm_panel panel; member 72 static inline struct truly_nt35597 *panel_to_ctx(struct drm_panel *panel) in panel_to_ctx() argument 74 return container_of(panel, struct truly_nt35597, panel); in panel_to_ctx() 226 static int truly_dcs_write(struct drm_panel *panel, u32 command) in truly_dcs_write() argument 228 struct truly_nt35597 *ctx = panel_to_ctx(panel); in truly_dcs_write() 243 static int truly_dcs_write_buf(struct drm_panel *panel, in truly_dcs_write_buf() argument 246 struct truly_nt35597 *ctx = panel_to_ctx(panel); in truly_dcs_write_buf() 317 static int truly_nt35597_disable(struct drm_panel *panel) in truly_nt35597_disable() argument 319 struct truly_nt35597 *ctx = panel_to_ctx(panel); in truly_nt35597_disable() 336 static int truly_nt35597_unprepare(struct drm_panel *panel) in truly_nt35597_unprepare() argument [all …]
|
| D | panel-nec-nl8048hl11.c | 24 struct drm_panel panel; member 30 #define to_nl8048_device(p) container_of(p, struct nl8048_panel, panel) 90 static int nl8048_disable(struct drm_panel *panel) in nl8048_disable() argument 92 struct nl8048_panel *lcd = to_nl8048_device(panel); in nl8048_disable() 99 static int nl8048_enable(struct drm_panel *panel) in nl8048_enable() argument 101 struct nl8048_panel *lcd = to_nl8048_device(panel); in nl8048_enable() 126 static int nl8048_get_modes(struct drm_panel *panel) in nl8048_get_modes() argument 128 struct drm_connector *connector = panel->connector; in nl8048_get_modes() 131 mode = drm_mode_duplicate(panel->drm, &nl8048_mode); in nl8048_get_modes() 208 drm_panel_init(&lcd->panel); in nl8048_probe() [all …]
|
| D | panel-osd-osd101t2587-53ts.c | 32 static inline struct osd101t2587_panel *ti_osd_panel(struct drm_panel *panel) in ti_osd_panel() argument 34 return container_of(panel, struct osd101t2587_panel, base); in ti_osd_panel() 37 static int osd101t2587_panel_disable(struct drm_panel *panel) in osd101t2587_panel_disable() argument 39 struct osd101t2587_panel *osd101t2587 = ti_osd_panel(panel); in osd101t2587_panel_disable() 54 static int osd101t2587_panel_unprepare(struct drm_panel *panel) in osd101t2587_panel_unprepare() argument 56 struct osd101t2587_panel *osd101t2587 = ti_osd_panel(panel); in osd101t2587_panel_unprepare() 67 static int osd101t2587_panel_prepare(struct drm_panel *panel) in osd101t2587_panel_prepare() argument 69 struct osd101t2587_panel *osd101t2587 = ti_osd_panel(panel); in osd101t2587_panel_prepare() 82 static int osd101t2587_panel_enable(struct drm_panel *panel) in osd101t2587_panel_enable() argument 84 struct osd101t2587_panel *osd101t2587 = ti_osd_panel(panel); in osd101t2587_panel_enable() [all …]
|
| /Linux-v5.4/include/drm/ |
| D | drm_panel.h | 69 int (*prepare)(struct drm_panel *panel); 76 int (*enable)(struct drm_panel *panel); 83 int (*disable)(struct drm_panel *panel); 90 int (*unprepare)(struct drm_panel *panel); 98 int (*get_modes)(struct drm_panel *panel); 106 int (*get_timings)(struct drm_panel *panel, unsigned int num_timings, 150 void drm_panel_init(struct drm_panel *panel); 152 int drm_panel_add(struct drm_panel *panel); 153 void drm_panel_remove(struct drm_panel *panel); 155 int drm_panel_attach(struct drm_panel *panel, struct drm_connector *connector); [all …]
|
| /Linux-v5.4/drivers/video/fbdev/mmp/ |
| D | core.c | 46 if (path->panel && path->panel->get_modelist) in path_get_modelist() 47 return path->panel->get_modelist(path->panel, modelist); in path_get_modelist() 72 void mmp_register_panel(struct mmp_panel *panel) in mmp_register_panel() argument 79 list_add_tail(&panel->node, &panel_list); in mmp_register_panel() 83 if (!strcmp(panel->plat_path_name, path->name)) { in mmp_register_panel() 84 dev_info(panel->dev, "connect to path %s\n", in mmp_register_panel() 86 path->panel = panel; in mmp_register_panel() 102 void mmp_unregister_panel(struct mmp_panel *panel) in mmp_unregister_panel() argument 107 list_del(&panel->node); in mmp_unregister_panel() 110 if (path->panel && path->panel == panel) { in mmp_unregister_panel() [all …]
|
| /Linux-v5.4/drivers/gpu/drm/bridge/ |
| D | panel.c | 18 struct drm_panel *panel; member 39 return drm_panel_get_modes(panel_bridge->panel); in panel_bridge_connector_get_modes() 80 ret = drm_panel_attach(panel_bridge->panel, &panel_bridge->connector); in panel_bridge_attach() 91 drm_panel_detach(panel_bridge->panel); in panel_bridge_detach() 98 drm_panel_prepare(panel_bridge->panel); in panel_bridge_pre_enable() 105 drm_panel_enable(panel_bridge->panel); in panel_bridge_enable() 112 drm_panel_disable(panel_bridge->panel); in panel_bridge_disable() 119 drm_panel_unprepare(panel_bridge->panel); in panel_bridge_post_disable() 154 struct drm_bridge *drm_panel_bridge_add(struct drm_panel *panel, in drm_panel_bridge_add() argument 159 if (!panel) in drm_panel_bridge_add() [all …]
|
| /Linux-v5.4/drivers/gpu/drm/exynos/ |
| D | exynos_drm_dpi.c | 28 struct drm_panel *panel; member 46 if (ctx->panel && !ctx->panel->connector) in exynos_dpi_detect() 47 drm_panel_attach(ctx->panel, &ctx->connector); in exynos_dpi_detect() 87 if (ctx->panel) in exynos_dpi_get_modes() 88 return ctx->panel->funcs->get_modes(ctx->panel); in exynos_dpi_get_modes() 130 if (ctx->panel) { in exynos_dpi_enable() 131 drm_panel_prepare(ctx->panel); in exynos_dpi_enable() 132 drm_panel_enable(ctx->panel); in exynos_dpi_enable() 140 if (ctx->panel) { in exynos_dpi_disable() 141 drm_panel_disable(ctx->panel); in exynos_dpi_disable() [all …]
|
| /Linux-v5.4/drivers/gpu/drm/msm/disp/mdp4/ |
| D | mdp4_lvds_connector.c | 14 struct drm_panel *panel; member 24 if (!mdp4_lvds_connector->panel) { in mdp4_lvds_connector_detect() 25 mdp4_lvds_connector->panel = in mdp4_lvds_connector_detect() 27 if (IS_ERR(mdp4_lvds_connector->panel)) in mdp4_lvds_connector_detect() 28 mdp4_lvds_connector->panel = NULL; in mdp4_lvds_connector_detect() 31 return mdp4_lvds_connector->panel ? in mdp4_lvds_connector_detect() 50 struct drm_panel *panel = mdp4_lvds_connector->panel; in mdp4_lvds_connector_get_modes() local 53 if (panel) { in mdp4_lvds_connector_get_modes() 54 drm_panel_attach(panel, connector); in mdp4_lvds_connector_get_modes() 56 ret = panel->funcs->get_modes(panel); in mdp4_lvds_connector_get_modes() [all …]
|
| /Linux-v5.4/drivers/gpu/drm/fsl-dcu/ |
| D | fsl_dcu_drm_rgb.c | 53 drm_panel_detach(fsl_con->panel); in fsl_dcu_drm_connector_destroy() 70 return drm_panel_get_modes(fsl_connector->panel); in fsl_dcu_drm_connector_get_modes() 88 struct drm_panel *panel) in fsl_dcu_attach_panel() argument 111 ret = drm_panel_attach(panel, connector); in fsl_dcu_attach_panel() 129 struct drm_panel *panel; in fsl_dcu_create_outputs() local 136 fsl_dev->connector.panel = of_drm_find_panel(panel_node); in fsl_dcu_create_outputs() 138 if (IS_ERR(fsl_dev->connector.panel)) in fsl_dcu_create_outputs() 139 return PTR_ERR(fsl_dev->connector.panel); in fsl_dcu_create_outputs() 141 return fsl_dcu_attach_panel(fsl_dev, fsl_dev->connector.panel); in fsl_dcu_create_outputs() 144 ret = drm_of_find_panel_or_bridge(fsl_dev->np, 0, 0, &panel, &bridge); in fsl_dcu_create_outputs() [all …]
|