• Home
  • Raw
  • Download

Lines Matching +full:data +full:- +full:width

17  * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
48 * @width: width (in millimeters) of the panel's active display area
52 unsigned int width; member
58 * become ready and start receiving video data
61 * video data
99 struct drm_connector *connector = panel->base.connector; in panel_simple_get_fixed_modes()
100 struct drm_device *drm = panel->base.drm; in panel_simple_get_fixed_modes()
104 if (!panel->desc) in panel_simple_get_fixed_modes()
107 for (i = 0; i < panel->desc->num_timings; i++) { in panel_simple_get_fixed_modes()
108 const struct display_timing *dt = &panel->desc->timings[i]; in panel_simple_get_fixed_modes()
114 dev_err(drm->dev, "failed to add mode %ux%u\n", in panel_simple_get_fixed_modes()
115 dt->hactive.typ, dt->vactive.typ); in panel_simple_get_fixed_modes()
121 mode->type |= DRM_MODE_TYPE_DRIVER; in panel_simple_get_fixed_modes()
123 if (panel->desc->num_timings == 1) in panel_simple_get_fixed_modes()
124 mode->type |= DRM_MODE_TYPE_PREFERRED; in panel_simple_get_fixed_modes()
130 for (i = 0; i < panel->desc->num_modes; i++) { in panel_simple_get_fixed_modes()
131 const struct drm_display_mode *m = &panel->desc->modes[i]; in panel_simple_get_fixed_modes()
135 dev_err(drm->dev, "failed to add mode %ux%u@%u\n", in panel_simple_get_fixed_modes()
136 m->hdisplay, m->vdisplay, m->vrefresh); in panel_simple_get_fixed_modes()
140 mode->type |= DRM_MODE_TYPE_DRIVER; in panel_simple_get_fixed_modes()
142 if (panel->desc->num_modes == 1) in panel_simple_get_fixed_modes()
143 mode->type |= DRM_MODE_TYPE_PREFERRED; in panel_simple_get_fixed_modes()
151 connector->display_info.bpc = panel->desc->bpc; in panel_simple_get_fixed_modes()
152 connector->display_info.width_mm = panel->desc->size.width; in panel_simple_get_fixed_modes()
153 connector->display_info.height_mm = panel->desc->size.height; in panel_simple_get_fixed_modes()
154 if (panel->desc->bus_format) in panel_simple_get_fixed_modes()
155 drm_display_info_set_bus_formats(&connector->display_info, in panel_simple_get_fixed_modes()
156 &panel->desc->bus_format, 1); in panel_simple_get_fixed_modes()
157 connector->display_info.bus_flags = panel->desc->bus_flags; in panel_simple_get_fixed_modes()
166 if (!p->enabled) in panel_simple_disable()
169 if (p->backlight) { in panel_simple_disable()
170 p->backlight->props.power = FB_BLANK_POWERDOWN; in panel_simple_disable()
171 p->backlight->props.state |= BL_CORE_FBBLANK; in panel_simple_disable()
172 backlight_update_status(p->backlight); in panel_simple_disable()
175 if (p->desc->delay.disable) in panel_simple_disable()
176 msleep(p->desc->delay.disable); in panel_simple_disable()
178 p->enabled = false; in panel_simple_disable()
187 if (!p->prepared) in panel_simple_unprepare()
190 gpiod_set_value_cansleep(p->enable_gpio, 0); in panel_simple_unprepare()
192 regulator_disable(p->supply); in panel_simple_unprepare()
194 if (p->desc->delay.unprepare) in panel_simple_unprepare()
195 msleep(p->desc->delay.unprepare); in panel_simple_unprepare()
197 p->prepared = false; in panel_simple_unprepare()
207 if (p->prepared) in panel_simple_prepare()
210 err = regulator_enable(p->supply); in panel_simple_prepare()
212 dev_err(panel->dev, "failed to enable supply: %d\n", err); in panel_simple_prepare()
216 gpiod_set_value_cansleep(p->enable_gpio, 1); in panel_simple_prepare()
218 if (p->desc->delay.prepare) in panel_simple_prepare()
219 msleep(p->desc->delay.prepare); in panel_simple_prepare()
221 p->prepared = true; in panel_simple_prepare()
230 if (p->enabled) in panel_simple_enable()
233 if (p->desc->delay.enable) in panel_simple_enable()
234 msleep(p->desc->delay.enable); in panel_simple_enable()
236 if (p->backlight) { in panel_simple_enable()
237 p->backlight->props.state &= ~BL_CORE_FBBLANK; in panel_simple_enable()
238 p->backlight->props.power = FB_BLANK_UNBLANK; in panel_simple_enable()
239 backlight_update_status(p->backlight); in panel_simple_enable()
242 p->enabled = true; in panel_simple_enable()
253 if (p->ddc) { in panel_simple_get_modes()
254 struct edid *edid = drm_get_edid(panel->connector, p->ddc); in panel_simple_get_modes()
255 drm_connector_update_edid_property(panel->connector, edid); in panel_simple_get_modes()
257 num += drm_add_edid_modes(panel->connector, edid); in panel_simple_get_modes()
262 /* add hard-coded panel modes */ in panel_simple_get_modes()
275 if (p->desc->num_timings < num_timings) in panel_simple_get_timings()
276 num_timings = p->desc->num_timings; in panel_simple_get_timings()
280 timings[i] = p->desc->timings[i]; in panel_simple_get_timings()
282 return p->desc->num_timings; in panel_simple_get_timings()
302 return -ENOMEM; in panel_simple_probe()
304 panel->enabled = false; in panel_simple_probe()
305 panel->prepared = false; in panel_simple_probe()
306 panel->desc = desc; in panel_simple_probe()
308 panel->supply = devm_regulator_get(dev, "power"); in panel_simple_probe()
309 if (IS_ERR(panel->supply)) in panel_simple_probe()
310 return PTR_ERR(panel->supply); in panel_simple_probe()
312 panel->enable_gpio = devm_gpiod_get_optional(dev, "enable", in panel_simple_probe()
314 if (IS_ERR(panel->enable_gpio)) { in panel_simple_probe()
315 err = PTR_ERR(panel->enable_gpio); in panel_simple_probe()
316 if (err != -EPROBE_DEFER) in panel_simple_probe()
321 backlight = of_parse_phandle(dev->of_node, "backlight", 0); in panel_simple_probe()
323 panel->backlight = of_find_backlight_by_node(backlight); in panel_simple_probe()
326 if (!panel->backlight) in panel_simple_probe()
327 return -EPROBE_DEFER; in panel_simple_probe()
330 ddc = of_parse_phandle(dev->of_node, "ddc-i2c-bus", 0); in panel_simple_probe()
332 panel->ddc = of_find_i2c_adapter_by_node(ddc); in panel_simple_probe()
335 if (!panel->ddc) { in panel_simple_probe()
336 err = -EPROBE_DEFER; in panel_simple_probe()
341 drm_panel_init(&panel->base); in panel_simple_probe()
342 panel->base.dev = dev; in panel_simple_probe()
343 panel->base.funcs = &panel_simple_funcs; in panel_simple_probe()
345 err = drm_panel_add(&panel->base); in panel_simple_probe()
354 if (panel->ddc) in panel_simple_probe()
355 put_device(&panel->ddc->dev); in panel_simple_probe()
357 if (panel->backlight) in panel_simple_probe()
358 put_device(&panel->backlight->dev); in panel_simple_probe()
367 drm_panel_remove(&panel->base); in panel_simple_remove()
369 panel_simple_disable(&panel->base); in panel_simple_remove()
370 panel_simple_unprepare(&panel->base); in panel_simple_remove()
372 if (panel->ddc) in panel_simple_remove()
373 put_device(&panel->ddc->dev); in panel_simple_remove()
375 if (panel->backlight) in panel_simple_remove()
376 put_device(&panel->backlight->dev); in panel_simple_remove()
385 panel_simple_disable(&panel->base); in panel_simple_shutdown()
386 panel_simple_unprepare(&panel->base); in panel_simple_shutdown()
408 .width = 105,
433 .width = 152,
458 .width = 154,
483 .width = 223,
506 .width = 217,
530 .width = 223,
553 .width = 256,
576 .width = 293,
599 .width = 293,
626 .width = 152,
655 .width = 211,
677 .width = 293,
706 .width = 409,
735 .width = 698,
764 .width = 430,
791 .width = 154,
818 .width = 154,
855 .width = 217,
884 .width = 94,
907 .width = 220,
930 .width = 223,
954 .width = 152,
979 .width = 154,
1009 .width = 115,
1035 .width = 152,
1047 .width = 152,
1072 .width = 108,
1096 .width = 95,
1108 * According to the data sheet, the minimum horizontal blanking interval
1125 .width = 151,
1149 .width = 203,
1173 .width = 195,
1201 .width = 95,
1225 .width = 154,
1249 .width = 152,
1279 .width = 217,
1306 .width = 261,
1335 .width = 246,
1364 .width = 256,
1387 .width = 344,
1411 .width = 259,
1437 .width = 154,
1460 .width = 292,
1484 .width = 246,
1508 .width = 151,
1532 .width = 129,
1554 .width = 208,
1577 .width = 267,
1600 .width = 272,
1624 .width = 152,
1654 .width = 261,
1683 .width = 95,
1707 .width = 154,
1732 .width = 95,
1757 .width = 344,
1783 .width = 156,
1807 .width = 154,
1836 .width = 95,
1863 * https://www.adafruit.com/images/product-files/2406/c3163.pdf
1870 .width = 154,
1894 .width = 56,
1919 .width = 95,
1943 .width = 154,
1972 .width = 263,
1995 .width = 223,
2018 .width = 320,
2041 .width = 54,
2065 .width = 217,
2089 .width = 259,
2117 .width = 304,
2140 .width = 152,
2164 .width = 263,
2192 .width = 151,
2216 .width = 154,
2239 .width = 194,
2263 .width = 152,
2286 .width = 223,
2295 .hback_porch = { 216 - 128, 216 - 128, 216 - 128 },
2299 .vback_porch = { 35 - 2, 35 - 2, 35 - 2 },
2310 .width = 152,
2321 .width = 152,
2346 .width = 70,
2354 .compatible = "ampire,am-480272h3tmqw-t01h",
2355 .data = &ampire_am_480272h3tmqw_t01h,
2358 .data = &ampire_am800480r3tmqwa1h,
2360 .compatible = "armadeus,st0700-adapt",
2361 .data = &armadeus_st0700_adapt,
2364 .data = &auo_b101aw03,
2367 .data = &auo_b101ean01,
2370 .data = &auo_b101xtn01,
2373 .data = &auo_b116xw03,
2376 .data = &auo_b133htn01,
2379 .data = &auo_b133xtn01,
2382 .data = &auo_g070vvn01,
2385 .data = &auo_g104sn02,
2388 .data = &auo_g133han01,
2391 .data = &auo_g185han01,
2394 .data = &auo_p320hvn03,
2397 .data = &auo_t215hvn01,
2400 .data = &avic_tm070ddh03,
2402 .compatible = "boe,hv070wsa-100",
2403 .data = &boe_hv070wsa
2406 .data = &boe_nv101wxmn51,
2409 .data = &chunghwa_claa070wp03xg,
2412 .data = &chunghwa_claa101wa01a
2415 .data = &chunghwa_claa101wb01
2418 .data = &dataimage_scf0700c48ggu18,
2420 .compatible = "dlc,dlc0700yzg-1",
2421 .data = &dlc_dlc0700yzg_1,
2424 .data = &edt_et057090dhu,
2427 .data = &edt_etm0700g0dh6,
2430 .data = &edt_etm0700g0dh6,
2433 .data = &edt_etm0700g0bdh6,
2436 .data = &edt_etm0700g0bdh6,
2438 .compatible = "foxlink,fl500wvr00-a0t",
2439 .data = &foxlink_fl500wvr00_a0t,
2442 .data = &giantplus_gpg482739qs5
2445 .data = &hannstar_hsd070pww1,
2448 .data = &hannstar_hsd100pxn1,
2451 .data = &hitachi_tx23d38vm0caa
2454 .data = &innolux_at043tn24,
2457 .data = &innolux_at070tn92,
2459 .compatible = "innolux,g070y2-l01",
2460 .data = &innolux_g070y2_l01,
2462 .compatible = "innolux,g101ice-l01",
2463 .data = &innolux_g101ice_l01
2465 .compatible = "innolux,g121i1-l01",
2466 .data = &innolux_g121i1_l01
2468 .compatible = "innolux,g121x1-l03",
2469 .data = &innolux_g121x1_l03,
2472 .data = &innolux_n116bge,
2474 .compatible = "innolux,n156bge-l21",
2475 .data = &innolux_n156bge_l21,
2478 .data = &innolux_tv123wam,
2480 .compatible = "innolux,zj070na-01p",
2481 .data = &innolux_zj070na_01p,
2484 .data = &koe_tx31d200vm0baa,
2487 .data = &kyo_tcg121xglp,
2490 .data = &lg_lb070wv8,
2492 .compatible = "lg,lp079qx1-sp0v",
2493 .data = &lg_lp079qx1_sp0v,
2495 .compatible = "lg,lp097qx1-spa1",
2496 .data = &lg_lp097qx1_spa1,
2499 .data = &lg_lp120up1,
2502 .data = &lg_lp129qe,
2504 .compatible = "mitsubishi,aa070mc01-ca1",
2505 .data = &mitsubishi_aa070mc01,
2507 .compatible = "nec,nl12880bc20-05",
2508 .data = &nec_nl12880bc20_05,
2510 .compatible = "nec,nl4827hc19-05b",
2511 .data = &nec_nl4827hc19_05b,
2513 .compatible = "netron-dy,e231732",
2514 .data = &netron_dy_e231732,
2516 .compatible = "newhaven,nhd-4.3-480272ef-atxl",
2517 .data = &newhaven_nhd_43_480272ef_atxl,
2519 .compatible = "nlt,nl192108ac18-02d",
2520 .data = &nlt_nl192108ac18_02d,
2523 .data = &nvd_9128,
2525 .compatible = "okaya,rs800480t-7x0gp",
2526 .data = &okaya_rs800480t_7x0gp,
2528 .compatible = "olimex,lcd-olinuxino-43-ts",
2529 .data = &olimex_lcd_olinuxino_43ts,
2532 .data = &ontat_yx700wv03,
2535 .data = &ortustech_com43h4m85ulc,
2537 .compatible = "qiaodian,qd43003c0-40",
2538 .data = &qd43003c0_40,
2541 .data = &rocktech_rk070er9427,
2543 .compatible = "samsung,lsn122dl01-c01",
2544 .data = &samsung_lsn122dl01_c01,
2547 .data = &samsung_ltn101nt05,
2549 .compatible = "samsung,ltn140at29-301",
2550 .data = &samsung_ltn140at29_301,
2553 .data = &sharp_lq035q7db03,
2556 .data = &sharp_lq101k1ly04,
2559 .data = &sharp_lq123p1jx31,
2562 .data = &sharp_lq150x1lg11,
2564 .compatible = "shelly,sca07010-bfn-lnn",
2565 .data = &shelly_sca07010_bfn_lnn,
2568 .data = &starry_kr122ea0sra,
2571 .data = &tianma_tm070jdhg30,
2574 .data = &tianma_tm070rvhg71,
2577 .data = &toshiba_lt089ac29000,
2579 .compatible = "tpk,f07a-0102",
2580 .data = &tpk_f07a_0102,
2582 .compatible = "tpk,f10a-0102",
2583 .data = &tpk_f10a_0102,
2585 .compatible = "urt,umsh-8596md-t",
2586 .data = &urt_umsh_8596md_parallel,
2588 .compatible = "urt,umsh-8596md-1t",
2589 .data = &urt_umsh_8596md_parallel,
2591 .compatible = "urt,umsh-8596md-7t",
2592 .data = &urt_umsh_8596md_parallel,
2594 .compatible = "urt,umsh-8596md-11t",
2595 .data = &urt_umsh_8596md_lvds,
2597 .compatible = "urt,umsh-8596md-19t",
2598 .data = &urt_umsh_8596md_lvds,
2600 .compatible = "urt,umsh-8596md-20t",
2601 .data = &urt_umsh_8596md_parallel,
2604 .data = &winstar_wf35ltiacd,
2615 id = of_match_node(platform_of_match, pdev->dev.of_node); in panel_simple_platform_probe()
2617 return -ENODEV; in panel_simple_platform_probe()
2619 return panel_simple_probe(&pdev->dev, id->data); in panel_simple_platform_probe()
2624 return panel_simple_remove(&pdev->dev); in panel_simple_platform_remove()
2629 panel_simple_shutdown(&pdev->dev); in panel_simple_platform_shutdown()
2634 .name = "panel-simple",
2669 .width = 108,
2697 .width = 107,
2727 .width = 94,
2755 .width = 62,
2783 .width = 217,
2796 .data = &auo_b080uan01
2798 .compatible = "boe,tv080wum-nl0",
2799 .data = &boe_tv080wum_nl0
2801 .compatible = "lg,ld070wx3-sl01",
2802 .data = &lg_ld070wx3_sl01
2804 .compatible = "lg,lh500wx1-sd03",
2805 .data = &lg_lh500wx1_sd03
2808 .data = &panasonic_vvx10f004b00
2821 id = of_match_node(dsi_of_match, dsi->dev.of_node); in panel_simple_dsi_probe()
2823 return -ENODEV; in panel_simple_dsi_probe()
2825 desc = id->data; in panel_simple_dsi_probe()
2827 err = panel_simple_probe(&dsi->dev, &desc->desc); in panel_simple_dsi_probe()
2831 dsi->mode_flags = desc->flags; in panel_simple_dsi_probe()
2832 dsi->format = desc->format; in panel_simple_dsi_probe()
2833 dsi->lanes = desc->lanes; in panel_simple_dsi_probe()
2837 struct panel_simple *panel = dev_get_drvdata(&dsi->dev); in panel_simple_dsi_probe()
2839 drm_panel_remove(&panel->base); in panel_simple_dsi_probe()
2851 dev_err(&dsi->dev, "failed to detach from DSI host: %d\n", err); in panel_simple_dsi_remove()
2853 return panel_simple_remove(&dsi->dev); in panel_simple_dsi_remove()
2858 panel_simple_shutdown(&dsi->dev); in panel_simple_dsi_shutdown()
2863 .name = "panel-simple-dsi",