From: Tony Lindgren <tony@atomide.com>
To: Darren Etheridge <detheridge@ti.com>
Cc: bcousson@baylibre.com, linux-omap@vger.kernel.org,
devicetree@vger.kernel.org,
Tomi Valkeinen <tomi.valkeinen@ti.com>
Subject: Re: [PATCH] arm/dts: am335x-evmsk enable display and lcd panel support
Date: Tue, 6 May 2014 09:10:02 -0700 [thread overview]
Message-ID: <20140506161001.GH18474@atomide.com> (raw)
In-Reply-To: <1398199063-3026-1-git-send-email-detheridge@ti.com>
* Darren Etheridge <detheridge@ti.com> [140422 13:39]:
> Add the necessary nodes to enable the LCD controller and the
> LCD panel that is attached to the Texas Instruments AM335x
> EVMSK platform. Also setup the necessary pin mux within the
> DT file to drive the LCD connector and add the correct
> pinmux settings for the lcd pins to be configured to when
> the SoC goes into sleep state for the minimum power
> consumption.
>
> For the sleep mode LCD pin settings, MUX_MODE7 is chosen as
> this corresponds to switching the pins into input GPIO's with
> an internal pulldown. Which has been determined to offer the
> lowest power solution vs leaving the pins configured in LCD
> mode.
Probably best that Tomi queues all the panel .dts changes into
a separate immutable branch that I can merge too.
Tony
> Signed-off-by: Darren Etheridge <detheridge@ti.com>
> ---
> arch/arm/boot/dts/am335x-evmsk.dts | 105 +++++++++++++++++++++++++++++++++++++
> 1 file changed, 105 insertions(+)
>
> diff --git a/arch/arm/boot/dts/am335x-evmsk.dts b/arch/arm/boot/dts/am335x-evmsk.dts
> index ec08f6f..a5e1ab8 100644
> --- a/arch/arm/boot/dts/am335x-evmsk.dts
> +++ b/arch/arm/boot/dts/am335x-evmsk.dts
> @@ -138,12 +138,113 @@
> "Headphone Jack", "HPLOUT",
> "Headphone Jack", "HPROUT";
> };
> +
> + panel {
> + compatible = "ti,tilcdc,panel";
> + pinctrl-names = "default", "sleep";
> + pinctrl-0 = <&lcd_pins_default>;
> + pinctrl-1 = <&lcd_pins_sleep>;
> + status = "okay";
> + panel-info {
> + ac-bias = <255>;
> + ac-bias-intrpt = <0>;
> + dma-burst-sz = <16>;
> + bpp = <32>;
> + fdd = <0x80>;
> + sync-edge = <0>;
> + sync-ctrl = <1>;
> + raster-order = <0>;
> + fifo-th = <0>;
> + };
> + display-timings {
> + 480x272 {
> + hactive = <480>;
> + vactive = <272>;
> + hback-porch = <43>;
> + hfront-porch = <8>;
> + hsync-len = <4>;
> + vback-porch = <12>;
> + vfront-porch = <4>;
> + vsync-len = <10>;
> + clock-frequency = <9000000>;
> + hsync-active = <0>;
> + vsync-active = <0>;
> + };
> + };
> + };
> };
>
> &am33xx_pinmux {
> pinctrl-names = "default";
> pinctrl-0 = <&gpio_keys_s0 &clkout2_pin>;
>
> + lcd_pins_default: lcd_pins_default {
> + pinctrl-single,pins = <
> + 0x20 (PIN_OUTPUT | MUX_MODE1) /* gpmc_ad8.lcd_data16 */
> + 0x24 (PIN_OUTPUT | MUX_MODE1) /* gpmc_ad9.lcd_data17 */
> + 0x28 (PIN_OUTPUT | MUX_MODE1) /* gpmc_ad10.lcd_data18 */
> + 0x2c (PIN_OUTPUT | MUX_MODE1) /* gpmc_ad11.lcd_data19 */
> + 0x30 (PIN_OUTPUT | MUX_MODE1) /* gpmc_ad12.lcd_data20 */
> + 0x34 (PIN_OUTPUT | MUX_MODE1) /* gpmc_ad13.lcd_data21 */
> + 0x38 (PIN_OUTPUT | MUX_MODE1) /* gpmc_ad14.lcd_data22 */
> + 0x3c (PIN_OUTPUT | MUX_MODE1) /* gpmc_ad15.lcd_data23 */
> + 0xa0 (PIN_OUTPUT | MUX_MODE0) /* lcd_data0.lcd_data0 */
> + 0xa4 (PIN_OUTPUT | MUX_MODE0) /* lcd_data1.lcd_data1 */
> + 0xa8 (PIN_OUTPUT | MUX_MODE0) /* lcd_data2.lcd_data2 */
> + 0xac (PIN_OUTPUT | MUX_MODE0) /* lcd_data3.lcd_data3 */
> + 0xb0 (PIN_OUTPUT | MUX_MODE0) /* lcd_data4.lcd_data4 */
> + 0xb4 (PIN_OUTPUT | MUX_MODE0) /* lcd_data5.lcd_data5 */
> + 0xb8 (PIN_OUTPUT | MUX_MODE0) /* lcd_data6.lcd_data6 */
> + 0xbc (PIN_OUTPUT | MUX_MODE0) /* lcd_data7.lcd_data7 */
> + 0xc0 (PIN_OUTPUT | MUX_MODE0) /* lcd_data8.lcd_data8 */
> + 0xc4 (PIN_OUTPUT | MUX_MODE0) /* lcd_data9.lcd_data9 */
> + 0xc8 (PIN_OUTPUT | MUX_MODE0) /* lcd_data10.lcd_data10 */
> + 0xcc (PIN_OUTPUT | MUX_MODE0) /* lcd_data11.lcd_data11 */
> + 0xd0 (PIN_OUTPUT | MUX_MODE0) /* lcd_data12.lcd_data12 */
> + 0xd4 (PIN_OUTPUT | MUX_MODE0) /* lcd_data13.lcd_data13 */
> + 0xd8 (PIN_OUTPUT | MUX_MODE0) /* lcd_data14.lcd_data14 */
> + 0xdc (PIN_OUTPUT | MUX_MODE0) /* lcd_data15.lcd_data15 */
> + 0xe0 (PIN_OUTPUT | MUX_MODE0) /* lcd_vsync.lcd_vsync */
> + 0xe4 (PIN_OUTPUT | MUX_MODE0) /* lcd_hsync.lcd_hsync */
> + 0xe8 (PIN_OUTPUT | MUX_MODE0) /* lcd_pclk.lcd_pclk */
> + 0xec (PIN_OUTPUT | MUX_MODE0) /* lcd_ac_bias_en.lcd_ac_bias_en */
> + >;
> + };
> +
> + lcd_pins_sleep: lcd_pins_sleep {
> + pinctrl-single,pins = <
> + 0x20 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad8.lcd_data16 */
> + 0x24 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad9.lcd_data17 */
> + 0x28 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad10.lcd_data18 */
> + 0x2c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad11.lcd_data19 */
> + 0x30 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad12.lcd_data20 */
> + 0x34 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad13.lcd_data21 */
> + 0x38 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad14.lcd_data22 */
> + 0x3c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad15.lcd_data23 */
> + 0xa0 (PULL_DISABLE | MUX_MODE7) /* lcd_data0.lcd_data0 */
> + 0xa4 (PULL_DISABLE | MUX_MODE7) /* lcd_data1.lcd_data1 */
> + 0xa8 (PULL_DISABLE | MUX_MODE7) /* lcd_data2.lcd_data2 */
> + 0xac (PULL_DISABLE | MUX_MODE7) /* lcd_data3.lcd_data3 */
> + 0xb0 (PULL_DISABLE | MUX_MODE7) /* lcd_data4.lcd_data4 */
> + 0xb4 (PULL_DISABLE | MUX_MODE7) /* lcd_data5.lcd_data5 */
> + 0xb8 (PULL_DISABLE | MUX_MODE7) /* lcd_data6.lcd_data6 */
> + 0xbc (PULL_DISABLE | MUX_MODE7) /* lcd_data7.lcd_data7 */
> + 0xc0 (PULL_DISABLE | MUX_MODE7) /* lcd_data8.lcd_data8 */
> + 0xc4 (PULL_DISABLE | MUX_MODE7) /* lcd_data9.lcd_data9 */
> + 0xc8 (PULL_DISABLE | MUX_MODE7) /* lcd_data10.lcd_data10 */
> + 0xcc (PULL_DISABLE | MUX_MODE7) /* lcd_data11.lcd_data11 */
> + 0xd0 (PULL_DISABLE | MUX_MODE7) /* lcd_data12.lcd_data12 */
> + 0xd4 (PULL_DISABLE | MUX_MODE7) /* lcd_data13.lcd_data13 */
> + 0xd8 (PULL_DISABLE | MUX_MODE7) /* lcd_data14.lcd_data14 */
> + 0xdc (PULL_DISABLE | MUX_MODE7) /* lcd_data15.lcd_data15 */
> + 0xe0 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* lcd_vsync.lcd_vsync */
> + 0xe4 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* lcd_hsync.lcd_hsync */
> + 0xe8 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* lcd_pclk.lcd_pclk */
> + 0xec (PIN_INPUT_PULLDOWN | MUX_MODE7) /* lcd_ac_bias_en.lcd_ac_bias_en */
> + >;
> + };
> +
> +
> user_leds_s0: user_leds_s0 {
> pinctrl-single,pins = <
> 0x10 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad4.gpio1_4 */
> @@ -560,3 +661,7 @@
> ti,wire-config = <0x00 0x11 0x22 0x33>;
> };
> };
> +
> +&lcdc {
> + status = "okay";
> +};
> --
> 1.8.4
>
next prev parent reply other threads:[~2014-05-06 16:10 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-22 20:37 [PATCH] arm/dts: am335x-evmsk enable display and lcd panel support Darren Etheridge
2014-05-06 16:10 ` Tony Lindgren [this message]
2014-05-09 11:29 ` Tomi Valkeinen
2014-05-09 14:47 ` Darren Etheridge
2014-05-09 16:27 ` Darren Etheridge
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140506161001.GH18474@atomide.com \
--to=tony@atomide.com \
--cc=bcousson@baylibre.com \
--cc=detheridge@ti.com \
--cc=devicetree@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=tomi.valkeinen@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).