Lines Matching +full:0 +full:x480
26 #define TPG110_TEST 0x00
27 #define TPG110_CHIPID 0x01
28 #define TPG110_CTRL1 0x02
29 #define TPG110_RES_MASK GENMASK(2, 0)
30 #define TPG110_RES_800X480 0x07
31 #define TPG110_RES_640X480 0x06
32 #define TPG110_RES_480X272 0x05
33 #define TPG110_RES_480X640 0x04
34 #define TPG110_RES_480X272_D 0x01 /* Dual scan: outputs 800x480 */
35 #define TPG110_RES_400X240_D 0x00 /* Dual scan: outputs 800x480 */
36 #define TPG110_CTRL2 0x03
37 #define TPG110_CTRL2_PM BIT(0)
98 * take 400x240 or 480x272 in and display as 800x480 are not listed.
102 .name = "800x480 RGB",
118 .name = "640x480 RGB",
198 memset(t, 0, sizeof(t)); in tpg110_readwrite_reg()
202 * Clear address bit 0, 1 when writing, just to be sure in tpg110_readwrite_reg()
204 * 0 is just surplus to pad it up to 8 bits. in tpg110_readwrite_reg()
206 buf[0] = address << 2; in tpg110_readwrite_reg()
207 buf[0] &= ~0x03; in tpg110_readwrite_reg()
210 t[0].bits_per_word = 8; in tpg110_readwrite_reg()
211 t[0].tx_buf = &buf[0]; in tpg110_readwrite_reg()
212 t[0].len = 1; in tpg110_readwrite_reg()
218 /* Set address bit 0 to 1 to read */ in tpg110_readwrite_reg()
219 buf[0] = address << 1; in tpg110_readwrite_reg()
220 buf[0] |= 0x01; in tpg110_readwrite_reg()
227 t[0].bits_per_word = 7; in tpg110_readwrite_reg()
228 t[0].tx_buf = &buf[0]; in tpg110_readwrite_reg()
229 t[0].len = 1; in tpg110_readwrite_reg()
236 spi_message_add_tail(&t[0], &m); in tpg110_readwrite_reg()
244 return 0; in tpg110_readwrite_reg()
251 return tpg110_readwrite_reg(tpg, false, address, 0); in tpg110_read_reg()
265 gpiod_set_value_cansleep(tpg->grestb, 0); in tpg110_startup()
270 tpg110_write_reg(tpg, TPG110_TEST, 0x55); in tpg110_startup()
272 if (val != 0x55) { in tpg110_startup()
279 val >> 4, val & 0x0f); in tpg110_startup()
286 dev_info(tpg->dev, "IN 400x240 RGB -> OUT 800x480 RGB (dual scan)\n"); in tpg110_startup()
289 dev_info(tpg->dev, "IN 480x272 RGB -> OUT 800x480 RGB (dual scan)\n"); in tpg110_startup()
298 dev_info(tpg->dev, "640x480 RGB\n"); in tpg110_startup()
301 dev_info(tpg->dev, "800x480 RGB\n"); in tpg110_startup()
304 dev_err(tpg->dev, "ILLEGAL RESOLUTION 0x%02x\n", val); in tpg110_startup()
312 for (i = 0; i < ARRAY_SIZE(tpg110_modes); i++) { in tpg110_startup()
333 return 0; in tpg110_startup()
346 return 0; in tpg110_disable()
359 return 0; in tpg110_enable()
431 if (ret < 0) { in tpg110_probe()
452 return 0; in tpg110_probe()