Signed-off-by: XXXXXXXXXXXXXXX Patch Type : Feature addition 1) Disabled GPIO7 14 and GPIO7 15 from being used as GPIO controlled LED. 2) Changes for MIC IN audio capture. 3) Pinmux changes for GPIO7 14 to be used as SPI2_SCLK and GPIO7 15 to be used as SPI2_D1. 4) LCD1 - Added LVDS enable GPIO and LCD output enable GPIO. - Fixed the display resolution to 800x600 with 40000000 Hz pixel clock. 5) LCD2 - Added LVDS enable GPIO and LCD output enable GPIO. - Fixed the display resolution to 800x600 with 40000000 Hz pixel clock. 6) Added fixed 16KHz crystal oscillators source clock for OV7740 camera sensor. 7) Added OV7740 camera sensor node. 8) Removed mt91x camera sensor node. 9) Removed pixcir touch screen node. 10) Enabled uart1 interface, used by touch screen. 11) Enabled uart9, used by host system interface. 12) Enabled mcspi2 and mcspi4 controllers, used for LAMP interface and SPI FRAM. 13) Added XXXXXX node, endpoint for VIN2A port. ------------------------------------------------------------------------------------------------------ diff -Nuarwbp orig/arch/arm/boot/dts/am57xx-beagle-x15.dts work/arch/arm/boot/dts/am57xx-beagle-x15.dts --- orig/arch/arm/boot/dts/am57xx-beagle-x15.dts 2016-05-04 13:39:33.132619500 +0530 +++ work/arch/arm/boot/dts/am57xx-beagle-x15.dts 2016-05-04 13:39:33.136619500 +0530 @@ -108,20 +108,6 @@ linux,default-trigger = "cpu0"; default-state = "off"; }; - - led@2 { - label = "beagle-x15:usr2"; - gpios = <&gpio7 14 GPIO_ACTIVE_HIGH>; - linux,default-trigger = "mmc0"; - default-state = "off"; - }; - - led@3 { - label = "beagle-x15:usr3"; - gpios = <&gpio7 15 GPIO_ACTIVE_HIGH>; - linux,default-trigger = "ide-disk"; - default-state = "off"; - }; }; gpio_fan: gpio_fan { @@ -185,12 +171,12 @@ simple-audio-card,name = "BeagleBoard-X15"; simple-audio-card,widgets = "Line", "Line Out", - "Line", "Line In"; + "Line", "Microphone Jack"; simple-audio-card,routing = "Line Out", "LLOUT", "Line Out", "RLOUT", - "MIC2L", "Line In", - "MIC2R", "Line In"; + "MIC2L", "Microphone Jack", + "MIC2R", "Microphone Jack"; simple-audio-card,format = "dsp_b"; simple-audio-card,bitclock-master = <&sound0_master>; simple-audio-card,frame-master = <&sound0_master>; @@ -212,8 +198,8 @@ pinctrl-single,pins = < 0x3a8 (PIN_OUTPUT | MUX_MODE14) /* spi1_d1.gpio7_8 */ 0x3ac (PIN_OUTPUT | MUX_MODE14) /* spi1_d0.gpio7_9 */ - 0x3c0 (PIN_OUTPUT | MUX_MODE14) /* spi2_sclk.gpio7_14 */ - 0x3c4 (PIN_OUTPUT | MUX_MODE14) /* spi2_d1.gpio7_15 */ + 0x3c0 (PIN_OUTPUT | MUX_MODE0) /* spi2_sclk.spi2_sclk */ + 0x3c4 (PIN_OUTPUT | MUX_MODE0) /* spi2_d1.spi2_d1 */ >; }; diff -Nuarwbp orig/arch/arm/boot/dts/am57xx-evm.dts work/arch/arm/boot/dts/am57xx-evm.dts --- orig/arch/arm/boot/dts/am57xx-evm.dts 2016-05-03 18:43:16.193532900 +0530 +++ work/arch/arm/boot/dts/am57xx-evm.dts 2016-05-06 17:12:21.174133372 +0530 @@ -17,6 +17,7 @@ aliases { display0 = &lcd0; display1 = &hdmi0; + display2 = &lcd1; }; gpio_keys { @@ -56,23 +57,24 @@ }; }; - lcd0: display { - compatible = "osddisplays,osd070t1718-19ts", "panel-dpi"; + lcd0: display@0 { + compatible = "panel-dpi"; label = "lcd"; - enable-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; + enable-gpios = <&gpio4 10 GPIO_ACTIVE_HIGH>; + lvds-enable-gpios = <&gpio5 9 GPIO_ACTIVE_HIGH>; panel-timing { - clock-frequency = <33000000>; + clock-frequency = <40000000>; hactive = <800>; - vactive = <480>; - hfront-porch = <210>; - hback-porch = <16>; - hsync-len = <30>; - vback-porch = <10>; - vfront-porch = <22>; - vsync-len = <13>; + vactive = <600>; + hfront-porch = <40>; + hback-porch = <8>; + hsync-len = <128>; + vback-porch = <23>; + vfront-porch = <1>; + vsync-len = <4>; hsync-active = <0>; vsync-active = <0>; de-active = <1>; @@ -85,6 +87,36 @@ }; }; }; + lcd1: display@1 { + compatible = "panel-dpi"; + + label = "lcd1"; + + enable-gpios = <&gpio2 6 GPIO_ACTIVE_HIGH>; + lvds-enable-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; + + panel-timing { + clock-frequency = <40000000>; + hactive = <800>; + vactive = <600>; + hfront-porch = <40>; + hback-porch = <8>; + hsync-len = <128>; + vback-porch = <23>; + vfront-porch = <1>; + vsync-len = <4>; + hsync-active = <0>; + vsync-active = <0>; + de-active = <1>; + pixelclk-active = <1>; + }; + + port { + lcd1_in: endpoint { + remote-endpoint = <&dpi1_out>; + }; + }; + }; backlight { compatible = "pwm-backlight"; @@ -122,6 +154,13 @@ btwilink { compatible = "btwilink"; }; + /* External oscillator clock for Camera Interface */ + osc: oscillator { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <16000000>; + clock-output-names = "osc"; + }; }; &dra7_pmx_core { @@ -208,40 +247,39 @@ &i2c5 { status = "okay"; clock-frequency = <400000>; +}; - mt9t11x@3C { - compatible = "aptina,mt9t111"; - reg = <0x3C>; - - reset-gpios = <&gpio4 17 GPIO_ACTIVE_LOW>; - oscen-gpios = <&gpio5 10 GPIO_ACTIVE_HIGH>; - powerdown-gpios = <&gpio5 11 GPIO_ACTIVE_LOW>; - bufen-gpios = <&gpio5 12 GPIO_ACTIVE_LOW>; - camen-gpios = <&gpio6 11 GPIO_ACTIVE_LOW>; +&i2c3 { + status = "okay"; + clock_frequency = <100000>; + + ov7740@21 { + compatible = "ovti,ov7740"; + reg = <0x21>; + clocks = <&osc>; + clock-names = "xvclk"; + resetb-gpios = <&gpio4 17 GPIO_ACTIVE_LOW>; port { - cam: endpoint { + cam1: endpoint { remote-endpoint = <&vin3a>; hsync-active = <1>; vsync-active = <1>; pclk-sample = <0>; - input-clock-freq = <32000000>; - pixel-clock-freq = <96000000>; + input-clock-freq = <16000000>; + pixel-clock-freq = <48000000>; }; }; }; - pixcir_ts@5c { - compatible = "pixcir,pixcir_tangoc"; - reg = <0x5c>; - interrupt-parent = <&gpio2>; - interrupts = <4 0>; - - attb-gpio = <&gpio2 4 GPIO_ACTIVE_HIGH>; - reset-gpio = <&gpio2 6 GPIO_ACTIVE_HIGH>; - - touchscreen-size-x = <1024>; - touchscreen-size-y = <600>; + tuner_lvds: tuner_lvds { + compatible = "lvds"; + reg = <0>; + port { + lvds: endpoint { + /* Dummy */ + }; + }; }; }; @@ -250,7 +288,7 @@ #address-cells = <1>; #size-cells = <0>; - port { + port@0 { reg = <0>; dpi_out: endpoint { @@ -258,6 +296,26 @@ data-lines = <24>; }; }; + port@2 { + reg = <2>; + + dpi1_out: endpoint { + remote-endpoint = <&lcd1_in>; + data-lines = <24>; + }; + }; + }; +}; + +&vip1 { + status = "okay"; +}; + +&vin2a { + status = "okay"; + endpoint { + slave-mode; + remote-endpoint = <&lvds>; }; }; @@ -269,7 +327,7 @@ status = "okay"; endpoint { slave-mode; - remote-endpoint = <&cam>; + remote-endpoint = <&cam1>; }; }; @@ -281,10 +339,38 @@ }; }; +&mcspi2 { + status = "okay"; + ti,pindir-d0-in-d1-out; + spi1@0 { + compatible = "rohm,dh2228fv"; + spi-max-frequency = <6000000>; + reg = <0>; + }; +}; + +&mcspi4 { + status = "okay"; + ti,pindir-d0-out-d1-in; + spi3@0 { + compatible = "rohm,dh2228fv"; + spi-max-frequency = <24000000>; + reg = <0>; + }; +}; + &uart8 { status = "okay"; }; +&uart1{ + status = "okay"; +}; + +&uart9{ + status = "okay"; +}; + &mmc3 { status = "okay"; vmmc-supply = <&vmmcwl_fixed>; diff -Nuarwbp orig/arch/arm/boot/dts/dra74x.dtsi work/arch/arm/boot/dts/dra74x.dtsi --- orig/arch/arm/boot/dts/dra74x.dtsi 2015-10-07 23:29:00.000000000 +0530 +++ work/arch/arm/boot/dts/dra74x.dtsi 2016-04-26 19:45:51.141585400 +0530 @@ -176,8 +176,8 @@ reg = <0x58000000 0x80>, <0x58004054 0x4>, <0x58004300 0x20>, - <0x58005054 0x4>, - <0x58005300 0x20>; + <0x58009054 0x4>, + <0x58009300 0x20>; reg-names = "dss", "pll1_clkctrl", "pll1", "pll2_clkctrl", "pll2";