/linux/drivers/gpu/drm/panel/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 6 Panel registration and lookup framework. 12 tristate "ABT Y030XX067A 320x480 LCD panel" 17 Y030XX067A 320x480 3.0" panel as found in the YLM RG-280M, RG-300 18 and RG-99 handheld gaming consoles. 21 tristate "ARM Versatile panel driver" 27 reference designs. The panel is detected using special registers 31 tristate "ASUS Z00T TM5P5 NT35596 panel" 37 NT35596 1080x1920 video mode panel as found in some Asus 45 Say Y here to enable support for the AUO A030JTN01 320x480 3.0" panel [all …]
|
H A D | panel-synaptics-r63353.c | 1 // SPDX-License-Identifier: GPL-2.0 15 #include <linux/media-bus-format.h> 55 struct mipi_dsi_device *dsi; member 64 static inline struct r63353_panel *to_r63353_panel(struct drm_panel *panel) in to_r63353_panel() argument 66 return container_of(panel, struct r63353_panel, base); in to_r63353_panel() 71 struct mipi_dsi_device *dsi = rpanel->dsi; in r63353_panel_power_on() local 72 struct device *dev = &dsi->dev; in r63353_panel_power_on() 75 ret = regulator_enable(rpanel->avdd); in r63353_panel_power_on() 83 ret = regulator_enable(rpanel->dvdd); in r63353_panel_power_on() 86 regulator_disable(rpanel->avdd); in r63353_panel_power_on() [all …]
|
H A D | panel-visionox-r66451.c | 1 //SPDX-License-Identifier: GPL-2.0-only 21 struct drm_panel panel; member 22 struct mipi_dsi_device *dsi; member 27 static inline struct visionox_r66451 *to_visionox_r66451(struct drm_panel *panel) in to_visionox_r66451() argument 29 return container_of(panel, struct visionox_r66451, panel); in to_visionox_r66451() 34 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in visionox_r66451_reset() 36 gpiod_set_value_cansleep(ctx->reset_gpio, 1); in visionox_r66451_reset() 38 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in visionox_r66451_reset() 44 struct mipi_dsi_device *dsi = ctx->dsi; in visionox_r66451_on() local 46 dsi->mode_flags |= MIPI_DSI_MODE_LPM; in visionox_r66451_on() [all …]
|
H A D | panel-visionox-rm69299.c | 1 // SPDX-License-Identifier: GPL-2.0 19 struct drm_panel panel; member 22 struct mipi_dsi_device *dsi; member 25 static inline struct visionox_rm69299 *panel_to_ctx(struct drm_panel *panel) in panel_to_ctx() argument 27 return container_of(panel, struct visionox_rm69299, panel); in panel_to_ctx() 34 ret = regulator_bulk_enable(ARRAY_SIZE(ctx->supplies), ctx->supplies); in visionox_rm69299_power_on() 39 * Reset sequence of visionox panel requires the panel to be in visionox_rm69299_power_on() 43 gpiod_set_value(ctx->reset_gpio, 1); in visionox_rm69299_power_on() 45 gpiod_set_value(ctx->reset_gpio, 0); in visionox_rm69299_power_on() 47 gpiod_set_value(ctx->reset_gpio, 1); in visionox_rm69299_power_on() [all …]
|
H A D | panel-samsung-s6d7aa0.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Samsung S6D7AA0 MIPI-DSI TFT LCD controller drm_panel driver. 28 struct drm_panel panel; member 29 struct mipi_dsi_device *dsi; member 52 static inline struct s6d7aa0 *panel_to_s6d7aa0(struct drm_panel *panel) in panel_to_s6d7aa0() argument 54 return container_of(panel, struct s6d7aa0, panel); in panel_to_s6d7aa0() 59 gpiod_set_value_cansleep(ctx->reset_gpio, 1); in s6d7aa0_reset() 61 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in s6d7aa0_reset() 67 struct mipi_dsi_device *dsi = ctx->dsi; in s6d7aa0_lock() local 70 mipi_dsi_dcs_write_seq(dsi, MCS_PASSWD1, 0xa5, 0xa5); in s6d7aa0_lock() [all …]
|
H A D | panel-sony-td4353-jdi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Generated with linux-mdss-dsi-panel-driver-generator with a 9 * - "JDI ID3" for Akari (XZ2) 10 * - "JDI ID4" for Apollo (XZ2 Compact) 28 * Leaving room for expansion - SONY very often uses 34 struct drm_panel panel; member 35 struct mipi_dsi_device *dsi; member 42 static inline struct sony_td4353_jdi *to_sony_td4353_jdi(struct drm_panel *panel) in to_sony_td4353_jdi() argument 44 return container_of(panel, struct sony_td4353_jdi, panel); in to_sony_td4353_jdi() 49 struct mipi_dsi_device *dsi = ctx->dsi; in sony_td4353_jdi_on() local [all …]
|
H A D | panel-samsung-sofef00.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Generated with linux-mdss-dsi-panel-driver-generator from vendor device tree: 21 struct drm_panel panel; member 22 struct mipi_dsi_device *dsi; member 29 struct sofef00_panel *to_sofef00_panel(struct drm_panel *panel) in to_sofef00_panel() argument 31 return container_of(panel, struct sofef00_panel, panel); in to_sofef00_panel() 36 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in sofef00_panel_reset() 38 gpiod_set_value_cansleep(ctx->reset_gpio, 1); in sofef00_panel_reset() 40 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in sofef00_panel_reset() 46 struct mipi_dsi_device *dsi = ctx->dsi; in sofef00_panel_on() local [all …]
|
H A D | panel-feiyang-fy07024di26a30d.c | 1 // SPDX-License-Identifier: GPL-2.0+ 20 struct drm_panel panel; member 21 struct mipi_dsi_device *dsi; member 28 static inline struct feiyang *panel_to_feiyang(struct drm_panel *panel) in panel_to_feiyang() argument 30 return container_of(panel, struct feiyang, panel); in panel_to_feiyang() 47 static int feiyang_prepare(struct drm_panel *panel) in feiyang_prepare() argument 49 struct feiyang *ctx = panel_to_feiyang(panel); in feiyang_prepare() 50 struct mipi_dsi_device *dsi = ctx->dsi; in feiyang_prepare() local 54 ret = regulator_enable(ctx->dvdd); in feiyang_prepare() 61 ret = regulator_enable(ctx->avdd); in feiyang_prepare() [all …]
|
H A D | panel-ebbg-ft8719.c | 1 // SPDX-License-Identifier: GPL-2.0-only 4 * Generated with linux-mdss-dsi-panel-driver-generator from vendor device tree: 33 struct drm_panel panel; member 34 struct mipi_dsi_device *dsi; member 42 struct ebbg_ft8719 *to_ebbg_ft8719(struct drm_panel *panel) in to_ebbg_ft8719() argument 44 return container_of(panel, struct ebbg_ft8719, panel); in to_ebbg_ft8719() 49 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in ebbg_ft8719_reset() 51 gpiod_set_value_cansleep(ctx->reset_gpio, 1); in ebbg_ft8719_reset() 53 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in ebbg_ft8719_reset() 59 struct mipi_dsi_device *dsi = ctx->dsi; in ebbg_ft8719_on() local [all …]
|
H A D | panel-raydium-rm67191.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Raydium RM67191 MIPI-DSI panel driver 11 #include <linux/media-bus-format.h> 24 /* Panel specific color-format bits */ 198 struct drm_panel panel; member 199 struct mipi_dsi_device *dsi; member 226 static inline struct rad_panel *to_rad_panel(struct drm_panel *panel) in to_rad_panel() argument 228 return container_of(panel, struct rad_panel, panel); in to_rad_panel() 231 static int rad_panel_push_cmd_list(struct mipi_dsi_device *dsi) in rad_panel_push_cmd_list() argument 239 u8 buffer[2] = { entry->cmd, entry->param }; in rad_panel_push_cmd_list() [all …]
|
H A D | panel-ronbo-rb070d30.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Copyright (C) 2018-2019, Bridge Systems BV 4 * Copyright (C) 2018-2019, Bootlin 7 * This file based on panel-ilitek-ili9881c.c 15 #include <linux/media-bus-format.h> 28 struct drm_panel panel; member 29 struct mipi_dsi_device *dsi; member 40 static inline struct rb070d30_panel *panel_to_rb070d30_panel(struct drm_panel *panel) in panel_to_rb070d30_panel() argument 42 return container_of(panel, struct rb070d30_panel, panel); in panel_to_rb070d30_panel() 45 static int rb070d30_panel_prepare(struct drm_panel *panel) in rb070d30_panel_prepare() argument [all …]
|
H A D | panel-samsung-s6d16d0.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * MIPI-DSI Samsung s6d16d0 panel driver. This is a 864x480 4 * AMOLED panel with a command-only DSI interface. 19 struct drm_panel panel; member 43 static inline struct s6d16d0 *panel_to_s6d16d0(struct drm_panel *panel) in panel_to_s6d16d0() argument 45 return container_of(panel, struct s6d16d0, panel); in panel_to_s6d16d0() 48 static int s6d16d0_unprepare(struct drm_panel *panel) in s6d16d0_unprepare() argument 50 struct s6d16d0 *s6 = panel_to_s6d16d0(panel); in s6d16d0_unprepare() 51 struct mipi_dsi_device *dsi = to_mipi_dsi_device(s6->dev); in s6d16d0_unprepare() local 55 ret = mipi_dsi_dcs_enter_sleep_mode(dsi); in s6d16d0_unprepare() [all …]
|
H A D | panel-sharp-ls060t1sx01.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Generated with linux-mdss-dsi-panel-driver-generator from vendor device tree: 4 * Copyright (c) 2013-2014, The Linux Foundation. All rights reserved. 20 struct drm_panel panel; member 21 struct mipi_dsi_device *dsi; member 29 static inline struct sharp_ls060 *to_sharp_ls060(struct drm_panel *panel) in to_sharp_ls060() argument 31 return container_of(panel, struct sharp_ls060, panel); in to_sharp_ls060() 36 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in sharp_ls060_reset() 38 gpiod_set_value_cansleep(ctx->reset_gpio, 1); in sharp_ls060_reset() 40 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in sharp_ls060_reset() [all …]
|
H A D | panel-boe-tv101wum-ll2.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 // Generated with linux-mdss-dsi-panel-driver-generator from vendor device tree: 18 struct drm_panel panel; member 19 struct mipi_dsi_device *dsi; member 29 static inline struct boe_tv101wum_ll2 *to_boe_tv101wum_ll2(struct drm_panel *panel) in to_boe_tv101wum_ll2() argument 31 return container_of(panel, struct boe_tv101wum_ll2, panel); in to_boe_tv101wum_ll2() 36 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in boe_tv101wum_ll2_reset() 38 gpiod_set_value_cansleep(ctx->reset_gpio, 1); in boe_tv101wum_ll2_reset() 40 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in boe_tv101wum_ll2_reset() 47 struct mipi_dsi_device *dsi = ctx->dsi; in boe_tv101wum_ll2_on() local [all …]
|
H A D | panel-sharp-ls043t1le01.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 * Based on AUO panel driver by Rob Clark <robdclark@gmail.com> 25 struct mipi_dsi_device *dsi; member 31 static inline struct sharp_nt_panel *to_sharp_nt_panel(struct drm_panel *panel) in to_sharp_nt_panel() argument 33 return container_of(panel, struct sharp_nt_panel, base); in to_sharp_nt_panel() 38 struct mipi_dsi_device *dsi = sharp_nt->dsi; in sharp_nt_panel_init() local 41 dsi->mode_flags |= MIPI_DSI_MODE_LPM; in sharp_nt_panel_init() 43 ret = mipi_dsi_dcs_exit_sleep_mode(dsi); in sharp_nt_panel_init() 49 /* Novatek two-lane operation */ in sharp_nt_panel_init() 50 ret = mipi_dsi_dcs_write(dsi, 0xae, (u8[]){ 0x03 }, 1); in sharp_nt_panel_init() [all …]
|
H A D | panel-xinpeng-xpp055c272.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Xinpeng xpp055c272 5.5" MIPI-DSI panel driver 8 * Rockteck jh057n00900 5.5" MIPI-DSI panel driver 21 #include <linux/media-bus-format.h> 26 /* Manufacturer specific Commands send via DSI */ 51 struct drm_panel panel; member 57 static inline struct xpp055c272 *panel_to_xpp055c272(struct drm_panel *panel) in panel_to_xpp055c272() argument 59 return container_of(panel, struct xpp055c272, panel); in panel_to_xpp055c272() 64 struct mipi_dsi_device *dsi = to_mipi_dsi_device(ctx->dev); in xpp055c272_init_sequence() local 65 struct device *dev = ctx->dev; in xpp055c272_init_sequence() [all …]
|
H A D | panel-jdi-fhd-r63452.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Generated using linux-mdss-dsi-panel-driver-generator from Lineage OS device tree: 6 …com/LineageOS/android_kernel_xiaomi_msm8996/blob/lineage-18.1/arch/arm/boot/dts/qcom/a1-msm8996-mt… 21 struct drm_panel panel; member 22 struct mipi_dsi_device *dsi; member 26 static inline struct jdi_fhd_r63452 *to_jdi_fhd_r63452(struct drm_panel *panel) in to_jdi_fhd_r63452() argument 28 return container_of(panel, struct jdi_fhd_r63452, panel); in to_jdi_fhd_r63452() 33 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in jdi_fhd_r63452_reset() 35 gpiod_set_value_cansleep(ctx->reset_gpio, 1); in jdi_fhd_r63452_reset() 37 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in jdi_fhd_r63452_reset() [all …]
|
H A D | panel-samsung-s6e88a0-ams452ef01.c | 1 // SPDX-License-Identifier: GPL-2.0-only 17 struct drm_panel panel; member 18 struct mipi_dsi_device *dsi; member 24 s6e88a0_ams452ef01 *to_s6e88a0_ams452ef01(struct drm_panel *panel) in to_s6e88a0_ams452ef01() argument 26 return container_of(panel, struct s6e88a0_ams452ef01, panel); in to_s6e88a0_ams452ef01() 31 gpiod_set_value_cansleep(ctx->reset_gpio, 1); in s6e88a0_ams452ef01_reset() 33 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in s6e88a0_ams452ef01_reset() 35 gpiod_set_value_cansleep(ctx->reset_gpio, 1); in s6e88a0_ams452ef01_reset() 41 struct mipi_dsi_device *dsi = ctx->dsi; in s6e88a0_ams452ef01_on() local 42 struct device *dev = &dsi->dev; in s6e88a0_ams452ef01_on() [all …]
|
H A D | panel-novatek-nt35560.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * MIPI-DSI Novatek NT35560-based panel controller. 6 * Sony ACX424AKM - a 480x854 AMOLED DSI panel 7 * Sony ACX424AKP - a 480x864 AMOLED DSI panel 9 * Copyright (C) Linaro Ltd. 2019-2021 11 * Based on code and know-how from Marcus Lorentzon 12 * Copyright (C) ST-Ericsson SA 2010 13 * Based on code and know-how from Johan Olson and Joakim Wesslen 42 * and panel 00 ... seems like default values. 53 struct drm_panel panel; member [all …]
|
H A D | panel-osd-osd101t2587-53ts.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (C) 2019 Texas Instruments Incorporated - https://www.ti.com 20 struct mipi_dsi_device *dsi; member 27 static inline struct osd101t2587_panel *ti_osd_panel(struct drm_panel *panel) in ti_osd_panel() argument 29 return container_of(panel, struct osd101t2587_panel, base); in ti_osd_panel() 32 static int osd101t2587_panel_disable(struct drm_panel *panel) in osd101t2587_panel_disable() argument 34 struct osd101t2587_panel *osd101t2587 = ti_osd_panel(panel); in osd101t2587_panel_disable() 37 ret = mipi_dsi_shutdown_peripheral(osd101t2587->dsi); in osd101t2587_panel_disable() 42 static int osd101t2587_panel_unprepare(struct drm_panel *panel) in osd101t2587_panel_unprepare() argument 44 struct osd101t2587_panel *osd101t2587 = ti_osd_panel(panel); in osd101t2587_panel_unprepare() [all …]
|
H A D | panel-dsi-cm.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Generic DSI Command Mode panel driver 5 * Copyright (C) 2013 Texas Instruments Incorporated - https://www.ti.com/ 44 struct mipi_dsi_device *dsi; member 45 struct drm_panel panel; member 72 static inline struct panel_drv_data *panel_to_ddata(struct drm_panel *panel) in panel_to_ddata() argument 74 return container_of(panel, struct panel_drv_data, panel); in panel_to_ddata() 81 if (ddata->bldev) in dsicm_bl_power() 82 backlight = ddata->bldev; in dsicm_bl_power() 83 else if (ddata->extbldev) in dsicm_bl_power() [all …]
|
H A D | panel-mantix-mlaf057we51.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Mantix MLAF057WE51 5.7" MIPI-DSI panel driver 11 #include <linux/media-bus-format.h> 22 #define DRV_NAME "panel-mantix-mlaf057we51" 24 /* Manufacturer specific Commands send via DSI */ 31 struct drm_panel panel; member 43 static inline struct mantix *panel_to_mantix(struct drm_panel *panel) in panel_to_mantix() argument 45 return container_of(panel, struct mantix, panel); in panel_to_mantix() 51 * Init sequence was supplied by the panel vendor. in mantix_init_sequence() 68 static int mantix_enable(struct drm_panel *panel) in mantix_enable() argument [all …]
|
H A D | panel-raydium-rm692e5.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Generated with linux-mdss-dsi-panel-driver-generator from vendor device tree. 21 struct drm_panel panel; member 22 struct mipi_dsi_device *dsi; member 28 static inline struct rm692e5_panel *to_rm692e5_panel(struct drm_panel *panel) in to_rm692e5_panel() argument 30 return container_of(panel, struct rm692e5_panel, panel); in to_rm692e5_panel() 35 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in rm692e5_reset() 37 gpiod_set_value_cansleep(ctx->reset_gpio, 1); in rm692e5_reset() 39 gpiod_set_value_cansleep(ctx->reset_gpio, 0); in rm692e5_reset() 45 dsi_ctx->dsi->mode_flags |= MIPI_DSI_MODE_LPM; in rm692e5_on() [all …]
|
H A D | panel-boe-bf060y8m-aj0.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * BOE BF060Y8M-AJ0 5.99" MIPI-DSI OLED Panel on SW43404 DriverIC 33 struct drm_panel panel; member 34 struct mipi_dsi_device *dsi; member 40 struct boe_bf060y8m_aj0 *to_boe_bf060y8m_aj0(struct drm_panel *panel) in to_boe_bf060y8m_aj0() argument 42 return container_of(panel, struct boe_bf060y8m_aj0, panel); in to_boe_bf060y8m_aj0() 47 gpiod_set_value_cansleep(boe->reset_gpio, 0); in boe_bf060y8m_aj0_reset() 49 gpiod_set_value_cansleep(boe->reset_gpio, 1); in boe_bf060y8m_aj0_reset() 51 gpiod_set_value_cansleep(boe->reset_gpio, 0); in boe_bf060y8m_aj0_reset() 57 struct mipi_dsi_device *dsi = boe->dsi; in boe_bf060y8m_aj0_on() local [all …]
|
H A D | panel-panasonic-vvx10f034n00.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 * Based on AUO panel driver by Rob Clark <robdclark@gmail.com> 23 * When power is turned off to this panel a minimum off time of 500ms has to be 31 struct mipi_dsi_device *dsi; member 40 static inline struct wuxga_nt_panel *to_wuxga_nt_panel(struct drm_panel *panel) in to_wuxga_nt_panel() argument 42 return container_of(panel, struct wuxga_nt_panel, base); in to_wuxga_nt_panel() 47 return mipi_dsi_turn_on_peripheral(wuxga_nt->dsi); in wuxga_nt_panel_on() 50 static int wuxga_nt_panel_disable(struct drm_panel *panel) in wuxga_nt_panel_disable() argument 52 struct wuxga_nt_panel *wuxga_nt = to_wuxga_nt_panel(panel); in wuxga_nt_panel_disable() 54 return mipi_dsi_shutdown_peripheral(wuxga_nt->dsi); in wuxga_nt_panel_disable() [all …]
|