blob: 6e5fb074198bfc057209a0071f3b89628190eaeb [file] [log] [blame]
// SPDX-License-Identifier: (GPL-2.0 OR MIT)
/*
* Copyright (C) 2018 Synaptics Incorporated
*
* Author: Jisheng Zhang <jszhang@kernel.org>
*/
/dts-v1/;
/memreserve/ 0xbff00000 0x00100000;
#include <dt-bindings/gpio/gpio.h>
#include "as390.dtsi"
/ {
model = "Synaptics AS390 PEK";
compatible = "syna,as390-pek", "syna,as390";
chosen {
bootargs = "console=ttyS0,115200";
};
memory {
device_type = "memory";
reg = <0 0x81000000 0 0x3f000000>;
};
regulators {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
reg_usb0_vbus: usb0_vbus {
compatible = "regulator-fixed";
regulator-name = "usb0_vbus";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&expander0 4 GPIO_ACTIVE_HIGH>;
enable-active-high;
};
};
};
&gpio2 {
nand_sel {
gpio-hog;
gpios = <4 GPIO_ACTIVE_HIGH>;
output-high;
};
};
&i3c0 {
status = "okay";
pinctrl-0 = <&i3c0_pmux>;
pinctrl-names = "default";
i2c-scl-hz = <100000>;
expander0: gpio@38 {
compatible = "nxp,pca9534";
reg = <0x38 0x0 0x10>;
gpio-controller;
#gpio-cells = <2>;
};
};
&i3c1 {
status = "okay";
pinctrl-0 = <&i3c1_pmux>;
pinctrl-names = "default";
i2c-scl-hz = <100000>;
};
&pinctrl {
i3c0_pmux: i3c0-pmux {
groups = "I3C0_SCL", "I3C0_SDA";
function = "i3c0";
};
i3c1_pmux: i3c1-pmux {
groups = "I3C1_SCL", "I3C1_SDA";
function = "i3c1";
};
nand_pmux: nand-pmux {
groups = "NAND_IO0", "NAND_IO1", "NAND_IO2", "NAND_IO3", "NAND_IO4", "NAND_IO5", "NAND_IO6", "NAND_IO7", "NAND_ALE", "NAND_CLE", "NAND_WEn", "NAND_REn", "NAND_WPn", "NAND_CEn", "NAND_RDY";
function = "nand";
};
nand_sel_pmux: nand_sel-pmux {
groups = "LEDPWM1_R";
function = "gpio";
};
};
&uart0 {
status = "okay";
};
&usb_phy0 {
status = "okay";
};
&usb0 {
status = "okay";
vbus-supply = <&reg_usb0_vbus>;
};
&watchdog0 {
status = "okay";
};
&nand0 {
status = "okay";
pinctrl-0 = <&nand_pmux>, <&nand_sel_pmux>;
pinctrl-names = "default";
nand-ecc-step-size = <2048>;
nand-ecc-strength = <48>;
zos-end = <0x1040000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition_block0 {
label = "block0";
reg = <0x00000 0x40000>; /* 256 KiB */
read-only;
};
partition_prebootloader {
label = "pre-bootloader";
reg = <0x040000 0x1000000>; /* 16 MiB */
read-only;
};
partition_tz {
label = "tzk_normal";
reg = <0x1040000 0x800000>; /* 8 MiB */
read-only;
};
partition_tz_b {
label = "tzk_normalB";
reg = <0x1840000 0x800000>; /* 8 MiB */
read-only;
};
partition_bl_normal {
label = "bl_normal";
reg = <0x2040000 0x100000>; /* 1 MiB */
read-only;
};
partition_bl_normal_b {
label = "bl_normalB";
reg = <0x2140000 0x100000>; /* 1 MiB */
read-only;
};
partition_kernel {
label = "boot";
reg = <0x2240000 0xa00000>; /* 10 MiB */
read-only;
};
partition_rootfs {
label = "rootfs";
reg = <0x2c40000 0xa600000>; /* 166 MiB */
};
partition_app {
label = "app";
reg = <0xd240000 0x118c0000>; /* 287,488 KiB */
};
partition_recovery {
label = "recovery";
reg = <0x1eb00000 0xd00000>; /* 13 MiB */
};
partition_fts {
label = "fts";
reg = <0x1f800000 0x100000>; /* 1 MiB */
};
partition_factory_setting {
label = "factory_setting";
reg = <0x1f900000 0x300000>; /* 3 MiB */
};
partition_key_1st {
label = "key_1st";
reg = <0x1fc00000 0x100000>; /* 1 MiB */
};
partition_key_2nd {
label = "key_2nd";
reg = <0x1fd00000 0x100000>; /* 1 MiB */
};
partition_bbt {
label = "bbt";
reg = <0x1fe00000 0x200000>; /* 2 MiB */
read-only;
};
};
};
&aviodrv {
status = "okay";
};