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

am5729-beagleboneai.dts (14431B)


      1// SPDX-License-Identifier: GPL-2.0
      2/*
      3 * Copyright (C) 2014-2019 Texas Instruments Incorporated - http://www.ti.com/
      4 */
      5
      6/dts-v1/;
      7
      8#include "dra74x.dtsi"
      9#include "am57xx-commercial-grade.dtsi"
     10#include "dra74x-mmc-iodelay.dtsi"
     11#include "dra74-ipu-dsp-common.dtsi"
     12#include <dt-bindings/gpio/gpio.h>
     13#include <dt-bindings/interrupt-controller/irq.h>
     14#include <dt-bindings/pinctrl/dra.h>
     15
     16/ {
     17	model = "BeagleBoard.org BeagleBone AI";
     18	compatible = "beagle,am5729-beagleboneai", "ti,am5728",
     19		     "ti,dra742", "ti,dra74", "ti,dra7";
     20
     21	aliases {
     22		rtc0 = &tps659038_rtc;
     23		rtc1 = &rtc;
     24		display0 = &hdmi_conn;
     25	};
     26
     27	chosen {
     28		stdout-path = &uart1;
     29	};
     30
     31	memory@0 {
     32		device_type = "memory";
     33		reg = <0x0 0x80000000 0x0 0x40000000>;
     34	};
     35
     36	reserved-memory {
     37		#address-cells = <2>;
     38		#size-cells = <2>;
     39		ranges;
     40
     41		ipu2_memory_region: ipu2-memory@95800000 {
     42			compatible = "shared-dma-pool";
     43			reg = <0x0 0x95800000 0x0 0x3800000>;
     44			reusable;
     45			status = "okay";
     46		};
     47
     48		dsp1_memory_region: dsp1-memory@99000000 {
     49			compatible = "shared-dma-pool";
     50			reg = <0x0 0x99000000 0x0 0x4000000>;
     51			reusable;
     52			status = "okay";
     53		};
     54
     55		ipu1_memory_region: ipu1-memory@9d000000 {
     56			compatible = "shared-dma-pool";
     57			reg = <0x0 0x9d000000 0x0 0x2000000>;
     58			reusable;
     59			status = "okay";
     60		};
     61
     62		dsp2_memory_region: dsp2-memory@9f000000 {
     63			compatible = "shared-dma-pool";
     64			reg = <0x0 0x9f000000 0x0 0x800000>;
     65			reusable;
     66			status = "okay";
     67		};
     68
     69	};
     70
     71	vdd_adc: gpioregulator-vdd_adc {
     72		compatible = "regulator-gpio";
     73		regulator-name = "vdd_adc";
     74		vin-supply = <&vdd_5v>;
     75		regulator-min-microvolt = <1800000>;
     76		regulator-max-microvolt = <3300000>;
     77		regulator-always-on;
     78		regulator-boot-on;
     79		gpios = <&gpio3 27 GPIO_ACTIVE_HIGH>;
     80		states = <1800000 0
     81			3300000 1>;
     82	};
     83
     84	vdd_5v: fixedregulator-vdd_5v {
     85		compatible = "regulator-fixed";
     86		regulator-name = "vdd_5v";
     87		regulator-min-microvolt = <5000000>;
     88		regulator-max-microvolt = <5000000>;
     89		regulator-always-on;
     90		regulator-boot-on;
     91	};
     92
     93	vtt_fixed: fixedregulator-vtt {
     94		/* TPS51200 */
     95		compatible = "regulator-fixed";
     96		regulator-name = "vtt_fixed";
     97		vin-supply = <&vdd_ddr>;
     98		regulator-min-microvolt = <3300000>;
     99		regulator-max-microvolt = <3300000>;
    100		regulator-always-on;
    101		regulator-boot-on;
    102	};
    103
    104	leds {
    105		compatible = "gpio-leds";
    106
    107		led0 {
    108			label = "beaglebone:green:usr0";
    109			gpios = <&gpio3 17 GPIO_ACTIVE_HIGH>;
    110			linux,default-trigger = "heartbeat";
    111			default-state = "off";
    112		};
    113
    114		led1 {
    115			label = "beaglebone:green:usr1";
    116			gpios = <&gpio5 5 GPIO_ACTIVE_HIGH>;
    117			linux,default-trigger = "mmc0";
    118			default-state = "off";
    119		};
    120
    121		led2 {
    122			label = "beaglebone:green:usr2";
    123			gpios = <&gpio3 15 GPIO_ACTIVE_HIGH>;
    124			linux,default-trigger = "cpu";
    125			default-state = "off";
    126		};
    127
    128		led3 {
    129			label = "beaglebone:green:usr3";
    130			gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>;
    131			linux,default-trigger = "mmc1";
    132			default-state = "off";
    133		};
    134
    135		led4 {
    136			label = "beaglebone:green:usr4";
    137			gpios = <&gpio3 7 GPIO_ACTIVE_HIGH>;
    138			linux,default-trigger = "netdev";
    139			default-state = "off";
    140		};
    141	};
    142
    143	hdmi_conn: connector@0 {
    144		compatible = "hdmi-connector";
    145		label = "hdmi";
    146		type = "a";
    147
    148		port {
    149			hdmi_connector_in: endpoint {
    150				remote-endpoint = <&hdmi_encoder_out>;
    151			};
    152		};
    153	};
    154
    155	hdmi_enc: encoder@0 {
    156		/* "ti,tpd12s016" software compatible with "ti,tpd12s015"
    157		 *  no need for individual driver
    158		 */
    159		compatible = "ti,tpd12s015";
    160		gpios = <0>,
    161			<0>,
    162			<&gpio7 12 GPIO_ACTIVE_HIGH>;
    163
    164		ports {
    165			#address-cells = <0x1>;
    166			#size-cells = <0x0>;
    167
    168			port@0 {
    169				reg = <0x0>;
    170
    171				hdmi_encoder_in: endpoint@0 {
    172					remote-endpoint = <&hdmi_out>;
    173				};
    174			};
    175
    176			port@1 {
    177				reg = <0x1>;
    178
    179				hdmi_encoder_out: endpoint@0 {
    180					remote-endpoint = <&hdmi_connector_in>;
    181				};
    182			};
    183		};
    184	};
    185
    186	emmc_pwrseq: emmc_pwrseq {
    187		compatible = "mmc-pwrseq-emmc";
    188		reset-gpios = <&gpio5 7 GPIO_ACTIVE_LOW>;
    189	};
    190
    191	brcmf_pwrseq: brcmf_pwrseq {
    192		compatible = "mmc-pwrseq-simple";
    193		reset-gpios = <&gpio3 22 GPIO_ACTIVE_LOW>,	/* BT-REG-ON */
    194				<&gpio3 18 GPIO_ACTIVE_LOW>;	/* WL-REG-ON */
    195	};
    196
    197	extcon_usb1: extcon_usb1 {
    198		compatible = "linux,extcon-usb-gpio";
    199		ti,enable-id-detection;
    200		id-gpio = <&gpio3 13 GPIO_ACTIVE_HIGH>;
    201	};
    202};
    203
    204&i2c1 {
    205	status = "okay";
    206	clock-frequency = <400000>;
    207
    208	tps659038: tps659038@58 {
    209		compatible = "ti,tps659038";
    210		reg = <0x58>;
    211		interrupt-parent = <&gpio6>;
    212		interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
    213
    214		#interrupt-cells = <2>;
    215		interrupt-controller;
    216
    217		ti,system-power-controller;
    218		ti,palmas-override-powerhold;
    219
    220		tps659038_pmic {
    221			compatible = "ti,tps659038-pmic";
    222
    223			smps12-in-supply = <&vdd_5v>;
    224			smps3-in-supply = <&vdd_5v>;
    225			smps45-in-supply = <&vdd_5v>;
    226			smps6-in-supply = <&vdd_5v>;
    227			smps7-in-supply = <&vdd_5v>;
    228			mps3-in-supply = <&vdd_5v>;
    229			smps8-in-supply = <&vdd_5v>;
    230			smps9-in-supply = <&vdd_5v>;
    231			ldo1-in-supply = <&vdd_5v>;
    232			ldo2-in-supply = <&vdd_5v>;
    233			ldo3-in-supply = <&vdd_5v>;
    234			ldo4-in-supply = <&vdd_5v>;
    235			ldo9-in-supply = <&vdd_5v>;
    236			ldoln-in-supply = <&vdd_5v>;
    237			ldousb-in-supply = <&vdd_5v>;
    238			ldortc-in-supply = <&vdd_5v>;
    239
    240			regulators {
    241				vdd_mpu: smps12 {
    242					/* VDD_MPU */
    243					regulator-name = "smps12";
    244					regulator-min-microvolt = <850000>;
    245					regulator-max-microvolt = <1250000>;
    246					regulator-always-on;
    247					regulator-boot-on;
    248				};
    249
    250				vdd_ddr: smps3 {
    251					/* VDD_DDR EMIF1 EMIF2 */
    252					regulator-name = "smps3";
    253					regulator-min-microvolt = <1350000>;
    254					regulator-max-microvolt = <1350000>;
    255					regulator-always-on;
    256					regulator-boot-on;
    257				};
    258
    259				vdd_dspeve: smps45 {
    260					/* VDD_DSPEVE on AM572 */
    261					regulator-name = "smps45";
    262					regulator-min-microvolt = < 850000>;
    263					regulator-max-microvolt = <1250000>;
    264					regulator-always-on;
    265					regulator-boot-on;
    266				};
    267
    268				vdd_gpu: smps6 {
    269					/* VDD_GPU */
    270					regulator-name = "smps6";
    271					regulator-min-microvolt = < 850000>;
    272					regulator-max-microvolt = <1250000>;
    273					regulator-always-on;
    274					regulator-boot-on;
    275				};
    276
    277				vdd_core: smps7 {
    278					/* VDD_CORE */
    279					regulator-name = "smps7";
    280					regulator-min-microvolt = < 850000>;	/*** 1.15V */
    281					regulator-max-microvolt = <1150000>;
    282					regulator-always-on;
    283					regulator-boot-on;
    284				};
    285
    286				vdd_iva: smps8 {
    287					/* VDD_IVAHD */				/*** 1.06V */
    288					regulator-name = "smps8";
    289				};
    290
    291				vdd_3v3: smps9 {
    292					/* VDD_3V3 */
    293					regulator-name = "smps9";
    294					regulator-min-microvolt = <3300000>;
    295					regulator-max-microvolt = <3300000>;
    296					regulator-always-on;
    297					regulator-boot-on;
    298				};
    299
    300				vdd_sd: ldo1 {
    301					/* VDDSHV8 - VSDMMC  */
    302					regulator-name = "ldo1";
    303					regulator-min-microvolt = <1800000>;
    304					regulator-max-microvolt = <3300000>;
    305					regulator-boot-on;
    306					regulator-always-on;
    307				};
    308
    309				vdd_1v8: ldo2 {
    310					/* VDDSH18V */
    311					regulator-name = "ldo2";
    312					regulator-min-microvolt = <1800000>;
    313					regulator-max-microvolt = <1800000>;
    314					regulator-always-on;
    315					regulator-boot-on;
    316				};
    317
    318				vdd_1v8_phy_ldo3: ldo3 {
    319					/* R1.3a 572x V1_8PHY_LDO3: USB, SATA */
    320					regulator-name = "ldo3";
    321					regulator-min-microvolt = <1800000>;
    322					regulator-max-microvolt = <1800000>;
    323					regulator-always-on;
    324					regulator-boot-on;
    325				};
    326
    327				vdd_1v8_phy_ldo4: ldo4 {
    328					/* R1.3a 572x V1_8PHY_LDO4: PCIE, HDMI*/
    329					regulator-name = "ldo4";
    330					regulator-min-microvolt = <1800000>;
    331					regulator-max-microvolt = <1800000>;
    332					regulator-always-on;
    333					regulator-boot-on;
    334				};
    335
    336				/* LDO5-8 unused */
    337
    338				vdd_rtc: ldo9 {
    339					/* VDD_RTC  */
    340					regulator-name = "ldo9";
    341					regulator-min-microvolt = < 840000>;
    342					regulator-max-microvolt = <1160000>;
    343					regulator-always-on;
    344					regulator-boot-on;
    345				};
    346
    347				vdd_1v8_pll: ldoln {
    348					/* VDDA_1V8_PLL */
    349					regulator-name = "ldoln";
    350					regulator-min-microvolt = <1800000>;
    351					regulator-max-microvolt = <1800000>;
    352					regulator-always-on;
    353					regulator-boot-on;
    354				};
    355
    356				ldousb_reg: ldousb {
    357					/* VDDA_3V_USB: VDDA_USBHS33 */
    358					regulator-name = "ldousb";
    359					regulator-min-microvolt = <3300000>;
    360					regulator-max-microvolt = <3300000>;
    361					regulator-always-on;
    362					regulator-boot-on;
    363				};
    364
    365				ldortc_reg: ldortc {
    366					/* VDDA_RTC  */
    367					regulator-name = "ldortc";
    368					regulator-min-microvolt = <1800000>;
    369					regulator-max-microvolt = <1800000>;
    370					regulator-always-on;
    371					regulator-boot-on;
    372				};
    373
    374				regen1: regen1 {
    375					/* VDD_3V3_ON */
    376					regulator-name = "regen1";
    377					regulator-boot-on;
    378					regulator-always-on;
    379				};
    380
    381				regen2: regen2 {
    382					/* Needed for PMIC internal resource */
    383					regulator-name = "regen2";
    384					regulator-boot-on;
    385					regulator-always-on;
    386				};
    387			};
    388		};
    389
    390		tps659038_rtc: tps659038_rtc {
    391			compatible = "ti,palmas-rtc";
    392			interrupt-parent = <&tps659038>;
    393			interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
    394			wakeup-source;
    395		};
    396
    397		tps659038_pwr_button: tps659038_pwr_button {
    398			compatible = "ti,palmas-pwrbutton";
    399			interrupt-parent = <&tps659038>;
    400			interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
    401			wakeup-source;
    402			ti,palmas-long-press-seconds = <12>;
    403		};
    404
    405		tps659038_gpio: tps659038_gpio {
    406			compatible = "ti,palmas-gpio";
    407			gpio-controller;
    408			#gpio-cells = <2>;
    409		};
    410	};
    411
    412	/* STMPE811 touch screen controller */
    413	stmpe811@41 {
    414		compatible = "st,stmpe811";
    415		reg = <0x41>;
    416		interrupts = <30 IRQ_TYPE_LEVEL_LOW>;
    417		interrupt-parent = <&gpio2>;
    418		interrupt-controller;
    419		id = <0>;
    420		blocks = <0x5>;
    421		irq-trigger = <0x1>;
    422		st,mod-12b = <1>; /* 12-bit ADC */
    423		st,ref-sel = <0>; /* internal ADC reference */
    424		st,adc-freq = <1>; /* 3.25 MHz ADC clock speed */
    425		st,sample-time = <4>; /* ADC converstion time: 80 clocks */
    426
    427		stmpe_adc {
    428			compatible = "st,stmpe-adc";
    429			st,norequest-mask = <0x00>; /* mask any channels to be used by touchscreen */
    430			adc0: iio-device@0 {
    431				#io-channel-cells = <1>;
    432				iio-channels = <&adc0 4>, <&adc0 1>, <&adc0 2>, <&adc0 3>, <&adc0 4>, <&adc0 5>, <&adc0 6>;
    433				iio-channel-names = "AIN0_P9_39", "AIN1_P9_40", "AIN2_P9_37", "AIN3_P9_38",
    434					"AIN4_P9_33", "AIN5_P9_36", "AIN6_P9_35";
    435			};
    436		};
    437
    438		stmpe_touchscreen {
    439			status = "disabled";
    440			compatible = "st,stmpe-ts";
    441			/* 8 sample average control */
    442			st,ave-ctrl = <3>;
    443			/* 7 length fractional part in z */
    444			st,fraction-z = <7>;
    445			/*
    446			 * 50 mA typical 80 mA max touchscreen drivers
    447			 * current limit value
    448			 */
    449			st,i-drive = <1>;
    450			/* 1 ms panel driver settling time */
    451			st,settling = <3>;
    452			/* 5 ms touch detect interrupt delay */
    453			st,touch-det-delay = <5>;
    454		};
    455
    456		stmpe_gpio {
    457			compatible = "st,stmpe-gpio";
    458		};
    459
    460		stmpe_pwm {
    461			compatible = "st,stmpe-pwm";
    462			#pwm-cells = <2>;
    463		};
    464	};
    465};
    466
    467&mcspi3 {
    468	status = "okay";
    469	ti,pindir-d0-out-d1-in;
    470
    471	sn65hvs882: sn65hvs882@0 {
    472		compatible = "pisosr-gpio";
    473		gpio-controller;
    474		#gpio-cells = <2>;
    475
    476		reg = <0>;
    477		spi-max-frequency = <1000000>;
    478		spi-cpol;
    479	};
    480};
    481
    482&cpu0 {
    483	vdd-supply = <&vdd_mpu>;
    484	voltage-tolerance = <1>;
    485};
    486
    487&uart1 {
    488	status = "okay";
    489};
    490
    491&davinci_mdio_sw {
    492	reset-gpios = <&gpio2 23 GPIO_ACTIVE_LOW>;
    493	reset-delay-us = <2>;
    494
    495	phy0: ethernet-phy@4 {
    496		reg = <4>;
    497		eee-broken-100tx;
    498		eee-broken-1000t;
    499	};
    500};
    501
    502&mac_sw {
    503	status = "okay";
    504};
    505
    506&cpsw_port1 {
    507	phy-handle = <&phy0>;
    508	phy-mode = "rgmii-rxid";
    509	ti,dual-emac-pvid = <1>;
    510};
    511
    512&cpsw_port2 {
    513	status = "disabled";
    514};
    515
    516&ocp {
    517	pruss1_shmem: pruss_shmem@4b200000 {
    518		status = "okay";
    519		compatible = "ti,pruss-shmem";
    520		reg = <0x4b200000 0x020000>;
    521	};
    522
    523	pruss2_shmem: pruss_shmem@4b280000 {
    524		status = "okay";
    525		compatible = "ti,pruss-shmem";
    526		reg = <0x4b280000 0x020000>;
    527	};
    528};
    529
    530&mmc1 {
    531	status = "okay";
    532	vmmc-supply = <&vdd_3v3>;
    533	vqmmc-supply = <&vdd_sd>;
    534	bus-width = <4>;
    535	cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; /* gpio 219 */
    536
    537	pinctrl-names = "default";
    538	pinctrl-0 = <&mmc1_pins_default>;
    539};
    540
    541&mmc2 {
    542	status = "okay";
    543	vmmc-supply = <&vdd_1v8>;
    544	vqmmc-supply = <&vdd_1v8>;
    545	bus-width = <8>;
    546	ti,non-removable;
    547	non-removable;
    548	mmc-pwrseq = <&emmc_pwrseq>;
    549
    550	ti,needs-special-reset;
    551	dmas = <&sdma_xbar 47>, <&sdma_xbar 48>;
    552	dma-names = "tx", "rx";
    553
    554};
    555
    556&mmc4 {
    557	/* DS: Default speed (DS) up to 25 MHz, including 1- and 4-bit modes (3.3 V signaling). */
    558	/* HS: High speed up to 50 MHz (3.3 V signaling). */
    559	/* SDR12: SDR up to 25 MHz (1.8 V signaling). */
    560	/* SDR25: SDR up to 50 MHz (1.8 V signaling). */
    561	/* SDR50: SDR up to 100 MHz (1.8 V signaling). */
    562	/* SDR104: SDR up to 208 MHz (1.8 V signaling) */
    563	/* DDR50: DDR up to 50 MHz (1.8 V signaling). */
    564	status = "okay";
    565
    566	ti,needs-special-reset;
    567	vmmc-supply = <&vdd_3v3>;
    568	cap-power-off-card;
    569	keep-power-in-suspend;
    570	bus-width = <4>;
    571	ti,non-removable;
    572	non-removable;
    573	no-1-8-v;
    574	max-frequency = <24000000>;
    575
    576	#address-cells = <1>;
    577	#size-cells = <0>;
    578	mmc-pwrseq = <&brcmf_pwrseq>;
    579
    580	brcmf: wifi@1 {
    581		status = "okay";
    582		reg = <1>;
    583		compatible = "brcm,bcm4329-fmac";
    584
    585		brcm,sd-head-align = <4>;
    586		brcm,sd_head_align = <4>;
    587		brcm,sd_sgentry_align = <512>;
    588
    589		interrupt-parent = <&gpio3>;
    590		interrupts = <23 IRQ_TYPE_LEVEL_LOW>;
    591		interrupt-names = "host-wake";
    592	};
    593};
    594
    595&usb2_phy1 {
    596	phy-supply = <&ldousb_reg>;
    597};
    598
    599&usb2_phy2 {
    600	phy-supply = <&ldousb_reg>;
    601};
    602
    603&usb1 {
    604	status = "okay";
    605	dr_mode = "otg";
    606};
    607
    608&omap_dwc3_1 {
    609	extcon = <&extcon_usb1>;
    610};
    611
    612&usb2 {
    613	status = "okay";
    614	dr_mode = "host";
    615};
    616
    617&dss {
    618	status = "okay";
    619	vdda_video-supply = <&vdd_1v8_pll>;
    620};
    621
    622&hdmi {
    623	status = "okay";
    624	vdda-supply = <&vdd_1v8_phy_ldo4>;
    625
    626	port {
    627		hdmi_out: endpoint {
    628			remote-endpoint = <&hdmi_encoder_in>;
    629		};
    630	};
    631};
    632
    633&bandgap {
    634	status = "okay";
    635};
    636
    637&cpu_alert0 {
    638	temperature = <55000>; /* milliCelsius */
    639};
    640
    641&cpu_crit {
    642	temperature = <85000>; /* milliCelsius */
    643};
    644
    645&gpu_crit {
    646	temperature = <85000>; /* milliCelsius */
    647};
    648
    649&core_crit {
    650	temperature = <85000>; /* milliCelsius */
    651};
    652
    653&dspeve_crit {
    654	temperature = <85000>; /* milliCelsius */
    655};
    656
    657&iva_crit {
    658	temperature = <85000>; /* milliCelsius */
    659};
    660
    661&sata {
    662	status = "disabled";
    663};
    664
    665&sata_phy {
    666	status = "disabled";
    667};
    668
    669/* bluetooth */
    670&uart6 {
    671	status = "okay";
    672};
    673
    674/* cape header stuff */
    675&i2c4 {
    676	status = "okay";
    677	clock-frequency = <100000>;
    678};
    679
    680&cpu0_opp_table {
    681	opp_slow-500000000 {
    682		opp-shared;
    683	};
    684};
    685
    686&ipu2 {
    687	status = "okay";
    688	memory-region = <&ipu2_memory_region>;
    689};
    690
    691&ipu1 {
    692	status = "okay";
    693	memory-region = <&ipu1_memory_region>;
    694};
    695
    696&dsp1 {
    697	status = "okay";
    698	memory-region = <&dsp1_memory_region>;
    699};
    700
    701&dsp2 {
    702	status = "okay";
    703	memory-region = <&dsp2_memory_region>;
    704};