Lines Matching +full:neo +full:- +full:8

1 // SPDX-License-Identifier: GPL-2.0
7 * Based on the omapdrm-specific panel-tpo-td028ttec1 driver
12 * Neo 1973 code (jbt6k74.c):
13 * Copyright (C) 2006-2007 OpenMoko, Inc.
16 * Ported and adapted from Neo 1973 U-Boot by:
91 * on the stack in case of gcc-plugin-structleak
96 struct spi_device *spi = lcd->spi; in jbt_ret_write_0()
105 dev_err(&spi->dev, "%s: SPI write failed: %d\n", __func__, ret); in jbt_ret_write_0()
117 struct spi_device *spi = lcd->spi; in jbt_reg_write_1()
129 dev_err(&spi->dev, "%s: SPI write failed: %d\n", __func__, ret); in jbt_reg_write_1()
141 struct spi_device *spi = lcd->spi; in jbt_reg_write_2()
149 tx_buf[1] = JBT_DATA | (data >> 8); in jbt_reg_write_2()
154 dev_err(&spi->dev, "%s: SPI write failed: %d\n", __func__, ret); in jbt_reg_write_2()
273 .hsync_end = 480 + 24 + 8,
274 .htotal = 480 + 24 + 8 + 8,
290 mode = drm_mode_duplicate(connector->dev, &td028ttec1_mode); in td028ttec1_get_modes()
292 return -ENOMEM; in td028ttec1_get_modes()
297 connector->display_info.width_mm = td028ttec1_mode.width_mm; in td028ttec1_get_modes()
298 connector->display_info.height_mm = td028ttec1_mode.height_mm; in td028ttec1_get_modes()
301 * rising edge of the clock, but the code running on the OpenMoko Neo in td028ttec1_get_modes()
302 * FreeRunner and Neo 1973 indicates sampling on the falling edge. This in td028ttec1_get_modes()
305 connector->display_info.bus_flags = DRM_BUS_FLAG_DE_HIGH in td028ttec1_get_modes()
325 lcd = devm_kzalloc(&spi->dev, sizeof(*lcd), GFP_KERNEL); in td028ttec1_probe()
327 return -ENOMEM; in td028ttec1_probe()
330 lcd->spi = spi; in td028ttec1_probe()
332 spi->mode = SPI_MODE_3; in td028ttec1_probe()
333 spi->bits_per_word = 9; in td028ttec1_probe()
337 dev_err(&spi->dev, "failed to setup SPI: %d\n", ret); in td028ttec1_probe()
341 drm_panel_init(&lcd->panel, &lcd->spi->dev, &td028ttec1_funcs, in td028ttec1_probe()
344 ret = drm_panel_of_backlight(&lcd->panel); in td028ttec1_probe()
348 drm_panel_add(&lcd->panel); in td028ttec1_probe()
357 drm_panel_remove(&lcd->panel); in td028ttec1_remove()
358 drm_panel_disable(&lcd->panel); in td028ttec1_remove()
359 drm_panel_unprepare(&lcd->panel); in td028ttec1_remove()
383 .name = "panel-tpo-td028ttec1",