alistair23-linux/arch/arm/boot/dts/omap3-n950.dts
H. Nikolaus Schaller 6ddf6c91e6 ARM: dts: omap3: bulk convert compatible to be explicitly ti,omap3430 or ti,omap3630 or ti,am3517
For the ti-cpufreq driver we need a clear separation between omap34 and omap36 families
since they have different silicon revisions and efuses.

So far ti,omap3630/ti,omap36xx is just an additional flag to ti,omap3 while omap34 has no
required entry.

Therefore we can not match omap34 boards properly.

This needs to add ti,omap3430 and ti,omap3630 where it is missing.

We also clean up some instances of missing ti,am3517 so that we can rely on
seeing either one of:

ti,am3517
ti,omap3430
ti,omap3630

in addition to ti,omap3.

We leave ti,omap34xx and ti,omap36xx untouched for compatibility.

The script to do the conversion is:

manually fix am3517_mt_ventoux.dts
find arch/arm/boot/dts -name '*.dts*' -exec fgrep -q '"ti,omap34xx"' {} \; ! -exec fgrep -q '"ti,omap3430"' {} \; -exec sed -i '' 's/"ti,omap34xx"/"ti,omap3430", "ti,omap34xx"/' {} \;
find arch/arm/boot/dts -name '*.dts*' -exec fgrep -q '"ti,omap36xx"' {} \; ! -exec fgrep -q '"ti,omap3630"' {} \; -exec sed -i '' 's/"ti,omap36xx"/"ti,omap3630", "ti,omap36xx"/' {} \;
find arch/arm/boot/dts \( -name 'omap*.dts*' -o -name 'logic*.dts*' \) -exec fgrep -q '"ti,omap3"' {} \; ! -exec fgrep -q '"ti,omap3630"' {} \; ! -exec fgrep -q '"ti,omap36xx"' {} \; ! -exec fgrep -q '"ti,am3517"' {} \; ! -exec fgrep -q '"ti,omap34xx"' {} \; ! -exec fgrep -q '"ti,omap3430"' {} \; -exec sed -i '' 's/"ti,omap3"/"ti,omap3430", "ti,omap3"/' {} \;

So if your out-of-tree omap3 board does not show any OPPs, please check
the compatibility entry and update if needed.

Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Tested-by: Adam Ford <aford173@gmail.com>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
2019-10-10 16:11:50 +05:30

274 lines
6.2 KiB
Plaintext

