cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

omap3-n950.dts (6328B)


      1// SPDX-License-Identifier: GPL-2.0-only
      2/*
      3 * omap3-n950.dts - Device Tree file for Nokia N950
      4 *
      5 * Written by: Aaro Koskinen <aaro.koskinen@iki.fi>
      6 */
      7
      8/dts-v1/;
      9
     10#include "omap3-n950-n9.dtsi"
     11#include <dt-bindings/input/input.h>
     12
     13/ {
     14	model = "Nokia N950";
     15	compatible = "nokia,omap3-n950", "ti,omap3630", "ti,omap36xx", "ti,omap3";
     16
     17	keys {
     18		compatible = "gpio-keys";
     19
     20		keypad_slide {
     21			label = "Keypad Slide";
     22			gpios = <&gpio4 13 GPIO_ACTIVE_LOW>; /* 109 */
     23			linux,input-type = <EV_SW>;
     24			linux,code = <SW_KEYPAD_SLIDE>;
     25			wakeup-source;
     26			pinctrl-names = "default";
     27			pinctrl-0 = <&keypad_slide_pins>;
     28		};
     29	};
     30};
     31
     32&omap3_pmx_core {
     33	keypad_slide_pins: pinmux_debug_led_pins {
     34		pinctrl-single,pins = <
     35			OMAP3_CORE1_IOPAD(0x212a, PIN_INPUT | MUX_MODE4)       /* cam_d10.gpio_109 */
     36		>;
     37	};
     38};
     39
     40&omap3_pmx_core {
     41	spi4_pins: pinmux_spi4_pins {
     42		pinctrl-single,pins = <
     43			OMAP3_CORE1_IOPAD(0x218c, PIN_INPUT_PULLDOWN | MUX_MODE1) /* mcspi4_clk */
     44			OMAP3_CORE1_IOPAD(0x2190, PIN_OUTPUT | MUX_MODE1) /* mcspi4_simo */
     45			OMAP3_CORE1_IOPAD(0x2192, PIN_INPUT_PULLDOWN | MUX_MODE1) /* mcspi4_somi */
     46			OMAP3_CORE1_IOPAD(0x2196, PIN_OUTPUT | MUX_MODE1) /* mcspi4_cs0 */
     47		>;
     48	};
     49};
     50
     51&omap3_pmx_core {
     52	dsi_pins: pinmux_dsi_pins {
     53		pinctrl-single,pins = <
     54			OMAP3_CORE1_IOPAD(0x20dc, PIN_OUTPUT | MUX_MODE1) /* dsi_dx0 - data0+ */
     55			OMAP3_CORE1_IOPAD(0x20de, PIN_OUTPUT | MUX_MODE1) /* dsi_dy0 - data0- */
     56			OMAP3_CORE1_IOPAD(0x20e0, PIN_OUTPUT | MUX_MODE1) /* dsi_dx1 - clk+   */
     57			OMAP3_CORE1_IOPAD(0x20e2, PIN_OUTPUT | MUX_MODE1) /* dsi_dy1 - clk-   */
     58			OMAP3_CORE1_IOPAD(0x20e4, PIN_OUTPUT | MUX_MODE1) /* dsi_dx2 - data1+ */
     59			OMAP3_CORE1_IOPAD(0x20e6, PIN_OUTPUT | MUX_MODE1) /* dsi_dy2 - data1- */
     60		>;
     61	};
     62
     63	display_pins: pinmux_display_pins {
     64		pinctrl-single,pins = <
     65			OMAP3_CORE1_IOPAD(0x20ca, PIN_INPUT | MUX_MODE4) /* gpio 62 - display te */
     66			OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE4) /* gpio 87 - display reset */
     67		>;
     68	};
     69};
     70
     71&i2c2 {
     72	smia_1: camera@10 {
     73		compatible = "nokia,smia";
     74		reg = <0x10>;
     75		/* No reset gpio */
     76		vana-supply = <&vaux3>;
     77		clocks = <&isp 0>;
     78		clock-frequency = <9600000>;
     79		flash-leds = <&as3645a_flash &as3645a_indicator>;
     80		port {
     81			smia_1_1: endpoint {
     82				link-frequencies = /bits/ 64 <210000000 333600000 398400000>;
     83				clock-lanes = <0>;
     84				data-lanes = <1 2>;
     85				remote-endpoint = <&csi2a_ep>;
     86			};
     87		};
     88	};
     89};
     90
     91&isp {
     92	vdd-csiphy1-supply = <&vaux2>;
     93	vdd-csiphy2-supply = <&vaux2>;
     94	ports {
     95		port@2 {
     96			reg = <2>;
     97			csi2a_ep: endpoint {
     98				remote-endpoint = <&smia_1_1>;
     99				clock-lanes = <2>;
    100				data-lanes = <3 1>;
    101				crc = <1>;
    102				lane-polarities = <1 1 1>;
    103			};
    104		};
    105	};
    106};
    107
    108&mcspi4 {
    109	status = "okay";
    110	pinctrl-names = "default";
    111	pinctrl-0 = <&spi4_pins>;
    112
    113	wlcore: wlcore@0 {
    114		compatible = "ti,wl1271";
    115		pinctrl-names = "default";
    116		pinctrl-0 = <&wlan_pins>;
    117		reg = <0>;
    118		spi-max-frequency = <48000000>;
    119		clock-xtal;
    120		ref-clock-frequency = <38400000>;
    121		interrupts-extended = <&gpio2 10 IRQ_TYPE_LEVEL_HIGH>; /* gpio 42 */
    122		vwlan-supply = <&vwlan_fixed>;
    123	};
    124};
    125
    126&modem {
    127	compatible = "nokia,n950-modem";
    128};
    129
    130&twl {
    131	twl_audio: audio {
    132		compatible = "ti,twl4030-audio";
    133		ti,enable-vibra = <1>;
    134	};
    135};
    136
    137&twl_keypad {
    138	linux,keymap = < MATRIX_KEY(0x00, 0x00, KEY_BACKSLASH)
    139			 MATRIX_KEY(0x01, 0x00, KEY_LEFTSHIFT)
    140			 MATRIX_KEY(0x02, 0x00, KEY_COMPOSE)
    141			 MATRIX_KEY(0x03, 0x00, KEY_LEFTMETA)
    142			 MATRIX_KEY(0x04, 0x00, KEY_RIGHTCTRL)
    143			 MATRIX_KEY(0x05, 0x00, KEY_BACKSPACE)
    144			 MATRIX_KEY(0x06, 0x00, KEY_VOLUMEDOWN)
    145			 MATRIX_KEY(0x07, 0x00, KEY_VOLUMEUP)
    146
    147			 MATRIX_KEY(0x03, 0x01, KEY_Z)
    148			 MATRIX_KEY(0x04, 0x01, KEY_A)
    149			 MATRIX_KEY(0x05, 0x01, KEY_Q)
    150			 MATRIX_KEY(0x06, 0x01, KEY_W)
    151			 MATRIX_KEY(0x07, 0x01, KEY_E)
    152
    153			 MATRIX_KEY(0x03, 0x02, KEY_X)
    154			 MATRIX_KEY(0x04, 0x02, KEY_S)
    155			 MATRIX_KEY(0x05, 0x02, KEY_D)
    156			 MATRIX_KEY(0x06, 0x02, KEY_C)
    157			 MATRIX_KEY(0x07, 0x02, KEY_V)
    158
    159			 MATRIX_KEY(0x03, 0x03, KEY_O)
    160			 MATRIX_KEY(0x04, 0x03, KEY_I)
    161			 MATRIX_KEY(0x05, 0x03, KEY_U)
    162			 MATRIX_KEY(0x06, 0x03, KEY_L)
    163			 MATRIX_KEY(0x07, 0x03, KEY_APOSTROPHE)
    164
    165			 MATRIX_KEY(0x03, 0x04, KEY_Y)
    166			 MATRIX_KEY(0x04, 0x04, KEY_K)
    167			 MATRIX_KEY(0x05, 0x04, KEY_J)
    168			 MATRIX_KEY(0x06, 0x04, KEY_H)
    169			 MATRIX_KEY(0x07, 0x04, KEY_G)
    170
    171			 MATRIX_KEY(0x03, 0x05, KEY_B)
    172			 MATRIX_KEY(0x04, 0x05, KEY_COMMA)
    173			 MATRIX_KEY(0x05, 0x05, KEY_M)
    174			 MATRIX_KEY(0x06, 0x05, KEY_N)
    175			 MATRIX_KEY(0x07, 0x05, KEY_DOT)
    176
    177			 MATRIX_KEY(0x00, 0x06, KEY_SPACE)
    178			 MATRIX_KEY(0x03, 0x06, KEY_T)
    179			 MATRIX_KEY(0x04, 0x06, KEY_UP)
    180			 MATRIX_KEY(0x05, 0x06, KEY_LEFT)
    181			 MATRIX_KEY(0x06, 0x06, KEY_RIGHT)
    182			 MATRIX_KEY(0x07, 0x06, KEY_DOWN)
    183
    184			 MATRIX_KEY(0x03, 0x07, KEY_P)
    185			 MATRIX_KEY(0x04, 0x07, KEY_ENTER)
    186			 MATRIX_KEY(0x05, 0x07, KEY_SLASH)
    187			 MATRIX_KEY(0x06, 0x07, KEY_F)
    188			 MATRIX_KEY(0x07, 0x07, KEY_R)
    189			 >;
    190};
    191
    192&lis302 {
    193	st,axis-x = <(-2)>; /* LIS3_INV_DEV_Y */
    194	st,axis-y = <(-1)>; /* LIS3_INV_DEV_X */
    195	st,axis-z = <(-3)>; /* LIS3_INV_DEV_Z */
    196
    197	st,min-limit-x = <(-32)>;
    198	st,min-limit-y = <3>;
    199	st,min-limit-z = <3>;
    200
    201	st,max-limit-x = <(-3)>;
    202	st,max-limit-y = <32>;
    203	st,max-limit-z = <32>;
    204};
    205
    206&dss {
    207	status = "okay";
    208
    209	vdda_video-supply = <&vdac>;
    210};
    211
    212&dsi {
    213	status = "okay";
    214
    215	pinctrl-names = "default";
    216	pinctrl-0 = <&dsi_pins>;
    217
    218	vdd-supply = <&vpll2>;
    219
    220	port {
    221		dsi_out_ep: endpoint {
    222			remote-endpoint = <&lcd0_in>;
    223			lanes = <2 3 0 1 4 5>;
    224		};
    225	};
    226
    227	lcd0: panel@0 {
    228		compatible = "nokia,himalaya", "panel-dsi-cm";
    229		reg = <0>;
    230		label = "lcd0";
    231
    232		pinctrl-names = "default";
    233		pinctrl-0 = <&display_pins>;
    234
    235		vpnl-supply = <&vmmc2>;
    236		vddi-supply = <&vio>;
    237
    238		reset-gpios = <&gpio3 23 GPIO_ACTIVE_HIGH>;	/* 87 */
    239		te-gpios = <&gpio2 30 GPIO_ACTIVE_HIGH>;	/* 62 */
    240
    241		width-mm = <49>; /* 48.960 mm */
    242		height-mm = <88>; /* 88.128 mm */
    243
    244		/* TODO:
    245		 * - panel is upside-down
    246		 * - top + bottom 5px are not visible
    247		 */
    248		panel-timing {
    249			clock-frequency = <0>;          /* Calculated by dsi */
    250
    251			hback-porch = <2>;
    252			hactive = <480>;
    253			hfront-porch = <0>;
    254			hsync-len = <2>;
    255
    256			vback-porch = <1>;
    257			vactive = <864>;
    258			vfront-porch = <0>;
    259			vsync-len = <1>;
    260
    261			hsync-active = <0>;
    262			vsync-active = <0>;
    263			de-active = <1>;
    264			pixelclk-active = <1>;
    265		};
    266
    267		port {
    268			lcd0_in: endpoint {
    269				remote-endpoint = <&dsi_out_ep>;
    270			};
    271		};
    272	};
    273};