Home
last modified time | relevance | path

Searched full:lcd (Results 1 – 25 of 963) sorted by relevance

12345678910>>...39

/Linux-v5.10/drivers/video/backlight/
Dcorgi_lcd.c3 * LCD/Backlight Driver for Sharp Zaurus Handhelds (various models)
10 * Converted to SPI device based LCD/Backlight device driver
20 #include <linux/lcd.h>
99 static int corgi_ssp_lcdtg_send(struct corgi_lcd *lcd, int reg, uint8_t val);
110 static void lcdtg_ssp_i2c_send(struct corgi_lcd *lcd, uint8_t data) in lcdtg_ssp_i2c_send() argument
112 corgi_ssp_lcdtg_send(lcd, POWERREG0_ADRS, data); in lcdtg_ssp_i2c_send()
116 static void lcdtg_i2c_send_bit(struct corgi_lcd *lcd, uint8_t data) in lcdtg_i2c_send_bit() argument
118 lcdtg_ssp_i2c_send(lcd, data); in lcdtg_i2c_send_bit()
119 lcdtg_ssp_i2c_send(lcd, data | POWER0_COM_DCLK); in lcdtg_i2c_send_bit()
120 lcdtg_ssp_i2c_send(lcd, data); in lcdtg_i2c_send_bit()
[all …]
Dltv350qv.c3 * Power control for Samsung LTV350QV Quarter VGA LCD Panel
11 #include <linux/lcd.h>
37 static int ltv350qv_write_reg(struct ltv350qv *lcd, u8 reg, u16 val) in ltv350qv_write_reg() argument
51 lcd->buffer[0] = LTV_OPC_INDEX; in ltv350qv_write_reg()
52 lcd->buffer[1] = 0x00; in ltv350qv_write_reg()
53 lcd->buffer[2] = reg & 0x7f; in ltv350qv_write_reg()
54 index_xfer.tx_buf = lcd->buffer; in ltv350qv_write_reg()
58 lcd->buffer[4] = LTV_OPC_DATA; in ltv350qv_write_reg()
59 lcd->buffer[5] = val >> 8; in ltv350qv_write_reg()
60 lcd->buffer[6] = val; in ltv350qv_write_reg()
[all …]
Dlms501kf03.c3 * lms501kf03 TFT LCD panel driver.
12 #include <linux/lcd.h>
103 static int lms501kf03_spi_write_byte(struct lms501kf03 *lcd, int addr, int data) in lms501kf03_spi_write_byte() argument
118 return spi_sync(lcd->spi, &msg); in lms501kf03_spi_write_byte()
121 static int lms501kf03_spi_write(struct lms501kf03 *lcd, unsigned char address, in lms501kf03_spi_write() argument
124 return lms501kf03_spi_write_byte(lcd, address, command); in lms501kf03_spi_write()
127 static int lms501kf03_panel_send_sequence(struct lms501kf03 *lcd, in lms501kf03_panel_send_sequence() argument
135 ret = lms501kf03_spi_write(lcd, COMMAND_ONLY, wbuf[i]); in lms501kf03_panel_send_sequence()
137 ret = lms501kf03_spi_write(lcd, DATA_ONLY, wbuf[i]); in lms501kf03_panel_send_sequence()
146 static int lms501kf03_ldi_init(struct lms501kf03 *lcd) in lms501kf03_ldi_init() argument
[all …]
Dili9320.c4 * ILI9320 LCD controller driver core.
15 #include <linux/lcd.h>
75 static void ili9320_reset(struct ili9320 *lcd) in ili9320_reset() argument
77 struct ili9320_platdata *cfg = lcd->platdata; in ili9320_reset()
89 static inline int ili9320_init_chip(struct ili9320 *lcd) in ili9320_init_chip() argument
93 ili9320_reset(lcd); in ili9320_init_chip()
95 ret = lcd->client->init(lcd, lcd->platdata); in ili9320_init_chip()
97 dev_err(lcd->dev, "failed to initialise display\n"); in ili9320_init_chip()
101 lcd->initialised = 1; in ili9320_init_chip()
105 static inline int ili9320_power_on(struct ili9320 *lcd) in ili9320_power_on() argument
[all …]
Dams369fg06.c3 * ams369fg06 AMOLED LCD panel driver.
14 #include <linux/lcd.h>
158 static int ams369fg06_spi_write_byte(struct ams369fg06 *lcd, int addr, int data) in ams369fg06_spi_write_byte() argument
173 return spi_sync(lcd->spi, &msg); in ams369fg06_spi_write_byte()
176 static int ams369fg06_spi_write(struct ams369fg06 *lcd, unsigned char address, in ams369fg06_spi_write() argument
182 ret = ams369fg06_spi_write_byte(lcd, 0x70, address); in ams369fg06_spi_write()
184 ret = ams369fg06_spi_write_byte(lcd, 0x72, command); in ams369fg06_spi_write()
189 static int ams369fg06_panel_send_sequence(struct ams369fg06 *lcd, in ams369fg06_panel_send_sequence() argument
196 ret = ams369fg06_spi_write(lcd, wbuf[i], wbuf[i+1]); in ams369fg06_panel_send_sequence()
208 static int _ams369fg06_gamma_ctl(struct ams369fg06 *lcd, in _ams369fg06_gamma_ctl() argument
[all …]
Dtdo24m.c3 * tdo24m - SPI-based drivers for Toppoly TDO24M series LCD panels
16 #include <linux/lcd.h>
33 int (*adj_mode)(struct tdo24m *lcd, int mode);
175 static int tdo24m_writes(struct tdo24m *lcd, const uint32_t *array) in tdo24m_writes() argument
177 struct spi_transfer *x = &lcd->xfer; in tdo24m_writes()
183 if (!lcd->color_invert && *p == CMD0(0x21)) in tdo24m_writes()
191 lcd->buf[0] = (data >> 8) & 0xff; in tdo24m_writes()
192 lcd->buf[1] = data & 0xff; in tdo24m_writes()
195 lcd->buf[0] = (data >> 16) & 0xff; in tdo24m_writes()
196 lcd->buf[1] = (data >> 8) & 0xff; in tdo24m_writes()
[all …]
Dvgg2432a4.c4 * VGG2432A4 (ILI9320) LCD controller driver.
15 #include <linux/lcd.h>
108 static int vgg2432a4_lcd_init(struct ili9320 *lcd, in vgg2432a4_lcd_init() argument
115 ret = ili9320_write(lcd, 0x00e5, 0x8000); in vgg2432a4_lcd_init()
120 ret = ili9320_write(lcd, ILI9320_OSCILATION, ILI9320_OSCILATION_OSC); in vgg2432a4_lcd_init()
127 ret = ili9320_write_regs(lcd, vgg_init0, ARRAY_SIZE(vgg_init0)); in vgg2432a4_lcd_init()
131 ili9320_write(lcd, ILI9320_DISPLAY2, cfg->display2); in vgg2432a4_lcd_init()
132 ili9320_write(lcd, ILI9320_DISPLAY3, cfg->display3); in vgg2432a4_lcd_init()
133 ili9320_write(lcd, ILI9320_DISPLAY4, cfg->display4); in vgg2432a4_lcd_init()
135 ili9320_write(lcd, ILI9320_RGB_IF1, cfg->rgb_if1); in vgg2432a4_lcd_init()
[all …]
DKconfig3 # Backlight & LCD drivers configuration
6 menu "Backlight & LCD device support"
9 # LCD
12 tristate "Lowlevel LCD controls"
14 This framework adds support for low-level control of LCD.
15 Some framebuffer devices connect to platform-specific LCD modules
17 (contrast and applying power to the LCD (not to the backlight!)).
19 To have support for your specific LCD panel you will have to
25 tristate "LCD Panel support for SHARP corgi/spitz model"
28 Say y here to support the LCD panels usually found on SHARP
[all …]
Dplatform_lcd.c7 * Generic platform-device LCD power control interface.
14 #include <linux/lcd.h>
22 struct lcd_device *lcd; member
29 static inline struct platform_lcd *to_our_lcd(struct lcd_device *lcd) in to_our_lcd() argument
31 return lcd_get_data(lcd); in to_our_lcd()
34 static int platform_lcd_get_power(struct lcd_device *lcd) in platform_lcd_get_power() argument
36 struct platform_lcd *plcd = to_our_lcd(lcd); in platform_lcd_get_power()
41 static int platform_lcd_set_power(struct lcd_device *lcd, int power) in platform_lcd_set_power() argument
43 struct platform_lcd *plcd = to_our_lcd(lcd); in platform_lcd_set_power()
55 static int platform_lcd_match(struct lcd_device *lcd, struct fb_info *info) in platform_lcd_match() argument
[all …]
/Linux-v5.10/Documentation/devicetree/bindings/display/panel/
Dpanel-simple.yaml32 # Ampire AM-1280800N3TZQW-T00H 10.1" WQVGA TFT LCD panel
34 # Ampire AM-480272H3TMQW-T01H 4.3" WQVGA TFT LCD panel
36 # Ampire AM-800480R3TMQW-A1H 7.0" WVGA TFT LCD panel
38 # AU Optronics Corporation 10.1" WSVGA TFT LCD panel
40 # AU Optronics Corporation 10.1" WSVGA TFT LCD panel
42 # AU Optronics Corporation 10.1" WXGA TFT LCD panel
44 # AUO B116XAK01 eDP TFT LCD panel
46 # AU Optronics Corporation 11.6" HD (1366x768) color TFT-LCD panel
48 # AU Optronics Corporation 13.3" FHD (1920x1080) color TFT-LCD panel
50 # AU Optronics Corporation 13.3" WXGA (1366x768) TFT LCD panel
[all …]
/Linux-v5.10/drivers/gpu/drm/panel/
Dpanel-sony-acx565akm.c3 * Sony ACX565AKM LCD Panel driver
75 static void acx565akm_transfer(struct acx565akm_panel *lcd, int cmd, in acx565akm_transfer() argument
118 ret = spi_sync(lcd->spi, &m); in acx565akm_transfer()
120 dev_dbg(&lcd->spi->dev, "spi_sync %d\n", ret); in acx565akm_transfer()
123 static inline void acx565akm_cmd(struct acx565akm_panel *lcd, int cmd) in acx565akm_cmd() argument
125 acx565akm_transfer(lcd, cmd, NULL, 0, NULL, 0); in acx565akm_cmd()
128 static inline void acx565akm_write(struct acx565akm_panel *lcd, in acx565akm_write() argument
131 acx565akm_transfer(lcd, reg, buf, len, NULL, 0); in acx565akm_write()
134 static inline void acx565akm_read(struct acx565akm_panel *lcd, in acx565akm_read() argument
137 acx565akm_transfer(lcd, reg, NULL, 0, buf, len); in acx565akm_read()
[all …]
Dpanel-tpo-td043mtea1.c74 static int td043mtea1_write(struct td043mtea1_panel *lcd, u8 addr, u8 value) in td043mtea1_write() argument
91 ret = spi_sync(lcd->spi, &msg); in td043mtea1_write()
93 dev_warn(&lcd->spi->dev, "failed to write to LCD reg (%d)\n", in td043mtea1_write()
99 static void td043mtea1_write_gamma(struct td043mtea1_panel *lcd) in td043mtea1_write_gamma() argument
101 const u16 *gamma = lcd->gamma; in td043mtea1_write_gamma()
108 td043mtea1_write(lcd, 0x11, val); in td043mtea1_write_gamma()
112 td043mtea1_write(lcd, 0x12, val); in td043mtea1_write_gamma()
116 td043mtea1_write(lcd, 0x13, val); in td043mtea1_write_gamma()
120 td043mtea1_write(lcd, 0x14 + i, gamma[i] & 0xff); in td043mtea1_write_gamma()
123 static int td043mtea1_write_mirror(struct td043mtea1_panel *lcd) in td043mtea1_write_mirror() argument
[all …]
Dpanel-tpo-td028ttec1.c94 jbt_ret_write_0(struct td028ttec1_panel *lcd, u8 reg, int *err) in jbt_ret_write_0() argument
96 struct spi_device *spi = lcd->spi; in jbt_ret_write_0()
114 jbt_reg_write_1(struct td028ttec1_panel *lcd, in jbt_reg_write_1() argument
117 struct spi_device *spi = lcd->spi; in jbt_reg_write_1()
138 jbt_reg_write_2(struct td028ttec1_panel *lcd, in jbt_reg_write_2() argument
141 struct spi_device *spi = lcd->spi; in jbt_reg_write_2()
164 struct td028ttec1_panel *lcd = to_td028ttec1_device(panel); in td028ttec1_prepare() local
170 jbt_ret_write_0(lcd, 0x00, &ret); in td028ttec1_prepare()
175 jbt_reg_write_1(lcd, JBT_REG_POWER_ON_OFF, 0x17, &ret); in td028ttec1_prepare()
178 jbt_reg_write_1(lcd, JBT_REG_DISPLAY_MODE, 0x80, &ret); in td028ttec1_prepare()
[all …]
Dpanel-olimex-lcd-olinuxino.c3 * LCD-OLinuXino support for panel driver
83 struct lcd_olinuxino *lcd = to_lcd_olinuxino(panel); in lcd_olinuxino_disable() local
85 if (!lcd->enabled) in lcd_olinuxino_disable()
88 lcd->enabled = false; in lcd_olinuxino_disable()
95 struct lcd_olinuxino *lcd = to_lcd_olinuxino(panel); in lcd_olinuxino_unprepare() local
97 if (!lcd->prepared) in lcd_olinuxino_unprepare()
100 gpiod_set_value_cansleep(lcd->enable_gpio, 0); in lcd_olinuxino_unprepare()
101 regulator_disable(lcd->supply); in lcd_olinuxino_unprepare()
103 lcd->prepared = false; in lcd_olinuxino_unprepare()
110 struct lcd_olinuxino *lcd = to_lcd_olinuxino(panel); in lcd_olinuxino_prepare() local
[all …]
Dpanel-sharp-ls037v7dw01.c3 * Sharp LS037V7DW01 LCD Panel Driver
41 struct ls037v7dw01_panel *lcd = to_ls037v7dw01_device(panel); in ls037v7dw01_disable() local
43 gpiod_set_value_cansleep(lcd->ini_gpio, 0); in ls037v7dw01_disable()
44 gpiod_set_value_cansleep(lcd->resb_gpio, 0); in ls037v7dw01_disable()
46 /* Wait at least 5 vsyncs after disabling the LCD. */ in ls037v7dw01_disable()
54 struct ls037v7dw01_panel *lcd = to_ls037v7dw01_device(panel); in ls037v7dw01_unprepare() local
56 regulator_disable(lcd->vdd); in ls037v7dw01_unprepare()
62 struct ls037v7dw01_panel *lcd = to_ls037v7dw01_device(panel); in ls037v7dw01_prepare() local
65 ret = regulator_enable(lcd->vdd); in ls037v7dw01_prepare()
67 dev_err(&lcd->pdev->dev, "%s: failed to enable regulator\n", in ls037v7dw01_prepare()
[all …]
Dpanel-nec-nl8048hl11.c32 static int nl8048_write(struct nl8048_panel *lcd, unsigned char addr, in nl8048_write() argument
38 ret = spi_write(lcd->spi, data, sizeof(data)); in nl8048_write()
40 dev_err(&lcd->spi->dev, "SPI write to %u failed: %d\n", in nl8048_write()
46 static int nl8048_init(struct nl8048_panel *lcd) in nl8048_init() argument
79 ret = nl8048_write(lcd, nl8048_init_seq[i].addr, in nl8048_init()
87 return nl8048_write(lcd, 2, 0x00); in nl8048_init()
92 struct nl8048_panel *lcd = to_nl8048_device(panel); in nl8048_disable() local
94 gpiod_set_value_cansleep(lcd->reset_gpio, 0); in nl8048_disable()
101 struct nl8048_panel *lcd = to_nl8048_device(panel); in nl8048_enable() local
103 gpiod_set_value_cansleep(lcd->reset_gpio, 1); in nl8048_enable()
[all …]
Dpanel-lg-lb035q02.c3 * LG.Philips LB035Q02 LCD Panel Driver
32 static int lb035q02_write(struct lb035q02_device *lcd, u16 reg, u16 val) in lb035q02_write() argument
60 return spi_sync(lcd->spi, &msg); in lb035q02_write()
63 static int lb035q02_init(struct lb035q02_device *lcd) in lb035q02_init() argument
100 ret = lb035q02_write(lcd, init_data[i].index, in lb035q02_init()
111 struct lb035q02_device *lcd = to_lb035q02_device(panel); in lb035q02_disable() local
113 gpiod_set_value_cansleep(lcd->enable_gpio, 0); in lb035q02_disable()
120 struct lb035q02_device *lcd = to_lb035q02_device(panel); in lb035q02_enable() local
122 gpiod_set_value_cansleep(lcd->enable_gpio, 1); in lb035q02_enable()
178 struct lb035q02_device *lcd; in lb035q02_probe() local
[all …]
/Linux-v5.10/drivers/auxdisplay/
Darm-charlcd.c3 * Driver for the on-board character LCD found on some ARM reference boards
4 * This is basically an Hitachi HD44780 LCD with a custom IP block to drive it
63 * @complete: completion structure for the last LCD command
78 struct charlcd *lcd = data; in charlcd_interrupt() local
81 status = readl(lcd->virtbase + CHAR_STAT) & 0x01; in charlcd_interrupt()
83 writel(CHAR_RAW_CLEAR, lcd->virtbase + CHAR_RAW); in charlcd_interrupt()
85 complete(&lcd->complete); in charlcd_interrupt()
87 dev_info(lcd->dev, "Spurious IRQ (%02x)\n", status); in charlcd_interrupt()
92 static void charlcd_wait_complete_irq(struct charlcd *lcd) in charlcd_wait_complete_irq() argument
96 ret = wait_for_completion_interruptible_timeout(&lcd->complete, in charlcd_wait_complete_irq()
[all …]
Dcharlcd.c3 * Character LCD driver for Linux
38 /* LCD commands */
62 #define LCD_ESCAPE_LEN 24 /* Max chars for LCD escape command */
66 struct charlcd lcd; member
74 /* contains the LCD config state */
77 /* Contains the LCD X and Y offset */
92 #define charlcd_to_priv(p) container_of(p, struct charlcd_priv, lcd)
104 static void charlcd_backlight(struct charlcd *lcd, int on) in charlcd_backlight() argument
106 struct charlcd_priv *priv = charlcd_to_priv(lcd); in charlcd_backlight()
108 if (!lcd->ops->backlight) in charlcd_backlight()
[all …]
DKconfig20 tristate "HD44780 Character LCD support"
25 The LCD is accessible through the /dev/lcd char device (10, 156).
31 tristate "KS0108 LCD Controller"
35 If you have a LCD controlled by one or more KS0108
37 driver for your LCD.
49 hex "Parallel port where the LCD is connected"
53 The address of the parallel port where the LCD is connected.
78 If your LCD seems to miss random writings, increment this.
86 tristate "CFAG12864B LCD"
96 If you have a Crystalfontz 128x64 2-color LCD, cfag12864b Series,
[all …]
Dhd44780.c3 * HD44780 Character LCD driver for Linux
40 static void hd44780_backlight(struct charlcd *lcd, int on) in hd44780_backlight() argument
42 struct hd44780 *hd = lcd->drvdata; in hd44780_backlight()
61 /* write to an LCD panel register in 8 bit GPIO mode */
77 /* write to an LCD panel register in 4 bit GPIO mode */
103 /* Send a command to the LCD panel in 8 bit GPIO mode */
104 static void hd44780_write_cmd_gpio8(struct charlcd *lcd, int cmd) in hd44780_write_cmd_gpio8() argument
106 struct hd44780 *hd = lcd->drvdata; in hd44780_write_cmd_gpio8()
114 /* Send data to the LCD panel in 8 bit GPIO mode */
115 static void hd44780_write_data_gpio8(struct charlcd *lcd, int data) in hd44780_write_data_gpio8() argument
[all …]
Dimg-ascii-lcd.c22 * struct img_ascii_lcd_config - Configuration information about an LCD model
23 * @num_chars: the number of characters the LCD can display
25 * @update: function called to update the LCD
35 * @pdev: the ASCII LCD platform device
36 * @base: the base address of the LCD registers
37 * @regmap: the regmap through which LCD registers are accessed
38 * @offset: the offset within regmap to the start of the LCD registers
39 * @cfg: pointer to the LCD model configuration
40 * @message: the full message to display or scroll on the LCD
45 * @curr: the string currently displayed on the LCD
[all …]
/Linux-v5.10/drivers/staging/fbtft/
DKconfig3 tristate "Support for small TFT LCD display modules"
14 tristate "FB driver for the AGM1264K-FL LCD display"
17 Framebuffer support for the AGM1264K-FL LCD display (two Samsung KS0108 compatible chips)
20 tristate "FB driver for the BD663474 LCD Controller"
26 tristate "FB driver for the HX8340BN LCD Controller"
32 tristate "FB driver for the HX8347D LCD Controller"
38 tristate "FB driver for the HX8353D LCD Controller"
44 tristate "FB driver for the HX8357D LCD Controller"
50 tristate "FB driver for the ILI9163 LCD Controller"
56 tristate "FB driver for the ILI9320 LCD Controller"
[all …]
/Linux-v5.10/Documentation/devicetree/bindings/pinctrl/
Dmarvell,armada-xp-pinctrl.txt21 mpp0 0 gpio, ge0(txclkout), lcd(d0)
22 mpp1 1 gpio, ge0(txd0), lcd(d1)
23 mpp2 2 gpio, ge0(txd1), lcd(d2)
24 mpp3 3 gpio, ge0(txd2), lcd(d3)
25 mpp4 4 gpio, ge0(txd3), lcd(d4)
26 mpp5 5 gpio, ge0(txctl), lcd(d5)
27 mpp6 6 gpio, ge0(rxd0), lcd(d6)
28 mpp7 7 gpio, ge0(rxd1), lcd(d7)
29 mpp8 8 gpio, ge0(rxd2), lcd(d8)
30 mpp9 9 gpio, ge0(rxd3), lcd(d9)
[all …]
/Linux-v5.10/drivers/video/fbdev/
Dau1200fb.c3 * Au1200 LCD Driver.
53 #define DRIVER_DESC "LCD controller driver for AU1200 processors"
160 /* LCD controller restrictions */
179 static struct au1200_lcd *lcd = (struct au1200_lcd *) AU1200_LCD_ADDR; variable
349 /* List of panels known to work with the AU1200 LCD controller.
710 winctrl0 = lcd->window[plane].winctrl0; in au1200_setlocation()
711 winctrl1 = lcd->window[plane].winctrl1; in au1200_setlocation()
733 fb_offset += (((0 - xpos) * winbpp(lcd->window[plane].winctrl1))/8); in au1200_setlocation()
758 winenable = lcd->winenable & (1 << plane); in au1200_setlocation()
760 lcd->winenable &= ~(1 << plane); in au1200_setlocation()
[all …]

12345678910>>...39