// SPDX-License-Identifier: GPL-2.0-only
/*
* omap3-n950.dts - Device Tree file for Nokia N950
*
* Written by: Aaro Koskinen <aaro.koskinen@iki.fi>
*/
/dts-v1/;
#include "omap3-n950-n9.dtsi"
#include <dt-bindings/input/input.h>
/ {
model = "Nokia N950";
compatible = "nokia,omap3-n950", "ti,omap3630", "ti,omap36xx", "ti,omap3";
keys {
compatible = "gpio-keys";
keypad_slide {
label = "Keypad Slide";
gpios = <&gpio4 13 GPIO_ACTIVE_LOW>; /* 109 */
linux,input-type = <EV_SW>;
linux,code = <SW_KEYPAD_SLIDE>;
wakeup-source;
pinctrl-names = "default";
pinctrl-0 = <&keypad_slide_pins>;
};
};
};
&omap3_pmx_core {
keypad_slide_pins: pinmux_debug_led_pins {
pinctrl-single,pins = <
OMAP3_CORE1_IOPAD(0x212a, PIN_INPUT | MUX_MODE4) /* cam_d10.gpio_109 */
>;
};
};
&omap3_pmx_core {
spi4_pins: pinmux_spi4_pins {
pinctrl-single,pins = <
OMAP3_CORE1_IOPAD(0x218c, PIN_INPUT_PULLDOWN | MUX_MODE1) /* mcspi4_clk */
OMAP3_CORE1_IOPAD(0x2190, PIN_OUTPUT | MUX_MODE1) /* mcspi4_simo */
OMAP3_CORE1_IOPAD(0x2192, PIN_INPUT_PULLDOWN | MUX_MODE1) /* mcspi4_somi */
OMAP3_CORE1_IOPAD(0x2196, PIN_OUTPUT | MUX_MODE1) /* mcspi4_cs0 */
>;
};
};
&omap3_pmx_core {
dsi_pins: pinmux_dsi_pins {
pinctrl-single,pins = <
OMAP3_CORE1_IOPAD(0x20dc, PIN_OUTPUT | MUX_MODE1) /* dsi_dx0 - data0+ */
OMAP3_CORE1_IOPAD(0x20de, PIN_OUTPUT | MUX_MODE1) /* dsi_dy0 - data0- */
OMAP3_CORE1_IOPAD(0x20e0, PIN_OUTPUT | MUX_MODE1) /* dsi_dx1 - clk+ */
OMAP3_CORE1_IOPAD(0x20e2, PIN_OUTPUT | MUX_MODE1) /* dsi_dy1 - clk- */
OMAP3_CORE1_IOPAD(0x20e4, PIN_OUTPUT | MUX_MODE1) /* dsi_dx2 - data1+ */
OMAP3_CORE1_IOPAD(0x20e6, PIN_OUTPUT | MUX_MODE1) /* dsi_dy2 - data1- */
>;
};
display_pins: pinmux_display_pins {
pinctrl-single,pins = <
OMAP3_CORE1_IOPAD(0x20ca, PIN_INPUT | MUX_MODE4) /* gpio 62 - display te */
OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE4) /* gpio 87 - display reset */
>;
};
};
&i2c2 {
smia_1: camera@10 {
compatible = "nokia,smia";
reg = <0x10>;
/* No reset gpio */
vana-supply = <&vaux3>;
clocks = <&isp 0>;
clock-frequency = <9600000>;
nokia,nvm-size = <(16 * 64)>;
flash-leds = <&as3645a_flash &as3645a_indicator>;
port {
smia_1_1: endpoint {
link-frequencies = /bits/ 64 <210000000 333600000 398400000>;
clock-lanes = <0>;
data-lanes = <1 2>;
remote-endpoint = <&csi2a_ep>;
};
};
};
};
&isp {
vdd-csiphy1-supply = <&vaux2>;
vdd-csiphy2-supply = <&vaux2>;
ports {
port@2 {
reg = <2>;
csi2a_ep: endpoint {
remote-endpoint = <&smia_1_1>;
clock-lanes = <2>;
data-lanes = <3 1>;
crc = <1>;
lane-polarities = <1 1 1>;
};
};
};
};
&mcspi4 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&spi4_pins>;
wlcore: wlcore@0 {
compatible = "ti,wl1271";
pinctrl-names = "default";
pinctrl-0 = <&wlan_pins>;
reg = <0>;
spi-max-frequency = <48000000>;
clock-xtal;
ref-clock-frequency = <38400000>;
interrupts-extended = <&gpio2 10 IRQ_TYPE_LEVEL_HIGH>; /* gpio 42 */
vwlan-supply = <&vwlan_fixed>;
};
};
&modem {
compatible = "nokia,n950-modem";
};
&twl {
twl_audio: audio {
compatible = "ti,twl4030-audio";
ti,enable-vibra = <1>;
};
};
&twl_keypad {
linux,keymap = < MATRIX_KEY(0x00, 0x00, KEY_BACKSLASH)
MATRIX_KEY(0x01, 0x00, KEY_LEFTSHIFT)
MATRIX_KEY(0x02, 0x00, KEY_COMPOSE)
MATRIX_KEY(0x03, 0x00, KEY_LEFTMETA)
MATRIX_KEY(0x04, 0x00, KEY_RIGHTCTRL)
MATRIX_KEY(0x05, 0x00, KEY_BACKSPACE)
MATRIX_KEY(0x06, 0x00, KEY_VOLUMEDOWN)
MATRIX_KEY(0x07, 0x00, KEY_VOLUMEUP)
MATRIX_KEY(0x03, 0x01, KEY_Z)
MATRIX_KEY(0x04, 0x01, KEY_A)
MATRIX_KEY(0x05, 0x01, KEY_Q)
MATRIX_KEY(0x06, 0x01, KEY_W)
MATRIX_KEY(0x07, 0x01, KEY_E)
MATRIX_KEY(0x03, 0x02, KEY_X)
MATRIX_KEY(0x04, 0x02, KEY_S)
MATRIX_KEY(0x05, 0x02, KEY_D)
MATRIX_KEY(0x06, 0x02, KEY_C)
MATRIX_KEY(0x07, 0x02, KEY_V)
MATRIX_KEY(0x03, 0x03, KEY_O)
MATRIX_KEY(0x04, 0x03, KEY_I)
MATRIX_KEY(0x05, 0x03, KEY_U)
MATRIX_KEY(0x06, 0x03, KEY_L)
MATRIX_KEY(0x07, 0x03, KEY_APOSTROPHE)
MATRIX_KEY(0x03, 0x04, KEY_Y)
MATRIX_KEY(0x04, 0x04, KEY_K)
MATRIX_KEY(0x05, 0x04, KEY_J)
MATRIX_KEY(0x06, 0x04, KEY_H)
MATRIX_KEY(0x07, 0x04, KEY_G)
MATRIX_KEY(0x03, 0x05, KEY_B)
MATRIX_KEY(0x04, 0x05, KEY_COMMA)
MATRIX_KEY(0x05, 0x05, KEY_M)
MATRIX_KEY(0x06, 0x05, KEY_N)
MATRIX_KEY(0x07, 0x05, KEY_DOT)
MATRIX_KEY(0x00, 0x06, KEY_SPACE)
MATRIX_KEY(0x03, 0x06, KEY_T)
MATRIX_KEY(0x04, 0x06, KEY_UP)
MATRIX_KEY(0x05, 0x06, KEY_LEFT)
MATRIX_KEY(0x06, 0x06, KEY_RIGHT)
MATRIX_KEY(0x07, 0x06, KEY_DOWN)
MATRIX_KEY(0x03, 0x07, KEY_P)
MATRIX_KEY(0x04, 0x07, KEY_ENTER)
MATRIX_KEY(0x05, 0x07, KEY_SLASH)
MATRIX_KEY(0x06, 0x07, KEY_F)
MATRIX_KEY(0x07, 0x07, KEY_R)
>;
};
&lis302 {
st,axis-x = <(-2)>; /* LIS3_INV_DEV_Y */
st,axis-y = <(-1)>; /* LIS3_INV_DEV_X */
st,axis-z = <(-3)>; /* LIS3_INV_DEV_Z */
st,min-limit-x = <(-32)>;
st,min-limit-y = <3>;
st,min-limit-z = <3>;
st,max-limit-x = <(-3)>;
st,max-limit-y = <32>;
st,max-limit-z = <32>;
};
&dss {
status = "ok";
vdda_video-supply = <&vdac>;
};
&dsi {
status = "ok";
pinctrl-names = "default";
pinctrl-0 = <&dsi_pins>;
vdd-supply = <&vpll2>;
port {
dsi_out_ep: endpoint {
remote-endpoint = <&lcd0_in>;
lanes = <2 3 0 1 4 5>;
};
};
lcd0: display {
compatible = "nokia,himalaya", "panel-dsi-cm";
label = "lcd0";
pinctrl-names = "default";
pinctrl-0 = <&display_pins>;
vpnl-supply = <&vmmc2>;
vddi-supply = <&vio>;
reset-gpios = <&gpio3 23 GPIO_ACTIVE_HIGH>; /* 87 */
te-gpios = <&gpio2 30 GPIO_ACTIVE_HIGH>; /* 62 */
width-mm = <49>; /* 48.960 mm */
height-mm = <88>; /* 88.128 mm */
/* TODO:
* - panel is upside-down
* - top + bottom 5px are not visible
*/
panel-timing {
clock-frequency = <0>; /* Calculated by dsi */
hback-porch = <2>;
hactive = <480>;
hfront-porch = <0>;
hsync-len = <2>;
vback-porch = <1>;
vactive = <864>;
vfront-porch = <0>;
vsync-len = <1>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <1>;
pixelclk-active = <1>;
};
port {
lcd0_in: endpoint {
remote-endpoint = <&dsi_out_ep>;
};
};
};
};