* Tomi Valkeinen <tomi.valkeinen@xxxxxx> [140424 02:53]: > On 18/04/14 18:51, Tony Lindgren wrote: > > >> + gpio = of_get_gpio(node, 0); > >> + if (gpio_is_valid(gpio) || gpio == -ENOENT) { > >> + ddata->enable_gpio = gpio; > >> + } else { > >> + dev_err(&pdev->dev, "failed to parse enable gpio\n"); > >> + return gpio; > >> + } > > > > We should set the GPIO polarity based on the OF_GPIO_ACTIVE_LOW like > > gpio_backlight_probe_dt is doing. > > Instead of doing it with the old gpio API, and checking the 'active' > flag everywhere, I think we can use the new gpiod API which handles the > polarity automatically. > > I attached prototype patches (based on -rc2) for panel dpi using that > approach. It's a bit messier than I'd like, because for non-DT boot we > need to request the gpio using the old API, and then convert it to > gpio_desc. We can remove that code when all the boards use DT. > > I've compiled tested this only, as I don't have DPI panels I could use. > I did try similar approach for TFP410, and it seemed to work fine. Got these working by updating my test patch to use enable-gpios instead of gpios, and had to change from GPIO_ACTIVE_LOW to GPIO_ACTIVE_HIGH. Are we now also breaking legacy booting by reversing the polarity? In any case, looks like we have some duplicate panel code.. Turns out most panel dpi users for omap3 board-*.c files are just sharp-ls037v7dw01 panels but configured in QVGA mode. At least for EVM and and LDP based on looking at the pictures and the configuration pins (using the names kernel): QVGA = lcd MO reset = lcd RESB ... Then the enable_gpio should be just a GPIO controlled 3.3V regulator in most cases. I suggest we move them over to ls037v7dw01 and allow configuring them both for VGA and QVGA depending on the orientation. I guess you do have some device with ls037v7dw01 since you've been patching it? Regards, Tony -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html