N900 board code in 3.14

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Tony,

On Fri, Nov 15, 2013 at 04:36:02PM -0800, Tony Lindgren wrote:
> Here are few patches to deal with the mix of legacy platform data
> and device tree that we still need to do at least until DSS has
> device tree bindings. These patches should allow the remaining
> omap3 boards to be made device tree only so we can remove the
> board-*.c files.

Do you plan to remove the Nokia N900 board code in 3.14, too?

I see two big issues with that:
 a) Using DT boot the display is currently not working.
 b) I could not get the 32GB eMMC working. For me the chip is not found
    and I don't know how to debug it.

There are two reasons for broken display:

1. omap_mux_init_gpio(RX51_LCD_RESET_GPIO, OMAP_PIN_OUTPUT) fails.
   This can be fixed by simply not calling it in DT mode. DT data
   contains pinmux information for this from 3.13 onwards [0].
2. The spi panel driver is not probed.

I have a local hack to probe the panel driver via DT. I changed the
display node to look as follows:

&mcspi1 {
    /* ... tsc2005 ... */

    mipid@2 {
        compatible = "sony,acx565akm";
        spi-max-frequency = <6000000>;
        reg = <2>;
        vdds_sdi-supply = <&vaux1>;
        label = "lcd";
        reset-gpio = <&gpio3 26 GPIO_ACTIVE_HIGH>; /* 90 */
        ti,sdi-datapairs = <2>;
        ti,dss-source = "sdi.0";
        pinctrl-names = "default";
        pinctrl-0 = <&display_pins>;
    };
};

Then I changed the acx565akm panel driver to get data from DT
and the DSS to get SDI regulator from the panel. This is
obviously not the way to got, so I wonder how to proceed.
omapdss DT seems not to be ready for the next kernel releases.

My suggestion would be:
 1. Find a better workaround for omapdss to acquire the SDI
    regulator. My current hack is obviously not acceptable.
 2. Load the panel driver via DT as seen above and reference
    the omapdss interface with something like the above
    "ti,dss-source".

This is obviously not a stable DT interface, but that's also the case if
everything is done via platform quirks: An old DT file without any display
stuff in it would not work with a newer kernel without the quirks.

[0] https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=d1e6f51646f2bed16826fd8e4fc1b5f4188d086e

-- Sebastian

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux