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

am57xx-beagle-x15-common.dtsi (12966B)


      1// SPDX-License-Identifier: GPL-2.0-only
      2/*
      3 * Copyright (C) 2014-2016 Texas Instruments Incorporated - https://www.ti.com/
      4 */
      5/dts-v1/;
      6
      7#include "am5728.dtsi"
      8#include "am57xx-commercial-grade.dtsi"
      9#include "dra74x-mmc-iodelay.dtsi"
     10#include "dra74-ipu-dsp-common.dtsi"
     11#include <dt-bindings/gpio/gpio.h>
     12#include <dt-bindings/interrupt-controller/irq.h>
     13
     14/ {
     15	compatible = "ti,am572x-beagle-x15", "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7";
     16
     17	aliases {
     18		rtc0 = &mcp_rtc;
     19		rtc1 = &tps659038_rtc;
     20		rtc2 = &rtc;
     21		display0 = &hdmi0;
     22	};
     23
     24	chosen {
     25		stdout-path = &uart3;
     26	};
     27
     28	memory@0 {
     29		device_type = "memory";
     30		reg = <0x0 0x80000000 0x0 0x80000000>;
     31	};
     32
     33	main_12v0: fixedregulator-main_12v0 {
     34		/* main supply */
     35		compatible = "regulator-fixed";
     36		regulator-name = "main_12v0";
     37		regulator-min-microvolt = <12000000>;
     38		regulator-max-microvolt = <12000000>;
     39		regulator-always-on;
     40		regulator-boot-on;
     41	};
     42
     43	evm_5v0: fixedregulator-evm_5v0 {
     44		/* Output of TPS54531D */
     45		compatible = "regulator-fixed";
     46		regulator-name = "evm_5v0";
     47		regulator-min-microvolt = <5000000>;
     48		regulator-max-microvolt = <5000000>;
     49		vin-supply = <&main_12v0>;
     50		regulator-always-on;
     51		regulator-boot-on;
     52	};
     53
     54	reserved-memory {
     55		#address-cells = <2>;
     56		#size-cells = <2>;
     57		ranges;
     58
     59		ipu2_memory_region: ipu2-memory@95800000 {
     60			compatible = "shared-dma-pool";
     61			reg = <0x0 0x95800000 0x0 0x3800000>;
     62			reusable;
     63			status = "okay";
     64		};
     65
     66		dsp1_memory_region: dsp1-memory@99000000 {
     67			compatible = "shared-dma-pool";
     68			reg = <0x0 0x99000000 0x0 0x4000000>;
     69			reusable;
     70			status = "okay";
     71		};
     72
     73		ipu1_memory_region: ipu1-memory@9d000000 {
     74			compatible = "shared-dma-pool";
     75			reg = <0x0 0x9d000000 0x0 0x2000000>;
     76			reusable;
     77			status = "okay";
     78		};
     79
     80		dsp2_memory_region: dsp2-memory@9f000000 {
     81			compatible = "shared-dma-pool";
     82			reg = <0x0 0x9f000000 0x0 0x800000>;
     83			reusable;
     84			status = "okay";
     85		};
     86	};
     87
     88	vdd_3v3: fixedregulator-vdd_3v3 {
     89		compatible = "regulator-fixed";
     90		regulator-name = "vdd_3v3";
     91		vin-supply = <&regen1>;
     92		regulator-min-microvolt = <3300000>;
     93		regulator-max-microvolt = <3300000>;
     94	};
     95
     96	aic_dvdd: fixedregulator-aic_dvdd {
     97		compatible = "regulator-fixed";
     98		regulator-name = "aic_dvdd_fixed";
     99		vin-supply = <&vdd_3v3>;
    100		regulator-min-microvolt = <1800000>;
    101		regulator-max-microvolt = <1800000>;
    102	};
    103
    104	vtt_fixed: fixedregulator-vtt {
    105		/* TPS51200 */
    106		compatible = "regulator-fixed";
    107		regulator-name = "vtt_fixed";
    108		vin-supply = <&smps3_reg>;
    109		regulator-min-microvolt = <3300000>;
    110		regulator-max-microvolt = <3300000>;
    111		regulator-always-on;
    112		regulator-boot-on;
    113		enable-active-high;
    114		gpio = <&gpio7 11 GPIO_ACTIVE_HIGH>;
    115	};
    116
    117	leds {
    118		compatible = "gpio-leds";
    119
    120		led0 {
    121			label = "beagle-x15:usr0";
    122			gpios = <&gpio7 9 GPIO_ACTIVE_HIGH>;
    123			linux,default-trigger = "heartbeat";
    124			default-state = "off";
    125		};
    126
    127		led1 {
    128			label = "beagle-x15:usr1";
    129			gpios = <&gpio7 8 GPIO_ACTIVE_HIGH>;
    130			linux,default-trigger = "cpu0";
    131			default-state = "off";
    132		};
    133
    134		led2 {
    135			label = "beagle-x15:usr2";
    136			gpios = <&gpio7 14 GPIO_ACTIVE_HIGH>;
    137			linux,default-trigger = "mmc0";
    138			default-state = "off";
    139		};
    140
    141		led3 {
    142			label = "beagle-x15:usr3";
    143			gpios = <&gpio7 15 GPIO_ACTIVE_HIGH>;
    144			linux,default-trigger = "disk-activity";
    145			default-state = "off";
    146		};
    147	};
    148
    149	gpio_fan: gpio_fan {
    150		/* Based on 5v 500mA AFB02505HHB */
    151		compatible = "gpio-fan";
    152		gpios =  <&tps659038_gpio 2 GPIO_ACTIVE_HIGH>;
    153		gpio-fan,speed-map = <0     0>,
    154				     <13000 1>;
    155		#cooling-cells = <2>;
    156	};
    157
    158	hdmi0: connector {
    159		compatible = "hdmi-connector";
    160		label = "hdmi";
    161
    162		type = "a";
    163
    164		port {
    165			hdmi_connector_in: endpoint {
    166				remote-endpoint = <&tpd12s015_out>;
    167			};
    168		};
    169	};
    170
    171	tpd12s015: encoder {
    172		compatible = "ti,tpd12s015";
    173
    174		ports {
    175			#address-cells = <1>;
    176			#size-cells = <0>;
    177
    178			port@0 {
    179				reg = <0>;
    180
    181				tpd12s015_in: endpoint {
    182					remote-endpoint = <&hdmi_out>;
    183				};
    184			};
    185
    186			port@1 {
    187				reg = <1>;
    188
    189				tpd12s015_out: endpoint {
    190					remote-endpoint = <&hdmi_connector_in>;
    191				};
    192			};
    193		};
    194	};
    195
    196	sound0: sound0 {
    197		compatible = "simple-audio-card";
    198		simple-audio-card,name = "BeagleBoard-X15";
    199		simple-audio-card,widgets =
    200			"Line", "Line Out",
    201			"Line", "Line In";
    202		simple-audio-card,routing =
    203			"Line Out",	"LLOUT",
    204			"Line Out",	"RLOUT",
    205			"MIC2L",	"Line In",
    206			"MIC2R",	"Line In";
    207		simple-audio-card,format = "dsp_b";
    208		simple-audio-card,bitclock-master = <&sound0_master>;
    209		simple-audio-card,frame-master = <&sound0_master>;
    210		simple-audio-card,bitclock-inversion;
    211
    212		simple-audio-card,cpu {
    213			sound-dai = <&mcasp3>;
    214		};
    215
    216		sound0_master: simple-audio-card,codec {
    217			sound-dai = <&tlv320aic3104>;
    218			clocks = <&clkout2_clk>;
    219		};
    220	};
    221};
    222
    223&i2c1 {
    224	status = "okay";
    225	clock-frequency = <400000>;
    226
    227	tps659038: tps659038@58 {
    228		compatible = "ti,tps659038";
    229		reg = <0x58>;
    230		interrupt-parent = <&gpio1>;
    231		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
    232
    233		#interrupt-cells = <2>;
    234		interrupt-controller;
    235
    236		ti,system-power-controller;
    237		ti,palmas-override-powerhold;
    238
    239		tps659038_pmic {
    240			compatible = "ti,tps659038-pmic";
    241
    242			regulators {
    243				smps12_reg: smps12 {
    244					/* VDD_MPU */
    245					regulator-name = "smps12";
    246					regulator-min-microvolt = < 850000>;
    247					regulator-max-microvolt = <1250000>;
    248					regulator-always-on;
    249					regulator-boot-on;
    250				};
    251
    252				smps3_reg: smps3 {
    253					/* VDD_DDR */
    254					regulator-name = "smps3";
    255					regulator-min-microvolt = <1350000>;
    256					regulator-max-microvolt = <1350000>;
    257					regulator-always-on;
    258					regulator-boot-on;
    259				};
    260
    261				smps45_reg: smps45 {
    262					/* VDD_DSPEVE, VDD_IVA, VDD_GPU */
    263					regulator-name = "smps45";
    264					regulator-min-microvolt = < 850000>;
    265					regulator-max-microvolt = <1250000>;
    266					regulator-always-on;
    267					regulator-boot-on;
    268				};
    269
    270				smps6_reg: smps6 {
    271					/* VDD_CORE */
    272					regulator-name = "smps6";
    273					regulator-min-microvolt = <850000>;
    274					regulator-max-microvolt = <1150000>;
    275					regulator-always-on;
    276					regulator-boot-on;
    277				};
    278
    279				/* SMPS7 unused */
    280
    281				smps8_reg: smps8 {
    282					/* VDD_1V8 */
    283					regulator-name = "smps8";
    284					regulator-min-microvolt = <1800000>;
    285					regulator-max-microvolt = <1800000>;
    286					regulator-always-on;
    287					regulator-boot-on;
    288				};
    289
    290				/* SMPS9 unused */
    291
    292				ldo1_reg: ldo1 {
    293					/* VDD_SD / VDDSHV8  */
    294					regulator-name = "ldo1";
    295					regulator-min-microvolt = <1800000>;
    296					regulator-max-microvolt = <3300000>;
    297					regulator-boot-on;
    298					regulator-always-on;
    299				};
    300
    301				ldo2_reg: ldo2 {
    302					/* VDD_SHV5 */
    303					regulator-name = "ldo2";
    304					regulator-min-microvolt = <3300000>;
    305					regulator-max-microvolt = <3300000>;
    306					regulator-always-on;
    307					regulator-boot-on;
    308				};
    309
    310				ldo3_reg: ldo3 {
    311					/* VDDA_1V8_PHYA */
    312					regulator-name = "ldo3";
    313					regulator-min-microvolt = <1800000>;
    314					regulator-max-microvolt = <1800000>;
    315					regulator-always-on;
    316					regulator-boot-on;
    317				};
    318
    319				ldo4_reg: ldo4 {
    320					/* VDDA_1V8_PHYB */
    321					regulator-name = "ldo4";
    322					regulator-min-microvolt = <1800000>;
    323					regulator-max-microvolt = <1800000>;
    324					regulator-always-on;
    325					regulator-boot-on;
    326				};
    327
    328				ldo9_reg: ldo9 {
    329					/* VDD_RTC */
    330					regulator-name = "ldo9";
    331					regulator-min-microvolt = <1050000>;
    332					regulator-max-microvolt = <1050000>;
    333					regulator-always-on;
    334					regulator-boot-on;
    335				};
    336
    337				ldoln_reg: ldoln {
    338					/* VDDA_1V8_PLL */
    339					regulator-name = "ldoln";
    340					regulator-min-microvolt = <1800000>;
    341					regulator-max-microvolt = <1800000>;
    342					regulator-always-on;
    343					regulator-boot-on;
    344				};
    345
    346				ldousb_reg: ldousb {
    347					/* VDDA_3V_USB: VDDA_USBHS33 */
    348					regulator-name = "ldousb";
    349					regulator-min-microvolt = <3300000>;
    350					regulator-max-microvolt = <3300000>;
    351					regulator-boot-on;
    352				};
    353
    354				regen1: regen1 {
    355					/* VDD_3V3_ON */
    356					regulator-name = "regen1";
    357					regulator-boot-on;
    358					regulator-always-on;
    359				};
    360			};
    361		};
    362
    363		tps659038_rtc: tps659038_rtc {
    364			compatible = "ti,palmas-rtc";
    365			interrupt-parent = <&tps659038>;
    366			interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
    367			wakeup-source;
    368		};
    369
    370		tps659038_pwr_button: tps659038_pwr_button {
    371			compatible = "ti,palmas-pwrbutton";
    372			interrupt-parent = <&tps659038>;
    373			interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
    374			wakeup-source;
    375			ti,palmas-long-press-seconds = <12>;
    376		};
    377
    378		tps659038_gpio: tps659038_gpio {
    379			compatible = "ti,palmas-gpio";
    380			gpio-controller;
    381			#gpio-cells = <2>;
    382		};
    383
    384		extcon_usb2: tps659038_usb {
    385			compatible = "ti,palmas-usb-vid";
    386			ti,enable-vbus-detection;
    387			vbus-gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>;
    388		};
    389
    390	};
    391
    392	tmp102: tmp102@48 {
    393		compatible = "ti,tmp102";
    394		reg = <0x48>;
    395		interrupt-parent = <&gpio7>;
    396		interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
    397		#thermal-sensor-cells = <1>;
    398	};
    399
    400	tlv320aic3104: tlv320aic3104@18 {
    401		#sound-dai-cells = <0>;
    402		compatible = "ti,tlv320aic3104";
    403		reg = <0x18>;
    404		assigned-clocks = <&clkoutmux2_clk_mux>;
    405		assigned-clock-parents = <&sys_clk2_dclk_div>;
    406
    407		status = "okay";
    408		adc-settle-ms = <40>;
    409
    410		AVDD-supply = <&vdd_3v3>;
    411		IOVDD-supply = <&vdd_3v3>;
    412		DRVDD-supply = <&vdd_3v3>;
    413		DVDD-supply = <&aic_dvdd>;
    414	};
    415
    416	eeprom: eeprom@50 {
    417		compatible = "atmel,24c32";
    418		reg = <0x50>;
    419	};
    420};
    421
    422&i2c3 {
    423	status = "okay";
    424	clock-frequency = <400000>;
    425
    426	mcp_rtc: rtc@6f {
    427		compatible = "microchip,mcp7941x";
    428		reg = <0x6f>;
    429		interrupts-extended = <&crossbar_mpu GIC_SPI 2 IRQ_TYPE_EDGE_RISING>,
    430				      <&dra7_pmx_core 0x424>;
    431		interrupt-names = "irq", "wakeup";
    432
    433		vcc-supply = <&vdd_3v3>;
    434		wakeup-source;
    435	};
    436};
    437
    438&gpio7_target {
    439	ti,no-reset-on-init;
    440	ti,no-idle-on-init;
    441};
    442
    443&cpu0 {
    444	vdd-supply = <&smps12_reg>;
    445	voltage-tolerance = <1>;
    446};
    447
    448&uart3 {
    449	status = "okay";
    450	interrupts-extended = <&crossbar_mpu GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
    451			      <&dra7_pmx_core 0x3f8>;
    452};
    453
    454&davinci_mdio_sw {
    455	phy0: ethernet-phy@1 {
    456		reg = <1>;
    457	};
    458
    459	phy1: ethernet-phy@2 {
    460		reg = <2>;
    461	};
    462};
    463
    464&mac_sw {
    465	status = "okay";
    466};
    467
    468&cpsw_port1 {
    469	phy-handle = <&phy0>;
    470	phy-mode = "rgmii-rxid";
    471	ti,dual-emac-pvid = <1>;
    472};
    473
    474&cpsw_port2 {
    475	phy-handle = <&phy1>;
    476	phy-mode = "rgmii-rxid";
    477	ti,dual-emac-pvid = <2>;
    478};
    479
    480&mmc1 {
    481	status = "okay";
    482
    483	pinctrl-names = "default";
    484	pinctrl-0 = <&mmc1_pins_default>;
    485
    486	bus-width = <4>;
    487	cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; /* gpio 219 */
    488	no-1-8-v;
    489};
    490
    491&mmc2 {
    492	status = "okay";
    493
    494	pinctrl-names = "default";
    495	pinctrl-0 = <&mmc2_pins_default>;
    496
    497	vmmc-supply = <&vdd_3v3>;
    498	vqmmc-supply = <&vdd_3v3>;
    499	bus-width = <8>;
    500	non-removable;
    501	no-1-8-v;
    502};
    503
    504&sata {
    505	status = "okay";
    506};
    507
    508&usb2_phy1 {
    509	phy-supply = <&ldousb_reg>;
    510};
    511
    512&usb2_phy2 {
    513	phy-supply = <&ldousb_reg>;
    514};
    515
    516&usb1 {
    517	dr_mode = "host";
    518};
    519
    520&omap_dwc3_2 {
    521	extcon = <&extcon_usb2>;
    522};
    523
    524&usb2 {
    525	/*
    526	 * Stand alone usage is peripheral only.
    527	 * However, with some resistor modifications
    528	 * this port can be used via expansion connectors
    529	 * as "host" or "dual-role". If so, provide
    530	 * the necessary dr_mode override in the expansion
    531	 * board's DT.
    532	 */
    533	dr_mode = "peripheral";
    534};
    535
    536&cpu_trips {
    537	cpu_alert1: cpu_alert1 {
    538		temperature = <50000>; /* millicelsius */
    539		hysteresis = <2000>; /* millicelsius */
    540		type = "active";
    541	};
    542};
    543
    544&cpu_cooling_maps {
    545	map1 {
    546		trip = <&cpu_alert1>;
    547		cooling-device = <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
    548	};
    549};
    550
    551&thermal_zones {
    552	board_thermal: board_thermal {
    553		polling-delay-passive = <1250>; /* milliseconds */
    554		polling-delay = <1500>; /* milliseconds */
    555
    556				/* sensor       ID */
    557		thermal-sensors = <&tmp102     0>;
    558
    559		board_trips: trips {
    560			board_alert0: board_alert {
    561				temperature = <40000>; /* millicelsius */
    562				hysteresis = <2000>; /* millicelsius */
    563				type = "active";
    564			};
    565
    566			board_crit: board_crit {
    567				temperature = <105000>; /* millicelsius */
    568				hysteresis = <0>; /* millicelsius */
    569				type = "critical";
    570			};
    571		};
    572
    573		board_cooling_maps: cooling-maps {
    574			map0 {
    575				trip = <&board_alert0>;
    576				cooling-device =
    577				  <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
    578			};
    579		};
    580       };
    581};
    582
    583&dss {
    584	status = "okay";
    585
    586	vdda_video-supply = <&ldoln_reg>;
    587};
    588
    589&hdmi {
    590	status = "okay";
    591	vdda-supply = <&ldo4_reg>;
    592
    593	port {
    594		hdmi_out: endpoint {
    595			remote-endpoint = <&tpd12s015_in>;
    596		};
    597	};
    598};
    599
    600&pcie1_rc {
    601	status = "okay";
    602	gpios = <&gpio2 8 GPIO_ACTIVE_LOW>;
    603};
    604
    605&mcasp3 {
    606	#sound-dai-cells = <0>;
    607	assigned-clocks = <&l4per2_clkctrl DRA7_L4PER2_MCASP3_CLKCTRL 24>;
    608	assigned-clock-parents = <&sys_clkin2>;
    609	status = "okay";
    610
    611	op-mode = <0>;	/* MCASP_IIS_MODE */
    612	tdm-slots = <2>;
    613	/* 4 serializers */
    614	serial-dir = <	/* 0: INACTIVE, 1: TX, 2: RX */
    615		1 2 0 0
    616	>;
    617	tx-num-evt = <32>;
    618	rx-num-evt = <32>;
    619};
    620
    621&ipu2 {
    622	status = "okay";
    623	memory-region = <&ipu2_memory_region>;
    624};
    625
    626&ipu1 {
    627	status = "okay";
    628	memory-region = <&ipu1_memory_region>;
    629};
    630
    631&dsp1 {
    632	status = "okay";
    633	memory-region = <&dsp1_memory_region>;
    634};
    635
    636&dsp2 {
    637	status = "okay";
    638	memory-region = <&dsp2_memory_region>;
    639};
    640
    641&pruss1_mdio {
    642	status = "disabled";
    643};
    644
    645&pruss2_mdio {
    646	status = "disabled";
    647};