Skip to content

Commit

Permalink
3.8: more tester patches and 2 additional fixes for HDMI timings when…
Browse files Browse the repository at this point in the history
… using LCDC

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
  • Loading branch information
koenkooi committed Mar 26, 2013
1 parent 20e92cc commit 2d13a60
Show file tree
Hide file tree
Showing 8 changed files with 928 additions and 0 deletions.
273 changes: 273 additions & 0 deletions patches/not-capebus/0137-add-WIP-support-LCD4-rev-00A4.patch
@@ -0,0 +1,273 @@
From 7c407f543e1a6b88ce8863019b4598986006ddf8 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Mon, 25 Mar 2013 13:35:38 +0100
Subject: [PATCH 137/144] add WIP support LCD4 rev 00A4

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
firmware/Makefile | 1 +
firmware/capes/BB-BONE-LCD7-01-00A4.dts | 240 ++++++++++++++++++++++++++++++++
2 files changed, 241 insertions(+)
create mode 100644 firmware/capes/BB-BONE-LCD7-01-00A4.dts

diff --git a/firmware/Makefile b/firmware/Makefile
index 1a81f3f..68f620c 100644
--- a/firmware/Makefile
+++ b/firmware/Makefile
@@ -148,6 +148,7 @@ fw-shipped-$(CONFIG_CAPE_BEAGLEBONE) += \
cape-bone-lcd3-00A0.dtbo \
cape-bone-lcd3-00A2.dtbo \
BB-BONE-LCD7-01-00A2.dtbo \
+ BB-BONE-LCD7-01-00A4.dtbo \
cape-bone-iio-00A0.dtbo \
cape-bone-pinmux-test-00A0.dtbo

