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

imx28-cfa10049.dts (9670B)


      1// SPDX-License-Identifier: GPL-2.0-or-later
      2/*
      3 * Copyright 2012 Free Electrons
      4 */
      5
      6/*
      7 * The CFA-10049 is an expansion board for the CFA-10036 module, thus we
      8 * need to include the CFA-10036 DTS.
      9 */
     10#include "imx28-cfa10036.dts"
     11
     12/ {
     13	model = "Crystalfontz CFA-10049 Board";
     14	compatible = "crystalfontz,cfa10049", "crystalfontz,cfa10036", "fsl,imx28";
     15
     16	i2cmux {
     17		compatible = "i2c-mux-gpio";
     18		#address-cells = <1>;
     19		#size-cells = <0>;
     20		pinctrl-names = "default";
     21		pinctrl-0 = <&i2cmux_pins_cfa10049>;
     22		mux-gpios = <&gpio1 22 0 &gpio1 23 0>;
     23		i2c-parent = <&i2c1>;
     24
     25		i2c@0 {
     26			#address-cells = <1>;
     27			#size-cells = <0>;
     28			reg = <0>;
     29
     30			adc0: nau7802@2a {
     31				compatible = "nuvoton,nau7802";
     32				reg = <0x2a>;
     33				nuvoton,vldo = <3000>;
     34			};
     35		};
     36
     37		i2c@1 {
     38			#address-cells = <1>;
     39			#size-cells = <0>;
     40			reg = <1>;
     41
     42			adc1: nau7802@2a {
     43				compatible = "nuvoton,nau7802";
     44				reg = <0x2a>;
     45				nuvoton,vldo = <3000>;
     46			};
     47		};
     48
     49		i2c@2 {
     50			#address-cells = <1>;
     51			#size-cells = <0>;
     52			reg = <2>;
     53
     54				adc2: nau7802@2a {
     55				compatible = "nuvoton,nau7802";
     56				reg = <0x2a>;
     57				nuvoton,vldo = <3000>;
     58			};
     59		};
     60
     61		i2c@3 {
     62			reg = <3>;
     63			#address-cells = <1>;
     64			#size-cells = <0>;
     65
     66			pca9555: pca9555@20 {
     67				compatible = "nxp,pca9555";
     68				pinctrl-names = "default";
     69				pinctrl-0 = <&pca_pins_cfa10049>;
     70				interrupt-parent = <&gpio2>;
     71				interrupts = <19 0x2>;
     72				gpio-controller;
     73				#gpio-cells = <2>;
     74				interrupt-controller;
     75				#interrupt-cells = <2>;
     76				reg = <0x20>;
     77			};
     78		};
     79	};
     80
     81	apb@80000000 {
     82		apbh@80000000 {
     83			pinctrl@80018000 {
     84				usb_pins_cfa10049: usb-10049@0 {
     85					reg = <0>;
     86					fsl,pinmux-ids = <
     87						MX28_PAD_GPMI_D07__GPIO_0_7
     88					>;
     89					fsl,drive-strength = <MXS_DRIVE_4mA>;
     90					fsl,voltage = <MXS_VOLTAGE_HIGH>;
     91					fsl,pull-up = <MXS_PULL_DISABLE>;
     92				};
     93
     94				i2cmux_pins_cfa10049: i2cmux-10049@0 {
     95					reg = <0>;
     96					fsl,pinmux-ids = <
     97						MX28_PAD_LCD_D22__GPIO_1_22
     98						MX28_PAD_LCD_D23__GPIO_1_23
     99					>;
    100					fsl,drive-strength = <MXS_DRIVE_4mA>;
    101					fsl,voltage = <MXS_VOLTAGE_HIGH>;
    102					fsl,pull-up = <MXS_PULL_DISABLE>;
    103				};
    104
    105				mac0_pins_cfa10049: mac0-10049@0 {
    106					reg = <0>;
    107					fsl,pinmux-ids = <
    108						MX28_PAD_SSP2_SS2__GPIO_2_21
    109					>;
    110					fsl,drive-strength = <MXS_DRIVE_4mA>;
    111					fsl,voltage = <MXS_VOLTAGE_HIGH>;
    112					fsl,pull-up = <MXS_PULL_DISABLE>;
    113				};
    114
    115				pca_pins_cfa10049: pca-10049@0 {
    116					reg = <0>;
    117					fsl,pinmux-ids = <
    118						MX28_PAD_SSP2_SS0__GPIO_2_19
    119					>;
    120					fsl,drive-strength = <MXS_DRIVE_4mA>;
    121					fsl,voltage = <MXS_VOLTAGE_HIGH>;
    122					fsl,pull-up = <MXS_PULL_ENABLE>;
    123				};
    124
    125				rotary_pins_cfa10049: rotary-10049@0 {
    126					reg = <0>;
    127					fsl,pinmux-ids = <
    128						MX28_PAD_I2C0_SCL__GPIO_3_24
    129						MX28_PAD_I2C0_SDA__GPIO_3_25
    130					>;
    131					fsl,drive-strength = <MXS_DRIVE_4mA>;
    132					fsl,voltage = <MXS_VOLTAGE_HIGH>;
    133					fsl,pull-up = <MXS_PULL_ENABLE>;
    134				};
    135
    136				rotary_btn_pins_cfa10049: rotary-btn-10049@0 {
    137					reg = <0>;
    138					fsl,pinmux-ids = <
    139						MX28_PAD_SAIF1_SDATA0__GPIO_3_26
    140					>;
    141					fsl,drive-strength = <MXS_DRIVE_4mA>;
    142					fsl,voltage = <MXS_VOLTAGE_HIGH>;
    143					fsl,pull-up = <MXS_PULL_ENABLE>;
    144				};
    145
    146				spi2_pins_cfa10049: spi2-cfa10049@0 {
    147					reg = <0>;
    148					fsl,pinmux-ids = <
    149						MX28_PAD_SSP2_SCK__GPIO_2_16
    150						MX28_PAD_SSP2_MOSI__GPIO_2_17
    151						MX28_PAD_SSP2_MISO__GPIO_2_18
    152						MX28_PAD_AUART1_TX__GPIO_3_5
    153					>;
    154					fsl,drive-strength = <MXS_DRIVE_8mA>;
    155					fsl,voltage = <MXS_VOLTAGE_HIGH>;
    156					fsl,pull-up = <MXS_PULL_ENABLE>;
    157				};
    158
    159				spi3_pins_cfa10049: spi3-cfa10049@0 {
    160					reg = <0>;
    161					fsl,pinmux-ids = <
    162						MX28_PAD_GPMI_RDN__GPIO_0_24
    163						MX28_PAD_GPMI_RESETN__GPIO_0_28
    164						MX28_PAD_GPMI_CE1N__GPIO_0_17
    165						MX28_PAD_GPMI_ALE__GPIO_0_26
    166						MX28_PAD_GPMI_CLE__GPIO_0_27
    167					>;
    168					fsl,drive-strength = <MXS_DRIVE_8mA>;
    169					fsl,voltage = <MXS_VOLTAGE_HIGH>;
    170					fsl,pull-up = <MXS_PULL_ENABLE>;
    171				};
    172
    173				lcdif_18bit_pins_cfa10049: lcdif-18bit@0 {
    174					reg = <0>;
    175					fsl,pinmux-ids = <
    176						MX28_PAD_LCD_D00__LCD_D0
    177						MX28_PAD_LCD_D01__LCD_D1
    178						MX28_PAD_LCD_D02__LCD_D2
    179						MX28_PAD_LCD_D03__LCD_D3
    180						MX28_PAD_LCD_D04__LCD_D4
    181						MX28_PAD_LCD_D05__LCD_D5
    182						MX28_PAD_LCD_D06__LCD_D6
    183						MX28_PAD_LCD_D07__LCD_D7
    184						MX28_PAD_LCD_D08__LCD_D8
    185						MX28_PAD_LCD_D09__LCD_D9
    186						MX28_PAD_LCD_D10__LCD_D10
    187						MX28_PAD_LCD_D11__LCD_D11
    188						MX28_PAD_LCD_D12__LCD_D12
    189						MX28_PAD_LCD_D13__LCD_D13
    190						MX28_PAD_LCD_D14__LCD_D14
    191						MX28_PAD_LCD_D15__LCD_D15
    192						MX28_PAD_LCD_D16__LCD_D16
    193						MX28_PAD_LCD_D17__LCD_D17
    194					>;
    195					fsl,drive-strength = <MXS_DRIVE_4mA>;
    196					fsl,voltage = <MXS_VOLTAGE_HIGH>;
    197					fsl,pull-up = <MXS_PULL_DISABLE>;
    198				};
    199
    200				lcdif_pins_cfa10049: lcdif-evk@0 {
    201					reg = <0>;
    202					fsl,pinmux-ids = <
    203						MX28_PAD_LCD_RD_E__LCD_VSYNC
    204						MX28_PAD_LCD_WR_RWN__LCD_HSYNC
    205						MX28_PAD_LCD_RS__LCD_DOTCLK
    206						MX28_PAD_LCD_CS__LCD_ENABLE
    207					>;
    208					fsl,drive-strength = <MXS_DRIVE_4mA>;
    209					fsl,voltage = <MXS_VOLTAGE_HIGH>;
    210					fsl,pull-up = <MXS_PULL_DISABLE>;
    211				};
    212
    213				lcdif_pins_cfa10049_pullup: lcdif-10049-pullup@0 {
    214					reg = <0>;
    215					fsl,pinmux-ids = <
    216						MX28_PAD_LCD_RESET__GPIO_3_30
    217					>;
    218					fsl,drive-strength = <MXS_DRIVE_4mA>;
    219					fsl,voltage = <MXS_VOLTAGE_HIGH>;
    220					fsl,pull-up = <MXS_PULL_ENABLE>;
    221				};
    222
    223				w1_gpio_pins: w1-gpio@0 {
    224					reg = <0>;
    225					fsl,pinmux-ids = <
    226						MX28_PAD_LCD_D21__GPIO_1_21
    227					>;
    228					fsl,drive-strength = <MXS_DRIVE_8mA>;
    229					fsl,voltage = <MXS_VOLTAGE_HIGH>;
    230					fsl,pull-up = <MXS_PULL_DISABLE>; /* 0 will enable the keeper */
    231				};
    232			};
    233
    234			lcdif@80030000 {
    235				pinctrl-names = "default";
    236				pinctrl-0 = <&lcdif_18bit_pins_cfa10049
    237					     &lcdif_pins_cfa10049
    238					     &lcdif_pins_cfa10049_pullup>;
    239				display = <&display0>;
    240				status = "okay";
    241
    242				display0: display0 {
    243					bits-per-pixel = <32>;
    244					bus-width = <18>;
    245
    246					display-timings {
    247						native-mode = <&timing0>;
    248						timing0: timing0 {
    249							clock-frequency = <9216000>;
    250							hactive = <320>;
    251							vactive = <480>;
    252							hback-porch = <2>;
    253							hfront-porch = <2>;
    254							vback-porch = <2>;
    255							vfront-porch = <2>;
    256							hsync-len = <15>;
    257							vsync-len = <15>;
    258							hsync-active = <0>;
    259							vsync-active = <0>;
    260							de-active = <1>;
    261							pixelclk-active = <1>;
    262						};
    263					};
    264				};
    265			};
    266		};
    267
    268		apbx@80040000 {
    269			pwm: pwm@80064000 {
    270				pinctrl-names = "default";
    271				pinctrl-0 = <&pwm3_pins_b>;
    272				status = "okay";
    273			};
    274
    275			i2c1: i2c@8005a000 {
    276				pinctrl-names = "default";
    277				pinctrl-0 = <&i2c1_pins_a>;
    278				status = "okay";
    279			};
    280
    281			usbphy1: usbphy@8007e000 {
    282				status = "okay";
    283			};
    284
    285			lradc@80050000 {
    286				status = "okay";
    287				fsl,lradc-touchscreen-wires = <4>;
    288			};
    289		};
    290	};
    291
    292	ahb@80080000 {
    293		usb1: usb@80090000 {
    294			vbus-supply = <&reg_usb1_vbus>;
    295			pinctrl-0 = <&usb1_pins_a>;
    296			pinctrl-names = "default";
    297			status = "okay";
    298		};
    299	};
    300
    301	regulators {
    302		compatible = "simple-bus";
    303		#address-cells = <1>;
    304		#size-cells = <0>;
    305
    306		reg_usb1_vbus: regulator@0 {
    307			compatible = "regulator-fixed";
    308			reg = <0>;
    309			pinctrl-names = "default";
    310			pinctrl-0 = <&usb_pins_cfa10049>;
    311			regulator-name = "usb1_vbus";
    312			regulator-min-microvolt = <5000000>;
    313			regulator-max-microvolt = <5000000>;
    314			gpio = <&gpio0 7 1>;
    315		};
    316	};
    317
    318	ahb@80080000 {
    319		mac0: ethernet@800f0000 {
    320			phy-mode = "rmii";
    321			pinctrl-names = "default";
    322			pinctrl-0 = <&mac0_pins_a
    323				&mac0_pins_cfa10049>;
    324			phy-reset-gpios = <&gpio2 21 GPIO_ACTIVE_LOW>;
    325			phy-reset-duration = <100>;
    326			status = "okay";
    327		};
    328	};
    329
    330	spi2 {
    331		compatible = "spi-gpio";
    332		pinctrl-names = "default";
    333		pinctrl-0 = <&spi2_pins_cfa10049>;
    334		status = "okay";
    335		gpio-sck = <&gpio2 16 0>;
    336		gpio-mosi = <&gpio2 17 0>;
    337		gpio-miso = <&gpio2 18 0>;
    338		cs-gpios = <&gpio3 5 0>;
    339		num-chipselects = <1>;
    340		#address-cells = <1>;
    341		#size-cells = <0>;
    342
    343		hx8357: hx8357@0 {
    344			compatible = "himax,hx8357b", "himax,hx8357";
    345			reg = <0>;
    346			spi-max-frequency = <100000>;
    347			spi-cpol;
    348			spi-cpha;
    349			gpios-reset = <&gpio3 30 0>;
    350			im-gpios = <&gpio5 4 0 &gpio5 5 0 &gpio5 6 0>;
    351		};
    352	};
    353
    354	spi3 {
    355		compatible = "spi-gpio";
    356		pinctrl-names = "default";
    357		pinctrl-0 = <&spi3_pins_cfa10049>;
    358		status = "okay";
    359		gpio-sck = <&gpio0 24 0>;
    360		gpio-mosi = <&gpio0 28 0>;
    361		cs-gpios = <&gpio0 17 0 &gpio0 26 0 &gpio0 27 0>;
    362		num-chipselects = <3>;
    363		#address-cells = <1>;
    364		#size-cells = <0>;
    365
    366		gpio5: gpio5@0 {
    367			compatible = "fairchild,74hc595";
    368			gpio-controller;
    369			#gpio-cells = <2>;
    370			reg = <0>;
    371			registers-number = <2>;
    372			spi-max-frequency = <100000>;
    373		};
    374
    375		gpio6: gpio6@1 {
    376			compatible = "fairchild,74hc595";
    377			gpio-controller;
    378			#gpio-cells = <2>;
    379			reg = <1>;
    380			registers-number = <4>;
    381			spi-max-frequency = <100000>;
    382		};
    383
    384		dac0: dh2228@2 {
    385			compatible = "rohm,dh2228fv";
    386			reg = <2>;
    387			spi-max-frequency = <100000>;
    388		};
    389	};
    390
    391	gpio_keys {
    392		compatible = "gpio-keys";
    393		pinctrl-names = "default";
    394		pinctrl-0 = <&rotary_btn_pins_cfa10049>;
    395
    396		rotary_button {
    397			label = "rotary_button";
    398			gpios = <&gpio3 26 1>;
    399			debounce-interval = <10>;
    400			linux,code = <28>;
    401		};
    402	};
    403
    404	rotary {
    405		compatible = "rotary-encoder";
    406		pinctrl-names = "default";
    407		pinctrl-0 = <&rotary_pins_cfa10049>;
    408		gpios = <&gpio3 24 1>, <&gpio3 25 1>;
    409		linux,axis = <1>; /* REL_Y */
    410		rotary-encoder,relative-axis;
    411	};
    412
    413	backlight {
    414		compatible = "pwm-backlight";
    415		pwms = <&pwm 3 5000000>;
    416		brightness-levels = <0 4 8 16 32 64 128 255>;
    417		default-brightness-level = <6>;
    418
    419	};
    420
    421	onewire {
    422		compatible = "w1-gpio";
    423		pinctrl-names = "default";
    424		pinctrl-0 = <&w1_gpio_pins>;
    425		status = "okay";
    426		gpios = <&gpio1 21 0>;
    427	};
    428};