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

ulcb-kf.dtsi (9066B)


      1// SPDX-License-Identifier: GPL-2.0
      2/*
      3 * Device Tree Source for the Kingfisher (ULCB extension) board
      4 *
      5 * Copyright (C) 2017 Renesas Electronics Corp.
      6 * Copyright (C) 2017 Cogent Embedded, Inc.
      7 */
      8
      9/*
     10 * SSI-PCM3168A
     11 *	aplay   -D plughw:0,2 xxx.wav
     12 *	arecord -D plughw:0,3 xxx.wav
     13 */
     14
     15/ {
     16	aliases {
     17		serial1 = &hscif0;
     18		serial2 = &scif1;
     19		mmc2 = &sdhi3;
     20	};
     21
     22	clksndsel: clksndsel {
     23		#clock-cells = <0>;
     24		compatible = "gpio-mux-clock";
     25		clocks = <&cs2000>, <&audio_clk_a>; /* clk8snd, clksnd */
     26		select-gpios = <&gpio_exp_75 13 GPIO_ACTIVE_HIGH>;
     27	};
     28
     29	hdmi1-out {
     30		compatible = "hdmi-connector";
     31		type = "a";
     32
     33		port {
     34			hdmi1_con: endpoint {
     35				remote-endpoint = <&adv7513_out>;
     36			};
     37		};
     38	};
     39
     40	accel_3v3: regulator-acc-3v3 {
     41		compatible = "regulator-fixed";
     42		regulator-name = "accel-3v3";
     43		regulator-min-microvolt = <3300000>;
     44		regulator-max-microvolt = <3300000>;
     45	};
     46
     47	hdmi_1v8: regulator-hdmi-1v8 {
     48		compatible = "regulator-fixed";
     49		regulator-name = "hdmi-1v8";
     50		regulator-min-microvolt = <1800000>;
     51		regulator-max-microvolt = <1800000>;
     52	};
     53
     54	hdmi_3v3: regulator-hdmi-3v3 {
     55		compatible = "regulator-fixed";
     56		regulator-name = "hdmi-3v3";
     57		regulator-min-microvolt = <3300000>;
     58		regulator-max-microvolt = <3300000>;
     59	};
     60
     61	snd_3p3v: regulator-snd_3p3v {
     62		compatible = "regulator-fixed";
     63		regulator-name = "snd-3.3v";
     64		regulator-min-microvolt = <3300000>;
     65		regulator-max-microvolt = <3300000>;
     66	};
     67
     68	snd_vcc5v: regulator-snd_vcc5v {
     69		compatible = "regulator-fixed";
     70		regulator-name = "snd-vcc5v";
     71		regulator-min-microvolt = <5000000>;
     72		regulator-max-microvolt = <5000000>;
     73	};
     74
     75	wlan_en: regulator-wlan_en {
     76		compatible = "regulator-fixed";
     77		regulator-name = "wlan-en-regulator";
     78
     79		regulator-min-microvolt = <3300000>;
     80		regulator-max-microvolt = <3300000>;
     81
     82		gpio = <&gpio_exp_74 4 GPIO_ACTIVE_HIGH>;
     83		startup-delay-us = <70000>;
     84		enable-active-high;
     85	};
     86};
     87
     88&can0 {
     89	pinctrl-0 = <&can0_pins>;
     90	pinctrl-names = "default";
     91	status = "okay";
     92};
     93
     94&can1 {
     95	pinctrl-0 = <&can1_pins>;
     96	pinctrl-names = "default";
     97	status = "okay";
     98};
     99
    100&du {
    101	ports {
    102		port@0 {
    103			du_out_rgb: endpoint {
    104				remote-endpoint = <&adv7513_in>;
    105			};
    106		};
    107	};
    108};
    109
    110&ehci0 {
    111	dr_mode = "otg";
    112	status = "okay";
    113};
    114
    115&hscif0 {
    116	pinctrl-0 = <&hscif0_pins>;
    117	pinctrl-names = "default";
    118	uart-has-rtscts;
    119
    120	status = "okay";
    121};
    122
    123&hsusb {
    124	dr_mode = "otg";
    125	status = "okay";
    126};
    127
    128&i2c2 {
    129	i2cswitch2: i2c-switch@71 {
    130		compatible = "nxp,pca9548";
    131		#address-cells = <1>;
    132		#size-cells = <0>;
    133		reg = <0x71>;
    134		reset-gpios = <&gpio5 3 GPIO_ACTIVE_LOW>;
    135
    136		/* HDMIoSDA, HDMIoSCL */
    137		i2c@4 {
    138			#address-cells = <1>;
    139			#size-cells = <0>;
    140			reg = <4>;
    141
    142			hdmi@3d {
    143				compatible = "adi,adv7513";
    144				reg = <0x3d>;
    145
    146				pinctrl-0 = <&hdmi1_pins>;
    147				pinctrl-names = "default";
    148
    149				interrupt-parent = <&gpio2>;
    150				interrupts = <14 IRQ_TYPE_LEVEL_LOW>;
    151
    152				clocks = <&cs2000>;
    153				clock-names = "cec";
    154
    155				pd-gpios = <&gpio_exp_75 5 GPIO_ACTIVE_LOW>;
    156
    157				avdd-supply = <&hdmi_1v8>;
    158				dvdd-supply = <&hdmi_1v8>;
    159				pvdd-supply = <&hdmi_1v8>;
    160				dvdd-3v-supply = <&hdmi_3v3>;
    161				bgvdd-supply = <&hdmi_1v8>;
    162
    163				adi,input-depth = <8>;
    164				adi,input-colorspace = "rgb";
    165				adi,input-clock = "1x";
    166
    167				ports {
    168					#address-cells = <1>;
    169					#size-cells = <0>;
    170
    171					port@0 {
    172						reg = <0>;
    173						adv7513_in: endpoint {
    174							remote-endpoint = <&du_out_rgb>;
    175						};
    176					};
    177
    178					port@1 {
    179						reg = <1>;
    180						adv7513_out: endpoint {
    181							remote-endpoint = <&hdmi1_con>;
    182						};
    183					};
    184				};
    185			};
    186		};
    187
    188		/* Audio_SDA, Audio_SCL */
    189		i2c@7 {
    190			#address-cells = <1>;
    191			#size-cells = <0>;
    192			reg = <7>;
    193
    194			accelerometer@1d {
    195				compatible = "st,lsm9ds0-imu";
    196				reg = <0x1d>;
    197
    198				vdd-supply = <&accel_3v3>;
    199				vddio-supply = <&accel_3v3>;
    200			};
    201
    202			pcm3168a: audio-codec@44 {
    203				#sound-dai-cells = <0>;
    204				compatible = "ti,pcm3168a";
    205				reg = <0x44>;
    206				clocks = <&clksndsel>;
    207				clock-names = "scki";
    208
    209				VDD1-supply	= <&snd_3p3v>;
    210				VDD2-supply	= <&snd_3p3v>;
    211				VCCAD1-supply	= <&snd_vcc5v>;
    212				VCCAD2-supply	= <&snd_vcc5v>;
    213				VCCDA1-supply	= <&snd_vcc5v>;
    214				VCCDA2-supply	= <&snd_vcc5v>;
    215
    216				ports {
    217					#address-cells = <1>;
    218					#size-cells = <0>;
    219					mclk-fs = <512>;
    220					port@0 {
    221						reg = <0>;
    222						pcm3168a_endpoint_p: endpoint {
    223							remote-endpoint = <&rsnd_for_pcm3168a_play>;
    224							clocks = <&clksndsel>;
    225						};
    226					};
    227					port@1 {
    228						reg = <1>;
    229						pcm3168a_endpoint_c: endpoint {
    230							remote-endpoint = <&rsnd_for_pcm3168a_capture>;
    231							clocks = <&clksndsel>;
    232						};
    233					};
    234				};
    235			};
    236
    237			gyroscope@6b {
    238				compatible = "st,lsm9ds0-gyro";
    239				reg = <0x6b>;
    240
    241				vdd-supply = <&accel_3v3>;
    242				vddio-supply = <&accel_3v3>;
    243			};
    244		};
    245	};
    246
    247	/* U11 */
    248	gpio_exp_74: gpio@74 {
    249		compatible = "ti,tca9539";
    250		reg = <0x74>;
    251		gpio-controller;
    252		#gpio-cells = <2>;
    253		interrupt-controller;
    254		interrupt-parent = <&gpio6>;
    255		interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
    256
    257		audio-out-off-hog {
    258			gpio-hog;
    259			gpios = <0 GPIO_ACTIVE_HIGH>; /* P00 */
    260			output-high;
    261			line-name = "Audio_Out_OFF";
    262		};
    263
    264		hub-pwen-hog {
    265			gpio-hog;
    266			gpios = <6 GPIO_ACTIVE_HIGH>;
    267			output-high;
    268			line-name = "HUB pwen";
    269		};
    270
    271		hub-rst-hog {
    272			gpio-hog;
    273			gpios = <7 GPIO_ACTIVE_HIGH>;
    274			output-high;
    275			line-name = "HUB rst";
    276		};
    277
    278		otg-extlpn-hog {
    279			gpio-hog;
    280			gpios = <9 GPIO_ACTIVE_HIGH>;
    281			output-high;
    282			line-name = "OTG EXTLPn";
    283		};
    284
    285		otg-offvbusn-hog {
    286			gpio-hog;
    287			gpios = <8 GPIO_ACTIVE_HIGH>;
    288			output-low;
    289			line-name = "OTG OFFVBUSn";
    290		};
    291
    292		sd-wifi-mux-hog {
    293			gpio-hog;
    294			gpios = <5 GPIO_ACTIVE_HIGH>;
    295			output-low;	/* Connect WL1837 */
    296			line-name = "SD WiFi mux";
    297		};
    298
    299		snd-rst-hog {
    300			gpio-hog;
    301			gpios = <15 GPIO_ACTIVE_HIGH>; /* P17 */
    302			output-high;
    303			line-name = "SND_RST";
    304		};
    305	};
    306
    307	/* U5 */
    308	gpio_exp_75: gpio@75 {
    309		compatible = "ti,tca9539";
    310		reg = <0x75>;
    311		gpio-controller;
    312		#gpio-cells = <2>;
    313		interrupt-controller;
    314		interrupt-parent = <&gpio6>;
    315		interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
    316	};
    317};
    318
    319&i2c4 {
    320	i2cswitch4: i2c-switch@71 {
    321		compatible = "nxp,pca9548";
    322		#address-cells = <1>;
    323		#size-cells = <0>;
    324		reg = <0x71>;
    325		reset-gpios = <&gpio3 15 GPIO_ACTIVE_LOW>;
    326	};
    327
    328	gpio_exp_76: gpio@76 {
    329		compatible = "ti,tca9539";
    330		reg = <0x76>;
    331		gpio-controller;
    332		#gpio-cells = <2>;
    333		interrupt-controller;
    334		interrupt-parent = <&gpio7>;
    335		interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
    336	};
    337
    338	gpio_exp_77: gpio@77 {
    339		compatible = "ti,tca9539";
    340		reg = <0x77>;
    341		gpio-controller;
    342		#gpio-cells = <2>;
    343		interrupt-controller;
    344		interrupt-parent = <&gpio5>;
    345		interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
    346	};
    347};
    348
    349&ohci0 {
    350	dr_mode = "otg";
    351	status = "okay";
    352};
    353
    354&pcie_bus_clk {
    355	clock-frequency = <100000000>;
    356};
    357
    358&pciec0 {
    359	status = "okay";
    360};
    361
    362&pciec1 {
    363	status = "okay";
    364};
    365
    366&pfc {
    367	can0_pins: can0 {
    368		groups = "can0_data_a";
    369		function = "can0";
    370	};
    371
    372	can1_pins: can1 {
    373		groups = "can1_data";
    374		function = "can1";
    375	};
    376
    377	hdmi1_pins: hdmi1 {
    378		adv7513-interrupt {
    379			pins = "GP_2_14";
    380			bias-pull-up;
    381		};
    382
    383		du {
    384			groups = "du_rgb888", "du_sync", "du_clk_out_0",
    385				 "du_disp";
    386			function = "du";
    387		};
    388	};
    389
    390	hscif0_pins: hscif0 {
    391		groups = "hscif0_data", "hscif0_ctrl";
    392		function = "hscif0";
    393	};
    394
    395	scif1_pins: scif1 {
    396		groups = "scif1_data_b", "scif1_ctrl";
    397		function = "scif1";
    398	};
    399
    400	sdhi3_pins: sdhi3 {
    401		groups = "sdhi3_data4", "sdhi3_ctrl";
    402		function = "sdhi3";
    403		power-source = <3300>;
    404	};
    405
    406	sound_pcm_pins: sound-pcm {
    407		groups = "ssi349_ctrl", "ssi3_data", "ssi4_data";
    408		function = "ssi";
    409	};
    410
    411	usb0_pins: usb0 {
    412		groups = "usb0";
    413		function = "usb0";
    414	};
    415};
    416
    417&rcar_sound {
    418	pinctrl-0 = <&sound_pins
    419		     &sound_clk_pins
    420		     &sound_pcm_pins>;
    421
    422	ports {
    423		/* rsnd_port0/1 are defined in ulcb.dtsi */
    424		rsnd_port2: port@2 {
    425			reg = <2>;
    426			rsnd_for_pcm3168a_play: endpoint {
    427				remote-endpoint = <&pcm3168a_endpoint_p>;
    428				bitclock-master;
    429				frame-master;
    430				dai-tdm-slot-num = <8>;
    431				playback = <&ssi3>;
    432			};
    433		};
    434		rsnd_port3: port@3 {
    435			reg = <3>;
    436			rsnd_for_pcm3168a_capture: endpoint {
    437				remote-endpoint = <&pcm3168a_endpoint_c>;
    438				bitclock-master;
    439				frame-master;
    440				dai-tdm-slot-num = <6>;
    441				capture  = <&ssi4>;
    442			};
    443		};
    444	};
    445};
    446
    447&scif1 {
    448	pinctrl-0 = <&scif1_pins>;
    449	pinctrl-names = "default";
    450	uart-has-rtscts;
    451
    452	status = "okay";
    453};
    454
    455&sdhi3 {
    456	pinctrl-0 = <&sdhi3_pins>;
    457	pinctrl-names = "default";
    458
    459	vmmc-supply = <&wlan_en>;
    460	vqmmc-supply = <&wlan_en>;
    461	bus-width = <4>;
    462	no-1-8-v;
    463	non-removable;
    464	cap-power-off-card;
    465	keep-power-in-suspend;
    466	max-frequency = <26000000>;
    467	status = "okay";
    468
    469	#address-cells = <1>;
    470	#size-cells = <0>;
    471	wlcore: wlcore@2 {
    472		compatible = "ti,wl1837";
    473		reg = <2>;
    474		interrupt-parent = <&gpio1>;
    475		interrupts = <25 IRQ_TYPE_EDGE_FALLING>;
    476	};
    477};
    478
    479&sound_card {
    480	links = <&rsnd_port0	/* ak4613 */
    481		 &rsnd_port1	/* HDMI0  */
    482		 &rsnd_port2	/* pcm3168a playback */
    483		 &rsnd_port3	/* pcm3168a capture  */
    484		>;
    485};
    486
    487&ssi4 {
    488	shared-pin;
    489};
    490
    491&usb2_phy0 {
    492	pinctrl-0 = <&usb0_pins>;
    493	pinctrl-names = "default";
    494
    495	status = "okay";
    496};
    497
    498&xhci0 {
    499	status = "okay";
    500};