diff --git a/firmware/capes/BB-BONE-LCD7-01-00A4.dts b/firmware/capes/BB-BONE-LCD7-01-00A4.dts
new file mode 100644
index 0000000..e0a0677
--- /dev/null
+++ b/firmware/capes/BB-BONE-LCD7-01-00A4.dts
@@ -0,0 +1,240 @@
+/*
+ * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+/dts-v1/;
+/plugin/;
+
+/ {
+ compatible = "ti,beaglebone", "ti,beaglebone-black";
+
+ /* identification */
+ part-number = "BB-BONE-LCD7-01";
+ version = "00A4";
+
+ fragment@0 {
+ target = <&am33xx_pinmux>;
+ __overlay__ {
+
+ bone_lcd7_cape_led_00A4_pins: pinmux_bone_lcd7_cape_led_00A4_pins {
+ pinctrl-single,pins = <
+ 0x078 0x2f /* gpmc_ben1.gpio1_28, INPUT | PULLDIS | MODE7 */
+ >;
+ };
+
+ pwm_bl_pins: pinmux_pwm_bl_pins {
+ pinctrl-single,pins = <
+ 0x48 0x06 /* gpmc_a2.ehrpwm1a, OMAP_MUX_MODE6 | AM33XX_PIN_OUTPUT */
+ >;
+ };
+
+ bone_lcd7_cape_lcd_pins: pinmux_bone_lcd7_cape_lcd_pins {
+ pinctrl-single,pins = <
+ //0x84 0x07 /* gpmc_csn2.gpio1_31, OUTPUT | MODE7 - AVDD_EN */
+ 0xa0 0x08 /* lcd_data0.lcd_data0, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xa4 0x08 /* lcd_data1.lcd_data1, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xa8 0x08 /* lcd_data2.lcd_data2, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xac 0x08 /* lcd_data3.lcd_data3, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xb0 0x08 /* lcd_data4.lcd_data4, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xb4 0x08 /* lcd_data5.lcd_data5, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xb8 0x08 /* lcd_data6.lcd_data6, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xbc 0x08 /* lcd_data7.lcd_data7, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xc0 0x08 /* lcd_data8.lcd_data8, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xc4 0x08 /* lcd_data9.lcd_data9, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xc8 0x08 /* lcd_data10.lcd_data10, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xcc 0x08 /* lcd_data11.lcd_data11, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xd0 0x08 /* lcd_data12.lcd_data12, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xd4 0x08 /* lcd_data13.lcd_data13, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xd8 0x08 /* lcd_data14.lcd_data14, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xdc 0x08 /* lcd_data15.lcd_data15, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
+ 0xe0 0x00 /* lcd_vsync.lcd_vsync, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
+ 0xe4 0x00 /* lcd_hsync.lcd_hsync, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
+ 0xe8 0x00 /* lcd_pclk.lcd_pclk, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
+ 0xec 0x00 /* lcd_ac_bias_en.lcd_ac_bias_en, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
+ >;
+ };
+
+ bone_lcd7_cape_keys_00A4_pins: pinmux_bone_lcd7_cape_keys_00A4_pins {
+ pinctrl-single,pins = <
+ 0x040 0x2f /* KEY_LEFT gpmc_a0.gpio1_16, INPUT | PULLDIS | MODE7 */
+ 0x044 0x2f /* KEY_RIGHT gpmc_a1.gpio1_17, INPUT | PULLDIS | MODE7 */
+ 0x04c 0x2f /* KEY_UP gpmc_a3.gpio1_19, INPUT | PULLDIS | MODE7 */
+ 0x1a4 0x2f /* TSC_INTn mcasp0_fsr.gpio3_19, INPUT | PULLDIS | MODE7 */
+ // gpio3_16 KEY_DOWN
+ >;
+ };
+
+ };
+ };
+
+ fragment@1 {
+ target = <&epwmss1>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@2 {
+ target = <&ehrpwm1>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@3 {
+ target = <&ocp>;
+
+ __overlay__ {
+
+ /* avoid stupid warning */
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ backlight {
+ compatible = "pwm-backlight";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm_bl_pins>;
+ status = "okay";
+
+ pwms = <&ehrpwm1 0 500000 0>;
+ pwm-names = "LCD7";
+ brightness-levels = <0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100>;
+ default-brightness-level = <50>; /* index to the array above */
+ };
+
+ gpio-leds-cape-lcd7 {
+ compatible = "gpio-leds";
+ pinctrl-names = "default";
+
+ pinctrl-0 = <&bone_lcd7_cape_led_00A4_pins>;
+
+ lcd7-led0 {
+ label = "lcd7:green:usr0";
+ gpios = <&gpio2 28 0>;
+ linux,default-trigger = "heartbeat";
+ default-state = "off";
+ };
+
+ };
+
+ gpio_keys {
+ compatible = "gpio-keys";
+ pinctrl-names = "default";
+ pinctrl-0 = <&bone_lcd7_cape_keys_00A4_pins>;
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ button@1 {
+ debounce_interval = <50>;
+ linux,code = <105>;
+ label = "left";
+ gpios = <&gpio2 16 0x0>;
+ gpio-key,wakeup;
+ autorepeat;
+ };
+ button@2 {
+ debounce_interval = <50>;
+ linux,code = <106>;
+ label = "right";
+ gpios = <&gpio2 17 0x0>;
+ gpio-key,wakeup;
+ autorepeat;
+ };
+ button@3 {
+ debounce_interval = <50>;
+ linux,code = <103>;
+ label = "up";
+ gpios = <&gpio2 19 0x0>;
+ gpio-key,wakeup;
+ autorepeat;
+ };
+ button@4 {
+ debounce_interval = <50>;
+ linux,code = <108>;
+ label = "down";
+ gpios = <&gpio4 16 0x0>;
+ gpio-key,wakeup;
+ autorepeat;
+ };
+ button@5 {
+ debounce_interval = <50>;
+ linux,code = <28>;
+ label = "enter";
+ gpios = <&gpio1 3 0x0>;
+ gpio-key,wakeup;
+ };
+ };
+
+ /* Settings for ThreeFive S9700RTWV35TR / LCD7 cape: */
+ panel {
+ compatible = "tilcdc,panel";
+ pinctrl-names = "default";
+ pinctrl-0 = <&bone_lcd7_cape_lcd_pins>;
+ panel-info {
+ ac-bias = <255>;
+ ac-bias-intrpt = <0>;
+ dma-burst-sz = <16>;
+ bpp = <16>;
+ fdd = <0x80>;
+ tft-alt-mode = <0>;
+ stn-565-mode = <0>;
+ mono-8bit-mode = <0>;
+ sync-edge = <0>;
+ sync-ctrl = <1>;
+ raster-order = <0>;
+ fifo-th = <0>;
+ };
+ display-timings {
+ native-mode = <&timing0>;
+ timing0: 800x480 {
+ hactive = <800>;
+ vactive = <480>;
+ hback-porch = <39>;
+ hfront-porch = <39>;
+ hsync-len = <47>;
+ vback-porch = <29>;
+ vfront-porch = <13>;
+ vsync-len = <2>;
+ clock-frequency = <30000000>;
+ hsync-active = <0>;
+ vsync-active = <0>;
+ };
+ };
+ };
+
+ fb {
+ compatible = "ti,am33xx-tilcdc";
+ reg = <0x4830e000 0x1000>;
+ interrupt-parent = <&intc>;
+ interrupts = <36>;
+ ti,hwmods = "lcdc";
+ ti,power-gpio = <&gpio2 31 0x0>;
+ ti,allow-non-reduced-blanking-modes;
+ };
+
+ };
+ };
+
+ fragment@4 {
+ target = <&i2c2>;
+
+ __overlay__ {
+ /* needed to avoid gripping by DTC */
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ maxtouch@4a {
+ compatible = "mXT224";
+ reg = <0x4a>;
+ interrupt-parent = <&gpio4>;
+ interrupts = <19 0x0>;
+ atmel,irq-gpio = <&gpio4 19 0>;
+ };
+
+ };
+ };
+};
--
1.8.1.4

86 changes: 86 additions & 0 deletions patches/not-capebus/0138-add-eMMC-cape-support.patch
@@ -0,0 +1,86 @@
From 21f234b42b90bf4d24ad7beafc3c167429ccb2fb Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Mon, 25 Mar 2013 19:48:34 +0100
Subject: [PATCH 138/144] add eMMC cape support

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
firmware/Makefile | 1 +
firmware/capes/BB-BONE-eMMC1-01-00A0.dts | 53 ++++++++++++++++++++++++++++++++
2 files changed, 54 insertions(+)
create mode 100644 firmware/capes/BB-BONE-eMMC1-01-00A0.dts

diff --git a/firmware/Makefile b/firmware/Makefile
index 68f620c..3f41d45 100644
--- a/firmware/Makefile
+++ b/firmware/Makefile
@@ -149,6 +149,7 @@ fw-shipped-$(CONFIG_CAPE_BEAGLEBONE) += \
cape-bone-lcd3-00A2.dtbo \
BB-BONE-LCD7-01-00A2.dtbo \
BB-BONE-LCD7-01-00A4.dtbo \
+ BB-BONE-eMMC1-01-00A0.dtbo \
cape-bone-iio-00A0.dtbo \
cape-bone-pinmux-test-00A0.dtbo

diff --git a/firmware/capes/BB-BONE-eMMC1-01-00A0.dts b/firmware/capes/BB-BONE-eMMC1-01-00A0.dts
new file mode 100644
index 0000000..ebac267
--- /dev/null
+++ b/firmware/capes/BB-BONE-eMMC1-01-00A0.dts
@@ -0,0 +1,53 @@
+/*
+* Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
+*
+* This program is free software; you can redistribute it and/or modify
+* it under the terms of the GNU General Public License version 2 as
+* published by the Free Software Foundation.
+*/
+/dts-v1/;
+/plugin/;
+
+/ {
+ compatible = "ti,beaglebone";
+
+ /* identification */
+ part-number = "BB-BONE-eMMC1-01";
+ version = "00A0";
+
+ fragment@0 {
+ target = <&am33xx_pinmux>;
+ __overlay__ {
+ emmc2_pins: pinmux_emmc2_pins {
+ pinctrl-single,pins = <
+ 0x80 0x32 /* gpmc_csn1.mmc1_clk, INPUT_PULLUP | MODE2 */
+ 0x84 0x32 /* gpmc_csn1.mmc1_cmd, INPUT_PULLUP | MODE2 */
+ 0x00 0x31 /* gpmc_ad0.mmc1_dat0, INPUT_PULLUP | MODE1 */
+ 0x04 0x31 /* gpmc_ad1.mmc1_dat1, INPUT_PULLUP | MODE1 */
+ 0x08 0x31 /* gpmc_ad2.mmc1_dat2, INPUT_PULLUP | MODE1 */
+ 0x0c 0x31 /* gpmc_ad3.mmc1_dat3, INPUT_PULLUP | MODE1 */
+ 0x10 0x31 /* gpmc_ad4.mmc1_dat4, INPUT_PULLUP | MODE1 */
+ 0x14 0x31 /* gpmc_ad5.mmc1_dat5, INPUT_PULLUP | MODE1 */
+ 0x18 0x31 /* gpmc_ad6.mmc1_dat6, INPUT_PULLUP | MODE1 */
+ 0x1c 0x31 /* gpmc_ad7.mmc1_dat7, INPUT_PULLUP | MODE1 */
+
+ /* the reset */
+ 0x50 0x17 /* gpmc_a4.gpio1_20, OUTPUT | MODE7 | PULLUP */
+ >;
+ };
+ };
+ };
+ fragment@1 {
+ target = <&mmc2>;
+ __overlay__ {
+ pinctrl-names = "default";
+ pinctrl-0 = <&emmc2_pins>; /* wrong numbering */
+ vmmc-supply = <&ldo3_reg>;
+ bus-width = <8>;
+ ti,non-removable;
+ status = "okay";
+ reset-gpios = <&gpio2 20 1>; /* active low */
+ ti,vcc-aux-disable-is-sleep;
+ };
+ };
+};
--
1.8.1.4

@@ -0,0 +1,38 @@
From f7fb1523842a2d29b313b6d6ff7d5f03ef63b407 Mon Sep 17 00:00:00 2001
From: Pantelis Antoniou <panto@antoniou-consulting.com>
Date: Mon, 25 Mar 2013 12:53:22 +0200
Subject: [PATCH 139/144] Remove UART pins from the expansion set

---
firmware/capes/cape-bone-tester-00A0.dts | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/firmware/capes/cape-bone-tester-00A0.dts b/firmware/capes/cape-bone-tester-00A0.dts
index 047c30b..868e7a8 100644
--- a/firmware/capes/cape-bone-tester-00A0.dts
+++ b/firmware/capes/cape-bone-tester-00A0.dts
@@ -101,8 +101,8 @@
0x164 0x2f /* 42 GPIO0_7 eCAP0_in_PWM0_out.gpio0[7]*/

/* the UART pins */
- 0x184 0x2f /* 24 UART1_TXD uart1_txd.gpio0[15] */
- 0x180 0x2f /* 26 UART1_RXD uart1_rxd.gpio0[14] */
+ // 0x184 0x2f /* 24 UART1_TXD uart1_txd.gpio0[15] */
+ // 0x180 0x2f /* 26 UART1_RXD uart1_rxd.gpio0[14] */
>;
};

@@ -181,8 +181,8 @@
0x164 0x07 /* 42 GPIO0_7 eCAP0_in_PWM0_out.gpio0[7]*/

/* the uart pins */
- 0x184 0x07 /* 24 UART1_TXD uart1_txd.gpio0[15] */
- 0x180 0x07 /* 26 UART1_RXD uart1_rxd.gpio0[14] */
+ // 0x184 0x07 /* 24 UART1_TXD uart1_txd.gpio0[15] */
+ // 0x180 0x07 /* 26 UART1_RXD uart1_rxd.gpio0[14] */
>;
};

--
1.8.1.4

0 comments on commit 2d13a60

Please sign in to comment.