// SPDX-License-Identifier: GPL-2.0+ /* * MIPI-DSI Samsung s6d16d0 panel driver. This is a 864x480 * AMOLED panel with a command-only DSI interface.
*/
/* Enabe tearing mode: send TE (tearing effect) at VBLANK */
ret = mipi_dsi_dcs_set_tear_on(dsi,
MIPI_DSI_DCS_TEAR_MODE_VBLANK); if (ret) {
dev_err(s6->dev, "failed to enable vblank TE (%d)\n", ret); return ret;
} /* Exit sleep mode and power on */
ret = mipi_dsi_dcs_exit_sleep_mode(dsi); if (ret) {
dev_err(s6->dev, "failed to exit sleep mode (%d)\n", ret); return ret;
}
dsi->lanes = 2;
dsi->format = MIPI_DSI_FMT_RGB888;
dsi->hs_rate = 420160000;
dsi->lp_rate = 19200000; /* * This display uses command mode so no MIPI_DSI_MODE_VIDEO * or MIPI_DSI_MODE_VIDEO_SYNC_PULSE * * As we only send commands we do not need to be continuously * clocked.
*/
dsi->mode_flags = MIPI_DSI_CLOCK_NON_CONTINUOUS;
s6->supply = devm_regulator_get(dev, "vdd1"); if (IS_ERR(s6->supply)) return PTR_ERR(s6->supply);
/* This asserts RESET by default */
s6->reset_gpio = devm_gpiod_get_optional(dev, "reset",
GPIOD_OUT_HIGH); if (IS_ERR(s6->reset_gpio)) {
ret = PTR_ERR(s6->reset_gpio); if (ret != -EPROBE_DEFER)
dev_err(dev, "failed to request GPIO (%d)\n", ret); return ret;
}
drm_panel_add(&s6->panel);
ret = mipi_dsi_attach(dsi); if (ret < 0)
drm_panel_remove(&s6->panel);
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.