summaryrefslogblamecommitdiffstats
path: root/arch/arm/boot/dts/omap3-n950.dts
blob: d429329786abd5a739218d5231d61a80fb3952e8 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13












                                                                       
                                    


                             
                                                                   
  
 










                                                                                                   



































                                                                                             

















                                                                                    



                                        






















































                                                               
/*
 * omap3-n950.dts - Device Tree file for Nokia N950
 *
 * Written by: Aaro Koskinen <aaro.koskinen@iki.fi>
 *
 * 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/;

#include "omap3-n950-n9.dtsi"
#include <dt-bindings/input/input.h>

/ {
	model = "Nokia N950";
	compatible = "nokia,omap3-n950", "ti,omap36xx", "ti,omap3";
};

&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 */
		>;
	};
};

&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)>;
		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_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)
			 >;
};