Lines Matching refs:boe

37 	int (*init)(struct boe_panel *boe);
57 static int boe_tv110c9m_init(struct boe_panel *boe)
59 struct mipi_dsi_multi_context ctx = { .dsi = boe->dsi };
463 static int inx_hj110iz_init(struct boe_panel *boe)
465 struct mipi_dsi_multi_context ctx = { .dsi = boe->dsi };
902 static int boe_init(struct boe_panel *boe)
904 struct mipi_dsi_multi_context ctx = { .dsi = boe->dsi };
1202 static int auo_kd101n80_45na_init(struct boe_panel *boe)
1204 struct mipi_dsi_multi_context ctx = { .dsi = boe->dsi };
1219 static int auo_b101uan08_3_init(struct boe_panel *boe)
1221 struct mipi_dsi_multi_context ctx = { .dsi = boe->dsi };
1272 static int starry_qfh032011_53g_init(struct boe_panel *boe)
1274 struct mipi_dsi_multi_context ctx = { .dsi = boe->dsi };
1383 struct boe_panel *boe = to_boe_panel(panel);
1384 struct mipi_dsi_multi_context ctx = { .dsi = boe->dsi };
1386 boe->dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
1398 struct boe_panel *boe = to_boe_panel(panel);
1400 if (boe->desc->discharge_on_disable) {
1401 regulator_disable(boe->avee);
1402 regulator_disable(boe->avdd);
1404 gpiod_set_value(boe->enable_gpio, 0);
1406 regulator_disable(boe->pp1800);
1407 regulator_disable(boe->pp3300);
1409 gpiod_set_value(boe->enable_gpio, 0);
1411 regulator_disable(boe->avee);
1412 regulator_disable(boe->avdd);
1414 regulator_disable(boe->pp1800);
1415 regulator_disable(boe->pp3300);
1423 struct boe_panel *boe = to_boe_panel(panel);
1426 gpiod_set_value(boe->enable_gpio, 0);
1429 ret = regulator_enable(boe->pp3300);
1433 ret = regulator_enable(boe->pp1800);
1439 ret = regulator_enable(boe->avdd);
1442 ret = regulator_enable(boe->avee);
1448 if (boe->desc->lp11_before_reset) {
1449 ret = mipi_dsi_dcs_nop(boe->dsi);
1451 dev_err(&boe->dsi->dev, "Failed to send NOP: %d\n", ret);
1456 gpiod_set_value(boe->enable_gpio, 1);
1458 gpiod_set_value(boe->enable_gpio, 0);
1460 gpiod_set_value(boe->enable_gpio, 1);
1463 ret = boe->desc->init(boe);
1470 gpiod_set_value(boe->enable_gpio, 0);
1471 regulator_disable(boe->avee);
1473 regulator_disable(boe->avdd);
1476 regulator_disable(boe->pp1800);
1712 struct boe_panel *boe = to_boe_panel(panel);
1713 const struct drm_display_mode *m = boe->desc->modes;
1727 connector->display_info.width_mm = boe->desc->size.width_mm;
1728 connector->display_info.height_mm = boe->desc->size.height_mm;
1729 connector->display_info.bpc = boe->desc->bpc;
1734 drm_connector_set_panel_orientation(connector, boe->orientation);
1741 struct boe_panel *boe = to_boe_panel(panel);
1743 return boe->orientation;
1755 static int boe_panel_add(struct boe_panel *boe)
1757 struct device *dev = &boe->dsi->dev;
1760 boe->avdd = devm_regulator_get(dev, "avdd");
1761 if (IS_ERR(boe->avdd))
1762 return PTR_ERR(boe->avdd);
1764 boe->avee = devm_regulator_get(dev, "avee");
1765 if (IS_ERR(boe->avee))
1766 return PTR_ERR(boe->avee);
1768 boe->pp3300 = devm_regulator_get(dev, "pp3300");
1769 if (IS_ERR(boe->pp3300))
1770 return PTR_ERR(boe->pp3300);
1772 boe->pp1800 = devm_regulator_get(dev, "pp1800");
1773 if (IS_ERR(boe->pp1800))
1774 return PTR_ERR(boe->pp1800);
1776 boe->enable_gpio = devm_gpiod_get(dev, "enable", GPIOD_OUT_LOW);
1777 if (IS_ERR(boe->enable_gpio)) {
1779 PTR_ERR(boe->enable_gpio));
1780 return PTR_ERR(boe->enable_gpio);
1783 gpiod_set_value(boe->enable_gpio, 0);
1785 boe->base.prepare_prev_first = true;
1787 drm_panel_init(&boe->base, dev, &boe_panel_funcs,
1789 err = of_drm_get_panel_orientation(dev->of_node, &boe->orientation);
1795 err = drm_panel_of_backlight(&boe->base);
1799 boe->base.funcs = &boe_panel_funcs;
1800 boe->base.dev = &boe->dsi->dev;
1802 drm_panel_add(&boe->base);
1809 struct boe_panel *boe;
1813 boe = devm_kzalloc(&dsi->dev, sizeof(*boe), GFP_KERNEL);
1814 if (!boe)
1821 boe->desc = desc;
1822 boe->dsi = dsi;
1823 ret = boe_panel_add(boe);
1827 mipi_dsi_set_drvdata(dsi, boe);
1831 drm_panel_remove(&boe->base);
1838 struct boe_panel *boe = mipi_dsi_get_drvdata(dsi);
1845 if (boe->base.dev)
1846 drm_panel_remove(&boe->base);
1850 { .compatible = "boe,tv101wum-nl6",
1856 { .compatible = "boe,tv101wum-n53",
1862 { .compatible = "boe,tv105wum-nw0",
1865 { .compatible = "boe,tv110c9m-ll3",
1880 .name = "panel-boe-tv101wum-nl6",