mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 19:30:30 +09:00
dts: modify the remaining 64bit dts to support 32bit [1/1]
PD#SWPL-2046 Problem: some of the remaining 64bit boards do not support 32bit. Solution: modify the dts to support 32bit. Verify: axg, g12a, g12b, gxl, gxm, txl, txlx. Change-Id: I951f8d32b18243a64e2abc5008bbb015c2e21e7a Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
This commit is contained in:
committed by
Dongjin Kim
parent
e0a40550de
commit
c56c864d2c
998
arch/arm/boot/dts/amlogic/axg_a113d_skt.dts
Normal file
998
arch/arm/boot/dts/amlogic/axg_a113d_skt.dts
Normal file
@@ -0,0 +1,998 @@
|
||||
/*
|
||||
* arch/arm/boot/dts/amlogic/axg_a113d_skt.dts
|
||||
*
|
||||
* Copyright (C) 2017 Amlogic, Inc. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "mesonaxg.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Amlogic";
|
||||
amlogic-dt-id = "axg_a113d_skt_v1";
|
||||
compatible = "amlogic, axg";
|
||||
interrupt-parent = <&gic>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
aliases {
|
||||
serial0 = &uart_AO;
|
||||
serial1 = &uart_A;
|
||||
serial2 = &uart_B;
|
||||
serial3 = &uart_AO_B;
|
||||
};
|
||||
|
||||
memory@00000000 {
|
||||
device_type = "memory";
|
||||
linux,usable-memory = <0x100000 0x3ff00000>;
|
||||
};
|
||||
|
||||
reserved-memory {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges;
|
||||
/* global autoconfigured region for contiguous allocations */
|
||||
ramoops@0x07400000 {
|
||||
compatible = "ramoops";
|
||||
reg = <0x07400000 0x00100000>;
|
||||
record-size = <0x8000>;
|
||||
console-size = <0x8000>;
|
||||
ftrace-size = <0x0>;
|
||||
pmsg-size = <0x8000>;
|
||||
};
|
||||
|
||||
secmon_reserved:linux,secmon {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x400000>;
|
||||
alignment = <0x400000>;
|
||||
alloc-ranges = <0x05000000 0x400000>;
|
||||
};
|
||||
|
||||
secos_reserved:linux,secos {
|
||||
status = "disable";
|
||||
compatible = "amlogic, aml_secos_memory";
|
||||
reg = <0x05300000 0x2000000>;
|
||||
no-map;
|
||||
};
|
||||
};
|
||||
|
||||
mtd_nand {
|
||||
compatible = "amlogic, aml_mtd_nand";
|
||||
dev_name = "mtdnand";
|
||||
status = "okay";
|
||||
reg = <0xFFE07800 0x200>;
|
||||
interrupts = < 0 34 1 >;
|
||||
pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_only";
|
||||
pinctrl-0 = <&all_nand_pins>;
|
||||
pinctrl-1 = <&all_nand_pins>;
|
||||
pinctrl-2 = <&nand_cs_pins>;
|
||||
device_id = <0>;
|
||||
|
||||
/*fip/tpl configurations, must be same
|
||||
* with uboot if bl_mode was set as 1
|
||||
* bl_mode: 0 compact mode; 1 descrete mode
|
||||
* if bl_mode was set as 1, fip configeration will work
|
||||
*/
|
||||
bl_mode = <1>;
|
||||
/*copy count of fip*/
|
||||
fip_copies = <4>;
|
||||
/*size of each fip copy */
|
||||
fip_size = <0x200000>;
|
||||
nand_clk_ctrl = <0xFFE07000>;
|
||||
plat-names = "bootloader","nandnormal";
|
||||
plat-num = <2>;
|
||||
plat-part-0 = <&bootloader>;
|
||||
plat-part-1 = <&nandnormal>;
|
||||
bootloader: bootloader{
|
||||
enable_pad ="ce0";
|
||||
busy_pad = "rb0";
|
||||
timming_mode = "mode5";
|
||||
bch_mode = "bch8_1k";
|
||||
t_rea = <20>;
|
||||
t_rhoh = <15>;
|
||||
chip_num = <1>;
|
||||
part_num = <0>;
|
||||
rb_detect = <1>;
|
||||
};
|
||||
nandnormal: nandnormal{
|
||||
enable_pad ="ce0";
|
||||
busy_pad = "rb0";
|
||||
timming_mode = "mode5";
|
||||
bch_mode = "bch8_1k";
|
||||
plane_mode = "twoplane";
|
||||
t_rea = <20>;
|
||||
t_rhoh = <15>;
|
||||
chip_num = <2>;
|
||||
part_num = <3>;
|
||||
partition = <&nand_partitions>;
|
||||
rb_detect = <1>;
|
||||
};
|
||||
nand_partitions:nand_partition{
|
||||
/*
|
||||
* if bl_mode is 1, tpl size was generate by
|
||||
* fip_copies * fip_size which
|
||||
* will not skip bad when calculating
|
||||
* the partition size;
|
||||
*
|
||||
* if bl_mode is 0,
|
||||
* tpl partition must be comment out.
|
||||
*/
|
||||
tpl{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0x0>;
|
||||
};
|
||||
logo{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0x200000>;
|
||||
};
|
||||
recovery{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0x1000000>;
|
||||
};
|
||||
boot{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0xF00000>;
|
||||
};
|
||||
system{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0xDC40000>;
|
||||
};
|
||||
data{
|
||||
offset=<0xffffffff 0xffffffff>;
|
||||
size=<0x0 0x0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
ethmac: ethernet@0xff3f0000 {
|
||||
compatible = "amlogic, gxbb-eth-dwmac";
|
||||
status = "disable";
|
||||
reg = <0xff3f0000 0x10000
|
||||
0xff634540 0x8>;
|
||||
interrupts = <0 8 1>;
|
||||
pinctrl-names = "external_eth_pins";
|
||||
pinctrl-0 = <&external_eth_pins>;
|
||||
mc_val_internal_phy = <0x1800>;
|
||||
mc_val_external_phy = <0x1621>;
|
||||
interrupt-names = "macirq";
|
||||
clocks = <&clkc CLKID_ETH_CORE>;
|
||||
clock-names = "ethclk81";
|
||||
internal_phy=<0>;
|
||||
};
|
||||
|
||||
aml_sensor0: aml-sensor@0 {
|
||||
compatible = "amlogic, aml-thermal";
|
||||
device_name = "thermal";
|
||||
#thermal-sensor-cells = <1>;
|
||||
cooling_devices {
|
||||
cpufreq_cool_cluster0 {
|
||||
min_state = <1000000>;
|
||||
dyn_coeff = <140>;
|
||||
cluster_id = <0>;
|
||||
node_name = "cpufreq_cool0";
|
||||
device_type = "cpufreq";
|
||||
};
|
||||
cpucore_cool_cluster0 {
|
||||
min_state = <1>;
|
||||
dyn_coeff = <0>;
|
||||
cluster_id = <0>;
|
||||
node_name = "cpucore_cool0";
|
||||
device_type = "cpucore";
|
||||
};
|
||||
};
|
||||
cpufreq_cool0:cpufreq_cool0 {
|
||||
#cooling-cells = <2>; /* min followed by max */
|
||||
};
|
||||
cpucore_cool0:cpucore_cool0 {
|
||||
#cooling-cells = <2>; /* min followed by max */
|
||||
};
|
||||
};
|
||||
thermal-zones {
|
||||
soc_thermal {
|
||||
polling-delay = <1000>;
|
||||
polling-delay-passive = <100>;
|
||||
sustainable-power = <1050>;
|
||||
|
||||
thermal-sensors = <&aml_sensor0 3>;
|
||||
|
||||
trips {
|
||||
switch_on: trip-point@0 {
|
||||
temperature = <70000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
control: trip-point@1 {
|
||||
temperature = <80000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
hot: trip-point@2 {
|
||||
temperature = <85000>;
|
||||
hysteresis = <5000>;
|
||||
type = "hot";
|
||||
};
|
||||
critical: trip-point@3 {
|
||||
temperature = <260000>;
|
||||
hysteresis = <1000>;
|
||||
type = "critical";
|
||||
};
|
||||
};
|
||||
|
||||
cooling-maps {
|
||||
cpufreq_cooling_map {
|
||||
trip = <&control>;
|
||||
cooling-device = <&cpufreq_cool0 0 4>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
cpucore_cooling_map {
|
||||
trip = <&control>;
|
||||
cooling-device = <&cpucore_cool0 0 3>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
dwc3: dwc3@ff500000 {
|
||||
compatible = "synopsys, dwc3";
|
||||
status = "okay";
|
||||
reg = <0xff500000 0x100000>;
|
||||
interrupts = <0 30 4>;
|
||||
usb-phy = <&usb2_phy>, <&usb3_phy>;
|
||||
cpu-type = "gxl";
|
||||
clock-src = "usb3.0";
|
||||
clocks = <&clkc CLKID_USB_GENERAL>;
|
||||
clock-names = "dwc_general";
|
||||
};
|
||||
|
||||
usb2_phy: usb2phy@ffe09000 {
|
||||
compatible = "amlogic, amlogic-new-usb2";
|
||||
status = "okay";
|
||||
portnum = <4>;
|
||||
reg = <0xffe09000 0x80
|
||||
0xffd01008 0x4>;
|
||||
};
|
||||
usb3_phy: usb3phy@ffe09080 {
|
||||
compatible = "amlogic, amlogic-new-usb3";
|
||||
status = "okay";
|
||||
portnum = <0>;
|
||||
reg = <0xffe09080 0x20>;
|
||||
interrupts = <0 16 4>;
|
||||
otg = <1>;
|
||||
gpio-vbus-power = "GPIOAO_5";
|
||||
gpios = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
dwc2_a {
|
||||
compatible = "amlogic, dwc2";
|
||||
device_name = "dwc2_a";
|
||||
reg = <0xff400000 0x40000>;
|
||||
status = "okay";
|
||||
interrupts = <0 31 4>;
|
||||
pl-periph-id = <0>; /** lm name */
|
||||
clock-src = "usb0"; /** clock src */
|
||||
port-id = <0>; /** ref to mach/usb.h */
|
||||
port-type = <2>; /** 0: otg, 1: host, 2: slave */
|
||||
port-speed = <0>; /** 0: default, high, 1: full */
|
||||
port-config = <0>; /** 0: default */
|
||||
/*0:default,1:single,2:incr,3:incr4,4:incr8,5:incr16,6:disable*/
|
||||
port-dma = <0>;
|
||||
port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/
|
||||
usb-fifo = <728>;
|
||||
cpu-type = "gxl";
|
||||
/** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/
|
||||
controller-type = <3>;
|
||||
phy-reg = <0xffe09000>;
|
||||
phy-reg-size = <0xa0>;
|
||||
clocks = <&clkc CLKID_USB_GENERAL
|
||||
&clkc CLKID_USB1_TO_DDR
|
||||
&clkc CLKID_USB1>;
|
||||
clock-names = "usb_general",
|
||||
"usb1",
|
||||
"usb1_to_ddr";
|
||||
};
|
||||
|
||||
pcie_A: pcieA@f9800000 {
|
||||
compatible = "amlogic, amlogic-pcie", "snps,dw-pcie";
|
||||
reg = <0xf9800000 0x400000
|
||||
0xff646000 0x2000
|
||||
0xf9f00000 0x100000
|
||||
PCIE_PHY_REG PCIE_PHY_SIZE
|
||||
PCIE_RESET_REG PCIE_RESET_SIZE>;
|
||||
reg-names = "elbi", "cfg", "config", "phy", "reset";
|
||||
reset-gpio = <&gpio GPIOX_19 GPIO_ACTIVE_HIGH>;
|
||||
interrupts = <0 177 0>;
|
||||
#interrupt-cells = <1>;
|
||||
bus-range = <0x0 0xff>;
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
interrupt-map-mask = <0 0 0 0>;
|
||||
interrupt-map = <0 0 0 0 &gic GIC_SPI 179 IRQ_TYPE_EDGE_RISING>;
|
||||
device_type = "pci";
|
||||
ranges = <0x82000000 0 0 0xf9c00000 0 0x00300000>;
|
||||
/* non-prefetchable memory */
|
||||
num-lanes = <1>;
|
||||
pcie-num = <1>;
|
||||
|
||||
clocks = <&clkc CLKID_USB_GENERAL
|
||||
&clkc CLKID_PCIE_PLL
|
||||
&clkc CLKID_MIPI_ENABLE_GATE
|
||||
&clkc CLKID_MIPI_BANDGAP_GATE
|
||||
&clkc CLKID_PCIE_A
|
||||
&clkc CLKID_PCIE_CML_EN0>;
|
||||
clock-names = "pcie_general",
|
||||
"pcie_refpll",
|
||||
"pcie_mipi_enable_gate",
|
||||
"pcie_mipi_bandgap_gate",
|
||||
"pcie",
|
||||
"port";
|
||||
/*reset-gpio-type 0:Shared pad(no reset)1:OD pad2:Normal pad*/
|
||||
gpio-type = <2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
pcie_B: pcieB@fa000000 {
|
||||
compatible = "amlogic, amlogic-pcie", "snps,dw-pcie";
|
||||
reg = <0xfa000000 0x400000
|
||||
0xff648000 0x2000
|
||||
0xfa400000 0x100000
|
||||
PCIE_PHY_REG PCIE_PHY_SIZE
|
||||
PCIE_RESET_REG PCIE_RESET_SIZE>;
|
||||
reg-names = "elbi", "cfg", "config", "phy", "reset";
|
||||
reset-gpio = <&gpio GPIOX_19 GPIO_ACTIVE_HIGH>;
|
||||
interrupts = <0 167 0>;
|
||||
#interrupt-cells = <1>;
|
||||
bus-range = <0x0 0xff>;
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
interrupt-map-mask = <0 0 0 0>;
|
||||
interrupt-map = <0 0 0 0 &gic GIC_SPI 169 IRQ_TYPE_EDGE_RISING>;
|
||||
device_type = "pci";
|
||||
ranges = <0x81000000 0 0 0xfa500000 0x0 0x10000
|
||||
/* downstream I/O */
|
||||
0x82000000 0 0xfa510000 0xfa510000 0 0x002f0000>;
|
||||
/* non-prefetchable memory */
|
||||
num-lanes = <1>;
|
||||
pcie-num = <2>;
|
||||
|
||||
clocks = <&clkc CLKID_USB_GENERAL
|
||||
&clkc CLKID_PCIE_PLL
|
||||
&clkc CLKID_MIPI_ENABLE_GATE
|
||||
&clkc CLKID_MIPI_BANDGAP_GATE
|
||||
&clkc CLKID_PCIE_B
|
||||
&clkc CLKID_PCIE_CML_EN1>;
|
||||
clock-names = "pcie_general",
|
||||
"pcie_refpll",
|
||||
"pcie_mipi_enable_gate",
|
||||
"pcie_mipi_bandgap_gate",
|
||||
"pcie",
|
||||
"port";
|
||||
/*reset-gpio-type 0:Shared pad(no reset)1:OD pad2:Normal pad*/
|
||||
gpio-type = <0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
uart_A: serial@ffd24000 {
|
||||
compatible = "amlogic, meson-uart";
|
||||
reg = <0xffd24000 0x18>;
|
||||
interrupts = <0 26 1>;
|
||||
status = "disable";
|
||||
clocks = <&xtal
|
||||
&clkc CLKID_UART0>;
|
||||
clock-names = "clk_uart",
|
||||
"clk_gate";
|
||||
fifosize = < 128 >;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&a_uart_pins>;
|
||||
};
|
||||
|
||||
uart_B: serial@ffd23000 {
|
||||
compatible = "amlogic, meson-uart";
|
||||
reg = <0xffd23000 0x18>;
|
||||
interrupts = <0 75 1>;
|
||||
status = "disable";
|
||||
clocks = <&xtal
|
||||
&clkc CLKID_UART1>;
|
||||
clock-names = "clk_uart",
|
||||
"clk_gate";
|
||||
fifosize = < 64 >;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&b_uart_pins>;
|
||||
};
|
||||
/* Sound iomap */
|
||||
aml_snd_iomap {
|
||||
compatible = "amlogic, snd-iomap";
|
||||
status = "okay";
|
||||
#address-cells=<1>;
|
||||
#size-cells=<1>;
|
||||
ranges;
|
||||
pdm_bus {
|
||||
reg = <0xFF632000 0x2000>;
|
||||
};
|
||||
audiobus_base {
|
||||
reg = <0xFF642000 0x2000>;
|
||||
};
|
||||
};
|
||||
pdm_codec:dummy{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, pdm_dummy_codec";
|
||||
status = "okay";
|
||||
};
|
||||
dummy_codec:dummy{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml_dummy_codec";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
auge_sound {
|
||||
compatible = "amlogic, axg-sound-card";
|
||||
aml-audio-card,name = "AML-AUGESOUND";
|
||||
|
||||
aml-audio-card,dai-link@0 {
|
||||
format = "dsp_a";
|
||||
mclk-fs = <512>;
|
||||
//continuous-clock;
|
||||
//bitclock-inversion;
|
||||
//frame-inversion;
|
||||
//bitclock-master = <&tdmacodec>;
|
||||
//frame-master = <&tdmacodec>;
|
||||
tdmacpu: cpu {
|
||||
sound-dai = <&aml_tdma>;
|
||||
dai-tdm-slot-tx-mask =
|
||||
<1 1 1 1 1 1 1 1>;
|
||||
dai-tdm-slot-rx-mask =
|
||||
<1 1 1 1 1 1 1 1>;
|
||||
dai-tdm-slot-num = <8>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <24576000>;
|
||||
};
|
||||
tdmacodec: codec {
|
||||
sound-dai = <&dummy_codec &dummy_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@1 {
|
||||
format = "i2s";
|
||||
mclk-fs = <256>;
|
||||
//continuous-clock;
|
||||
//bitclock-inversion;
|
||||
//frame-inversion;
|
||||
//bitclock-master = <&aml_tdmb>;
|
||||
//frame-master = <&aml_tdmb>;
|
||||
cpu {
|
||||
sound-dai = <&aml_tdmb>;
|
||||
dai-tdm-slot-tx-mask = <1 1>;
|
||||
dai-tdm-slot-rx-mask = <1 1>;
|
||||
dai-tdm-slot-num = <2>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <12288000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&dummy_codec &dummy_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@2 {
|
||||
format = "i2s";
|
||||
mclk-fs = <256>;
|
||||
//continuous-clock;
|
||||
//bitclock-inversion;
|
||||
//frame-inversion;
|
||||
//bitclock-master = <&aml_tdmc>;
|
||||
//frame-master = <&aml_tdmc>;
|
||||
cpu {
|
||||
sound-dai = <&aml_tdmc>;
|
||||
dai-tdm-slot-tx-mask = <1 1>;
|
||||
dai-tdm-slot-rx-mask = <1 1>;
|
||||
dai-tdm-slot-num = <2>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <12288000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&tas5707_36 &tas5707_3a>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@3 {
|
||||
mclk-fs = <64>;
|
||||
cpu {
|
||||
sound-dai = <&aml_pdm>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&pdm_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@4 {
|
||||
mclk-fs = <128>;
|
||||
cpu {
|
||||
sound-dai = <&aml_spdif>;
|
||||
system-clock-frequency = <6144000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&dummy_codec>;
|
||||
};
|
||||
};
|
||||
};
|
||||
sd_emmc_c: emmc@ffe07000 {
|
||||
status = "disable";
|
||||
compatible = "amlogic, meson-mmc-axg";
|
||||
reg = <0xffe07000 0x2000>;
|
||||
interrupts = <0 218 1>;
|
||||
pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins";
|
||||
pinctrl-0 = <&emmc_clk_cmd_pins>;
|
||||
pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done>;
|
||||
clocks = <&clkc CLKID_SD_EMMC_C>,
|
||||
<&clkc CLKID_SD_EMMC_C_P0_COMP>,
|
||||
<&clkc CLKID_FCLK_DIV2>,
|
||||
<&clkc CLKID_FCLK_DIV5>,
|
||||
<&xtal>;
|
||||
clock-names = "core", "clkin0", "clkin1", "clkin2", "xtal";
|
||||
|
||||
bus-width = <8>;
|
||||
cap-sd-highspeed;
|
||||
cap-mmc-highspeed;
|
||||
mmc-ddr-1_8v;
|
||||
mmc-hs200-1_8v;
|
||||
|
||||
max-frequency = <200000000>;
|
||||
non-removable;
|
||||
disable-wp;
|
||||
emmc {
|
||||
pinname = "emmc";
|
||||
ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */
|
||||
caps = "MMC_CAP_8_BIT_DATA",
|
||||
"MMC_CAP_MMC_HIGHSPEED",
|
||||
"MMC_CAP_SD_HIGHSPEED",
|
||||
"MMC_CAP_NONREMOVABLE",
|
||||
"MMC_CAP_1_8V_DDR",
|
||||
"MMC_CAP_HW_RESET",
|
||||
"MMC_CAP_ERASE",
|
||||
"MMC_CAP_CMD23";
|
||||
/*caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400";*/
|
||||
f_min = <400000>;
|
||||
f_max = <100000000>;
|
||||
max_req_size = <0x20000>; /**128KB*/
|
||||
gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>;
|
||||
hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>;
|
||||
card_type = <1>;
|
||||
/* 1:mmc card(include eMMC),
|
||||
* 2:sd card(include tSD)
|
||||
*/
|
||||
};
|
||||
};
|
||||
|
||||
partitions: partitions{
|
||||
parts = <11>;
|
||||
part-0 = <&logo>;
|
||||
part-1 = <&recovery>;
|
||||
part-2 = <&rsv>;
|
||||
part-3 = <&tee>;
|
||||
part-4 = <&crypt>;
|
||||
part-5 = <&misc>;
|
||||
part-6 = <&instaboot>;
|
||||
part-7 = <&boot>;
|
||||
part-8 = <&system>;
|
||||
part-9 = <&cache>;
|
||||
part-10 = <&data>;
|
||||
|
||||
logo:logo{
|
||||
pname = "logo";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
recovery:recovery{
|
||||
pname = "recovery";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
rsv:rsv{
|
||||
pname = "rsv";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
tee:tee{
|
||||
pname = "tee";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
crypt:crypt{
|
||||
pname = "crypt";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
misc:misc{
|
||||
pname = "misc";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
instaboot:instaboot{
|
||||
pname = "instaboot";
|
||||
size = <0x0 0x400000>;
|
||||
mask = <1>;
|
||||
};
|
||||
boot:boot
|
||||
{
|
||||
pname = "boot";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
system:system
|
||||
{
|
||||
pname = "system";
|
||||
size = <0x0 0x80000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
cache:cache
|
||||
{
|
||||
pname = "cache";
|
||||
size = <0x0 0x20000000>;
|
||||
mask = <2>;
|
||||
};
|
||||
data:data
|
||||
{
|
||||
pname = "data";
|
||||
size = <0xffffffff 0xffffffff>;
|
||||
mask = <4>;
|
||||
};
|
||||
};
|
||||
|
||||
adc_keypad {
|
||||
compatible = "amlogic, adc_keypad";
|
||||
status = "okay";
|
||||
key_name = "power", "vol-", "vol+", "wifi", "<<", ">>";
|
||||
key_num = <6>;
|
||||
io-channels = <&saradc SARADC_CH0>;
|
||||
io-channel-names = "key-chan-0";
|
||||
key_chan = <SARADC_CH0 SARADC_CH0 SARADC_CH0
|
||||
SARADC_CH0 SARADC_CH0 SARADC_CH0>;
|
||||
key_code = <116 114 115 139 105 106>;
|
||||
key_val = <0 143 266 389 512 635>; //val=voltage/1800mV*1023
|
||||
key_tolerance = <40 40 40 40 40 40>;
|
||||
};
|
||||
|
||||
unifykey{
|
||||
compatible = "amlogic, unifykey";
|
||||
status = "ok";
|
||||
|
||||
unifykey-num = <6>;
|
||||
unifykey-index-0 = <&keysn_0>;
|
||||
unifykey-index-1 = <&keysn_1>;
|
||||
unifykey-index-2 = <&keysn_2>;
|
||||
unifykey-index-3 = <&keysn_3>;
|
||||
unifykey-index-4 = <&keysn_4>;
|
||||
unifykey-index-5 = <&keysn_5>;
|
||||
|
||||
keysn_0: key_0{
|
||||
key-name = "usid";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_1:key_1{
|
||||
key-name = "mac";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_2:key_2{
|
||||
key-name = "secure_boot_set";
|
||||
key-device = "efuse";
|
||||
key-permit = "write";
|
||||
};
|
||||
keysn_3:key_3{
|
||||
key-name = "mac_bt";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
key-type = "mac";
|
||||
};
|
||||
keysn_4:key_4{
|
||||
key-name = "mac_wifi";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
key-type = "mac";
|
||||
};
|
||||
keysn_5:key_5{
|
||||
key-name = "deviceid";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
};//End unifykey
|
||||
|
||||
}; /* end of / */
|
||||
&efuse {
|
||||
status = "ok";
|
||||
};
|
||||
|
||||
/* Audio Related start */
|
||||
/* for spk board */
|
||||
&i2c1 {
|
||||
status = "okay";
|
||||
pinctrl-names="default";
|
||||
pinctrl-0=<&b_i2c_master>;
|
||||
tlv320adc3101_32: tlv320adc3101_32@30 {
|
||||
compatible = "ti,tlv320adc3101";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x32>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
tas5707_36: tas5707_36@36 {
|
||||
compatible = "ti,tas5707";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x1b>;
|
||||
status = "okay";
|
||||
reset_pin = <&gpio_ao GPIOAO_4 0>;
|
||||
};
|
||||
|
||||
tas5707_3a: tas5707_3a@3a {
|
||||
compatible = "ti,tas5707";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x1d>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
/* for mic board */
|
||||
&i2c_AO {
|
||||
status = "okay";
|
||||
pinctrl-names="default";
|
||||
pinctrl-0=<&ao_i2c_master_pin2>;
|
||||
|
||||
tlv320adc3101_30: tlv320adc3101_30@30 {
|
||||
compatible = "ti,tlv320adc3101";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x30>;
|
||||
status = "okay";
|
||||
};
|
||||
tlv320adc3101_34: tlv320adc3101_34@30 {
|
||||
compatible = "ti,tlv320adc3101";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x34>;
|
||||
status = "okay";
|
||||
};
|
||||
tlv320adc3101_36: tlv320adc3101_36@30 {
|
||||
compatible = "ti,tlv320adc3101";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x36>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&audiobus {
|
||||
aml_tdma: tdma {
|
||||
compatible = "amlogic, axg-snd-tdma";
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask = <1>;
|
||||
dai-tdm-clk-sel = <0>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_A
|
||||
&clkc CLKID_MPLL0>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmout_a &tdmin_a>;
|
||||
};
|
||||
|
||||
aml_tdmb: tdmb {
|
||||
compatible = "amlogic, axg-snd-tdmb";
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask = <1 1 1 1>;
|
||||
dai-tdm-clk-sel = <1>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
|
||||
&clkc CLKID_MPLL1>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmb_mclk &tdmout_b>;
|
||||
};
|
||||
|
||||
aml_tdmc: tdmc {
|
||||
compatible = "amlogic, axg-snd-tdmc";
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask-in = <0 1 0 0>;
|
||||
dai-tdm-lane-slot-mask-out = <1 0 1 1>;
|
||||
dai-tdm-clk-sel = <2>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_C
|
||||
&clkc CLKID_MPLL2>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmc_mclk &tdmout_c>;// &tdmin_c>;
|
||||
};
|
||||
|
||||
aml_spdif: spdif {
|
||||
compatible = "amlogic, axg-snd-spdif";
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clkc CLKID_MPLL0
|
||||
&clkc CLKID_FCLK_DIV4
|
||||
&clkaudio CLKID_AUDIO_SPDIFIN
|
||||
&clkaudio CLKID_AUDIO_SPDIFOUT
|
||||
&clkaudio CLKID_AUDIO_SPDIFIN_CTRL
|
||||
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
|
||||
clock-names = "sysclk", "fixed_clk", "gate_spdifin",
|
||||
"gate_spdifout", "clk_spdifin", "clk_spdifout";
|
||||
interrupts =
|
||||
<GIC_SPI 87 IRQ_TYPE_EDGE_RISING>;
|
||||
|
||||
interrupt-names = "irq_spdifin";
|
||||
pinctrl-names = "spdif_pins";
|
||||
pinctrl-0 = <&spdifout &spdifin>;
|
||||
status = "okay";
|
||||
};
|
||||
aml_pdm: pdm {
|
||||
compatible = "amlogic, axg-snd-pdm";
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_PDM
|
||||
&clkc CLKID_FCLK_DIV3
|
||||
&clkc CLKID_MPLL3
|
||||
&clkaudio CLKID_AUDIO_PDMIN0
|
||||
&clkaudio CLKID_AUDIO_PDMIN1>;
|
||||
clock-names = "gate",
|
||||
"sysclk_srcpll",
|
||||
"dclk_srcpll",
|
||||
"pdm_dclk",
|
||||
"pdm_sysclk";
|
||||
pinctrl-names = "pdm_pins";
|
||||
pinctrl-0 = <&pdmin>;
|
||||
filter_mode = <1>; /* mode 0~4, defalut:1 */
|
||||
status = "okay";
|
||||
};
|
||||
}; /* end of audiobus */
|
||||
|
||||
&pinctrl_periphs {
|
||||
tdmout_a: tdmout_a {
|
||||
mux {
|
||||
groups = "tdma_sclk",
|
||||
"tdma_fs",
|
||||
"tdma_dout0_x15";
|
||||
function = "tdma_out";
|
||||
};
|
||||
};
|
||||
|
||||
tdmin_a: tdmin_a {
|
||||
mux {
|
||||
groups = "tdma_din0";
|
||||
function = "tdma_in";
|
||||
};
|
||||
};
|
||||
|
||||
tdmb_mclk: tdmb_mclk {
|
||||
mux {
|
||||
groups = "mclk_b";
|
||||
function = "mclk_b";
|
||||
};
|
||||
};
|
||||
|
||||
tdmout_b: tdmout_b {
|
||||
mux {
|
||||
groups = "tdmb_sclk",
|
||||
"tdmb_fs",
|
||||
"tdmb_dout0",
|
||||
"tdmb_dout1",
|
||||
"tdmb_dout2_a12",
|
||||
"tdmb_dout3_a13";
|
||||
function = "tdmb_out";
|
||||
};
|
||||
};
|
||||
|
||||
// tdmin and tdmout are the same pins. can't use at same time
|
||||
/*
|
||||
*tdmin_b:tdmin_b {
|
||||
* mux {
|
||||
* groups = "tdmb_din0",
|
||||
* "tdmb_din1",
|
||||
* "tdmb_din2_a12",
|
||||
* "tdmb_din3_a13";
|
||||
* function = "tdmb_in";
|
||||
* };
|
||||
*};
|
||||
*/
|
||||
|
||||
tdmc_mclk: tdmc_mclk {
|
||||
mux {
|
||||
groups = "mclk_a";
|
||||
function = "mclk_a";
|
||||
};
|
||||
};
|
||||
|
||||
tdmout_c:tdmout_c {
|
||||
mux {
|
||||
groups = "tdmc_sclk",
|
||||
"tdmc_fs",
|
||||
"tdmc_dout0",
|
||||
"tdmc_dout1",
|
||||
"tdmc_dout2_a6",
|
||||
"tdmc_dout3_a7";
|
||||
function = "tdmc_out";
|
||||
};
|
||||
};
|
||||
|
||||
//tdmin_c:tdmin_c {
|
||||
// mux {
|
||||
// groups = "tdmc_din0",
|
||||
// "tdmc_din1",
|
||||
// "tdmc_din2_a6",
|
||||
// "tdmc_din3_a7";
|
||||
// function = "tdmc_in";
|
||||
// };
|
||||
//};
|
||||
|
||||
spdifout: spidfout {
|
||||
mux {
|
||||
groups = "spdif_out_a20";
|
||||
function = "spdif_out";
|
||||
};
|
||||
};
|
||||
|
||||
spdifin: spidfin {
|
||||
mux {
|
||||
groups = "spdif_in_a19";
|
||||
function = "spdif_in";
|
||||
};
|
||||
};
|
||||
|
||||
pdmin: pdmin {
|
||||
mux {
|
||||
groups = "pdm_dclk_a14",
|
||||
"pdm_din0",
|
||||
"pdm_din1",
|
||||
"pdm_din2",
|
||||
"pdm_din3";
|
||||
function = "pdm";
|
||||
};
|
||||
};
|
||||
}; /* end of pinctrl_periphs */
|
||||
/* Audio Related End */
|
||||
|
||||
&spicc0 {
|
||||
status = "okay";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&spi0_pins>;
|
||||
cs-gpios = <&gpio GPIOZ_3 0>;
|
||||
};
|
||||
|
||||
&spicc1 {
|
||||
status = "disabled";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&spi1_x_pins>;
|
||||
cs-gpios = <&gpio GPIOX_16 0>;
|
||||
};
|
||||
|
||||
&aobus{
|
||||
uart_AO: serial@3000 {
|
||||
compatible = "amlogic, meson-uart";
|
||||
reg = <0x3000 0x18>;
|
||||
interrupts = <0 193 1>;
|
||||
status = "okay";
|
||||
clocks = <&xtal>;
|
||||
clock-names = "clk_uart";
|
||||
xtal_tick_en = <1>;
|
||||
fifosize = < 64 >;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&ao_uart_pins>;
|
||||
support-sysrq = <0>; /* 0 not support , 1 support */
|
||||
};
|
||||
|
||||
uart_AO_B: serial@4000 {
|
||||
compatible = "amlogic, meson-uart";
|
||||
reg = <0x4000 0x18>;
|
||||
interrupts = <0 197 1>;
|
||||
status = "disable";
|
||||
clocks = <&xtal>;
|
||||
clock-names = "clk_uart";
|
||||
fifosize = < 64 >;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&ao_b_uart_pins>;
|
||||
};
|
||||
};
|
||||
&audio_data{
|
||||
status = "okay";
|
||||
};
|
||||
971
arch/arm/boot/dts/amlogic/axg_a113x_skt.dts
Normal file
971
arch/arm/boot/dts/amlogic/axg_a113x_skt.dts
Normal file
@@ -0,0 +1,971 @@
|
||||
/*
|
||||
* arch/arm/boot/dts/amlogic/axg_a113x_skt.dts
|
||||
*
|
||||
* Copyright (C) 2017 Amlogic, Inc. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "mesonaxg.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Amlogic";
|
||||
amlogic-dt-id = "axg_a113x_skt_v1";
|
||||
compatible = "amlogic, axg";
|
||||
interrupt-parent = <&gic>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
aliases {
|
||||
serial0 = &uart_AO;
|
||||
serial1 = &uart_A;
|
||||
};
|
||||
|
||||
memory@00000000 {
|
||||
device_type = "memory";
|
||||
linux,usable-memory = <0x000000 0x20000000>;
|
||||
};
|
||||
|
||||
reserved-memory {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges;
|
||||
/* global autoconfigured region for contiguous allocations */
|
||||
ramoops@0x07400000 {
|
||||
compatible = "ramoops";
|
||||
reg = <0x07400000 0x00100000>;
|
||||
record-size = <0x8000>;
|
||||
console-size = <0x8000>;
|
||||
ftrace-size = <0x0>;
|
||||
pmsg-size = <0x8000>;
|
||||
};
|
||||
|
||||
secmon_reserved:linux,secmon {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x400000>;
|
||||
alignment = <0x400000>;
|
||||
alloc-ranges = <0x05000000 0x400000>;
|
||||
};
|
||||
|
||||
secos_reserved:linux,secos {
|
||||
status = "disable";
|
||||
compatible = "amlogic, aml_secos_memory";
|
||||
reg = <0x05300000 0x2000000>;
|
||||
no-map;
|
||||
};
|
||||
};
|
||||
mtd_nand {
|
||||
compatible = "amlogic, aml_mtd_nand";
|
||||
dev_name = "mtdnand";
|
||||
status = "okay";
|
||||
reg = <0xFFE07800 0x200>;
|
||||
interrupts = < 0 34 1 >;
|
||||
pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_only";
|
||||
pinctrl-0 = <&all_nand_pins>;
|
||||
pinctrl-1 = <&all_nand_pins>;
|
||||
pinctrl-2 = <&nand_cs_pins>;
|
||||
device_id = <0>;
|
||||
|
||||
/*fip/tpl configurations, must be same
|
||||
* with uboot if bl_mode was set as 1
|
||||
* bl_mode: 0 compact mode; 1 descrete mode
|
||||
* if bl_mode was set as 1, fip configeration will work
|
||||
*/
|
||||
bl_mode = <1>;
|
||||
/*copy count of fip*/
|
||||
fip_copies = <4>;
|
||||
/*size of each fip copy */
|
||||
fip_size = <0x200000>;
|
||||
nand_clk_ctrl = <0xFFE07000>;
|
||||
plat-names = "bootloader","nandnormal";
|
||||
plat-num = <2>;
|
||||
plat-part-0 = <&bootloader>;
|
||||
plat-part-1 = <&nandnormal>;
|
||||
bootloader: bootloader{
|
||||
enable_pad ="ce0";
|
||||
busy_pad = "rb0";
|
||||
timming_mode = "mode5";
|
||||
bch_mode = "bch8_1k";
|
||||
t_rea = <20>;
|
||||
t_rhoh = <15>;
|
||||
chip_num = <1>;
|
||||
part_num = <0>;
|
||||
rb_detect = <1>;
|
||||
};
|
||||
nandnormal: nandnormal{
|
||||
enable_pad ="ce0";
|
||||
busy_pad = "rb0";
|
||||
timming_mode = "mode5";
|
||||
bch_mode = "bch8_1k";
|
||||
plane_mode = "twoplane";
|
||||
t_rea = <20>;
|
||||
t_rhoh = <15>;
|
||||
chip_num = <2>;
|
||||
part_num = <3>;
|
||||
partition = <&nand_partitions>;
|
||||
rb_detect = <1>;
|
||||
};
|
||||
nand_partitions:nand_partition{
|
||||
/*
|
||||
* if bl_mode is 1, tpl size was generate by
|
||||
* fip_copies * fip_size which
|
||||
* will not skip bad when calculating
|
||||
* the partition size;
|
||||
*
|
||||
* if bl_mode is 0,
|
||||
* tpl partition must be comment out.
|
||||
*/
|
||||
tpl{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0x0>;
|
||||
};
|
||||
logo{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0x200000>;
|
||||
};
|
||||
recovery{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0x1000000>;
|
||||
};
|
||||
boot{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0xF00000>;
|
||||
};
|
||||
system{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0xDC40000>;
|
||||
};
|
||||
data{
|
||||
offset=<0xffffffff 0xffffffff>;
|
||||
size=<0x0 0x0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
aml_sensor0: aml-sensor@0 {
|
||||
compatible = "amlogic, aml-thermal";
|
||||
device_name = "thermal";
|
||||
#thermal-sensor-cells = <1>;
|
||||
cooling_devices {
|
||||
cpufreq_cool_cluster0 {
|
||||
min_state = <1000000>;
|
||||
dyn_coeff = <140>;
|
||||
cluster_id = <0>;
|
||||
node_name = "cpufreq_cool0";
|
||||
device_type = "cpufreq";
|
||||
};
|
||||
cpucore_cool_cluster0 {
|
||||
min_state = <1>;
|
||||
dyn_coeff = <0>;
|
||||
cluster_id = <0>;
|
||||
node_name = "cpucore_cool0";
|
||||
device_type = "cpucore";
|
||||
};
|
||||
};
|
||||
cpufreq_cool0:cpufreq_cool0 {
|
||||
#cooling-cells = <2>; /* min followed by max */
|
||||
};
|
||||
cpucore_cool0:cpucore_cool0 {
|
||||
#cooling-cells = <2>; /* min followed by max */
|
||||
};
|
||||
};
|
||||
thermal-zones {
|
||||
soc_thermal {
|
||||
polling-delay = <1000>;
|
||||
polling-delay-passive = <100>;
|
||||
sustainable-power = <1050>;
|
||||
|
||||
thermal-sensors = <&aml_sensor0 3>;
|
||||
|
||||
trips {
|
||||
switch_on: trip-point@0 {
|
||||
temperature = <70000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
control: trip-point@1 {
|
||||
temperature = <80000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
hot: trip-point@2 {
|
||||
temperature = <85000>;
|
||||
hysteresis = <5000>;
|
||||
type = "hot";
|
||||
};
|
||||
critical: trip-point@3 {
|
||||
temperature = <260000>;
|
||||
hysteresis = <1000>;
|
||||
type = "critical";
|
||||
};
|
||||
};
|
||||
|
||||
cooling-maps {
|
||||
cpufreq_cooling_map {
|
||||
trip = <&control>;
|
||||
cooling-device = <&cpufreq_cool0 0 4>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
cpucore_cooling_map {
|
||||
trip = <&control>;
|
||||
cooling-device = <&cpucore_cool0 0 3>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
dwc3: dwc3@ff500000 {
|
||||
compatible = "synopsys, dwc3";
|
||||
status = "okay";
|
||||
reg = <0xff500000 0x100000>;
|
||||
interrupts = <0 30 4>;
|
||||
usb-phy = <&usb2_phy>, <&usb3_phy>;
|
||||
cpu-type = "gxl";
|
||||
clock-src = "usb3.0";
|
||||
clocks = <&clkc CLKID_USB_GENERAL>;
|
||||
clock-names = "dwc_general";
|
||||
};
|
||||
|
||||
usb2_phy: usb2phy@ffe09000 {
|
||||
compatible = "amlogic, amlogic-new-usb2";
|
||||
status = "okay";
|
||||
portnum = <4>;
|
||||
reg = <0xffe09000 0x80
|
||||
0xffd01008 0x4>;
|
||||
};
|
||||
|
||||
usb3_phy: usb3phy@ffe09080 {
|
||||
compatible = "amlogic, amlogic-new-usb3";
|
||||
status = "okay";
|
||||
portnum = <0>;
|
||||
reg = <0xffe09080 0x20>;
|
||||
interrupts = <0 16 4>;
|
||||
otg = <1>;
|
||||
gpio-vbus-power = "GPIOAO_5";
|
||||
gpios = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
dwc2_a {
|
||||
compatible = "amlogic, dwc2";
|
||||
device_name = "dwc2_a";
|
||||
reg = <0xff400000 0x40000>;
|
||||
status = "okay";
|
||||
interrupts = <0 31 4>;
|
||||
pl-periph-id = <0>; /** lm name */
|
||||
clock-src = "usb0"; /** clock src */
|
||||
port-id = <0>; /** ref to mach/usb.h */
|
||||
port-type = <2>; /** 0: otg, 1: host, 2: slave */
|
||||
port-speed = <0>; /** 0: default, high, 1: full */
|
||||
port-config = <0>; /** 0: default */
|
||||
/*0:default,1:single,2:incr,3:incr4,4:incr8,5:incr16,6:disable*/
|
||||
port-dma = <0>;
|
||||
port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/
|
||||
usb-fifo = <728>;
|
||||
cpu-type = "gxl";
|
||||
/** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/
|
||||
controller-type = <3>;
|
||||
phy-reg = <0xffe09000>;
|
||||
phy-reg-size = <0xa0>;
|
||||
clocks = <&clkc CLKID_USB_GENERAL
|
||||
&clkc CLKID_USB1_TO_DDR
|
||||
&clkc CLKID_USB1>;
|
||||
clock-names = "usb_general",
|
||||
"usb1",
|
||||
"usb1_to_ddr";
|
||||
};
|
||||
|
||||
uart_A: serial@ffd24000 {
|
||||
compatible = "amlogic, meson-uart";
|
||||
reg = <0xffd24000 0x18>;
|
||||
interrupts = <0 26 1>;
|
||||
status = "okay";
|
||||
clocks = <&xtal
|
||||
&clkc CLKID_UART0>;
|
||||
clock-names = "clk_uart",
|
||||
"clk_gate";
|
||||
fifosize = < 128 >;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&a_uart_pins>;
|
||||
};
|
||||
|
||||
uart_B: serial@ffd23000 {
|
||||
compatible = "amlogic, meson-uart";
|
||||
reg = <0xffd23000 0x18>;
|
||||
interrupts = <0 75 1>;
|
||||
status = "disable";
|
||||
clocks = <&xtal
|
||||
&clkc CLKID_UART1>;
|
||||
clock-names = "clk_uart",
|
||||
"clk_gate";
|
||||
fifosize = < 64 >;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&b_uart_pins>;
|
||||
};
|
||||
|
||||
/* Sound iomap */
|
||||
aml_snd_iomap {
|
||||
compatible = "amlogic, snd-iomap";
|
||||
status = "okay";
|
||||
#address-cells=<1>;
|
||||
#size-cells=<1>;
|
||||
ranges;
|
||||
pdm_bus {
|
||||
reg = <0xFF632000 0x2000>;
|
||||
};
|
||||
audiobus_base {
|
||||
reg = <0xFF642000 0x2000>;
|
||||
};
|
||||
};
|
||||
pdm_codec:dummy{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, pdm_dummy_codec";
|
||||
status = "okay";
|
||||
};
|
||||
dummy_codec:dummy{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml_dummy_codec";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
auge_sound {
|
||||
compatible = "amlogic, axg-sound-card";
|
||||
aml-audio-card,name = "AML-AUGESOUND";
|
||||
|
||||
aml-audio-card,dai-link@0 {
|
||||
format = "dsp_a";
|
||||
mclk-fs = <256>;//512
|
||||
//continuous-clock;
|
||||
bitclock-inversion;
|
||||
//frame-inversion;
|
||||
bitclock-master = <&aml_tdma>;
|
||||
frame-master = <&aml_tdma>;
|
||||
cpu {
|
||||
sound-dai = <&aml_tdma>;
|
||||
dai-tdm-slot-tx-mask = <1 1>;
|
||||
dai-tdm-slot-rx-mask = <1 1>;
|
||||
dai-tdm-slot-num = <2>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <12288000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&dummy_codec &dummy_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@1 {
|
||||
format = "i2s";
|
||||
mclk-fs = <256>;
|
||||
//continuous-clock;
|
||||
//bitclock-inversion;
|
||||
//frame-inversion;
|
||||
bitclock-master = <&aml_tdmb>;
|
||||
frame-master = <&aml_tdmb>;
|
||||
cpu {
|
||||
sound-dai = <&aml_tdmb>;
|
||||
dai-tdm-slot-tx-mask = <1 1>;
|
||||
dai-tdm-slot-rx-mask = <1 1>;
|
||||
dai-tdm-slot-num = <2>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <12288000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&tas5707_36 &tlv320adc3101_32>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@2 {
|
||||
format = "i2s";
|
||||
mclk-fs = <256>;
|
||||
//continuous-clock;
|
||||
/* tdmb clk using tdmc so no bclk-inv */
|
||||
//bitclock-inversion;
|
||||
//frame-inversion;
|
||||
bitclock-master = <&aml_tdmc>;
|
||||
frame-master = <&aml_tdmc>;
|
||||
cpu {
|
||||
sound-dai = <&aml_tdmc>;
|
||||
dai-tdm-slot-tx-mask = <1 1>;
|
||||
dai-tdm-slot-rx-mask = <1 1>;
|
||||
dai-tdm-slot-num = <2>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <12288000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&dummy_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@3 {
|
||||
mclk-fs = <256>;
|
||||
cpu {
|
||||
sound-dai = <&aml_pdm>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&pdm_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
/*aml-audio-card,dai-link@4 {
|
||||
* mclk-fs = <128>;
|
||||
* cpu {
|
||||
* sound-dai = <&aml_spdif>;
|
||||
* };
|
||||
* codec {
|
||||
* sound-dai = <&dummy_codec>;
|
||||
* };
|
||||
*};
|
||||
*/
|
||||
};
|
||||
|
||||
bt-dev{
|
||||
compatible = "amlogic, bt-dev";
|
||||
dev_name = "bt-dev";
|
||||
status = "okay";
|
||||
gpio_reset = <&gpio GPIOX_21 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
wifi{
|
||||
compatible = "amlogic, aml_wifi";
|
||||
dev_name = "aml_wifi";
|
||||
status = "okay";
|
||||
interrupt_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>;
|
||||
irq_trigger_type = "GPIO_IRQ_LOW";
|
||||
power_on_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&wifi_32k_pins>;
|
||||
pwm_config = <&wifi_pwm_conf>;
|
||||
};
|
||||
|
||||
wifi_pwm_conf:wifi_pwm_conf{
|
||||
pwm_channel1_conf {
|
||||
pwms = <&pwm_ab MESON_PWM_0 30040 0>;
|
||||
duty-cycle = <15020>;
|
||||
times = <10>;
|
||||
};
|
||||
pwm_channel2_conf {
|
||||
pwms = <&pwm_ab MESON_PWM_2 30030 0>;
|
||||
duty-cycle = <15015>;
|
||||
times = <12>;
|
||||
};
|
||||
};
|
||||
sd_emmc_c: emmc@ffe07000 {
|
||||
status = "disabled";
|
||||
compatible = "amlogic, meson-mmc-axg";
|
||||
reg = <0xffe07000 0x2000>;
|
||||
interrupts = <0 218 1>;
|
||||
pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins";
|
||||
pinctrl-0 = <&emmc_clk_cmd_pins>;
|
||||
pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done>;
|
||||
clocks = <&clkc CLKID_SD_EMMC_C>,
|
||||
<&clkc CLKID_SD_EMMC_C_P0_COMP>,
|
||||
<&clkc CLKID_FCLK_DIV2>,
|
||||
<&clkc CLKID_FCLK_DIV5>,
|
||||
<&xtal>;
|
||||
clock-names = "core", "clkin0", "clkin1", "clkin2", "xtal";
|
||||
|
||||
bus-width = <8>;
|
||||
cap-sd-highspeed;
|
||||
cap-mmc-highspeed;
|
||||
mmc-ddr-1_8v;
|
||||
mmc-hs200-1_8v;
|
||||
|
||||
max-frequency = <200000000>;
|
||||
non-removable;
|
||||
disable-wp;
|
||||
emmc {
|
||||
pinname = "emmc";
|
||||
ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */
|
||||
caps = "MMC_CAP_8_BIT_DATA",
|
||||
"MMC_CAP_MMC_HIGHSPEED",
|
||||
"MMC_CAP_SD_HIGHSPEED",
|
||||
"MMC_CAP_NONREMOVABLE",
|
||||
"MMC_CAP_1_8V_DDR",
|
||||
"MMC_CAP_HW_RESET",
|
||||
"MMC_CAP_ERASE",
|
||||
"MMC_CAP_CMD23";
|
||||
/*caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400";*/
|
||||
f_min = <400000>;
|
||||
f_max = <100000000>;
|
||||
max_req_size = <0x20000>; /**128KB*/
|
||||
gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>;
|
||||
hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>;
|
||||
card_type = <1>;
|
||||
/* 1:mmc card(include eMMC),
|
||||
* 2:sd card(include tSD)
|
||||
*/
|
||||
};
|
||||
};
|
||||
|
||||
sd_emmc_b:sdio@ffe05000 {
|
||||
status = "okay";
|
||||
compatible = "amlogic, meson-mmc-axg";
|
||||
reg = <0xffe05000 0x2000>;
|
||||
interrupts = <0 217 4>;
|
||||
pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins";
|
||||
pinctrl-0 = <&sdio_clk_cmd_pins>;
|
||||
pinctrl-1 = <&sdio_all_pins>;
|
||||
clocks = <&clkc CLKID_SD_EMMC_B>,
|
||||
<&clkc CLKID_SD_EMMC_B_P0_COMP>,
|
||||
<&clkc CLKID_FCLK_DIV2>;
|
||||
clock-names = "core", "clkin0", "clkin1";
|
||||
|
||||
bus-width = <4>;
|
||||
cap-sd-highspeed;
|
||||
cap-mmc-highspeed;
|
||||
max-frequency = <100000000>;
|
||||
non-removable;
|
||||
disable-wp;
|
||||
sdio {
|
||||
pinname = "sdio";
|
||||
ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */
|
||||
caps = "MMC_CAP_4_BIT_DATA",
|
||||
"MMC_CAP_MMC_HIGHSPEED",
|
||||
"MMC_CAP_SD_HIGHSPEED",
|
||||
"MMC_CAP_NONREMOVABLE",
|
||||
"MMC_CAP_UHS_SDR12",
|
||||
"MMC_CAP_UHS_SDR25",
|
||||
"MMC_CAP_UHS_SDR50",
|
||||
"MMC_CAP_UHS_SDR104",
|
||||
"MMC_PM_KEEP_POWER",
|
||||
"MMC_CAP_SDIO_IRQ";
|
||||
f_min = <400000>;
|
||||
f_max = <200000000>;
|
||||
max_req_size = <0x20000>; /**128KB*/
|
||||
card_type = <3>;
|
||||
/* 3:sdio device(ie:sdio-wifi),
|
||||
* 4:SD combo (IO+mem) card
|
||||
*/
|
||||
};
|
||||
};
|
||||
|
||||
adc_keypad {
|
||||
compatible = "amlogic, adc_keypad";
|
||||
status = "okay";
|
||||
key_name = "power", "vol-", "vol+", "wifi", "<<", ">>";
|
||||
key_num = <6>;
|
||||
io-channels = <&saradc SARADC_CH0>;
|
||||
io-channel-names = "key-chan-0";
|
||||
key_chan = <SARADC_CH0 SARADC_CH0 SARADC_CH0
|
||||
SARADC_CH0 SARADC_CH0 SARADC_CH0>;
|
||||
key_code = <116 114 115 139 105 106>;
|
||||
key_val = <0 143 266 389 512 635>; //val=voltage/1800mV*1023
|
||||
key_tolerance = <40 40 40 40 40 40>;
|
||||
};
|
||||
|
||||
partitions: partitions{
|
||||
parts = <11>;
|
||||
part-0 = <&logo>;
|
||||
part-1 = <&recovery>;
|
||||
part-2 = <&rsv>;
|
||||
part-3 = <&tee>;
|
||||
part-4 = <&crypt>;
|
||||
part-5 = <&misc>;
|
||||
part-6 = <&instaboot>;
|
||||
part-7 = <&boot>;
|
||||
part-8 = <&system>;
|
||||
part-9 = <&cache>;
|
||||
part-10 = <&data>;
|
||||
|
||||
logo:logo{
|
||||
pname = "logo";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
recovery:recovery{
|
||||
pname = "recovery";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
rsv:rsv{
|
||||
pname = "rsv";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
tee:tee{
|
||||
pname = "tee";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
crypt:crypt{
|
||||
pname = "crypt";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
misc:misc{
|
||||
pname = "misc";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
instaboot:instaboot{
|
||||
pname = "instaboot";
|
||||
size = <0x0 0x400000>;
|
||||
mask = <1>;
|
||||
};
|
||||
boot:boot
|
||||
{
|
||||
pname = "boot";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
system:system
|
||||
{
|
||||
pname = "system";
|
||||
size = <0x0 0x80000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
cache:cache
|
||||
{
|
||||
pname = "cache";
|
||||
size = <0x0 0x20000000>;
|
||||
mask = <2>;
|
||||
};
|
||||
data:data
|
||||
{
|
||||
pname = "data";
|
||||
size = <0xffffffff 0xffffffff>;
|
||||
mask = <4>;
|
||||
};
|
||||
};
|
||||
|
||||
unifykey{
|
||||
compatible = "amlogic, unifykey";
|
||||
status = "ok";
|
||||
|
||||
unifykey-num = <6>;
|
||||
unifykey-index-0 = <&keysn_0>;
|
||||
unifykey-index-1 = <&keysn_1>;
|
||||
unifykey-index-2 = <&keysn_2>;
|
||||
unifykey-index-3 = <&keysn_3>;
|
||||
unifykey-index-4 = <&keysn_4>;
|
||||
unifykey-index-5 = <&keysn_5>;
|
||||
|
||||
keysn_0: key_0{
|
||||
key-name = "usid";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_1:key_1{
|
||||
key-name = "mac";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_2:key_2{
|
||||
key-name = "secure_boot_set";
|
||||
key-device = "efuse";
|
||||
key-permit = "write";
|
||||
};
|
||||
keysn_3:key_3{
|
||||
key-name = "mac_bt";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
key-type = "mac";
|
||||
};
|
||||
keysn_4:key_4{
|
||||
key-name = "mac_wifi";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
key-type = "mac";
|
||||
};
|
||||
keysn_5:key_5{
|
||||
key-name = "deviceid";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
};//End unifykey
|
||||
}; /* end of / */
|
||||
|
||||
&efuse {
|
||||
status = "ok";
|
||||
};
|
||||
|
||||
&pwm_ab {
|
||||
status = "okay";
|
||||
};
|
||||
/* Audio Related start */
|
||||
/* for spk board */
|
||||
&i2c1 {
|
||||
status = "okay";
|
||||
pinctrl-names="default";
|
||||
pinctrl-0=<&b_i2c_master>;
|
||||
tlv320adc3101_32: tlv320adc3101_32@30 {
|
||||
compatible = "ti,tlv320adc3101";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x19>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tas5707_36: tas5707_36@36 {
|
||||
compatible = "ti,tas5707";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x1b>;
|
||||
status = "okay";
|
||||
reset_pin = <&gpio_ao GPIOAO_4 0>;
|
||||
};
|
||||
|
||||
tas5707_3a: tas5707_3a@3a {
|
||||
compatible = "ti,tas5707";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x1d>;
|
||||
status = "disable";
|
||||
};
|
||||
};
|
||||
|
||||
/* for mic board */
|
||||
&i2c_AO {
|
||||
status = "okay";
|
||||
pinctrl-names="default";
|
||||
pinctrl-0=<&ao_i2c_master_pin2>;
|
||||
|
||||
pca9557:pca9557@0x1f {
|
||||
compatible = "nxp,pca9557";
|
||||
reg = <0x1f>;
|
||||
status = "okay";
|
||||
};
|
||||
tlv320adc3101_30: tlv320adc3101_30@30 {
|
||||
compatible = "ti,tlv320adc3101";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x18>;
|
||||
status = "disable";
|
||||
};
|
||||
tlv320adc3101_34: tlv320adc3101_34@30 {
|
||||
compatible = "ti,tlv320adc3101";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x1a>;
|
||||
status = "disable";
|
||||
};
|
||||
tlv320adc3101_36: tlv320adc3101_36@30 {
|
||||
compatible = "ti,tlv320adc3101";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x1b>;
|
||||
status = "disable";
|
||||
};
|
||||
};
|
||||
|
||||
&audiobus {
|
||||
aml_tdma: tdma {
|
||||
compatible = "amlogic, axg-snd-tdma";
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask = <1 1 1 1>;
|
||||
/* select tdm lr/bclk src, see aml_axg_tdm.c */
|
||||
dai-tdm-clk-sel = <0>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_A
|
||||
&clkc CLKID_MPLL0>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmin_a &tdmout_a>;
|
||||
};
|
||||
|
||||
aml_tdmb: tdmb {
|
||||
compatible = "amlogic, axg-snd-tdmb";
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask-out = <1 0>;
|
||||
dai-tdm-lane-slot-mask-in = <0 1>;
|
||||
dai-tdm-clk-sel = <2>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
|
||||
&clkc CLKID_MPLL1>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
|
||||
};
|
||||
|
||||
aml_tdmc: tdmc {
|
||||
compatible = "amlogic, axg-snd-tdmc";
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask-out = <1 0>;
|
||||
dai-tdm-lane-slot-mask-in = <0 1>;
|
||||
dai-tdm-clk-sel = <2>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_C
|
||||
&clkc CLKID_MPLL2>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmc_mclk &tdmout_c &tdmin_c>;
|
||||
};
|
||||
|
||||
aml_spdif: spdif {
|
||||
compatible = "amlogic, axg-snd-spdif";
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clkc CLKID_MPLL0
|
||||
&clkc CLKID_FCLK_DIV4
|
||||
&clkaudio CLKID_AUDIO_SPDIFIN
|
||||
&clkaudio CLKID_AUDIO_SPDIFOUT
|
||||
&clkaudio CLKID_AUDIO_SPDIFIN_CTRL
|
||||
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
|
||||
clock-names = "sysclk", "fixed_clk", "gate_spdifin",
|
||||
"gate_spdifout", "clk_spdifin", "clk_spdifout";
|
||||
interrupts =
|
||||
<GIC_SPI 87 IRQ_TYPE_EDGE_RISING>;
|
||||
|
||||
interrupt-names = "irq_spdifin";
|
||||
pinctrl-names = "spdif_pins";
|
||||
pinctrl-0 = <&spdifout &spdifin>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
aml_pdm: pdm {
|
||||
compatible = "amlogic, axg-snd-pdm";
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_PDM
|
||||
&clkc CLKID_FCLK_DIV3
|
||||
&clkc CLKID_MPLL3
|
||||
&clkaudio CLKID_AUDIO_PDMIN0
|
||||
&clkaudio CLKID_AUDIO_PDMIN1>;
|
||||
clock-names = "gate",
|
||||
"sysclk_srcpll",
|
||||
"dclk_srcpll",
|
||||
"pdm_dclk",
|
||||
"pdm_sysclk";
|
||||
pinctrl-names = "pdm_pins";
|
||||
pinctrl-0 = <&pdmin>;
|
||||
filter_mode = <1>; /* mode 0~4, defalut:1 */
|
||||
status = "okay";
|
||||
};
|
||||
}; /* end of audiobus */
|
||||
|
||||
&pinctrl_periphs {
|
||||
tdmout_a: tdmout_a {
|
||||
mux {
|
||||
groups = "tdma_sclk",
|
||||
"tdma_fs",
|
||||
"tdma_dout0_x15";
|
||||
function = "tdma_out";
|
||||
};
|
||||
};
|
||||
|
||||
tdmin_a: tdmin_a {
|
||||
mux {
|
||||
groups = "tdma_din0";
|
||||
function = "tdma_in";
|
||||
};
|
||||
};
|
||||
|
||||
tdmb_mclk: tdmb_mclk {
|
||||
mux {
|
||||
groups = "mclk_b";
|
||||
function = "mclk_b";
|
||||
};
|
||||
};
|
||||
|
||||
tdmout_b: tdmout_b {
|
||||
mux {
|
||||
groups = "tdmb_sclk",
|
||||
"tdmb_fs",
|
||||
"tdmb_dout0";
|
||||
function = "tdmb_out";
|
||||
};
|
||||
};
|
||||
|
||||
// tdmin and tdmout are the same pins. can't use at same time
|
||||
/*
|
||||
*tdmin_b:tdmin_b {
|
||||
* mux {
|
||||
* groups = "tdmb_din0",
|
||||
* "tdmb_din1",
|
||||
* "tdmb_din2_a12",
|
||||
* "tdmb_din3_a13";
|
||||
* function = "tdmb_in";
|
||||
* };
|
||||
*};
|
||||
*/
|
||||
|
||||
tdmin_b: tdmin_b {
|
||||
mux {
|
||||
groups = "tdmb_din1";
|
||||
function = "tdmb_in";
|
||||
};
|
||||
};
|
||||
|
||||
tdmc_mclk: tdmc_mclk {
|
||||
mux {
|
||||
groups = "mclk_a";
|
||||
function = "mclk_a";
|
||||
};
|
||||
};
|
||||
|
||||
tdmout_c:tdmout_c {
|
||||
mux {
|
||||
groups = "tdmc_sclk",
|
||||
"tdmc_fs",
|
||||
"tdmc_dout0";
|
||||
function = "tdmc_out";
|
||||
};
|
||||
};
|
||||
|
||||
tdmin_c:tdmin_c {
|
||||
mux {
|
||||
groups = "tdmc_din1";
|
||||
function = "tdmc_in";
|
||||
};
|
||||
};
|
||||
|
||||
spdifout: spidfout {
|
||||
mux {
|
||||
groups = "spdif_out_a20";
|
||||
function = "spdif_out";
|
||||
};
|
||||
};
|
||||
|
||||
spdifin: spidfin {
|
||||
mux {
|
||||
groups = "spdif_in_a19";
|
||||
function = "spdif_in";
|
||||
};
|
||||
};
|
||||
|
||||
pdmin: pdmin {
|
||||
mux {
|
||||
groups = "pdm_dclk_a14",
|
||||
"pdm_din0",
|
||||
"pdm_din1",
|
||||
"pdm_din2",
|
||||
"pdm_din3";
|
||||
function = "pdm";
|
||||
};
|
||||
};
|
||||
}; /* end of pinctrl_periphs */
|
||||
/* Audio Related End */
|
||||
|
||||
&aobus{
|
||||
uart_AO: serial@3000 {
|
||||
compatible = "amlogic, meson-uart";
|
||||
reg = <0x3000 0x18>;
|
||||
interrupts = <0 193 1>;
|
||||
status = "okay";
|
||||
clocks = <&xtal>;
|
||||
clock-names = "clk_uart";
|
||||
xtal_tick_en = <1>;
|
||||
fifosize = < 64 >;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&ao_uart_pins>;
|
||||
support-sysrq = <0>; /* 0 not support , 1 support */
|
||||
};
|
||||
|
||||
uart_AO_B: serial@4000 {
|
||||
compatible = "amlogic, meson-uart";
|
||||
reg = <0x4000 0x18>;
|
||||
interrupts = <0 197 1>;
|
||||
status = "disable";
|
||||
clocks = <&xtal>;
|
||||
clock-names = "clk_uart";
|
||||
fifosize = < 64 >;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&ao_b_uart_pins>;
|
||||
};
|
||||
};
|
||||
|
||||
&audio_data{
|
||||
status = "okay";
|
||||
};
|
||||
628
arch/arm/boot/dts/amlogic/axg_pxp.dts
Normal file
628
arch/arm/boot/dts/amlogic/axg_pxp.dts
Normal file
@@ -0,0 +1,628 @@
|
||||
/*
|
||||
* arch/arm/boot/dts/amlogic/axg_pxp.dts
|
||||
*
|
||||
* Copyright (C) 2017 Amlogic, Inc. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "mesonaxg.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Amlogic";
|
||||
compatible = "amlogic, axg";
|
||||
interrupt-parent = <&gic>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
aliases {
|
||||
serial0 = &uart_AO;
|
||||
};
|
||||
|
||||
memory@00000000 {
|
||||
device_type = "memory";
|
||||
linux,usable-memory = <0x100000 0x3ff00000>;
|
||||
};
|
||||
|
||||
reserved-memory {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges;
|
||||
/* global autoconfigured region for contiguous allocations */
|
||||
secmon_reserved:linux,secmon {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x400000>;
|
||||
alignment = <0x400000>;
|
||||
alloc-ranges = <0x05000000 0x400000>;
|
||||
};
|
||||
|
||||
secos_reserved:linux,secos {
|
||||
status = "disable";
|
||||
compatible = "amlogic, aml_secos_memory";
|
||||
reg = <0x05300000 0x2000000>;
|
||||
no-map;
|
||||
};
|
||||
fb_reserved:linux,meson-fb {
|
||||
//compatible = "amlogic, fb-memory";
|
||||
//reg = <0x3e000000 0x1f00000>;
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x2000000>;
|
||||
alignment = <0x400000>;
|
||||
alloc-ranges = <0x3e000000 0x2000000>;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
||||
aml_sensor0: aml-sensor@0 {
|
||||
compatible = "amlogic, aml-thermal";
|
||||
device_name = "thermal";
|
||||
#thermal-sensor-cells = <1>;
|
||||
cooling_devices {
|
||||
cpufreq_cool_cluster0 {
|
||||
min_state = <1000000>;
|
||||
dyn_coeff = <140>;
|
||||
cluster_id = <0>;
|
||||
node_name = "cpufreq_cool0";
|
||||
device_type = "cpufreq";
|
||||
};
|
||||
cpucore_cool_cluster0 {
|
||||
min_state = <1>;
|
||||
dyn_coeff = <0>;
|
||||
cluster_id = <0>;
|
||||
node_name = "cpucore_cool0";
|
||||
device_type = "cpucore";
|
||||
};
|
||||
};
|
||||
cpufreq_cool0:cpufreq_cool0 {
|
||||
#cooling-cells = <2>; /* min followed by max */
|
||||
};
|
||||
cpucore_cool0:cpucore_cool0 {
|
||||
#cooling-cells = <2>; /* min followed by max */
|
||||
};
|
||||
};
|
||||
thermal-zones {
|
||||
soc_thermal {
|
||||
polling-delay = <1000>;
|
||||
polling-delay-passive = <100>;
|
||||
sustainable-power = <1050>;
|
||||
|
||||
thermal-sensors = <&aml_sensor0 3>;
|
||||
|
||||
trips {
|
||||
switch_on: trip-point@0 {
|
||||
temperature = <70000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
control: trip-point@1 {
|
||||
temperature = <80000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
hot: trip-point@2 {
|
||||
temperature = <85000>;
|
||||
hysteresis = <5000>;
|
||||
type = "hot";
|
||||
};
|
||||
critical: trip-point@3 {
|
||||
temperature = <260000>;
|
||||
hysteresis = <1000>;
|
||||
type = "critical";
|
||||
};
|
||||
};
|
||||
|
||||
cooling-maps {
|
||||
cpufreq_cooling_map {
|
||||
trip = <&control>;
|
||||
cooling-device = <&cpufreq_cool0 0 4>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
cpucore_cooling_map {
|
||||
trip = <&control>;
|
||||
cooling-device = <&cpucore_cool0 0 3>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
pcie_A: pcie@f9800000 {
|
||||
compatible = "amlogic, amlogic-pcie", "snps,dw-pcie";
|
||||
reg = <0xf9800000 0x400000
|
||||
0xff644000 0x2000
|
||||
0xff646000 0x2000
|
||||
0xffd01080 0x10
|
||||
0xf9c00000 0x100000>;
|
||||
reg-names = "elbi", "phy", "cfg", "reset", "config";
|
||||
reset-gpio = <&gpio GPIOX_19 0>;
|
||||
interrupts = <0 177 0>;
|
||||
#interrupt-cells = <1>;
|
||||
bus-range = <0x0 0xff>;
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
interrupt-map-mask = <0 0 0 0>;
|
||||
interrupt-map = <0 0 0 0 &gic GIC_SPI 179 IRQ_TYPE_EDGE_RISING>;
|
||||
device_type = "pci";
|
||||
ranges = <0x81000000 0 0 0xf9d00000 0x0 0x10000
|
||||
/*downstream I/O */
|
||||
0x82000000 0 0xf9d10000 0xf9d10000 0 0x002f0000>;
|
||||
/* non-prefetchable memory */
|
||||
num-lanes = <1>;
|
||||
pcie-num = <1>;
|
||||
|
||||
//clocks = <&clkc CLKID_PCIE_REFPLL
|
||||
//&clkc CLKID_PCIE_A>;
|
||||
//clock-names = "pcie_refpll",
|
||||
// "pcie_a";
|
||||
|
||||
status = "disable";
|
||||
};
|
||||
pcie_B: pcie@fa000000 {
|
||||
compatible = "amlogic, amlogic-pcie", "snps,dw-pcie";
|
||||
reg = <0xfa000000 0x400000
|
||||
0xff644000 0x2000
|
||||
0xff648000 0x2000
|
||||
0xffd01080 0x10
|
||||
0xfa400000 0x100000>;
|
||||
reg-names = "elbi", "phy-unuse", "cfg", "reset-unuse", "config";
|
||||
interrupts = <0 167 0>;
|
||||
#interrupt-cells = <1>;
|
||||
bus-range = <0x0 0xff>;
|
||||
#address-cells = <3>;
|
||||
#size-cells = <2>;
|
||||
interrupt-map-mask = <0 0 0 0>;
|
||||
interrupt-map = <0 0 0 0 &gic GIC_SPI 169 IRQ_TYPE_EDGE_RISING>;
|
||||
device_type = "pci";
|
||||
ranges = <0x81000000 0 0 0xfa500000 0x0 0x10000
|
||||
/* downstream I/O */
|
||||
0x82000000 0 0xfa510000 0xfa510000 0 0x002f0000>;
|
||||
/* non-prefetchable memory */
|
||||
num-lanes = <1>;
|
||||
pcie-num = <2>;
|
||||
|
||||
//clocks = <&clkc CLKID_PCIE_REFPLL
|
||||
// &clkc CLKID_PCIE_B>;
|
||||
//clock-names = "pcie_refpll",
|
||||
// "pcie_b";
|
||||
|
||||
status = "disable";
|
||||
};
|
||||
|
||||
vpu {
|
||||
compatible = "amlogic, vpu";
|
||||
dev_name = "vpu";
|
||||
status = "ok";
|
||||
clocks = <&clkc CLKID_VAPB_MUX
|
||||
&clkc CLKID_VPU_INTR
|
||||
&clkc CLKID_VPU_P0_MUX
|
||||
&clkc CLKID_VPU_P1_MUX
|
||||
&clkc CLKID_VPU_MUX>;
|
||||
clock-names = "vapb_clk",
|
||||
"vpu_intr_gate",
|
||||
"vpu_clk0",
|
||||
"vpu_clk1",
|
||||
"vpu_clk";
|
||||
clk_level = <3>;
|
||||
/* 0: 100.0M 1: 166.7M 2: 200.0M 3: 250.0M */
|
||||
};
|
||||
|
||||
meson-fb {
|
||||
compatible = "amlogic, meson-axg";
|
||||
memory-region = <&fb_reserved>;
|
||||
dev_name = "meson-fb";
|
||||
status = "okay";
|
||||
interrupts = <0 3 1
|
||||
0 89 1>;
|
||||
interrupt-names = "viu-vsync", "rdma";
|
||||
mem_size = <0x006AF000 0x01851000 0x00000000>;
|
||||
/* uboot logo,fb0/fb1 memory size */
|
||||
display_mode_default = "1080p60hz";
|
||||
scale_mode = <0>;
|
||||
/** 0:VPU free scale 1:OSD free scale 2:OSD super scale */
|
||||
display_size_default = <1920 1080 1920 3240 32>;
|
||||
/*1920*1080*4*3 = 0x17BB000*/
|
||||
mem_alloc = <1>;
|
||||
logo_addr = "0x3e000000";
|
||||
pxp_mode = <1>; /** 0:normal mode 1:pxp mode */
|
||||
};
|
||||
|
||||
ge2d {
|
||||
compatible = "amlogic, ge2d-axg";
|
||||
dev_name = "ge2d";
|
||||
status = "okay";
|
||||
interrupts = <0 150 1>;
|
||||
interrupt-names = "ge2d";
|
||||
clocks = <&clkc CLKID_VAPB_MUX>,
|
||||
<&clkc CLKID_G2D>,
|
||||
<&clkc CLKID_GE2D_GATE>;
|
||||
clock-names = "clk_vapb_0",
|
||||
"clk_ge2d",
|
||||
"clk_ge2d_gate";
|
||||
reg = <0xff940000 0x10000>;
|
||||
};
|
||||
|
||||
/* Sound iomap */
|
||||
aml_snd_iomap {
|
||||
compatible = "amlogic, snd_iomap";
|
||||
status = "okay";
|
||||
#address-cells=<1>;
|
||||
#size-cells=<1>;
|
||||
ranges;
|
||||
pdm_bus {
|
||||
reg = <0xFF632000 0x2000>;
|
||||
};
|
||||
audiobus_base {
|
||||
reg = <0xFF642000 0x2000>;
|
||||
};
|
||||
};
|
||||
pdm_codec:dummy{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, pdm_dummy_codec";
|
||||
status = "okay";
|
||||
};
|
||||
dummy_codec:dummy{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml_dummy_codec";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
auge_sound {
|
||||
compatible = "amlogic, axg-sound-card";
|
||||
aml-audio-card,name = "AML-AUGESOUND";
|
||||
|
||||
aml-audio-card,dai-link@0 {
|
||||
format = "dsp_a";
|
||||
mclk-fs = <512>;
|
||||
//continuous-clock;
|
||||
//bitclock-inversion;
|
||||
//frame-inversion;
|
||||
//bitclock-master = <&tdmacodec>;
|
||||
//frame-master = <&tdmacodec>;
|
||||
tdmacpu: cpu {
|
||||
sound-dai = <&aml_tdma>;
|
||||
dai-tdm-slot-tx-mask =
|
||||
<1 1 1 1 1 1 1 1>;
|
||||
dai-tdm-slot-rx-mask =
|
||||
<1 1 1 1 1 1 1 1>;
|
||||
dai-tdm-slot-num = <8>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <24576000>;
|
||||
};
|
||||
tdmacodec: codec {
|
||||
sound-dai = <&dummy_codec &dummy_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@1 {
|
||||
format = "i2s";
|
||||
mclk-fs = <256>;
|
||||
//continuous-clock;
|
||||
//bitclock-inversion;
|
||||
//frame-inversion;
|
||||
bitclock-master = <&aml_tdmb>;
|
||||
frame-master = <&aml_tdmb>;
|
||||
cpu {
|
||||
sound-dai = <&aml_tdmb>;
|
||||
dai-tdm-slot-tx-mask = <1 1>;
|
||||
dai-tdm-slot-rx-mask = <1 1>;
|
||||
dai-tdm-slot-num = <2>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <12288000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&dummy_codec &dummy_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@2 {
|
||||
format = "i2s";
|
||||
mclk-fs = <256>;
|
||||
continuous-clock;
|
||||
//bitclock-inversion;
|
||||
//frame-inversion;
|
||||
//bitclock-master = <&aml_tdmc>;
|
||||
//frame-master = <&aml_tdmc>;
|
||||
cpu {
|
||||
sound-dai = <&aml_tdmc>;
|
||||
dai-tdm-slot-tx-mask = <1 1>;
|
||||
dai-tdm-slot-rx-mask = <1 1>;
|
||||
dai-tdm-slot-num = <2>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <12288000>;
|
||||
};
|
||||
codec {
|
||||
//sound-dai = <&tas5707_36 &tas5707_3a>;
|
||||
sound-dai = <&dummy_codec &dummy_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@3 {
|
||||
mclk-fs = <64>;
|
||||
cpu {
|
||||
sound-dai = <&aml_pdm>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&pdm_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@4 {
|
||||
mclk-fs = <128>;
|
||||
cpu {
|
||||
sound-dai = <&aml_spdif>;
|
||||
system-clock-frequency = <6144000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&dummy_codec>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}; /* end of / */
|
||||
|
||||
/* Audio Related start */
|
||||
/* for spk board */
|
||||
&i2c1 {
|
||||
status = "okay";
|
||||
//pinctrl-names="default";
|
||||
//pinctrl-0=<&b_i2c_master>;
|
||||
tlv320adc3101_32: tlv320adc3101_32@32 {
|
||||
compatible = "ti,tlv320adc3101";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x19>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
tas5707_36: tas5707_36@36 {
|
||||
compatible = "ti,tas5707";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x1b>;
|
||||
status = "disabled";
|
||||
reset_pin = <&gpio_ao GPIOAO_4 0>;
|
||||
};
|
||||
|
||||
tas5707_3a: tas5707_3a@3a {
|
||||
compatible = "ti,tas5707";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x1d>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
/* for mic board */
|
||||
&i2c_AO {
|
||||
status = "okay";
|
||||
pinctrl-names="default";
|
||||
pinctrl-0=<&ao_i2c_master_pin2>;
|
||||
|
||||
tlv320adc3101_30: tlv320adc3101_30@30 {
|
||||
compatible = "ti,tlv320adc3101";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x18>;
|
||||
status = "disabled";
|
||||
};
|
||||
tlv320adc3101_34: tlv320adc3101_34@30 {
|
||||
compatible = "ti,tlv320adc3101";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x1a>;
|
||||
status = "disabled";
|
||||
};
|
||||
tlv320adc3101_36: tlv320adc3101_36@30 {
|
||||
compatible = "ti,tlv320adc3101";
|
||||
#sound-dai-cells = <0>;
|
||||
reg = <0x1b>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
&audiobus {
|
||||
aml_tdma: tdma {
|
||||
compatible = "amlogic, axg-snd-tdma";
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask-in = <1 0>;
|
||||
dai-tdm-lane-slot-mask-out = <0 1>;
|
||||
dai-tdm-clk-sel = <0>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_A
|
||||
&clkc CLKID_MPLL0>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmout_a &tdmin_a &tdmout_a_data>;
|
||||
};
|
||||
|
||||
aml_tdmb: tdmb {
|
||||
compatible = "amlogic, axg-snd-tdmb";
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask-in = <1 1 1 1>;
|
||||
dai-tdm-clk-sel = <1>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
|
||||
&clkc CLKID_MPLL1>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
|
||||
};
|
||||
|
||||
aml_tdmc: tdmc {
|
||||
compatible = "amlogic, axg-snd-tdmc";
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask-in = <0 1 0 0>;
|
||||
dai-tdm-lane-slot-mask-out = <1 0 1 1>;
|
||||
dai-tdm-clk-sel = <2>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_C
|
||||
&clkc CLKID_MPLL2>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmc_mclk &tdmout_c &tdmin_c>;
|
||||
};
|
||||
|
||||
aml_spdif: spdif {
|
||||
compatible = "amlogic, axg-snd-spdif";
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clkc CLKID_MPLL0
|
||||
&clkc CLKID_FCLK_DIV4
|
||||
&clkaudio CLKID_AUDIO_SPDIFIN
|
||||
&clkaudio CLKID_AUDIO_SPDIFOUT
|
||||
&clkaudio CLKID_AUDIO_SPDIFIN_CTRL
|
||||
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
|
||||
clock-names = "sysclk", "fixed_clk", "gate_spdifin",
|
||||
"gate_spdifout", "clk_spdifin", "clk_spdifout";
|
||||
interrupts =
|
||||
<GIC_SPI 87 IRQ_TYPE_EDGE_RISING>;
|
||||
|
||||
interrupt-names = "irq_spdifin";
|
||||
pinctrl-names = "spdif_pins";
|
||||
pinctrl-0 = <&spdifout &spdifin>;
|
||||
status = "okay";
|
||||
};
|
||||
aml_pdm: pdm {
|
||||
compatible = "amlogic, axg-snd-pdm";
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_PDM
|
||||
&clkc CLKID_FCLK_DIV3
|
||||
&clkc CLKID_MPLL3
|
||||
&clkaudio CLKID_AUDIO_PDMIN0
|
||||
&clkaudio CLKID_AUDIO_PDMIN1>;
|
||||
clock-names = "gate",
|
||||
"sysclk_srcpll",
|
||||
"dclk_srcpll",
|
||||
"pdm_dclk",
|
||||
"pdm_sysclk";
|
||||
pinctrl-names = "pdm_pins";
|
||||
pinctrl-0 = <&pdmin>;
|
||||
filter_mode = <1>; /* mode 0~4, defalut:1 */
|
||||
status = "okay";
|
||||
};
|
||||
}; /* end of audiobus */
|
||||
|
||||
&pinctrl_periphs {
|
||||
tdmout_a: tdmout_a {
|
||||
mux {
|
||||
groups = "tdma_sclk",
|
||||
"tdma_fs";
|
||||
function = "tdma_out";
|
||||
};
|
||||
};
|
||||
|
||||
tdmout_a_data: tdmout_a_data {
|
||||
mux {
|
||||
groups = "tdma_dout1_x15";
|
||||
function = "tdma_out";
|
||||
};
|
||||
};
|
||||
|
||||
tdmin_a: tdmin_a {
|
||||
mux {
|
||||
groups = "tdma_din0";
|
||||
function = "tdma_in";
|
||||
};
|
||||
};
|
||||
|
||||
tdmb_mclk: tdmb_mclk {
|
||||
mux {
|
||||
groups = "mclk_b";
|
||||
function = "mclk_b";
|
||||
};
|
||||
};
|
||||
|
||||
tdmout_b: tdmout_b {
|
||||
mux {
|
||||
groups = "tdmb_sclk",
|
||||
"tdmb_fs";
|
||||
function = "tdmb_out";
|
||||
};
|
||||
};
|
||||
// tdmin and tdmout are the same pins. can't use at same time
|
||||
tdmin_b:tdmin_b {
|
||||
mux {
|
||||
groups = "tdmb_din0",
|
||||
"tdmb_din1",
|
||||
"tdmb_din2_a12",
|
||||
"tdmb_din3_a13";
|
||||
function = "tdmb_in";
|
||||
};
|
||||
};
|
||||
|
||||
tdmc_mclk: tdmc_mclk {
|
||||
mux {
|
||||
groups = "mclk_a";
|
||||
function = "mclk_a";
|
||||
};
|
||||
};
|
||||
|
||||
tdmout_c:tdmout_c {
|
||||
mux {
|
||||
groups = "tdmc_sclk",
|
||||
"tdmc_fs",
|
||||
"tdmc_dout0",
|
||||
"tdmc_dout2_a6",
|
||||
"tdmc_dout3_a7";
|
||||
function = "tdmc_out";
|
||||
};
|
||||
};
|
||||
|
||||
tdmin_c:tdmin_c {
|
||||
mux {
|
||||
groups = "tdmc_din1";
|
||||
function = "tdmc_in";
|
||||
};
|
||||
};
|
||||
|
||||
spdifout: spidfout {
|
||||
mux {
|
||||
groups = "spdif_out_a20";
|
||||
function = "spdif_out";
|
||||
};
|
||||
};
|
||||
|
||||
spdifin: spidfin {
|
||||
mux {
|
||||
groups = "spdif_in_a19";
|
||||
function = "spdif_in";
|
||||
};
|
||||
};
|
||||
|
||||
pdmin: pdmin {
|
||||
mux {
|
||||
groups = "pdm_dclk_a14",
|
||||
"pdm_din0",
|
||||
"pdm_din1",
|
||||
"pdm_din2",
|
||||
"pdm_din3";
|
||||
function = "pdm";
|
||||
};
|
||||
};
|
||||
}; /* end of pinctrl_periphs */
|
||||
/* Audio Related End */
|
||||
|
||||
&aobus{
|
||||
uart_AO: serial@3000 {
|
||||
compatible = "amlogic, meson-uart";
|
||||
reg = <0x3000 0x18>;
|
||||
interrupts = <0 193 1>;
|
||||
status = "okay";
|
||||
clocks = <&xtal>;
|
||||
clock-names = "clk_uart";
|
||||
xtal_tick_en = <1>;
|
||||
fifosize = < 64 >;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&ao_uart_pins>;
|
||||
support-sysrq = <0>; /* 0 not support , 1 support */
|
||||
};
|
||||
};
|
||||
|
||||
&audio_data{
|
||||
status = "okay";
|
||||
};
|
||||
1414
arch/arm/boot/dts/amlogic/axg_s400_v03.dts
Normal file
1414
arch/arm/boot/dts/amlogic/axg_s400_v03.dts
Normal file
File diff suppressed because it is too large
Load Diff
1321
arch/arm/boot/dts/amlogic/axg_s400_v03gva.dts
Normal file
1321
arch/arm/boot/dts/amlogic/axg_s400_v03gva.dts
Normal file
File diff suppressed because it is too large
Load Diff
1331
arch/arm/boot/dts/amlogic/axg_s400emmc_512m.dts
Normal file
1331
arch/arm/boot/dts/amlogic/axg_s400emmc_512m.dts
Normal file
File diff suppressed because it is too large
Load Diff
1063
arch/arm/boot/dts/amlogic/axg_s420_128m.dts
Normal file
1063
arch/arm/boot/dts/amlogic/axg_s420_128m.dts
Normal file
File diff suppressed because it is too large
Load Diff
1202
arch/arm/boot/dts/amlogic/axg_s420_v03.dts
Normal file
1202
arch/arm/boot/dts/amlogic/axg_s420_v03.dts
Normal file
File diff suppressed because it is too large
Load Diff
1135
arch/arm/boot/dts/amlogic/axg_s420_v03gva.dts
Normal file
1135
arch/arm/boot/dts/amlogic/axg_s420_v03gva.dts
Normal file
File diff suppressed because it is too large
Load Diff
729
arch/arm/boot/dts/amlogic/g12a_pxp.dts
Normal file
729
arch/arm/boot/dts/amlogic/g12a_pxp.dts
Normal file
@@ -0,0 +1,729 @@
|
||||
/*
|
||||
* arch/arm/boot/dts/amlogic/g12a_pxp.dts
|
||||
*
|
||||
* Copyright (C) 2017 Amlogic, Inc. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "mesong12a.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Amlogic";
|
||||
compatible = "amlogic, g12a";
|
||||
interrupt-parent = <&gic>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
aliases {
|
||||
serial0 = &uart_AO;
|
||||
i2c0 = &i2c0;
|
||||
i2c1 = &i2c1;
|
||||
i2c2 = &i2c2;
|
||||
i2c3 = &i2c3;
|
||||
i2c4 = &i2c_AO;
|
||||
};
|
||||
|
||||
memory@00000000 {
|
||||
device_type = "memory";
|
||||
linux,usable-memory = <0x100000 0x3ff00000>;
|
||||
};
|
||||
|
||||
reserved-memory {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges;
|
||||
/* global autoconfigured region for contiguous allocations */
|
||||
secmon_reserved:linux,secmon {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x400000>;
|
||||
alignment = <0x400000>;
|
||||
alloc-ranges = <0x05000000 0x400000>;
|
||||
};
|
||||
|
||||
secos_reserved:linux,secos {
|
||||
status = "disable";
|
||||
compatible = "amlogic, aml_secos_memory";
|
||||
reg = <0x05300000 0x2000000>;
|
||||
no-map;
|
||||
};
|
||||
logo_reserved:linux,meson-fb {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x800000>;
|
||||
alignment = <0x400000>;
|
||||
alloc-ranges = <0x3f800000 0x800000>;
|
||||
};
|
||||
ion_cma_reserved:linux,ion-dev {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x8000000>;
|
||||
alignment = <0x400000>;
|
||||
};
|
||||
|
||||
//di_reserved:linux,di {
|
||||
//compatible = "amlogic, di-mem";
|
||||
/* buffer_size = 3621952(yuv422 8bit) */
|
||||
/* 4179008(yuv422 10bit full pack mode) */
|
||||
/** 10x3621952=34.6M(0x23) support 8bit **/
|
||||
/** 10x4736064=45.2M(0x2e) support 12bit **/
|
||||
/** 10x4179008=40M(0x28) support 10bit **/
|
||||
//size = <0x2800000>;
|
||||
//no-map;
|
||||
//};
|
||||
/*di CMA pool */
|
||||
di_cma_reserved:linux,di_cma {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
/* buffer_size = 3621952(yuv422 8bit)
|
||||
* | 4736064(yuv422 10bit)
|
||||
* | 4074560(yuv422 10bit full pack mode)
|
||||
* 10x3621952=34.6M(0x23) support 8bit
|
||||
* 10x4736064=45.2M(0x2e) support 12bit
|
||||
* 10x4074560=40M(0x28) support 10bit
|
||||
*/
|
||||
size = <0x02800000>;
|
||||
alignment = <0x400000>;
|
||||
};
|
||||
codec_mm_cma:linux,codec_mm_cma {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
/* ion_codec_mm max can alloc size 80M*/
|
||||
size = <0x13400000>;
|
||||
alignment = <0x400000>;
|
||||
linux,contiguous-region;
|
||||
};
|
||||
/* codec shared reserved */
|
||||
codec_mm_reserved:linux,codec_mm_reserved {
|
||||
compatible = "amlogic, codec-mm-reserved";
|
||||
size = <0x0>;
|
||||
alignment = <0x100000>;
|
||||
//no-map;
|
||||
};
|
||||
/* vdin0 CMA pool */
|
||||
vdin0_cma_reserved:linux,vdin0_cma {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
/* 1920x1080x2x4 =16+4 M */
|
||||
size = <0x04000000>;
|
||||
alignment = <0x400000>;
|
||||
};
|
||||
/* vdin1 CMA pool */
|
||||
vdin1_cma_reserved:linux,vdin1_cma {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
/* 1920x1080x2x4 =16 M */
|
||||
size = <0x04000000>;
|
||||
alignment = <0x400000>;
|
||||
};
|
||||
};
|
||||
|
||||
cvbsout {
|
||||
compatible = "amlogic, cvbsout-g12a";
|
||||
dev_name = "cvbsout";
|
||||
status = "okay";
|
||||
clocks = <&clkc CLKID_VCLK2_ENCI
|
||||
&clkc CLKID_VCLK2_VENCI0
|
||||
&clkc CLKID_VCLK2_VENCI1
|
||||
&clkc CLKID_DAC_CLK>;
|
||||
clock-names = "venci_top_gate",
|
||||
"venci_0_gate",
|
||||
"venci_1_gate",
|
||||
"vdac_clk_gate";
|
||||
clk_path = <0>;
|
||||
|
||||
/* performance: reg_address, reg_value */
|
||||
/* g12a */
|
||||
performance = <0x1bf0 0x9
|
||||
0x1b56 0x333
|
||||
0x1b12 0x8080
|
||||
0x1b05 0xfd
|
||||
0x1c59 0xf850
|
||||
0xffff 0x0>; /* ending flag */
|
||||
performance_sarft = <0x1bf0 0x9
|
||||
0x1b56 0x333
|
||||
0x1b12 0x0
|
||||
0x1b05 0x9
|
||||
0x1c59 0xfc48
|
||||
0xffff 0x0>; /* ending flag */
|
||||
performance_revB_telecom = <0x1bf0 0x9
|
||||
0x1b56 0x546
|
||||
0x1b12 0x8080
|
||||
0x1b05 0x9
|
||||
0x1c59 0xf850
|
||||
0xffff 0x0>; /* ending flag */
|
||||
};
|
||||
|
||||
codec_mm {
|
||||
compatible = "amlogic, codec, mm";
|
||||
memory-region = <&codec_mm_cma &codec_mm_reserved>;
|
||||
dev_name = "codec_mm";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
deinterlace {
|
||||
compatible = "amlogic, deinterlace";
|
||||
status = "okay";
|
||||
/* 0:use reserved; 1:use cma; 2:use cma as reserved */
|
||||
flag_cma = <1>;
|
||||
//memory-region = <&di_reserved>;
|
||||
memory-region = <&di_cma_reserved>;
|
||||
interrupts = <0 46 1
|
||||
0 40 1>;
|
||||
interrupt-names = "pre_irq", "post_irq";
|
||||
clocks = <&clkc CLKID_VPU_CLKB_TMP_COMP>,
|
||||
<&clkc CLKID_VPU_CLKB_COMP>;
|
||||
clock-names = "vpu_clkb_tmp_composite",
|
||||
"vpu_clkb_composite";
|
||||
clock-range = <334 667>;
|
||||
/* buffer-size = <3621952>;(yuv422 8bit) */
|
||||
buffer-size = <4074560>;/*yuv422 fullpack*/
|
||||
/* reserve-iomap = "true"; */
|
||||
/* if enable nr10bit, set nr10bit-support to 1 */
|
||||
post-wr-support = <1>;
|
||||
nr10bit-support = <1>;
|
||||
nrds-enable = <1>;
|
||||
pps-enable = <1>;
|
||||
};
|
||||
|
||||
efusekey:efusekey{
|
||||
keynum = <4>;
|
||||
key0 = <&key_0>;
|
||||
key1 = <&key_1>;
|
||||
key2 = <&key_2>;
|
||||
key3 = <&key_3>;
|
||||
key_0:key_0{
|
||||
keyname = "mac";
|
||||
offset = <0>;
|
||||
size = <6>;
|
||||
};
|
||||
key_1:key_1{
|
||||
keyname = "mac_bt";
|
||||
offset = <6>;
|
||||
size = <6>;
|
||||
};
|
||||
key_2:key_2{
|
||||
keyname = "mac_wifi";
|
||||
offset = <12>;
|
||||
size = <6>;
|
||||
};
|
||||
key_3:key_3{
|
||||
keyname = "usid";
|
||||
offset = <18>;
|
||||
size = <16>;
|
||||
};
|
||||
};//End efusekey
|
||||
|
||||
amlvecm {
|
||||
compatible = "amlogic, vecm";
|
||||
dev_name = "aml_vecm";
|
||||
status = "okay";
|
||||
gamma_en = <0>;/*1:enabel ;0:disable*/
|
||||
wb_en = <0>;/*1:enabel ;0:disable*/
|
||||
cm_en = <0>;/*1:enabel ;0:disable*/
|
||||
/*0: 709/601 1: bt2020*/
|
||||
tx_op_color_primary = <0>;
|
||||
};
|
||||
amdolby_vision {
|
||||
compatible = "amlogic, dolby_vision_g12a";
|
||||
dev_name = "aml_amdolby_vision_driver";
|
||||
status = "okay";
|
||||
tv_mode = <0>;/*1:enabel ;0:disable*/
|
||||
};
|
||||
|
||||
/* Audio Related start */
|
||||
|
||||
pdm_codec:dummy{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, pdm_dummy_codec";
|
||||
status = "okay";
|
||||
};
|
||||
dummy_codec:dummy{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml_dummy_codec";
|
||||
status = "okay";
|
||||
};
|
||||
amlogic_codec:t9015{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml_codec_T9015";
|
||||
reg = <0xFF632000 0x2000>;
|
||||
is_auge_used = <1>; /* meson or auge chipset used */
|
||||
tdmout_index = <0>;
|
||||
status = "disabled";
|
||||
};
|
||||
auge_sound {
|
||||
compatible = "amlogic, g12a-sound-card";
|
||||
aml-audio-card,name = "AML-AUGESOUND";
|
||||
|
||||
aml-audio-card,dai-link@0 {
|
||||
format = "dsp_a";
|
||||
mclk-fs = <512>;
|
||||
//continuous-clock;
|
||||
//bitclock-inversion;
|
||||
//frame-inversion;
|
||||
//bitclock-master = <&tdmacodec>;
|
||||
//frame-master = <&tdmacodec>;
|
||||
tdmacpu: cpu {
|
||||
sound-dai = <&aml_tdma>;
|
||||
dai-tdm-slot-tx-mask =
|
||||
<1 1 1 1 1 1 1 1>;
|
||||
dai-tdm-slot-rx-mask =
|
||||
<1 1 1 1 1 1 1 1>;
|
||||
dai-tdm-slot-num = <8>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <24576000>;
|
||||
};
|
||||
tdmacodec: codec {
|
||||
sound-dai = <&dummy_codec &dummy_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@1 {
|
||||
format = "i2s";
|
||||
mclk-fs = <256>;
|
||||
//continuous-clock;
|
||||
//bitclock-inversion;
|
||||
//frame-inversion;
|
||||
bitclock-master = <&aml_tdmb>;
|
||||
frame-master = <&aml_tdmb>;
|
||||
cpu {
|
||||
sound-dai = <&aml_tdmb>;
|
||||
dai-tdm-slot-tx-mask = <1 1>;
|
||||
dai-tdm-slot-rx-mask = <1 1>;
|
||||
dai-tdm-slot-num = <2>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <12288000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&dummy_codec &dummy_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@2 {
|
||||
format = "i2s";
|
||||
mclk-fs = <256>;
|
||||
continuous-clock;
|
||||
//bitclock-inversion;
|
||||
//frame-inversion;
|
||||
bitclock-master = <&aml_tdmc>;
|
||||
frame-master = <&aml_tdmc>;
|
||||
cpu {
|
||||
sound-dai = <&aml_tdmc>;
|
||||
dai-tdm-slot-tx-mask = <1 1>;
|
||||
dai-tdm-slot-rx-mask = <1 1>;
|
||||
dai-tdm-slot-num = <2>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <12288000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&dummy_codec &dummy_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@3 {
|
||||
mclk-fs = <64>;
|
||||
cpu {
|
||||
sound-dai = <&aml_pdm>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&pdm_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@4 {
|
||||
mclk-fs = <128>;
|
||||
cpu {
|
||||
sound-dai = <&aml_spdif>;
|
||||
system-clock-frequency = <6144000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&dummy_codec>;
|
||||
};
|
||||
};
|
||||
aml-audio-card,dai-link@5 {
|
||||
mclk-fs = <128>;
|
||||
cpu {
|
||||
sound-dai = <&aml_spdif_b>;
|
||||
system-clock-frequency = <6144000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&dummy_codec>;
|
||||
};
|
||||
};
|
||||
};
|
||||
audiolocker: locker {
|
||||
compatible = "amlogic, audiolocker";
|
||||
clocks = <&clkaudio CLKID_AUDIO_LOCKER_OUT
|
||||
&clkaudio CLKID_AUDIO_LOCKER_IN
|
||||
&clkaudio CLKID_AUDIO_MCLK_D
|
||||
&clkaudio CLKID_AUDIO_MCLK_E
|
||||
&clkc CLKID_MPLL1
|
||||
&clkc CLKID_MPLL2>;
|
||||
clock-names = "lock_out", "lock_in", "out_src",
|
||||
"in_src", "out_calc", "in_ref";
|
||||
interrupts = <GIC_SPI 1 IRQ_TYPE_EDGE_RISING>;
|
||||
interrupt-names = "irq";
|
||||
frequency = <49000000>; /* pll */
|
||||
dividor = <49>; /* locker's parent */
|
||||
status = "disabled";
|
||||
};
|
||||
/* Audio Related end */
|
||||
|
||||
/*DCDC for MP8756GD*/
|
||||
cpu_opp_table0: cpu_opp_table0 {
|
||||
compatible = "operating-points-v2";
|
||||
opp-shared;
|
||||
|
||||
opp00 {
|
||||
opp-hz = /bits/ 64 <100000000>;
|
||||
opp-microvolt = <731000>;
|
||||
};
|
||||
opp01 {
|
||||
opp-hz = /bits/ 64 <250000000>;
|
||||
opp-microvolt = <731000>;
|
||||
};
|
||||
opp02 {
|
||||
opp-hz = /bits/ 64 <500000000>;
|
||||
opp-microvolt = <731000>;
|
||||
};
|
||||
opp03 {
|
||||
opp-hz = /bits/ 64 <667000000>;
|
||||
opp-microvolt = <731000>;
|
||||
};
|
||||
opp04 {
|
||||
opp-hz = /bits/ 64 <1000000000>;
|
||||
opp-microvolt = <731000>;
|
||||
};
|
||||
opp05 {
|
||||
opp-hz = /bits/ 64 <1200000000>;
|
||||
opp-microvolt = <731000>;
|
||||
};
|
||||
opp06 {
|
||||
opp-hz = /bits/ 64 <1398000000>;
|
||||
opp-microvolt = <761000>;
|
||||
};
|
||||
opp07 {
|
||||
opp-hz = /bits/ 64 <1512000000>;
|
||||
opp-microvolt = <791000>;
|
||||
};
|
||||
opp08 {
|
||||
opp-hz = /bits/ 64 <1608000000>;
|
||||
opp-microvolt = <831000>;
|
||||
};
|
||||
opp09 {
|
||||
opp-hz = /bits/ 64 <1704000000>;
|
||||
opp-microvolt = <861000>;
|
||||
};
|
||||
opp10 {
|
||||
opp-hz = /bits/ 64 <1908000000>;
|
||||
opp-microvolt = <981000>;
|
||||
};
|
||||
};
|
||||
|
||||
cpufreq-meson {
|
||||
compatible = "amlogic, cpufreq-meson";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pwm_ao_d_pins3>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
}; /* end of / */
|
||||
|
||||
&meson_fb {
|
||||
status = "okay";
|
||||
display_size_default = <1920 1080 1920 2160 32>;
|
||||
mem_size = <0x00800000 0x1980000 0x100000 0x100000 0x800000>;
|
||||
logo_addr = "0x7f800000";
|
||||
mem_alloc = <1>;
|
||||
pxp_mode = <1>; /** 0:normal mode 1:pxp mode */
|
||||
};
|
||||
|
||||
&pwm_AO_cd {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&audiobus {
|
||||
aml_tdma: tdma {
|
||||
compatible = "amlogic, g12a-snd-tdma";
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask-in = <1 0>;
|
||||
dai-tdm-lane-slot-mask-out = <0 1>;
|
||||
dai-tdm-clk-sel = <0>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_A
|
||||
&clkc CLKID_MPLL0>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmout_a &tdmin_a>;
|
||||
};
|
||||
|
||||
aml_tdmb: tdmb {
|
||||
compatible = "amlogic, g12a-snd-tdmb";
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask-in = <1 1 1 1>;
|
||||
dai-tdm-clk-sel = <1>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
|
||||
&clkc CLKID_MPLL1>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmb_mclk /*&tdmout_b &tdmin_b*/>;
|
||||
};
|
||||
|
||||
aml_tdmc: tdmc {
|
||||
compatible = "amlogic, g12a-snd-tdmc";
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask-in = <0 1 0 0>;
|
||||
#dai-tdm-lane-slot-mask-out = <1 0 1 1>;
|
||||
#dai-tdm-lane-oe-slot-mask-in = <0 0 0 0>;
|
||||
dai-tdm-lane-oe-slot-mask-out = <1 0 0 0>;
|
||||
dai-tdm-clk-sel = <2>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_C
|
||||
&clkc CLKID_MPLL2>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmc_mclk &tdmout_c &tdmin_c>;
|
||||
};
|
||||
|
||||
aml_spdif: spdif {
|
||||
compatible = "amlogic, g12a-snd-spdif-a";
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clkc CLKID_MPLL0
|
||||
&clkc CLKID_FCLK_DIV4
|
||||
&clkaudio CLKID_AUDIO_SPDIFIN
|
||||
&clkaudio CLKID_AUDIO_SPDIFOUT
|
||||
&clkaudio CLKID_AUDIO_SPDIFIN_CTRL
|
||||
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
|
||||
clock-names = "sysclk", "fixed_clk", "gate_spdifin",
|
||||
"gate_spdifout", "clk_spdifin", "clk_spdifout";
|
||||
interrupts =
|
||||
<GIC_SPI 87 IRQ_TYPE_EDGE_RISING>;
|
||||
|
||||
interrupt-names = "irq_spdifin";
|
||||
pinctrl-names = "spdif_pins";
|
||||
pinctrl-0 = <&spdifout &spdifin>;
|
||||
status = "okay";
|
||||
};
|
||||
aml_spdif_b: spdif_b {
|
||||
compatible = "amlogic, g12a-snd-spdif-b";
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clkc CLKID_MPLL0 /*CLKID_HIFI_PLL*/
|
||||
&clkaudio CLKID_AUDIO_SPDIFOUTB
|
||||
&clkaudio CLKID_AUDIO_SPDIFOUTB_CTRL>;
|
||||
clock-names = "sysclk",
|
||||
"gate_spdifout", "clk_spdifout";
|
||||
pinctrl-names = "spdif_pins";
|
||||
pinctrl-0 = <&spdifout_b>;
|
||||
status = "okay";
|
||||
};
|
||||
aml_pdm: pdm {
|
||||
compatible = "amlogic, g12a-snd-pdm";
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_PDM
|
||||
&clkc CLKID_FCLK_DIV3
|
||||
&clkc CLKID_MPLL3
|
||||
&clkaudio CLKID_AUDIO_PDMIN0
|
||||
&clkaudio CLKID_AUDIO_PDMIN1>;
|
||||
clock-names = "gate",
|
||||
"sysclk_srcpll",
|
||||
"dclk_srcpll",
|
||||
"pdm_dclk",
|
||||
"pdm_sysclk";
|
||||
pinctrl-names = "pdm_pins";
|
||||
pinctrl-0 = <&pdmin>;
|
||||
filter_mode = <1>; /* mode 0~4, defalut:1 */
|
||||
status = "okay";
|
||||
};
|
||||
aml_pwrdet: pwrdet {
|
||||
compatible = "amlogic, g12a-power-detect";
|
||||
|
||||
interrupts = <GIC_SPI 155 IRQ_TYPE_EDGE_RISING>;
|
||||
interrupt-names = "pwrdet_irq";
|
||||
|
||||
/* pwrdet source sel
|
||||
* 7: loopback;
|
||||
* 6: tdmin_lb;
|
||||
* 5: reserved;
|
||||
* 4: pdmin;
|
||||
* 3: spdifin;
|
||||
* 2: tdmin_c;
|
||||
* 1: tdmin_b;
|
||||
* 0: tdmin_a;
|
||||
*/
|
||||
pwrdet_src = <4>;
|
||||
|
||||
hi_th = <0x70000>;
|
||||
lo_th = <0x16000>;
|
||||
|
||||
status = "disabled";
|
||||
};
|
||||
}; /* end of audiobus */
|
||||
|
||||
&pinctrl_periphs {
|
||||
tdmout_a: tdmout_a {
|
||||
mux { /* GPIOX_11, GPIOX_10, GPIOX_8 */
|
||||
groups = "tdma_sclk",
|
||||
"tdma_fs",
|
||||
"tdma_dout1";
|
||||
function = "tdma_out";
|
||||
};
|
||||
};
|
||||
|
||||
tdmin_a: tdmin_a {
|
||||
mux { /* GPIOX_9 */
|
||||
groups = "tdma_din0";
|
||||
function = "tdma_in";
|
||||
};
|
||||
};
|
||||
|
||||
tdmb_mclk: tdmb_mclk {
|
||||
mux {
|
||||
groups = "mclk0_a";
|
||||
function = "mclk0";
|
||||
};
|
||||
};
|
||||
|
||||
tdmc_mclk: tdmc_mclk {
|
||||
mux { /* GPIOZ_8 */
|
||||
groups = "mclk1_z";
|
||||
function = "mclk1";
|
||||
};
|
||||
};
|
||||
|
||||
tdmout_c:tdmout_c {
|
||||
mux { /* gpioz_7, gpioz_6, GPIOZ_2, GPIOZ_4, GPIOZ_5*/
|
||||
groups = "tdmc_sclk_z",
|
||||
"tdmc_fs_z",
|
||||
"tdmc_dout0_z"
|
||||
/*,"tdmc_dout2_z",
|
||||
*"tdmc_dout3_z"
|
||||
*/;
|
||||
function = "tdmc_out";
|
||||
};
|
||||
};
|
||||
|
||||
tdmin_c:tdmin_c {
|
||||
mux { /* GPIOZ_3 */
|
||||
groups = "tdmc_din1_z";
|
||||
function = "tdmc_in";
|
||||
};
|
||||
};
|
||||
|
||||
spdifin: spdifin {
|
||||
mux {/* gpioa_10 */
|
||||
groups = "spdif_in_a10";
|
||||
function = "spdif_in";
|
||||
};
|
||||
};
|
||||
|
||||
spdifout: spdifout {
|
||||
mux {/* gpioa_11 */
|
||||
groups = "spdif_out_a11";
|
||||
function = "spdif_out";
|
||||
};
|
||||
};
|
||||
|
||||
spdifout_b: spdifout_b {
|
||||
mux { /* gpioa_13 */
|
||||
groups = "spdif_out_a13";
|
||||
function = "spdif_out";
|
||||
};
|
||||
};
|
||||
|
||||
pdmin: pdmin {
|
||||
mux { /* gpioa_5, gpioa_6, gpioa_7, gpioa_8, gpioa_9*/
|
||||
groups = "pdm_din0_a",
|
||||
"pdm_din1_a",
|
||||
"pdm_din2_a",
|
||||
"pdm_din3_a",
|
||||
"pdm_dclk_a";
|
||||
function = "pdm";
|
||||
};
|
||||
};
|
||||
|
||||
}; /* end of pinctrl_periphs */
|
||||
|
||||
&pinctrl_aobus {
|
||||
tdmout_b: tdmout_b {
|
||||
mux { /* GPIOAO_7, GPIOAO_8, GPIOAO_4 */
|
||||
groups = "tdmb_fs_ao",
|
||||
"tdmb_fs_ao",
|
||||
"tdmb_dout0_ao";
|
||||
function = "tdmb_out_ao";
|
||||
};
|
||||
};
|
||||
|
||||
tdmin_b:tdmin_b {
|
||||
mux {
|
||||
groups = "tdmb_din2_ao";
|
||||
function = "tdmb_in_ao";
|
||||
};
|
||||
};
|
||||
}; /* end of pinctrl_aobus */
|
||||
/* Audio Related End */
|
||||
|
||||
&aobus{
|
||||
|
||||
};
|
||||
|
||||
&irblaster {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
/*if you want to use vdin just modify status to "ok"*/
|
||||
&vdin0 {
|
||||
memory-region = <&vdin0_cma_reserved>;
|
||||
status = "okay";
|
||||
/*vdin write mem color depth support:
|
||||
*bit0:support 8bit
|
||||
*bit1:support 9bit
|
||||
*bit2:support 10bit
|
||||
*bit3:support 12bit
|
||||
*bit4:support yuv422 10bit full pack mode (from txl new add)
|
||||
*/
|
||||
tv_bit_mode = <0x15>;
|
||||
};
|
||||
&vdin1 {
|
||||
memory-region = <&vdin1_cma_reserved>;
|
||||
status = "okay";
|
||||
/*vdin write mem color depth support:
|
||||
*bit0:support 8bit
|
||||
*bit1:support 9bit
|
||||
*bit2:support 10bit
|
||||
*bit3:support 12bit
|
||||
*/
|
||||
tv_bit_mode = <1>;
|
||||
};
|
||||
&sd_emmc_b1 {
|
||||
status = "okay";
|
||||
sd {
|
||||
caps = "MMC_CAP_4_BIT_DATA",
|
||||
"MMC_CAP_MMC_HIGHSPEED",
|
||||
"MMC_CAP_SD_HIGHSPEED",
|
||||
"MMC_CAP_NONREMOVABLE",
|
||||
"MMC_CAP_UHS_SDR12",
|
||||
"MMC_CAP_UHS_SDR25",
|
||||
"MMC_CAP_UHS_SDR50",
|
||||
"MMC_PM_KEEP_POWER",
|
||||
"MMC_CAP_NONREMOVABLE"; /**ptm debug */
|
||||
f_min = <400000>;
|
||||
f_max = <200000000>;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
&defendkey {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
1298
arch/arm/boot/dts/amlogic/g12a_s905d2_skt.dts
Normal file
1298
arch/arm/boot/dts/amlogic/g12a_s905d2_skt.dts
Normal file
File diff suppressed because it is too large
Load Diff
1240
arch/arm/boot/dts/amlogic/g12a_s905d2_skt_buildroot.dts
Normal file
1240
arch/arm/boot/dts/amlogic/g12a_s905d2_skt_buildroot.dts
Normal file
File diff suppressed because it is too large
Load Diff
1374
arch/arm/boot/dts/amlogic/g12a_s905d2_u200_buildroot.dts
Normal file
1374
arch/arm/boot/dts/amlogic/g12a_s905d2_u200_buildroot.dts
Normal file
File diff suppressed because it is too large
Load Diff
1393
arch/arm/boot/dts/amlogic/g12a_s905d2_u200_buildroot_vccktest.dts
Normal file
1393
arch/arm/boot/dts/amlogic/g12a_s905d2_u200_buildroot_vccktest.dts
Normal file
File diff suppressed because it is too large
Load Diff
1391
arch/arm/boot/dts/amlogic/g12a_s905d2_u200_drm_buildroot.dts
Normal file
1391
arch/arm/boot/dts/amlogic/g12a_s905d2_u200_drm_buildroot.dts
Normal file
File diff suppressed because it is too large
Load Diff
1342
arch/arm/boot/dts/amlogic/g12a_s905x2_u211.dts
Normal file
1342
arch/arm/boot/dts/amlogic/g12a_s905x2_u211.dts
Normal file
File diff suppressed because it is too large
Load Diff
1327
arch/arm/boot/dts/amlogic/g12a_s905x2_u211_1g.dts
Normal file
1327
arch/arm/boot/dts/amlogic/g12a_s905x2_u211_1g.dts
Normal file
File diff suppressed because it is too large
Load Diff
1328
arch/arm/boot/dts/amlogic/g12a_s905x2_u211_512m.dts
Normal file
1328
arch/arm/boot/dts/amlogic/g12a_s905x2_u211_512m.dts
Normal file
File diff suppressed because it is too large
Load Diff
1364
arch/arm/boot/dts/amlogic/g12a_s905x2_u211_buildroot.dts
Normal file
1364
arch/arm/boot/dts/amlogic/g12a_s905x2_u211_buildroot.dts
Normal file
File diff suppressed because it is too large
Load Diff
1364
arch/arm/boot/dts/amlogic/g12a_s905x2_u212_buildroot.dts
Normal file
1364
arch/arm/boot/dts/amlogic/g12a_s905x2_u212_buildroot.dts
Normal file
File diff suppressed because it is too large
Load Diff
1321
arch/arm/boot/dts/amlogic/g12a_s905y2_u220.dts
Normal file
1321
arch/arm/boot/dts/amlogic/g12a_s905y2_u220.dts
Normal file
File diff suppressed because it is too large
Load Diff
1379
arch/arm/boot/dts/amlogic/g12b_a311d_skt.dts
Normal file
1379
arch/arm/boot/dts/amlogic/g12b_a311d_skt.dts
Normal file
File diff suppressed because it is too large
Load Diff
1436
arch/arm/boot/dts/amlogic/g12b_a311d_w400_buildroot.dts
Normal file
1436
arch/arm/boot/dts/amlogic/g12b_a311d_w400_buildroot.dts
Normal file
File diff suppressed because it is too large
Load Diff
1334
arch/arm/boot/dts/amlogic/g12b_a311d_w400_buildroot_vccktest.dts
Normal file
1334
arch/arm/boot/dts/amlogic/g12b_a311d_w400_buildroot_vccktest.dts
Normal file
File diff suppressed because it is too large
Load Diff
736
arch/arm/boot/dts/amlogic/g12b_pxp.dts
Normal file
736
arch/arm/boot/dts/amlogic/g12b_pxp.dts
Normal file
@@ -0,0 +1,736 @@
|
||||
/*
|
||||
* arch/arm/boot/dts/amlogic/g12b_pxp.dts
|
||||
*
|
||||
* Copyright (C) 2017 Amlogic, Inc. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "mesong12b.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Amlogic";
|
||||
compatible = "amlogic, g12b";
|
||||
interrupt-parent = <&gic>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
aliases {
|
||||
serial0 = &uart_AO;
|
||||
i2c0 = &i2c0;
|
||||
i2c1 = &i2c1;
|
||||
i2c2 = &i2c2;
|
||||
i2c3 = &i2c3;
|
||||
i2c4 = &i2c_AO;
|
||||
};
|
||||
|
||||
memory@00000000 {
|
||||
device_type = "memory";
|
||||
linux,usable-memory = <0x100000 0x3ff00000>;
|
||||
};
|
||||
|
||||
reserved-memory {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges;
|
||||
/* global autoconfigured region for contiguous allocations */
|
||||
secmon_reserved:linux,secmon {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x400000>;
|
||||
alignment = <0x400000>;
|
||||
alloc-ranges = <0x05000000 0x400000>;
|
||||
};
|
||||
|
||||
secos_reserved:linux,secos {
|
||||
status = "disable";
|
||||
compatible = "amlogic, aml_secos_memory";
|
||||
reg = <0x05300000 0x2000000>;
|
||||
no-map;
|
||||
};
|
||||
logo_reserved:linux,meson-fb {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x800000>;
|
||||
alignment = <0x400000>;
|
||||
alloc-ranges = <0x3f800000 0x800000>;
|
||||
};
|
||||
ion_cma_reserved:linux,ion-dev {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x8000000>;
|
||||
alignment = <0x400000>;
|
||||
};
|
||||
|
||||
//di_reserved:linux,di {
|
||||
//compatible = "amlogic, di-mem";
|
||||
/* buffer_size = 3621952(yuv422 8bit) */
|
||||
/* 4179008(yuv422 10bit full pack mode) */
|
||||
/** 10x3621952=34.6M(0x23) support 8bit **/
|
||||
/** 10x4736064=45.2M(0x2e) support 12bit **/
|
||||
/** 10x4179008=40M(0x28) support 10bit **/
|
||||
//size = <0x2800000>;
|
||||
//no-map;
|
||||
//};
|
||||
/*di CMA pool */
|
||||
di_cma_reserved:linux,di_cma {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
/* buffer_size = 3621952(yuv422 8bit)
|
||||
* | 4736064(yuv422 10bit)
|
||||
* | 4074560(yuv422 10bit full pack mode)
|
||||
* 10x3621952=34.6M(0x23) support 8bit
|
||||
* 10x4736064=45.2M(0x2e) support 12bit
|
||||
* 10x4074560=40M(0x28) support 10bit
|
||||
*/
|
||||
size = <0x02800000>;
|
||||
alignment = <0x400000>;
|
||||
};
|
||||
codec_mm_cma:linux,codec_mm_cma {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
/* ion_codec_mm max can alloc size 80M*/
|
||||
size = <0xd000000>;
|
||||
alignment = <0x400000>;
|
||||
linux,contiguous-region;
|
||||
alloc-ranges = <0x0 0x30000000>;
|
||||
};
|
||||
/* codec shared reserved */
|
||||
codec_mm_reserved:linux,codec_mm_reserved {
|
||||
compatible = "amlogic, codec-mm-reserved";
|
||||
size = <0x0>;
|
||||
alignment = <0x100000>;
|
||||
//no-map;
|
||||
};
|
||||
/* vdin0 CMA pool */
|
||||
vdin0_cma_reserved:linux,vdin0_cma {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
/* 1920x1080x2x4 =16+4 M */
|
||||
size = <0x04000000>;
|
||||
alignment = <0x400000>;
|
||||
};
|
||||
/* vdin1 CMA pool */
|
||||
vdin1_cma_reserved:linux,vdin1_cma {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
/* 1920x1080x2x4 =16 M */
|
||||
size = <0x04000000>;
|
||||
alignment = <0x400000>;
|
||||
};
|
||||
};
|
||||
|
||||
cvbsout {
|
||||
compatible = "amlogic, cvbsout-g12b";
|
||||
dev_name = "cvbsout";
|
||||
status = "okay";
|
||||
clocks = <&clkc CLKID_VCLK2_ENCI
|
||||
&clkc CLKID_VCLK2_VENCI0
|
||||
&clkc CLKID_VCLK2_VENCI1
|
||||
&clkc CLKID_DAC_CLK>;
|
||||
clock-names = "venci_top_gate",
|
||||
"venci_0_gate",
|
||||
"venci_1_gate",
|
||||
"vdac_clk_gate";
|
||||
clk_path = <0>;
|
||||
|
||||
/* performance: reg_address, reg_value */
|
||||
/* g12b */
|
||||
performance = <0x1bf0 0x9
|
||||
0x1b56 0x333
|
||||
0x1b12 0x8080
|
||||
0x1b05 0xfd
|
||||
0x1c59 0xf850
|
||||
0xffff 0x0>; /* ending flag */
|
||||
performance_sarft = <0x1bf0 0x9
|
||||
0x1b56 0x333
|
||||
0x1b12 0x0
|
||||
0x1b05 0x9
|
||||
0x1c59 0xfc48
|
||||
0xffff 0x0>; /* ending flag */
|
||||
};
|
||||
|
||||
codec_mm {
|
||||
compatible = "amlogic, codec, mm";
|
||||
memory-region = <&codec_mm_cma &codec_mm_reserved>;
|
||||
dev_name = "codec_mm";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
deinterlace {
|
||||
compatible = "amlogic, deinterlace";
|
||||
status = "disabled";
|
||||
/* 0:use reserved; 1:use cma; 2:use cma as reserved */
|
||||
flag_cma = <1>;
|
||||
//memory-region = <&di_reserved>;
|
||||
memory-region = <&di_cma_reserved>;
|
||||
interrupts = <0 46 1
|
||||
0 40 1>;
|
||||
interrupt-names = "pre_irq", "post_irq";
|
||||
clocks = <&clkc CLKID_VPU_CLKB_TMP_COMP>,
|
||||
<&clkc CLKID_VPU_CLKB_COMP>;
|
||||
clock-names = "vpu_clkb_tmp_composite",
|
||||
"vpu_clkb_composite";
|
||||
clock-range = <334 667>;
|
||||
/* buffer-size = <3621952>;(yuv422 8bit) */
|
||||
buffer-size = <4074560>;/*yuv422 fullpack*/
|
||||
/* reserve-iomap = "true"; */
|
||||
/* if enable nr10bit, set nr10bit-support to 1 */
|
||||
post-wr-support = <1>;
|
||||
nr10bit-support = <1>;
|
||||
nrds-enable = <1>;
|
||||
pps-enable = <1>;
|
||||
};
|
||||
|
||||
amlvecm {
|
||||
compatible = "amlogic, vecm";
|
||||
dev_name = "aml_vecm";
|
||||
status = "disabled";
|
||||
gamma_en = <0>;/*1:enabel ;0:disable*/
|
||||
wb_en = <0>;/*1:enabel ;0:disable*/
|
||||
cm_en = <0>;/*1:enabel ;0:disable*/
|
||||
};
|
||||
amdolby_vision {
|
||||
compatible = "amlogic, dolby_vision_g12a";
|
||||
dev_name = "aml_amdolby_vision_driver";
|
||||
status = "disabled";
|
||||
tv_mode = <0>;/*1:enabel ;0:disable*/
|
||||
};
|
||||
|
||||
/* Audio Related start */
|
||||
pdm_codec:dummy{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, pdm_dummy_codec";
|
||||
status = "disabled";
|
||||
};
|
||||
dummy_codec:dummy{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml_dummy_codec";
|
||||
status = "disabled";
|
||||
};
|
||||
amlogic_codec:t9015{
|
||||
#sound-dai-cells = <0>;
|
||||
/*compatible = "amlogic, aml_codec_T9015";*/
|
||||
reg = <0xFF632000 0x2000>;
|
||||
is_auge_used = <1>; /* meson or auge chipset used */
|
||||
tdmout_index = <0>;
|
||||
status = "disabled";
|
||||
};
|
||||
auge_sound {
|
||||
/*compatible = "amlogic, g12a-sound-card";*/
|
||||
aml-audio-card,name = "AML-AUGESOUND";
|
||||
|
||||
aml-audio-card,dai-link@0 {
|
||||
format = "dsp_a";
|
||||
mclk-fs = <512>;
|
||||
//continuous-clock;
|
||||
//bitclock-inversion;
|
||||
//frame-inversion;
|
||||
//bitclock-master = <&tdmacodec>;
|
||||
//frame-master = <&tdmacodec>;
|
||||
tdmacpu: cpu {
|
||||
sound-dai = <&aml_tdma>;
|
||||
dai-tdm-slot-tx-mask =
|
||||
<1 1 1 1 1 1 1 1>;
|
||||
dai-tdm-slot-rx-mask =
|
||||
<1 1 1 1 1 1 1 1>;
|
||||
dai-tdm-slot-num = <8>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <24576000>;
|
||||
};
|
||||
tdmacodec: codec {
|
||||
sound-dai = <&dummy_codec &dummy_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@1 {
|
||||
format = "i2s";
|
||||
mclk-fs = <256>;
|
||||
//continuous-clock;
|
||||
//bitclock-inversion;
|
||||
//frame-inversion;
|
||||
bitclock-master = <&aml_tdmb>;
|
||||
frame-master = <&aml_tdmb>;
|
||||
cpu {
|
||||
sound-dai = <&aml_tdmb>;
|
||||
dai-tdm-slot-tx-mask = <1 1>;
|
||||
dai-tdm-slot-rx-mask = <1 1>;
|
||||
dai-tdm-slot-num = <2>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <12288000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&dummy_codec &dummy_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@2 {
|
||||
format = "i2s";
|
||||
mclk-fs = <256>;
|
||||
continuous-clock;
|
||||
//bitclock-inversion;
|
||||
//frame-inversion;
|
||||
bitclock-master = <&aml_tdmc>;
|
||||
frame-master = <&aml_tdmc>;
|
||||
cpu {
|
||||
sound-dai = <&aml_tdmc>;
|
||||
dai-tdm-slot-tx-mask = <1 1>;
|
||||
dai-tdm-slot-rx-mask = <1 1>;
|
||||
dai-tdm-slot-num = <2>;
|
||||
dai-tdm-slot-width = <32>;
|
||||
system-clock-frequency = <12288000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&dummy_codec &dummy_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@3 {
|
||||
mclk-fs = <64>;
|
||||
cpu {
|
||||
sound-dai = <&aml_pdm>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&pdm_codec>;
|
||||
};
|
||||
};
|
||||
|
||||
aml-audio-card,dai-link@4 {
|
||||
mclk-fs = <128>;
|
||||
cpu {
|
||||
sound-dai = <&aml_spdif>;
|
||||
system-clock-frequency = <6144000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&dummy_codec>;
|
||||
};
|
||||
};
|
||||
aml-audio-card,dai-link@5 {
|
||||
mclk-fs = <128>;
|
||||
cpu {
|
||||
sound-dai = <&aml_spdif_b>;
|
||||
system-clock-frequency = <6144000>;
|
||||
};
|
||||
codec {
|
||||
sound-dai = <&dummy_codec>;
|
||||
};
|
||||
};
|
||||
};
|
||||
audiolocker: locker {
|
||||
compatible = "amlogic, audiolocker";
|
||||
clocks = <&clkaudio CLKID_AUDIO_LOCKER_OUT
|
||||
&clkaudio CLKID_AUDIO_LOCKER_IN
|
||||
&clkaudio CLKID_AUDIO_MCLK_D
|
||||
&clkaudio CLKID_AUDIO_MCLK_E
|
||||
&clkc CLKID_MPLL1
|
||||
&clkc CLKID_MPLL2>;
|
||||
clock-names = "lock_out", "lock_in", "out_src",
|
||||
"in_src", "out_calc", "in_ref";
|
||||
interrupts = <GIC_SPI 1 IRQ_TYPE_EDGE_RISING>;
|
||||
interrupt-names = "irq";
|
||||
frequency = <49000000>; /* pll */
|
||||
dividor = <49>; /* locker's parent */
|
||||
status = "disabled";
|
||||
};
|
||||
/* Audio Related end */
|
||||
|
||||
cpu_opp_table0: cpu_opp_table0 {
|
||||
compatible = "operating-points-v2";
|
||||
opp-shared;
|
||||
|
||||
opp00 {
|
||||
opp-hz = /bits/ 64 <100000000>;
|
||||
opp-microvolt = <731000>;
|
||||
};
|
||||
opp01 {
|
||||
opp-hz = /bits/ 64 <250000000>;
|
||||
opp-microvolt = <731000>;
|
||||
};
|
||||
opp02 {
|
||||
opp-hz = /bits/ 64 <500000000>;
|
||||
opp-microvolt = <731000>;
|
||||
};
|
||||
opp03 {
|
||||
opp-hz = /bits/ 64 <667000000>;
|
||||
opp-microvolt = <731000>;
|
||||
};
|
||||
opp04 {
|
||||
opp-hz = /bits/ 64 <1000000000>;
|
||||
opp-microvolt = <731000>;
|
||||
};
|
||||
opp05 {
|
||||
opp-hz = /bits/ 64 <1200000000>;
|
||||
opp-microvolt = <731000>;
|
||||
};
|
||||
opp06 {
|
||||
opp-hz = /bits/ 64 <1398000000>;
|
||||
opp-microvolt = <761000>;
|
||||
};
|
||||
opp07 {
|
||||
opp-hz = /bits/ 64 <1512000000>;
|
||||
opp-microvolt = <791000>;
|
||||
};
|
||||
opp08 {
|
||||
opp-hz = /bits/ 64 <1608000000>;
|
||||
opp-microvolt = <831000>;
|
||||
};
|
||||
opp09 {
|
||||
opp-hz = /bits/ 64 <1704000000>;
|
||||
opp-microvolt = <861000>;
|
||||
};
|
||||
opp10 {
|
||||
opp-hz = /bits/ 64 <1800000000>;
|
||||
opp-microvolt = <981000>;
|
||||
};
|
||||
};
|
||||
|
||||
cpu_opp_table1: cpu_opp_table1 {
|
||||
compatible = "operating-points-v2";
|
||||
opp-shared;
|
||||
|
||||
opp00 {
|
||||
opp-hz = /bits/ 64 <100000000>;
|
||||
opp-microvolt = <751000>;
|
||||
};
|
||||
opp01 {
|
||||
opp-hz = /bits/ 64 <250000000>;
|
||||
opp-microvolt = <751000>;
|
||||
};
|
||||
opp02 {
|
||||
opp-hz = /bits/ 64 <500000000>;
|
||||
opp-microvolt = <751000>;
|
||||
};
|
||||
opp03 {
|
||||
opp-hz = /bits/ 64 <667000000>;
|
||||
opp-microvolt = <751000>;
|
||||
};
|
||||
opp04 {
|
||||
opp-hz = /bits/ 64 <1000000000>;
|
||||
opp-microvolt = <771000>;
|
||||
};
|
||||
opp05 {
|
||||
opp-hz = /bits/ 64 <1200000000>;
|
||||
opp-microvolt = <771000>;
|
||||
};
|
||||
opp06 {
|
||||
opp-hz = /bits/ 64 <1398000000>;
|
||||
opp-microvolt = <791000>;
|
||||
};
|
||||
opp07 {
|
||||
opp-hz = /bits/ 64 <1512000000>;
|
||||
opp-microvolt = <821000>;
|
||||
};
|
||||
opp08 {
|
||||
opp-hz = /bits/ 64 <1608000000>;
|
||||
opp-microvolt = <861000>;
|
||||
};
|
||||
opp09 {
|
||||
opp-hz = /bits/ 64 <1704000000>;
|
||||
opp-microvolt = <891000>;
|
||||
};
|
||||
};
|
||||
|
||||
cpufreq-meson {
|
||||
compatible = "amlogic, cpufreq-meson";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
}; /* end of / */
|
||||
|
||||
&meson_fb {
|
||||
status = "okay";
|
||||
display_size_default = <1920 1080 1920 2160 32>;
|
||||
mem_size = <0x00800000 0x1980000 0x100000 0x100000 0x800000>;
|
||||
logo_addr = "0x3f800000";
|
||||
mem_alloc = <1>;
|
||||
pxp_mode = <1>; /** 0:normal mode 1:pxp mode */
|
||||
};
|
||||
|
||||
&pwm_AO_cd {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm_ab {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
&audiobus {
|
||||
aml_tdma: tdma {
|
||||
/*compatible = "amlogic, g12a-snd-tdma";*/
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask-in = <1 0>;
|
||||
dai-tdm-lane-slot-mask-out = <0 1>;
|
||||
dai-tdm-clk-sel = <0>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_A
|
||||
&clkc CLKID_MPLL0>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmout_a &tdmin_a>;
|
||||
};
|
||||
|
||||
aml_tdmb: tdmb {
|
||||
/*compatible = "amlogic, g12a-snd-tdmb";*/
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask-in = <1 1 1 1>;
|
||||
dai-tdm-clk-sel = <1>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
|
||||
&clkc CLKID_MPLL1>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmb_mclk /*&tdmout_b &tdmin_b*/>;
|
||||
};
|
||||
|
||||
aml_tdmc: tdmc {
|
||||
/*compatible = "amlogic, g12a-snd-tdmc";*/
|
||||
#sound-dai-cells = <0>;
|
||||
dai-tdm-lane-slot-mask-in = <0 1 0 0>;
|
||||
#dai-tdm-lane-slot-mask-out = <1 0 1 1>;
|
||||
#dai-tdm-lane-oe-slot-mask-in = <0 0 0 0>;
|
||||
dai-tdm-lane-oe-slot-mask-out = <1 0 0 0>;
|
||||
dai-tdm-clk-sel = <2>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_MCLK_C
|
||||
&clkc CLKID_MPLL2>;
|
||||
clock-names = "mclk", "clk_srcpll";
|
||||
pinctrl-names = "tdm_pins";
|
||||
pinctrl-0 = <&tdmc_mclk &tdmout_c &tdmin_c>;
|
||||
};
|
||||
|
||||
aml_spdif: spdif {
|
||||
/*compatible = "amlogic, g12a-snd-spdif-a";*/
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clkc CLKID_MPLL0
|
||||
&clkc CLKID_FCLK_DIV4
|
||||
&clkaudio CLKID_AUDIO_SPDIFIN
|
||||
&clkaudio CLKID_AUDIO_SPDIFOUT
|
||||
&clkaudio CLKID_AUDIO_SPDIFIN_CTRL
|
||||
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
|
||||
clock-names = "sysclk", "fixed_clk", "gate_spdifin",
|
||||
"gate_spdifout", "clk_spdifin", "clk_spdifout";
|
||||
interrupts =
|
||||
<GIC_SPI 87 IRQ_TYPE_EDGE_RISING>;
|
||||
|
||||
interrupt-names = "irq_spdifin";
|
||||
pinctrl-names = "spdif_pins";
|
||||
pinctrl-0 = <&spdifout &spdifin>;
|
||||
status = "disabled";
|
||||
};
|
||||
aml_spdif_b: spdif_b {
|
||||
/*compatible = "amlogic, g12a-snd-spdif-b";*/
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clkc CLKID_MPLL0 /*CLKID_HIFI_PLL*/
|
||||
&clkaudio CLKID_AUDIO_SPDIFOUTB
|
||||
&clkaudio CLKID_AUDIO_SPDIFOUTB_CTRL>;
|
||||
clock-names = "sysclk",
|
||||
"gate_spdifout", "clk_spdifout";
|
||||
pinctrl-names = "spdif_pins";
|
||||
pinctrl-0 = <&spdifout_b>;
|
||||
status = "disabled";
|
||||
};
|
||||
aml_pdm: pdm {
|
||||
/*compatible = "amlogic, g12a-snd-pdm";*/
|
||||
#sound-dai-cells = <0>;
|
||||
clocks = <&clkaudio CLKID_AUDIO_PDM
|
||||
&clkc CLKID_FCLK_DIV3
|
||||
&clkc CLKID_MPLL3
|
||||
&clkaudio CLKID_AUDIO_PDMIN0
|
||||
&clkaudio CLKID_AUDIO_PDMIN1>;
|
||||
clock-names = "gate",
|
||||
"sysclk_srcpll",
|
||||
"dclk_srcpll",
|
||||
"pdm_dclk",
|
||||
"pdm_sysclk";
|
||||
pinctrl-names = "pdm_pins";
|
||||
pinctrl-0 = <&pdmin>;
|
||||
filter_mode = <1>; /* mode 0~4, defalut:1 */
|
||||
status = "disabled";
|
||||
};
|
||||
aml_pwrdet: pwrdet {
|
||||
compatible = "amlogic, g12a-power-detect";
|
||||
|
||||
interrupts = <GIC_SPI 155 IRQ_TYPE_EDGE_RISING>;
|
||||
interrupt-names = "pwrdet_irq";
|
||||
|
||||
/* pwrdet source sel
|
||||
* 7: loopback;
|
||||
* 6: tdmin_lb;
|
||||
* 5: reserved;
|
||||
* 4: pdmin;
|
||||
* 3: spdifin;
|
||||
* 2: tdmin_c;
|
||||
* 1: tdmin_b;
|
||||
* 0: tdmin_a;
|
||||
*/
|
||||
pwrdet_src = <4>;
|
||||
|
||||
hi_th = <0x70000>;
|
||||
lo_th = <0x16000>;
|
||||
|
||||
status = "disabled";
|
||||
};
|
||||
}; /* end of audiobus */
|
||||
|
||||
&pinctrl_periphs {
|
||||
tdmout_a: tdmout_a {
|
||||
mux { /* GPIOX_11, GPIOX_10, GPIOX_8 */
|
||||
groups = "tdma_sclk",
|
||||
"tdma_fs",
|
||||
"tdma_dout1";
|
||||
function = "tdma_out";
|
||||
};
|
||||
};
|
||||
|
||||
tdmin_a: tdmin_a {
|
||||
mux { /* GPIOX_9 */
|
||||
groups = "tdma_din0";
|
||||
function = "tdma_in";
|
||||
};
|
||||
};
|
||||
|
||||
tdmb_mclk: tdmb_mclk {
|
||||
mux {
|
||||
groups = "mclk0_a";
|
||||
function = "mclk0";
|
||||
};
|
||||
};
|
||||
|
||||
tdmc_mclk: tdmc_mclk {
|
||||
mux { /* GPIOZ_8 */
|
||||
groups = "mclk1_z";
|
||||
function = "mclk1";
|
||||
};
|
||||
};
|
||||
|
||||
tdmout_c:tdmout_c {
|
||||
mux { /* gpioz_7, gpioz_6, GPIOZ_2, GPIOZ_4, GPIOZ_5*/
|
||||
groups = "tdmc_sclk_z",
|
||||
"tdmc_fs_z",
|
||||
"tdmc_dout0_z"
|
||||
/*,"tdmc_dout2_z",
|
||||
*"tdmc_dout3_z"
|
||||
*/;
|
||||
function = "tdmc_out";
|
||||
};
|
||||
};
|
||||
|
||||
tdmin_c:tdmin_c {
|
||||
mux { /* GPIOZ_3 */
|
||||
groups = "tdmc_din1_z";
|
||||
function = "tdmc_in";
|
||||
};
|
||||
};
|
||||
|
||||
spdifin: spdifin {
|
||||
mux {/* gpioa_10 */
|
||||
groups = "spdif_in_a10";
|
||||
function = "spdif_in";
|
||||
};
|
||||
};
|
||||
|
||||
spdifout: spdifout {
|
||||
mux {/* gpioa_11 */
|
||||
groups = "spdif_out_a11";
|
||||
function = "spdif_out";
|
||||
};
|
||||
};
|
||||
|
||||
spdifout_b: spdifout_b {
|
||||
mux { /* gpioa_13 */
|
||||
groups = "spdif_out_a13";
|
||||
function = "spdif_out";
|
||||
};
|
||||
};
|
||||
|
||||
pdmin: pdmin {
|
||||
mux { /* gpioa_5, gpioa_6, gpioa_7, gpioa_8, gpioa_9*/
|
||||
groups = "pdm_din0_a",
|
||||
"pdm_din1_a",
|
||||
"pdm_din2_a",
|
||||
"pdm_din3_a",
|
||||
"pdm_dclk_a";
|
||||
function = "pdm";
|
||||
};
|
||||
};
|
||||
|
||||
}; /* end of pinctrl_periphs */
|
||||
|
||||
&pinctrl_aobus {
|
||||
tdmout_b: tdmout_b {
|
||||
mux { /* GPIOAO_7, GPIOAO_8, GPIOAO_4 */
|
||||
groups = "tdmb_fs_ao",
|
||||
"tdmb_fs_ao",
|
||||
"tdmb_dout0_ao";
|
||||
function = "tdmb_out_ao";
|
||||
};
|
||||
};
|
||||
|
||||
tdmin_b:tdmin_b {
|
||||
mux {
|
||||
groups = "tdmb_din2_ao";
|
||||
function = "tdmb_in_ao";
|
||||
};
|
||||
};
|
||||
}; /* end of pinctrl_aobus */
|
||||
/* Audio Related End */
|
||||
|
||||
&aobus{
|
||||
|
||||
};
|
||||
|
||||
&irblaster {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
/*if you want to use vdin just modify status to "ok"*/
|
||||
&vdin0 {
|
||||
memory-region = <&vdin0_cma_reserved>;
|
||||
status = "disabled";
|
||||
/*vdin write mem color depth support:
|
||||
*bit0:support 8bit
|
||||
*bit1:support 9bit
|
||||
*bit2:support 10bit
|
||||
*bit3:support 12bit
|
||||
*bit4:support yuv422 10bit full pack mode (from txl new add)
|
||||
*/
|
||||
tv_bit_mode = <0x15>;
|
||||
};
|
||||
&vdin1 {
|
||||
memory-region = <&vdin1_cma_reserved>;
|
||||
status = "disabled";
|
||||
/*vdin write mem color depth support:
|
||||
*bit0:support 8bit
|
||||
*bit1:support 9bit
|
||||
*bit2:support 10bit
|
||||
*bit3:support 12bit
|
||||
*/
|
||||
tv_bit_mode = <1>;
|
||||
};
|
||||
&sd_emmc_b {
|
||||
status = "disabled";
|
||||
sd {
|
||||
caps = "MMC_CAP_4_BIT_DATA",
|
||||
"MMC_CAP_MMC_HIGHSPEED",
|
||||
"MMC_CAP_SD_HIGHSPEED",
|
||||
"MMC_CAP_NONREMOVABLE",
|
||||
"MMC_CAP_UHS_SDR12",
|
||||
"MMC_CAP_UHS_SDR25",
|
||||
"MMC_CAP_UHS_SDR50",
|
||||
"MMC_PM_KEEP_POWER",
|
||||
"MMC_CAP_NONREMOVABLE"; /**ptm debug */
|
||||
f_min = <400000>;
|
||||
f_max = <200000000>;
|
||||
};
|
||||
};
|
||||
|
||||
1263
arch/arm/boot/dts/amlogic/gxl_p212_1g_buildroot.dts
Normal file
1263
arch/arm/boot/dts/amlogic/gxl_p212_1g_buildroot.dts
Normal file
File diff suppressed because it is too large
Load Diff
1207
arch/arm/boot/dts/amlogic/gxl_p212_1g_hd.dts
Normal file
1207
arch/arm/boot/dts/amlogic/gxl_p212_1g_hd.dts
Normal file
File diff suppressed because it is too large
Load Diff
1248
arch/arm/boot/dts/amlogic/gxl_p212_2g_buildroot.dts
Normal file
1248
arch/arm/boot/dts/amlogic/gxl_p212_2g_buildroot.dts
Normal file
File diff suppressed because it is too large
Load Diff
1310
arch/arm/boot/dts/amlogic/gxl_p230_2g_buildroot.dts
Normal file
1310
arch/arm/boot/dts/amlogic/gxl_p230_2g_buildroot.dts
Normal file
File diff suppressed because it is too large
Load Diff
1122
arch/arm/boot/dts/amlogic/gxl_p231_1g.dts
Normal file
1122
arch/arm/boot/dts/amlogic/gxl_p231_1g.dts
Normal file
File diff suppressed because it is too large
Load Diff
1121
arch/arm/boot/dts/amlogic/gxl_p231_2g.dts
Normal file
1121
arch/arm/boot/dts/amlogic/gxl_p231_2g.dts
Normal file
File diff suppressed because it is too large
Load Diff
1190
arch/arm/boot/dts/amlogic/gxl_p231_2g_buildroot.dts
Normal file
1190
arch/arm/boot/dts/amlogic/gxl_p231_2g_buildroot.dts
Normal file
File diff suppressed because it is too large
Load Diff
1357
arch/arm/boot/dts/amlogic/gxl_p241_1g_buildroot.dts
Normal file
1357
arch/arm/boot/dts/amlogic/gxl_p241_1g_buildroot.dts
Normal file
File diff suppressed because it is too large
Load Diff
1356
arch/arm/boot/dts/amlogic/gxl_p241_v2_1g_buildroot.dts
Normal file
1356
arch/arm/boot/dts/amlogic/gxl_p241_v2_1g_buildroot.dts
Normal file
File diff suppressed because it is too large
Load Diff
874
arch/arm/boot/dts/amlogic/gxl_p400_2g.dts
Normal file
874
arch/arm/boot/dts/amlogic/gxl_p400_2g.dts
Normal file
@@ -0,0 +1,874 @@
|
||||
/*
|
||||
* arch/arm/boot/dts/amlogic/gxl_p400_2g.dts
|
||||
*
|
||||
* Copyright (C) 2017 Amlogic, Inc. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
#include "mesongxl.dtsi"
|
||||
/ {
|
||||
model = "Amlogic";
|
||||
amlogic-dt-id = "gxl_p400_2g";
|
||||
compatible = "amlogic, Gxl";
|
||||
interrupt-parent = <&gic>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
aliases {
|
||||
serial0 = &uart_AO;
|
||||
serial1 = &uart_A;
|
||||
serial2 = &uart_B;
|
||||
serial3 = &uart_C;
|
||||
serial4 = &uart_AO_B;
|
||||
};
|
||||
|
||||
|
||||
memory@00000000 {
|
||||
device_type = "memory";
|
||||
linux,usable-memory = <0x0100000 0x7ff00000>;
|
||||
};
|
||||
|
||||
reserved-memory {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges;
|
||||
/* global autoconfigured region for contiguous allocations */
|
||||
ramoops@0x07400000 {
|
||||
compatible = "ramoops";
|
||||
reg = <0x07400000 0x00100000>;
|
||||
record-size = <0x8000>;
|
||||
console-size = <0x8000>;
|
||||
ftrace-size = <0x0>;
|
||||
pmsg-size = <0x8000>;
|
||||
};
|
||||
|
||||
secmon_reserved:linux,secmon {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x400000>;
|
||||
alignment = <0x400000>;
|
||||
alloc-ranges = <0x05000000 0x400000>;
|
||||
};
|
||||
secos_reserved:linux,secos {
|
||||
status = "disable";
|
||||
compatible = "amlogic, aml_secos_memory";
|
||||
reg = <0x05300000 0x2000000>;
|
||||
no-map;
|
||||
};
|
||||
fb_reserved:linux,meson-fb {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x2400000>;
|
||||
alignment = <0x400000>;
|
||||
alloc-ranges = <0x7dc00000 0x2400000>;
|
||||
};
|
||||
|
||||
|
||||
};
|
||||
|
||||
wifi{
|
||||
compatible = "amlogic, aml_wifi";
|
||||
dev_name = "aml_wifi";
|
||||
status = "okay";
|
||||
interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>;
|
||||
irq_trigger_type = "GPIO_IRQ_LOW";
|
||||
power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&wifi_32k_pins>;
|
||||
pwm_config = <&wifi_pwm_conf>;
|
||||
};
|
||||
|
||||
wifi_pwm_conf:wifi_pwm_conf{
|
||||
pwm_channel1_conf {
|
||||
pwms = <&pwm_ef MESON_PWM_0 30040 0>;
|
||||
duty-cycle = <15020>;
|
||||
times = <8>;
|
||||
};
|
||||
pwm_channel2_conf {
|
||||
pwms = <&pwm_ef MESON_PWM_2 30030 0>;
|
||||
duty-cycle = <15015>;
|
||||
times = <12>;
|
||||
};
|
||||
};
|
||||
|
||||
sd_emmc_c: emmc@d0074000 {
|
||||
status = "okay";
|
||||
compatible = "amlogic, meson-mmc-gxl";
|
||||
reg = <0xd0074000 0x2000>;
|
||||
interrupts = <0 218 1>;
|
||||
pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins";
|
||||
pinctrl-0 = <&emmc_clk_cmd_pins>;
|
||||
pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done>;
|
||||
clocks = <&clkc CLKID_SD_EMMC_C>,
|
||||
<&clkc CLKID_SD_EMMC_C_P0_COMP>,
|
||||
<&clkc CLKID_FCLK_DIV2>;
|
||||
clock-names = "core", "clkin0", "clkin1";
|
||||
|
||||
bus-width = <8>;
|
||||
cap-sd-highspeed;
|
||||
cap-mmc-highspeed;
|
||||
mmc-ddr-1_8v;
|
||||
mmc-hs200-1_8v;
|
||||
|
||||
max-frequency = <200000000>;
|
||||
non-removable;
|
||||
disable-wp;
|
||||
emmc {
|
||||
pinname = "emmc";
|
||||
ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */
|
||||
caps = "MMC_CAP_8_BIT_DATA",
|
||||
"MMC_CAP_MMC_HIGHSPEED",
|
||||
"MMC_CAP_SD_HIGHSPEED",
|
||||
"MMC_CAP_NONREMOVABLE",
|
||||
"MMC_CAP_1_8V_DDR",
|
||||
"MMC_CAP_HW_RESET",
|
||||
"MMC_CAP_ERASE",
|
||||
"MMC_CAP_CMD23";
|
||||
caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400";
|
||||
f_min = <400000>;
|
||||
f_max = <100000000>;
|
||||
max_req_size = <0x20000>; /**128KB*/
|
||||
gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>;
|
||||
hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>;
|
||||
card_type = <1>;
|
||||
/* 1:mmc card(include eMMC),
|
||||
* 2:sd card(include tSD)
|
||||
*/
|
||||
};
|
||||
};
|
||||
|
||||
sd_emmc_b:sd@d0072000 {
|
||||
status = "okay";
|
||||
compatible = "amlogic, meson-mmc-gxl";
|
||||
reg = <0xd0072000 0x2000>;
|
||||
interrupts = <0 217 1>;
|
||||
pinctrl-names = "sd_all_pins",
|
||||
"sd_clk_cmd_pins",
|
||||
"sd_1bit_pins",
|
||||
"sd_clk_cmd_uart_pins",
|
||||
"sd_1bit_uart_pins",
|
||||
"sd_to_ao_uart_pins",
|
||||
"ao_to_sd_uart_pins",
|
||||
"ao_to_sd_jtag_pins",
|
||||
"sd_to_ao_jtag_pins";
|
||||
pinctrl-0 = <&sd_all_pins>;
|
||||
pinctrl-1 = <&sd_clk_cmd_pins>;
|
||||
pinctrl-2 = <&sd_1bit_pins>;
|
||||
pinctrl-3 = <&sd_to_ao_uart_clr_pins
|
||||
&sd_clk_cmd_pins &ao_to_sd_uart_pins>;
|
||||
pinctrl-4 = <&sd_to_ao_uart_clr_pins
|
||||
&sd_1bit_pins &ao_to_sd_uart_pins>;
|
||||
pinctrl-5 = <&sd_all_pins &sd_to_ao_uart_pins>;
|
||||
pinctrl-6 = <&sd_to_ao_uart_clr_pins &ao_to_sd_uart_pins>;
|
||||
pinctrl-7 = <&sd_to_ao_uart_clr_pins &ao_to_sd_uart_pins>;
|
||||
pinctrl-8 = <&sd_all_pins &sd_to_ao_uart_pins>;
|
||||
clocks = <&clkc CLKID_SD_EMMC_B>,
|
||||
<&clkc CLKID_SD_EMMC_B_P0_COMP>,
|
||||
<&clkc CLKID_FCLK_DIV2>;
|
||||
clock-names = "core", "clkin0", "clkin1";
|
||||
|
||||
bus-width = <4>;
|
||||
cap-sd-highspeed;
|
||||
max-frequency = <100000000>;
|
||||
disable-wp;
|
||||
sd {
|
||||
pinname = "sd";
|
||||
ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */
|
||||
caps = "MMC_CAP_4_BIT_DATA",
|
||||
"MMC_CAP_MMC_HIGHSPEED",
|
||||
"MMC_CAP_SD_HIGHSPEED";
|
||||
/* "MMC_CAP_UHS_SDR12",
|
||||
* "MMC_CAP_UHS_SDR25",
|
||||
* "MMC_CAP_UHS_SDR50",
|
||||
* "MMC_CAP_UHS_SDR104";
|
||||
*/
|
||||
f_min = <400000>;
|
||||
f_max = <100000000>;
|
||||
max_req_size = <0x20000>; /**128KB*/
|
||||
gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>;
|
||||
jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>;
|
||||
gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>;
|
||||
card_type = <5>;
|
||||
/* 0:unknown,
|
||||
* 1:mmc card(include eMMC),
|
||||
* 2:sd card(include tSD),
|
||||
* 3:sdio device(ie:sdio-wifi),
|
||||
* 4:SD combo (IO+mem) card,
|
||||
* 5:NON sdio device(means sd/mmc card),
|
||||
* other:reserved
|
||||
*/
|
||||
};
|
||||
};
|
||||
|
||||
sd_emmc_a:sdio@d0070000 {
|
||||
status = "okay";
|
||||
compatible = "amlogic, meson-mmc-gxl";
|
||||
reg = <0xd0070000 0x2000>;
|
||||
interrupts = <0 216 4>;
|
||||
pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins";
|
||||
pinctrl-0 = <&sdio_clk_cmd_pins>;
|
||||
pinctrl-1 = <&sdio_all_pins>;
|
||||
clocks = <&clkc CLKID_SD_EMMC_A>,
|
||||
<&clkc CLKID_SD_EMMC_A_P0_COMP>,
|
||||
<&clkc CLKID_FCLK_DIV2>;
|
||||
clock-names = "core", "clkin0", "clkin1";
|
||||
|
||||
bus-width = <4>;
|
||||
cap-sd-highspeed;
|
||||
cap-mmc-highspeed;
|
||||
max-frequency = <100000000>;
|
||||
non-removable;
|
||||
disable-wp;
|
||||
sdio {
|
||||
pinname = "sdio";
|
||||
ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */
|
||||
caps = "MMC_CAP_4_BIT_DATA",
|
||||
"MMC_CAP_MMC_HIGHSPEED",
|
||||
"MMC_CAP_SD_HIGHSPEED",
|
||||
"MMC_CAP_NONREMOVABLE",
|
||||
"MMC_CAP_UHS_SDR12",
|
||||
"MMC_CAP_UHS_SDR25",
|
||||
"MMC_CAP_UHS_SDR50",
|
||||
"MMC_CAP_UHS_SDR104",
|
||||
"MMC_PM_KEEP_POWER",
|
||||
"MMC_CAP_SDIO_IRQ";
|
||||
f_min = <400000>;
|
||||
f_max = <200000000>;
|
||||
max_req_size = <0x20000>; /**128KB*/
|
||||
card_type = <3>;
|
||||
/* 3:sdio device(ie:sdio-wifi),
|
||||
* 4:SD combo (IO+mem) card
|
||||
*/
|
||||
};
|
||||
};
|
||||
|
||||
ethmac: ethernet@0xc9410000 {
|
||||
compatible = "amlogic, gxbb-eth-dwmac";
|
||||
reg = <0xc9410000 0x10000
|
||||
0xc8834540 0x8
|
||||
0xc8834558 0xc>;
|
||||
interrupts = <0 8 1>;
|
||||
pinctrl-names = "external_eth_pins";
|
||||
pinctrl-0 = <&external_eth_pins>;
|
||||
rst_pin-gpios = <&gpio GPIOZ_14 0>;
|
||||
GPIOZ4_pin-gpios = <&gpio GPIOZ_4 0>;
|
||||
GPIOZ5_pin-gpios = <&gpio GPIOZ_5 0>;
|
||||
mc_val_internal_phy = <0x1800>;
|
||||
mc_val_external_phy = <0x1621>;
|
||||
cali_val = <0x20000>;
|
||||
interrupt-names = "macirq";
|
||||
clocks = <&clkc CLKID_ETH>;
|
||||
clock-names = "ethclk81";
|
||||
internal_phy=<1>;
|
||||
};
|
||||
|
||||
codec_io {
|
||||
compatible = "amlogic, codec_io";
|
||||
#address-cells=<1>;
|
||||
#size-cells=<1>;
|
||||
ranges;
|
||||
io_cbus_base{
|
||||
reg = <0xC1100000 0x100000>;
|
||||
};
|
||||
io_dos_base{
|
||||
reg = <0xc8820000 0x10000>;
|
||||
};
|
||||
io_hiubus_base{
|
||||
reg = <0xc883c000 0x2000>;
|
||||
};
|
||||
io_aobus_base{
|
||||
reg = <0xc8100000 0x100000>;
|
||||
};
|
||||
io_vcbus_base{
|
||||
reg = <0xd0100000 0x40000>;
|
||||
};
|
||||
io_dmc_base{
|
||||
reg = <0xc8838000 0x400>;
|
||||
};
|
||||
};
|
||||
|
||||
aml_sensor0: aml-sensor@0 {
|
||||
compatible = "amlogic, aml-thermal";
|
||||
device_name = "thermal";
|
||||
#thermal-sensor-cells = <1>;
|
||||
cooling_devices {
|
||||
cpufreq_cool_cluster0 {
|
||||
min_state = <1000000>;
|
||||
dyn_coeff = <140>;
|
||||
cluster_id = <0>;
|
||||
node_name = "cpufreq_cool0";
|
||||
device_type = "cpufreq";
|
||||
};
|
||||
cpucore_cool_cluster0 {
|
||||
min_state = <1>;
|
||||
dyn_coeff = <0>;
|
||||
cluster_id = <0>;
|
||||
node_name = "cpucore_cool0";
|
||||
device_type = "cpucore";
|
||||
};
|
||||
gpufreq_cool {
|
||||
min_state = <400>;
|
||||
dyn_coeff = <437>;
|
||||
cluster_id = <0>;
|
||||
node_name = "gpufreq_cool0";
|
||||
device_type = "gpufreq";
|
||||
};
|
||||
gpucore_cool {
|
||||
min_state = <1>;
|
||||
dyn_coeff = <0>;
|
||||
cluster_id = <0>;
|
||||
node_name = "gpucore_cool0";
|
||||
device_type = "gpucore";
|
||||
};
|
||||
};
|
||||
cpufreq_cool0:cpufreq_cool0 {
|
||||
#cooling-cells = <2>; /* min followed by max */
|
||||
};
|
||||
cpucore_cool0:cpucore_cool0 {
|
||||
#cooling-cells = <2>; /* min followed by max */
|
||||
};
|
||||
gpufreq_cool0:gpufreq_cool0 {
|
||||
#cooling-cells = <2>; /* min followed by max */
|
||||
};
|
||||
gpucore_cool0:gpucore_cool0 {
|
||||
#cooling-cells = <2>; /* min followed by max */
|
||||
};
|
||||
};
|
||||
thermal-zones {
|
||||
soc_thermal {
|
||||
polling-delay = <1000>;
|
||||
polling-delay-passive = <100>;
|
||||
sustainable-power = <2150>;
|
||||
|
||||
thermal-sensors = <&aml_sensor0 3>;
|
||||
|
||||
trips {
|
||||
switch_on: trip-point@0 {
|
||||
temperature = <70000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
control: trip-point@1 {
|
||||
temperature = <80000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
hot: trip-point@2 {
|
||||
temperature = <85000>;
|
||||
hysteresis = <5000>;
|
||||
type = "hot";
|
||||
};
|
||||
critical: trip-point@3 {
|
||||
temperature = <260000>;
|
||||
hysteresis = <1000>;
|
||||
type = "critical";
|
||||
};
|
||||
};
|
||||
|
||||
cooling-maps {
|
||||
cpufreq_cooling_map {
|
||||
trip = <&control>;
|
||||
cooling-device = <&cpufreq_cool0 0 4>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
cpucore_cooling_map {
|
||||
trip = <&control>;
|
||||
cooling-device = <&cpucore_cool0 0 3>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
gpufreq_cooling_map {
|
||||
trip = <&control>;
|
||||
cooling-device = <&gpufreq_cool0 0 4>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
gpucore_cooling_map {
|
||||
trip = <&control>;
|
||||
cooling-device = <&gpucore_cool0 0 2>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
dwc3: dwc3@c9000000 {
|
||||
compatible = "synopsys, dwc3";
|
||||
reg = <0xc9000000 0x100000>;
|
||||
interrupts = <0 30 4>;
|
||||
usb-phy = <&usb2_phy>, <&usb3_phy>;
|
||||
cpu-type = "gxl";
|
||||
clock-src = "usb3.0";
|
||||
};
|
||||
|
||||
usb2_phy: usb2phy@d0078000 {
|
||||
compatible = "amlogic, amlogic-new-usb2";
|
||||
portnum = <3>;
|
||||
reg = <0xd0078000 0x80
|
||||
0xc1104408 0x4>;
|
||||
};
|
||||
|
||||
usb3_phy: usb3phy@d0078080 {
|
||||
compatible = "amlogic, amlogic-new-usb3";
|
||||
portnum = <0>;
|
||||
reg = <0xd0078080 0x20>;
|
||||
interrupts = <0 16 4>;
|
||||
otg = <1>;
|
||||
gpio-vbus-power = "GPIOAO_5";
|
||||
gpios = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
dwc2_a {
|
||||
compatible = "amlogic, dwc2";
|
||||
device_name = "dwc2_a";
|
||||
reg = <0xc9100000 0x40000>;
|
||||
status = "okay";
|
||||
interrupts = <0 31 4>;
|
||||
pl-periph-id = <0>; /** lm name */
|
||||
clock-src = "usb0"; /** clock src */
|
||||
port-id = <0>; /** ref to mach/usb.h */
|
||||
port-type = <2>; /** 0: otg, 1: host, 2: slave */
|
||||
port-speed = <0>; /** 0: default, high, 1: full */
|
||||
port-config = <0>; /** 0: default */
|
||||
port-dma = <0>; /** 0: default ... 6: disable*/
|
||||
port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/
|
||||
usb-fifo = <728>;
|
||||
cpu-type = "gxl";
|
||||
controller-type = <3>; /** 0: normal,1:host,2:device,3:otg*/
|
||||
phy-reg = <0xd0078000>;
|
||||
phy-reg-size = <0xa0>;
|
||||
clocks = <&clkc CLKID_USB_GENERAL
|
||||
&clkc CLKID_USB1_TO_DDR
|
||||
&clkc CLKID_USB1>;
|
||||
clock-names = "usb_general",
|
||||
"usb1",
|
||||
"usb1_to_ddr";
|
||||
};
|
||||
|
||||
meson-amvideom {
|
||||
compatible = "amlogic, amvideom";
|
||||
dev_name = "amvideom";
|
||||
status = "okay";
|
||||
interrupts = <0 3 1>;
|
||||
interrupt-names = "vsync";
|
||||
};
|
||||
|
||||
vout {
|
||||
compatible = "amlogic, vout";
|
||||
dev_name = "vout";
|
||||
status = "okay";
|
||||
fr_auto_policy = <0>;
|
||||
};
|
||||
|
||||
meson-fb {
|
||||
compatible = "amlogic, meson-gxl";
|
||||
memory-region = <&fb_reserved>;
|
||||
dev_name = "meson-fb";
|
||||
status = "okay";
|
||||
interrupts = <0 3 1
|
||||
0 89 1>;
|
||||
interrupt-names = "viu-vsync", "rdma";
|
||||
mem_size = <0x00800000 0x01800000 0x00100000>;
|
||||
/* uboot logo,fb0/fb1 memory size,if afbcd fb0=0x01851000 */
|
||||
display_mode_default = "1080p60hz";
|
||||
scale_mode = <1>;
|
||||
/** 0:VPU free scale 1:OSD free scale 2:OSD super scale */
|
||||
display_size_default = <1920 1080 1920 3240 32>;
|
||||
/*1920*1080*4*3 = 0x17BB000*/
|
||||
mem_alloc = <1>;
|
||||
logo_addr = "0x7dc00000";
|
||||
};
|
||||
|
||||
ge2d {
|
||||
compatible = "amlogic, ge2d-gxl";
|
||||
dev_name = "ge2d";
|
||||
status = "okay";
|
||||
interrupts = <0 150 1>;
|
||||
interrupt-names = "ge2d";
|
||||
clocks = <&clkc CLKID_VAPB_MUX>,
|
||||
<&clkc CLKID_G2D>,
|
||||
<&clkc CLKID_GE2D_GATE>;
|
||||
clock-names = "clk_vapb_0",
|
||||
"clk_ge2d",
|
||||
"clk_ge2d_gate";
|
||||
};
|
||||
|
||||
/* AUDIO MESON DEVICES */
|
||||
i2s_dai: I2S {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml-i2s-dai";
|
||||
clocks =
|
||||
<&clkc CLKID_MPLL2>,
|
||||
<&clkc CLKID_AMCLK_COMP>,
|
||||
<&clkc CLKID_AIU_GLUE>,
|
||||
<&clkc CLKID_IEC958>,
|
||||
<&clkc CLKID_I2S_OUT>,
|
||||
<&clkc CLKID_AMCLK>,
|
||||
<&clkc CLKID_AIFIFO2>,
|
||||
<&clkc CLKID_MIXER>,
|
||||
<&clkc CLKID_MIXER_IFACE>,
|
||||
<&clkc CLKID_ADC>,
|
||||
<&clkc CLKID_AIU_TOP>,
|
||||
<&clkc CLKID_AOCLK_GATE>,
|
||||
<&clkc CLKID_I2S_SPDIF>;
|
||||
clock-names =
|
||||
"mpll",
|
||||
"mclk",
|
||||
"top_glue",
|
||||
"aud_buf",
|
||||
"i2s_out",
|
||||
"amclk_measure",
|
||||
"aififo2",
|
||||
"aud_mixer",
|
||||
"mixer_reg",
|
||||
"adc",
|
||||
"top_level",
|
||||
"aoclk",
|
||||
"aud_in";
|
||||
i2s_pos_sync = <1>;
|
||||
/*DMIC;*/ /* I2s Mic or Dmic, default for I2S mic */
|
||||
};
|
||||
dmic:snd_dmic {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "aml, aml_snd_dmic";
|
||||
reg = <0xd0042000 0x2000>;
|
||||
status = "okay";
|
||||
resets = <
|
||||
&clkc CLKID_PDM_GATE
|
||||
>;
|
||||
reset-names = "pdm";
|
||||
pinctrl-names = "audio_dmic";
|
||||
pinctrl-0 = <&aml_dmic_pins>;
|
||||
clocks = <&clkc CLKID_PDM_COMP>,
|
||||
<&clkc CLKID_AMCLK_COMP>;
|
||||
clock-names = "pdm", "mclk";
|
||||
};
|
||||
spdif_dai: SPDIF {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml-spdif-dai";
|
||||
clocks =
|
||||
<&clkc CLKID_MPLL1>,
|
||||
<&clkc CLKID_I958_COMP>,
|
||||
<&clkc CLKID_AMCLK_COMP>,
|
||||
<&clkc CLKID_I958_COMP_SPDIF>,
|
||||
<&clkc CLKID_CLK81>,
|
||||
<&clkc CLKID_IEC958>,
|
||||
<&clkc CLKID_IEC958_GATE>;
|
||||
clock-names =
|
||||
"mpll1",
|
||||
"i958",
|
||||
"mclk",
|
||||
"spdif",
|
||||
"clk_81",
|
||||
"iec958",
|
||||
"iec958_amclk";
|
||||
};
|
||||
pcm_dai: PCM {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml-pcm-dai";
|
||||
pinctrl-names = "audio_pcm";
|
||||
pinctrl-0 = <&audio_pcm_pins>;
|
||||
clocks =
|
||||
<&clkc CLKID_MPLL0>,
|
||||
<&clkc CLKID_PCM_MCLK_COMP>,
|
||||
<&clkc CLKID_PCM_SCLK_GATE>;
|
||||
clock-names =
|
||||
"mpll0",
|
||||
"pcm_mclk",
|
||||
"pcm_sclk";
|
||||
pcm_mode = <1>; /* 0=slave mode, 1=master mode */
|
||||
};
|
||||
i2s_plat: i2s_platform {
|
||||
compatible = "amlogic, aml-i2s";
|
||||
interrupts = <0 29 1>;
|
||||
};
|
||||
pcm_plat: pcm_platform {
|
||||
compatible = "amlogic, aml-pcm";
|
||||
};
|
||||
spdif_codec: spdif_codec{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml-spdif-codec";
|
||||
pinctrl-names = "audio_spdif";
|
||||
pinctrl-0 = <&audio_spdif_pins>;
|
||||
};
|
||||
pcm_codec: pcm_codec{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, pcm2BT-codec";
|
||||
};
|
||||
/* endof AUDIO MESON DEVICES */
|
||||
|
||||
/* AUDIO board specific */
|
||||
dummy_codec:dummy{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml_dummy_codec";
|
||||
status = "okay";
|
||||
};
|
||||
amlogic_codec:t9015{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml_codec_T9015";
|
||||
reg = <0xc8832000 0x14>;
|
||||
status = "disable";
|
||||
};
|
||||
aml_sound_meson {
|
||||
compatible = "aml, meson-snd-card";
|
||||
status = "okay";
|
||||
aml-sound-card,format = "i2s";
|
||||
aml_sound_card,name = "AML-MESONAUDIO";
|
||||
aml,audio-routing =
|
||||
"Ext Spk","LOUTL",
|
||||
"Ext Spk","LOUTR";
|
||||
|
||||
mute_gpio-gpios = <&gpio GPIOH_5 0>;
|
||||
mute_inv;
|
||||
hp_disable;
|
||||
hp_paraments = <800 300 0 5 1>;
|
||||
pinctrl-names = "audio_i2s";
|
||||
pinctrl-0 = <&audio_i2s_pins>;
|
||||
cpu_list = <&cpudai0 &cpudai1 &cpudai2>;
|
||||
codec_list = <&codec0 &codec1 &codec2>;
|
||||
plat_list = <&i2s_plat &i2s_plat &pcm_plat>;
|
||||
cpudai0: cpudai0 {
|
||||
sound-dai = <&i2s_dai>;
|
||||
};
|
||||
cpudai1: cpudai1 {
|
||||
sound-dai = <&spdif_dai>;
|
||||
};
|
||||
cpudai2: cpudai2 {
|
||||
sound-dai = <&pcm_dai>;
|
||||
};
|
||||
codec0: codec0 {
|
||||
sound-dai = <&dummy_codec>;
|
||||
};
|
||||
codec1: codec1 {
|
||||
sound-dai = <&spdif_codec>;
|
||||
};
|
||||
codec2: codec2 {
|
||||
sound-dai = <&pcm_codec>;
|
||||
};
|
||||
};
|
||||
/* END OF AUDIO board specific */
|
||||
rdma{
|
||||
compatible = "amlogic, meson, rdma";
|
||||
dev_name = "amlogic-rdma";
|
||||
status = "ok";
|
||||
interrupts = <0 89 1>;
|
||||
interrupt-names = "rdma";
|
||||
};
|
||||
|
||||
partitions: partitions{
|
||||
parts = <11>;
|
||||
part-0 = <&logo>;
|
||||
part-1 = <&recovery>;
|
||||
part-2 = <&rsv>;
|
||||
part-3 = <&tee>;
|
||||
part-4 = <&crypt>;
|
||||
part-5 = <&misc>;
|
||||
part-6 = <&instaboot>;
|
||||
part-7 = <&boot>;
|
||||
part-8 = <&system>;
|
||||
part-9 = <&cache>;
|
||||
part-10 = <&data>;
|
||||
|
||||
logo:logo{
|
||||
pname = "logo";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
recovery:recovery{
|
||||
pname = "recovery";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
rsv:rsv{
|
||||
pname = "rsv";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
tee:tee{
|
||||
pname = "tee";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
crypt:crypt{
|
||||
pname = "crypt";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
misc:misc{
|
||||
pname = "misc";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
instaboot:instaboot{
|
||||
pname = "instaboot";
|
||||
size = <0x0 0x400000>;
|
||||
mask = <1>;
|
||||
};
|
||||
boot:boot
|
||||
{
|
||||
pname = "boot";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
system:system
|
||||
{
|
||||
pname = "system";
|
||||
size = <0x0 0x80000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
cache:cache
|
||||
{
|
||||
pname = "cache";
|
||||
size = <0x0 0x20000000>;
|
||||
mask = <2>;
|
||||
};
|
||||
data:data
|
||||
{
|
||||
pname = "data";
|
||||
size = <0xffffffff 0xffffffff>;
|
||||
mask = <4>;
|
||||
};
|
||||
};
|
||||
|
||||
unifykey{
|
||||
compatible = "amlogic, unifykey";
|
||||
status = "ok";
|
||||
|
||||
unifykey-num = <15>;
|
||||
unifykey-index-0 = <&keysn_0>;
|
||||
unifykey-index-1 = <&keysn_1>;
|
||||
unifykey-index-2 = <&keysn_2>;
|
||||
unifykey-index-3 = <&keysn_3>;
|
||||
unifykey-index-4 = <&keysn_4>;
|
||||
unifykey-index-5 = <&keysn_5>;
|
||||
unifykey-index-6 = <&keysn_6>;
|
||||
unifykey-index-7 = <&keysn_7>;
|
||||
unifykey-index-8 = <&keysn_8>;
|
||||
unifykey-index-9 = <&keysn_9>;
|
||||
unifykey-index-10= <&keysn_10>;
|
||||
unifykey-index-11= <&keysn_11>;
|
||||
unifykey-index-12= <&keysn_12>;
|
||||
unifykey-index-13= <&keysn_13>;
|
||||
unifykey-index-14= <&keysn_14>;
|
||||
|
||||
keysn_0: key_0{
|
||||
key-name = "usid";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_1:key_1{
|
||||
key-name = "mac";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_2:key_2{
|
||||
key-name = "hdcp";
|
||||
key-device = "secure";
|
||||
key-type = "sha1";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_3:key_3{
|
||||
key-name = "secure_boot_set";
|
||||
key-device = "efuse";
|
||||
key-permit = "write";
|
||||
};
|
||||
keysn_4:key_4{
|
||||
key-name = "mac_bt";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
key-type = "mac";
|
||||
};
|
||||
keysn_5:key_5{
|
||||
key-name = "mac_wifi";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
key-type = "mac";
|
||||
};
|
||||
keysn_6:key_6{
|
||||
key-name = "hdcp2_tx";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_7:key_7{
|
||||
key-name = "hdcp2_rx";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_8:key_8{
|
||||
key-name = "widevinekeybox";
|
||||
key-device = "secure";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_9:key_9{
|
||||
key-name = "deviceid";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_10:key_10{
|
||||
key-name = "hdcp22_fw_private";
|
||||
key-device = "secure";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_11:key_11{
|
||||
key-name = "PlayReadykeybox25";
|
||||
key-device = "secure";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_12:key_12{
|
||||
key-name = "prpubkeybox";// PlayReady
|
||||
key-device = "secure";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_13:key_13{
|
||||
key-name = "prprivkeybox";// PlayReady
|
||||
key-device = "secure";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_14:key_14{
|
||||
key-name = "attestationkeybox";// attestation key
|
||||
key-device = "secure";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
};//End unifykey
|
||||
};
|
||||
|
||||
&efuse {
|
||||
status = "ok";
|
||||
};
|
||||
|
||||
&pwm_ef {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&audio_i2s_pins {
|
||||
mux {
|
||||
groups = "i2s_am_clk",
|
||||
"i2s_ao_clk_out",
|
||||
"i2s_lr_clk_out",
|
||||
"i2sout_ch01",
|
||||
"i2sin_ch23",
|
||||
"i2sin_ch45",
|
||||
"i2sin_ch67";
|
||||
function = "i2s";
|
||||
};
|
||||
};
|
||||
|
||||
&i2c_AO {
|
||||
status = "okay";
|
||||
pca9557:pca9557@0x1f{
|
||||
compatible = "nxp,pca9557";
|
||||
reg = <0x1f>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
962
arch/arm/boot/dts/amlogic/gxl_p401_2g.dts
Normal file
962
arch/arm/boot/dts/amlogic/gxl_p401_2g.dts
Normal file
@@ -0,0 +1,962 @@
|
||||
/*
|
||||
* arch/arm/boot/dts/amlogic/gxl_p401_2g.dts
|
||||
*
|
||||
* Copyright (C) 2017 Amlogic, Inc. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
#include "mesongxl.dtsi"
|
||||
/ {
|
||||
model = "Amlogic";
|
||||
amlogic-dt-id = "gxl_p401_2g";
|
||||
compatible = "amlogic, Gxl";
|
||||
interrupt-parent = <&gic>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
aliases {
|
||||
serial0 = &uart_AO;
|
||||
serial1 = &uart_A;
|
||||
serial2 = &uart_B;
|
||||
serial3 = &uart_C;
|
||||
serial4 = &uart_AO_B;
|
||||
};
|
||||
|
||||
|
||||
memory@00000000 {
|
||||
device_type = "memory";
|
||||
linux,usable-memory = <0x0100000 0x7ff00000>;
|
||||
};
|
||||
|
||||
reserved-memory {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges;
|
||||
/* global autoconfigured region for contiguous allocations */
|
||||
ramoops@0x07400000 {
|
||||
compatible = "ramoops";
|
||||
reg = <0x07400000 0x00100000>;
|
||||
record-size = <0x8000>;
|
||||
console-size = <0x8000>;
|
||||
ftrace-size = <0x0>;
|
||||
pmsg-size = <0x8000>;
|
||||
};
|
||||
|
||||
secmon_reserved:linux,secmon {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x400000>;
|
||||
alignment = <0x400000>;
|
||||
alloc-ranges = <0x05000000 0x400000>;
|
||||
};
|
||||
secos_reserved:linux,secos {
|
||||
status = "disable";
|
||||
compatible = "amlogic, aml_secos_memory";
|
||||
reg = <0x05300000 0x2000000>;
|
||||
no-map;
|
||||
};
|
||||
fb_reserved:linux,meson-fb {
|
||||
compatible = "shared-dma-pool";
|
||||
reusable;
|
||||
size = <0x2400000>;
|
||||
alignment = <0x400000>;
|
||||
alloc-ranges = <0x7dc00000 0x2400000>;
|
||||
};
|
||||
|
||||
|
||||
};
|
||||
|
||||
wifi{
|
||||
compatible = "amlogic, aml_wifi";
|
||||
dev_name = "aml_wifi";
|
||||
status = "okay";
|
||||
interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>;
|
||||
irq_trigger_type = "GPIO_IRQ_LOW";
|
||||
power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&wifi_32k_pins>;
|
||||
pwm_config = <&wifi_pwm_conf>;
|
||||
};
|
||||
|
||||
wifi_pwm_conf:wifi_pwm_conf{
|
||||
pwm_channel1_conf {
|
||||
pwms = <&pwm_ef MESON_PWM_0 30040 0>;
|
||||
duty-cycle = <15020>;
|
||||
times = <8>;
|
||||
};
|
||||
pwm_channel2_conf {
|
||||
pwms = <&pwm_ef MESON_PWM_2 30030 0>;
|
||||
duty-cycle = <15015>;
|
||||
times = <12>;
|
||||
};
|
||||
};
|
||||
|
||||
sd_emmc_c: emmc@d0074000 {
|
||||
status = "disabled";
|
||||
compatible = "amlogic, meson-mmc-gxl";
|
||||
reg = <0xd0074000 0x2000>;
|
||||
interrupts = <0 218 1>;
|
||||
pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins";
|
||||
pinctrl-0 = <&emmc_clk_cmd_pins>;
|
||||
pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done>;
|
||||
clocks = <&clkc CLKID_SD_EMMC_C>,
|
||||
<&clkc CLKID_SD_EMMC_C_P0_COMP>,
|
||||
<&clkc CLKID_FCLK_DIV2>;
|
||||
clock-names = "core", "clkin0", "clkin1";
|
||||
|
||||
bus-width = <8>;
|
||||
cap-sd-highspeed;
|
||||
cap-mmc-highspeed;
|
||||
mmc-ddr-1_8v;
|
||||
mmc-hs200-1_8v;
|
||||
|
||||
max-frequency = <200000000>;
|
||||
non-removable;
|
||||
disable-wp;
|
||||
emmc {
|
||||
pinname = "emmc";
|
||||
ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */
|
||||
caps = "MMC_CAP_8_BIT_DATA",
|
||||
"MMC_CAP_MMC_HIGHSPEED",
|
||||
"MMC_CAP_SD_HIGHSPEED",
|
||||
"MMC_CAP_NONREMOVABLE",
|
||||
"MMC_CAP_1_8V_DDR",
|
||||
"MMC_CAP_HW_RESET",
|
||||
"MMC_CAP_ERASE",
|
||||
"MMC_CAP_CMD23";
|
||||
caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400";
|
||||
f_min = <400000>;
|
||||
f_max = <100000000>;
|
||||
max_req_size = <0x20000>; /**128KB*/
|
||||
gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>;
|
||||
hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>;
|
||||
card_type = <1>;
|
||||
/* 1:mmc card(include eMMC),
|
||||
* 2:sd card(include tSD)
|
||||
*/
|
||||
};
|
||||
};
|
||||
|
||||
sd_emmc_b:sd@d0072000 {
|
||||
status = "okay";
|
||||
compatible = "amlogic, meson-mmc-gxl";
|
||||
reg = <0xd0072000 0x2000>;
|
||||
interrupts = <0 217 1>;
|
||||
pinctrl-names = "sd_all_pins",
|
||||
"sd_clk_cmd_pins",
|
||||
"sd_1bit_pins",
|
||||
"sd_clk_cmd_uart_pins",
|
||||
"sd_1bit_uart_pins",
|
||||
"sd_to_ao_uart_pins",
|
||||
"ao_to_sd_uart_pins",
|
||||
"ao_to_sd_jtag_pins",
|
||||
"sd_to_ao_jtag_pins";
|
||||
pinctrl-0 = <&sd_all_pins>;
|
||||
pinctrl-1 = <&sd_clk_cmd_pins>;
|
||||
pinctrl-2 = <&sd_1bit_pins>;
|
||||
pinctrl-3 = <&sd_to_ao_uart_clr_pins
|
||||
&sd_clk_cmd_pins &ao_to_sd_uart_pins>;
|
||||
pinctrl-4 = <&sd_to_ao_uart_clr_pins
|
||||
&sd_1bit_pins &ao_to_sd_uart_pins>;
|
||||
pinctrl-5 = <&sd_all_pins &sd_to_ao_uart_pins>;
|
||||
pinctrl-6 = <&sd_to_ao_uart_clr_pins &ao_to_sd_uart_pins>;
|
||||
pinctrl-7 = <&sd_to_ao_uart_clr_pins &ao_to_sd_uart_pins>;
|
||||
pinctrl-8 = <&sd_all_pins &sd_to_ao_uart_pins>;
|
||||
clocks = <&clkc CLKID_SD_EMMC_B>,
|
||||
<&clkc CLKID_SD_EMMC_B_P0_COMP>,
|
||||
<&clkc CLKID_FCLK_DIV2>;
|
||||
clock-names = "core", "clkin0", "clkin1";
|
||||
|
||||
bus-width = <4>;
|
||||
cap-sd-highspeed;
|
||||
max-frequency = <100000000>;
|
||||
disable-wp;
|
||||
sd {
|
||||
pinname = "sd";
|
||||
ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */
|
||||
caps = "MMC_CAP_4_BIT_DATA",
|
||||
"MMC_CAP_MMC_HIGHSPEED",
|
||||
"MMC_CAP_SD_HIGHSPEED";
|
||||
/* "MMC_CAP_UHS_SDR12",
|
||||
* "MMC_CAP_UHS_SDR25",
|
||||
* "MMC_CAP_UHS_SDR50",
|
||||
* "MMC_CAP_UHS_SDR104";
|
||||
*/
|
||||
f_min = <400000>;
|
||||
f_max = <100000000>;
|
||||
max_req_size = <0x20000>; /**128KB*/
|
||||
gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>;
|
||||
jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>;
|
||||
gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>;
|
||||
card_type = <5>;
|
||||
/* 0:unknown,
|
||||
* 1:mmc card(include eMMC),
|
||||
* 2:sd card(include tSD),
|
||||
* 3:sdio device(ie:sdio-wifi),
|
||||
* 4:SD combo (IO+mem) card,
|
||||
* 5:NON sdio device(means sd/mmc card),
|
||||
* other:reserved
|
||||
*/
|
||||
};
|
||||
};
|
||||
|
||||
sd_emmc_a:sdio@d0070000 {
|
||||
status = "okay";
|
||||
compatible = "amlogic, meson-mmc-gxl";
|
||||
reg = <0xd0070000 0x2000>;
|
||||
interrupts = <0 216 4>;
|
||||
pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins";
|
||||
pinctrl-0 = <&sdio_clk_cmd_pins>;
|
||||
pinctrl-1 = <&sdio_all_pins>;
|
||||
clocks = <&clkc CLKID_SD_EMMC_A>,
|
||||
<&clkc CLKID_SD_EMMC_A_P0_COMP>,
|
||||
<&clkc CLKID_FCLK_DIV2>;
|
||||
clock-names = "core", "clkin0", "clkin1";
|
||||
|
||||
bus-width = <4>;
|
||||
cap-sd-highspeed;
|
||||
cap-mmc-highspeed;
|
||||
max-frequency = <100000000>;
|
||||
non-removable;
|
||||
disable-wp;
|
||||
sdio {
|
||||
pinname = "sdio";
|
||||
ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */
|
||||
caps = "MMC_CAP_4_BIT_DATA",
|
||||
"MMC_CAP_MMC_HIGHSPEED",
|
||||
"MMC_CAP_SD_HIGHSPEED",
|
||||
"MMC_CAP_NONREMOVABLE",
|
||||
"MMC_CAP_UHS_SDR12",
|
||||
"MMC_CAP_UHS_SDR25",
|
||||
"MMC_CAP_UHS_SDR50",
|
||||
"MMC_CAP_UHS_SDR104",
|
||||
"MMC_PM_KEEP_POWER",
|
||||
"MMC_CAP_SDIO_IRQ";
|
||||
f_min = <400000>;
|
||||
f_max = <200000000>;
|
||||
max_req_size = <0x20000>; /**128KB*/
|
||||
card_type = <3>;
|
||||
/* 3:sdio device(ie:sdio-wifi),
|
||||
* 4:SD combo (IO+mem) card
|
||||
*/
|
||||
};
|
||||
};
|
||||
mtd_nand{
|
||||
compatible = "amlogic, aml_mtd_nand";
|
||||
dev_name = "mtdnand";
|
||||
status = "okay";
|
||||
reg = <0xd0074800 0x200>;
|
||||
interrupts = < 0 34 1 >;
|
||||
pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_only";
|
||||
pinctrl-0 = <&all_nand_pins>;
|
||||
pinctrl-1 = <&all_nand_pins>;
|
||||
pinctrl-2 = <&nand_cs_pins>;
|
||||
device_id = <0>;
|
||||
|
||||
/*fip/tpl configurations, must be same
|
||||
* with uboot if bl_mode was set as 1
|
||||
* bl_mode: 0 compact mode; 1 descrete mode
|
||||
* if bl_mode was set as 1, fip configeration will work
|
||||
*/
|
||||
bl_mode = <1>;
|
||||
/*copy count of fip*/
|
||||
fip_copies = <4>;
|
||||
/*size of each fip copy */
|
||||
fip_size = <0x200000>;
|
||||
nand_clk_ctrl = <0xd0074000>;
|
||||
plat-names = "bootloader","nandnormal";
|
||||
plat-num = <2>;
|
||||
plat-part-0 = <&bootloader>;
|
||||
plat-part-1 = <&nandnormal>;
|
||||
bootloader: bootloader{
|
||||
enable_pad ="ce0";
|
||||
busy_pad = "rb0";
|
||||
timming_mode = "mode5";
|
||||
bch_mode = "bch60_1k";
|
||||
t_rea = <20>;
|
||||
t_rhoh = <15>;
|
||||
chip_num = <1>;
|
||||
part_num = <0>;
|
||||
rb_detect = <1>;
|
||||
};
|
||||
nandnormal: nandnormal{
|
||||
enable_pad ="ce0","ce1";
|
||||
busy_pad = "rb0","rb1";
|
||||
timming_mode = "mode5";
|
||||
bch_mode = "bch60_1k";
|
||||
plane_mode = "twoplane";
|
||||
t_rea = <20>;
|
||||
t_rhoh = <15>;
|
||||
chip_num = <2>;
|
||||
part_num = <3>;
|
||||
partition = <&nand_partitions>;
|
||||
rb_detect = <1>;
|
||||
};
|
||||
nand_partitions:nand_partition{
|
||||
|
||||
/*
|
||||
* if bl_mode is 1, tpl size was generate by
|
||||
* fip_copies * fip_size which
|
||||
* will not skip bad when calculating
|
||||
* the partition size;
|
||||
*
|
||||
* if bl_mode is 0,
|
||||
* tpl partition must be comment out.
|
||||
*/
|
||||
tpl{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0x0>;
|
||||
};
|
||||
logo{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0x200000>;
|
||||
};
|
||||
recovery{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0x1000000>;
|
||||
};
|
||||
boot{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0x1000000>;
|
||||
};
|
||||
system{
|
||||
offset=<0x0 0x0>;
|
||||
size=<0x0 0xDC00000>;
|
||||
};
|
||||
data{
|
||||
offset=<0xffffffff 0xffffffff>;
|
||||
size=<0x0 0x0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
ethmac: ethernet@0xc9410000 {
|
||||
compatible = "amlogic, gxbb-eth-dwmac";
|
||||
reg = <0xc9410000 0x10000
|
||||
0xc8834540 0x8
|
||||
0xc8834558 0xc>;
|
||||
interrupts = <0 8 1>;
|
||||
pinctrl-names = "external_eth_pins";
|
||||
pinctrl-0 = <&external_eth_pins>;
|
||||
rst_pin-gpios = <&gpio GPIOZ_14 0>;
|
||||
GPIOZ4_pin-gpios = <&gpio GPIOZ_4 0>;
|
||||
GPIOZ5_pin-gpios = <&gpio GPIOZ_5 0>;
|
||||
mc_val_internal_phy = <0x1800>;
|
||||
mc_val_external_phy = <0x1621>;
|
||||
cali_val = <0x20000>;
|
||||
interrupt-names = "macirq";
|
||||
clocks = <&clkc CLKID_ETH>;
|
||||
clock-names = "ethclk81";
|
||||
internal_phy=<1>;
|
||||
};
|
||||
|
||||
codec_io {
|
||||
compatible = "amlogic, codec_io";
|
||||
#address-cells=<1>;
|
||||
#size-cells=<1>;
|
||||
ranges;
|
||||
io_cbus_base{
|
||||
reg = <0xC1100000 0x100000>;
|
||||
};
|
||||
io_dos_base{
|
||||
reg = <0xc8820000 0x10000>;
|
||||
};
|
||||
io_hiubus_base{
|
||||
reg = <0xc883c000 0x2000>;
|
||||
};
|
||||
io_aobus_base{
|
||||
reg = <0xc8100000 0x100000>;
|
||||
};
|
||||
io_vcbus_base{
|
||||
reg = <0xd0100000 0x40000>;
|
||||
};
|
||||
io_dmc_base{
|
||||
reg = <0xc8838000 0x400>;
|
||||
};
|
||||
};
|
||||
|
||||
aml_sensor0: aml-sensor@0 {
|
||||
compatible = "amlogic, aml-thermal";
|
||||
device_name = "thermal";
|
||||
#thermal-sensor-cells = <1>;
|
||||
cooling_devices {
|
||||
cpufreq_cool_cluster0 {
|
||||
min_state = <1000000>;
|
||||
dyn_coeff = <140>;
|
||||
cluster_id = <0>;
|
||||
node_name = "cpufreq_cool0";
|
||||
device_type = "cpufreq";
|
||||
};
|
||||
cpucore_cool_cluster0 {
|
||||
min_state = <1>;
|
||||
dyn_coeff = <0>;
|
||||
cluster_id = <0>;
|
||||
node_name = "cpucore_cool0";
|
||||
device_type = "cpucore";
|
||||
};
|
||||
gpufreq_cool {
|
||||
min_state = <400>;
|
||||
dyn_coeff = <437>;
|
||||
cluster_id = <0>;
|
||||
node_name = "gpufreq_cool0";
|
||||
device_type = "gpufreq";
|
||||
};
|
||||
gpucore_cool {
|
||||
min_state = <1>;
|
||||
dyn_coeff = <0>;
|
||||
cluster_id = <0>;
|
||||
node_name = "gpucore_cool0";
|
||||
device_type = "gpucore";
|
||||
};
|
||||
};
|
||||
cpufreq_cool0:cpufreq_cool0 {
|
||||
#cooling-cells = <2>; /* min followed by max */
|
||||
};
|
||||
cpucore_cool0:cpucore_cool0 {
|
||||
#cooling-cells = <2>; /* min followed by max */
|
||||
};
|
||||
gpufreq_cool0:gpufreq_cool0 {
|
||||
#cooling-cells = <2>; /* min followed by max */
|
||||
};
|
||||
gpucore_cool0:gpucore_cool0 {
|
||||
#cooling-cells = <2>; /* min followed by max */
|
||||
};
|
||||
};
|
||||
thermal-zones {
|
||||
soc_thermal {
|
||||
polling-delay = <1000>;
|
||||
polling-delay-passive = <100>;
|
||||
sustainable-power = <2150>;
|
||||
|
||||
thermal-sensors = <&aml_sensor0 3>;
|
||||
|
||||
trips {
|
||||
switch_on: trip-point@0 {
|
||||
temperature = <70000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
control: trip-point@1 {
|
||||
temperature = <80000>;
|
||||
hysteresis = <1000>;
|
||||
type = "passive";
|
||||
};
|
||||
hot: trip-point@2 {
|
||||
temperature = <85000>;
|
||||
hysteresis = <5000>;
|
||||
type = "hot";
|
||||
};
|
||||
critical: trip-point@3 {
|
||||
temperature = <260000>;
|
||||
hysteresis = <1000>;
|
||||
type = "critical";
|
||||
};
|
||||
};
|
||||
|
||||
cooling-maps {
|
||||
cpufreq_cooling_map {
|
||||
trip = <&control>;
|
||||
cooling-device = <&cpufreq_cool0 0 4>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
cpucore_cooling_map {
|
||||
trip = <&control>;
|
||||
cooling-device = <&cpucore_cool0 0 3>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
gpufreq_cooling_map {
|
||||
trip = <&control>;
|
||||
cooling-device = <&gpufreq_cool0 0 4>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
gpucore_cooling_map {
|
||||
trip = <&control>;
|
||||
cooling-device = <&gpucore_cool0 0 2>;
|
||||
contribution = <1024>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
dwc3: dwc3@c9000000 {
|
||||
compatible = "synopsys, dwc3";
|
||||
reg = <0xc9000000 0x100000>;
|
||||
interrupts = <0 30 4>;
|
||||
usb-phy = <&usb2_phy>, <&usb3_phy>;
|
||||
cpu-type = "gxl";
|
||||
clock-src = "usb3.0";
|
||||
};
|
||||
|
||||
usb2_phy: usb2phy@d0078000 {
|
||||
compatible = "amlogic, amlogic-new-usb2";
|
||||
portnum = <3>;
|
||||
reg = <0xd0078000 0x80
|
||||
0xc1104408 0x4>;
|
||||
};
|
||||
|
||||
usb3_phy: usb3phy@d0078080 {
|
||||
compatible = "amlogic, amlogic-new-usb3";
|
||||
portnum = <0>;
|
||||
reg = <0xd0078080 0x20>;
|
||||
interrupts = <0 16 4>;
|
||||
otg = <1>;
|
||||
gpio-vbus-power = "GPIOAO_5";
|
||||
gpios = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
dwc2_a {
|
||||
compatible = "amlogic, dwc2";
|
||||
device_name = "dwc2_a";
|
||||
reg = <0xc9100000 0x40000>;
|
||||
status = "okay";
|
||||
interrupts = <0 31 4>;
|
||||
pl-periph-id = <0>; /** lm name */
|
||||
clock-src = "usb0"; /** clock src */
|
||||
port-id = <0>; /** ref to mach/usb.h */
|
||||
port-type = <2>; /** 0: otg, 1: host, 2: slave */
|
||||
port-speed = <0>; /** 0: default, high, 1: full */
|
||||
port-config = <0>; /** 0: default */
|
||||
port-dma = <0>; /** 0: default ... 6: disable*/
|
||||
port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/
|
||||
usb-fifo = <728>;
|
||||
cpu-type = "gxl";
|
||||
controller-type = <3>; /** 0: normal,1:host,2:device,3:otg*/
|
||||
phy-reg = <0xd0078000>;
|
||||
phy-reg-size = <0xa0>;
|
||||
clocks = <&clkc CLKID_USB_GENERAL
|
||||
&clkc CLKID_USB1_TO_DDR
|
||||
&clkc CLKID_USB1>;
|
||||
clock-names = "usb_general",
|
||||
"usb1",
|
||||
"usb1_to_ddr";
|
||||
};
|
||||
|
||||
meson-amvideom {
|
||||
compatible = "amlogic, amvideom";
|
||||
dev_name = "amvideom";
|
||||
status = "okay";
|
||||
interrupts = <0 3 1>;
|
||||
interrupt-names = "vsync";
|
||||
};
|
||||
|
||||
vout {
|
||||
compatible = "amlogic, vout";
|
||||
dev_name = "vout";
|
||||
status = "okay";
|
||||
fr_auto_policy = <0>;
|
||||
};
|
||||
|
||||
meson-fb {
|
||||
compatible = "amlogic, meson-gxl";
|
||||
memory-region = <&fb_reserved>;
|
||||
dev_name = "meson-fb";
|
||||
status = "okay";
|
||||
interrupts = <0 3 1
|
||||
0 89 1>;
|
||||
interrupt-names = "viu-vsync", "rdma";
|
||||
mem_size = <0x00800000 0x01800000 0x00100000>;
|
||||
/* uboot logo,fb0/fb1 memory size,if afbcd fb0=0x01851000 */
|
||||
display_mode_default = "1080p60hz";
|
||||
scale_mode = <1>;
|
||||
/** 0:VPU free scale 1:OSD free scale 2:OSD super scale */
|
||||
display_size_default = <1920 1080 1920 3240 32>;
|
||||
/*1920*1080*4*3 = 0x17BB000*/
|
||||
mem_alloc = <1>;
|
||||
logo_addr = "0x7dc00000";
|
||||
};
|
||||
|
||||
ge2d {
|
||||
compatible = "amlogic, ge2d-gxl";
|
||||
dev_name = "ge2d";
|
||||
status = "okay";
|
||||
interrupts = <0 150 1>;
|
||||
interrupt-names = "ge2d";
|
||||
clocks = <&clkc CLKID_VAPB_MUX>,
|
||||
<&clkc CLKID_G2D>,
|
||||
<&clkc CLKID_GE2D_GATE>;
|
||||
clock-names = "clk_vapb_0",
|
||||
"clk_ge2d",
|
||||
"clk_ge2d_gate";
|
||||
};
|
||||
|
||||
/* AUDIO MESON DEVICES */
|
||||
i2s_dai: I2S {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml-i2s-dai";
|
||||
clocks =
|
||||
<&clkc CLKID_MPLL2>,
|
||||
<&clkc CLKID_AMCLK_COMP>,
|
||||
<&clkc CLKID_AIU_GLUE>,
|
||||
<&clkc CLKID_IEC958>,
|
||||
<&clkc CLKID_I2S_OUT>,
|
||||
<&clkc CLKID_AMCLK>,
|
||||
<&clkc CLKID_AIFIFO2>,
|
||||
<&clkc CLKID_MIXER>,
|
||||
<&clkc CLKID_MIXER_IFACE>,
|
||||
<&clkc CLKID_ADC>,
|
||||
<&clkc CLKID_AIU_TOP>,
|
||||
<&clkc CLKID_AOCLK_GATE>,
|
||||
<&clkc CLKID_I2S_SPDIF>;
|
||||
clock-names =
|
||||
"mpll",
|
||||
"mclk",
|
||||
"top_glue",
|
||||
"aud_buf",
|
||||
"i2s_out",
|
||||
"amclk_measure",
|
||||
"aififo2",
|
||||
"aud_mixer",
|
||||
"mixer_reg",
|
||||
"adc",
|
||||
"top_level",
|
||||
"aoclk",
|
||||
"aud_in";
|
||||
i2s_pos_sync = <1>;
|
||||
/*DMIC;*/ /* I2s Mic or Dmic, default for I2S mic */
|
||||
};
|
||||
dmic:snd_dmic {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "aml, aml_snd_dmic";
|
||||
reg = <0xd0042000 0x2000>;
|
||||
status = "okay";
|
||||
resets = <
|
||||
&clkc CLKID_PDM_GATE
|
||||
>;
|
||||
reset-names = "pdm";
|
||||
pinctrl-names = "audio_dmic";
|
||||
pinctrl-0 = <&aml_dmic_pins>;
|
||||
clocks = <&clkc CLKID_PDM_COMP>,
|
||||
<&clkc CLKID_AMCLK_COMP>;
|
||||
clock-names = "pdm", "mclk";
|
||||
};
|
||||
spdif_dai: SPDIF {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml-spdif-dai";
|
||||
clocks =
|
||||
<&clkc CLKID_MPLL1>,
|
||||
<&clkc CLKID_I958_COMP>,
|
||||
<&clkc CLKID_AMCLK_COMP>,
|
||||
<&clkc CLKID_I958_COMP_SPDIF>,
|
||||
<&clkc CLKID_CLK81>,
|
||||
<&clkc CLKID_IEC958>,
|
||||
<&clkc CLKID_IEC958_GATE>;
|
||||
clock-names =
|
||||
"mpll1",
|
||||
"i958",
|
||||
"mclk",
|
||||
"spdif",
|
||||
"clk_81",
|
||||
"iec958",
|
||||
"iec958_amclk";
|
||||
};
|
||||
pcm_dai: PCM {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml-pcm-dai";
|
||||
pinctrl-names = "audio_pcm";
|
||||
pinctrl-0 = <&audio_pcm_pins>;
|
||||
clocks =
|
||||
<&clkc CLKID_MPLL0>,
|
||||
<&clkc CLKID_PCM_MCLK_COMP>,
|
||||
<&clkc CLKID_PCM_SCLK_GATE>;
|
||||
clock-names =
|
||||
"mpll0",
|
||||
"pcm_mclk",
|
||||
"pcm_sclk";
|
||||
pcm_mode = <1>; /* 0=slave mode, 1=master mode */
|
||||
};
|
||||
i2s_plat: i2s_platform {
|
||||
compatible = "amlogic, aml-i2s";
|
||||
interrupts = <0 29 1>;
|
||||
};
|
||||
pcm_plat: pcm_platform {
|
||||
compatible = "amlogic, aml-pcm";
|
||||
};
|
||||
spdif_codec: spdif_codec{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml-spdif-codec";
|
||||
pinctrl-names = "audio_spdif";
|
||||
pinctrl-0 = <&audio_spdif_pins>;
|
||||
};
|
||||
pcm_codec: pcm_codec{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, pcm2BT-codec";
|
||||
};
|
||||
/* endof AUDIO MESON DEVICES */
|
||||
|
||||
/* AUDIO board specific */
|
||||
dummy_codec:dummy{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml_dummy_codec";
|
||||
status = "okay";
|
||||
};
|
||||
amlogic_codec:t9015{
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "amlogic, aml_codec_T9015";
|
||||
reg = <0xc8832000 0x14>;
|
||||
status = "disable";
|
||||
};
|
||||
aml_sound_meson {
|
||||
compatible = "aml, meson-snd-card";
|
||||
status = "okay";
|
||||
aml-sound-card,format = "i2s";
|
||||
aml_sound_card,name = "AML-MESONAUDIO";
|
||||
aml,audio-routing =
|
||||
"Ext Spk","LOUTL",
|
||||
"Ext Spk","LOUTR";
|
||||
|
||||
mute_gpio-gpios = <&gpio GPIOH_5 0>;
|
||||
mute_inv;
|
||||
hp_disable;
|
||||
hp_paraments = <800 300 0 5 1>;
|
||||
pinctrl-names = "audio_i2s";
|
||||
pinctrl-0 = <&audio_i2s_pins>;
|
||||
cpu_list = <&cpudai0 &cpudai1 &cpudai2>;
|
||||
codec_list = <&codec0 &codec1 &codec2>;
|
||||
plat_list = <&i2s_plat &i2s_plat &pcm_plat>;
|
||||
cpudai0: cpudai0 {
|
||||
sound-dai = <&i2s_dai>;
|
||||
};
|
||||
cpudai1: cpudai1 {
|
||||
sound-dai = <&spdif_dai>;
|
||||
};
|
||||
cpudai2: cpudai2 {
|
||||
sound-dai = <&pcm_dai>;
|
||||
};
|
||||
codec0: codec0 {
|
||||
sound-dai = <&dummy_codec>;
|
||||
};
|
||||
codec1: codec1 {
|
||||
sound-dai = <&spdif_codec>;
|
||||
};
|
||||
codec2: codec2 {
|
||||
sound-dai = <&pcm_codec>;
|
||||
};
|
||||
};
|
||||
/* END OF AUDIO board specific */
|
||||
rdma{
|
||||
compatible = "amlogic, meson, rdma";
|
||||
dev_name = "amlogic-rdma";
|
||||
status = "ok";
|
||||
interrupts = <0 89 1>;
|
||||
interrupt-names = "rdma";
|
||||
};
|
||||
|
||||
partitions: partitions{
|
||||
parts = <11>;
|
||||
part-0 = <&logo>;
|
||||
part-1 = <&recovery>;
|
||||
part-2 = <&rsv>;
|
||||
part-3 = <&tee>;
|
||||
part-4 = <&crypt>;
|
||||
part-5 = <&misc>;
|
||||
part-6 = <&instaboot>;
|
||||
part-7 = <&boot>;
|
||||
part-8 = <&system>;
|
||||
part-9 = <&cache>;
|
||||
part-10 = <&data>;
|
||||
|
||||
logo:logo{
|
||||
pname = "logo";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
recovery:recovery{
|
||||
pname = "recovery";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
rsv:rsv{
|
||||
pname = "rsv";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
tee:tee{
|
||||
pname = "tee";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
crypt:crypt{
|
||||
pname = "crypt";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
misc:misc{
|
||||
pname = "misc";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
instaboot:instaboot{
|
||||
pname = "instaboot";
|
||||
size = <0x0 0x400000>;
|
||||
mask = <1>;
|
||||
};
|
||||
boot:boot
|
||||
{
|
||||
pname = "boot";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
system:system
|
||||
{
|
||||
pname = "system";
|
||||
size = <0x0 0x80000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
cache:cache
|
||||
{
|
||||
pname = "cache";
|
||||
size = <0x0 0x20000000>;
|
||||
mask = <2>;
|
||||
};
|
||||
data:data
|
||||
{
|
||||
pname = "data";
|
||||
size = <0xffffffff 0xffffffff>;
|
||||
mask = <4>;
|
||||
};
|
||||
};
|
||||
|
||||
unifykey{
|
||||
compatible = "amlogic, unifykey";
|
||||
status = "ok";
|
||||
|
||||
unifykey-num = <15>;
|
||||
unifykey-index-0 = <&keysn_0>;
|
||||
unifykey-index-1 = <&keysn_1>;
|
||||
unifykey-index-2 = <&keysn_2>;
|
||||
unifykey-index-3 = <&keysn_3>;
|
||||
unifykey-index-4 = <&keysn_4>;
|
||||
unifykey-index-5 = <&keysn_5>;
|
||||
unifykey-index-6 = <&keysn_6>;
|
||||
unifykey-index-7 = <&keysn_7>;
|
||||
unifykey-index-8 = <&keysn_8>;
|
||||
unifykey-index-9 = <&keysn_9>;
|
||||
unifykey-index-10= <&keysn_10>;
|
||||
unifykey-index-11= <&keysn_11>;
|
||||
unifykey-index-12= <&keysn_12>;
|
||||
unifykey-index-13= <&keysn_13>;
|
||||
unifykey-index-14= <&keysn_14>;
|
||||
|
||||
keysn_0: key_0{
|
||||
key-name = "usid";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_1:key_1{
|
||||
key-name = "mac";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_2:key_2{
|
||||
key-name = "hdcp";
|
||||
key-device = "secure";
|
||||
key-type = "sha1";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_3:key_3{
|
||||
key-name = "secure_boot_set";
|
||||
key-device = "efuse";
|
||||
key-permit = "write";
|
||||
};
|
||||
keysn_4:key_4{
|
||||
key-name = "mac_bt";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
key-type = "mac";
|
||||
};
|
||||
keysn_5:key_5{
|
||||
key-name = "mac_wifi";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
key-type = "mac";
|
||||
};
|
||||
keysn_6:key_6{
|
||||
key-name = "hdcp2_tx";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_7:key_7{
|
||||
key-name = "hdcp2_rx";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_8:key_8{
|
||||
key-name = "widevinekeybox";
|
||||
key-device = "secure";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_9:key_9{
|
||||
key-name = "deviceid";
|
||||
key-device = "normal";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_10:key_10{
|
||||
key-name = "hdcp22_fw_private";
|
||||
key-device = "secure";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_11:key_11{
|
||||
key-name = "PlayReadykeybox25";
|
||||
key-device = "secure";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_12:key_12{
|
||||
key-name = "prpubkeybox";// PlayReady
|
||||
key-device = "secure";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_13:key_13{
|
||||
key-name = "prprivkeybox";// PlayReady
|
||||
key-device = "secure";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
keysn_14:key_14{
|
||||
key-name = "attestationkeybox";// attestation key
|
||||
key-device = "secure";
|
||||
key-permit = "read","write","del";
|
||||
};
|
||||
};//End unifykey
|
||||
};
|
||||
|
||||
&efuse {
|
||||
status = "ok";
|
||||
};
|
||||
|
||||
&pwm_ef {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&audio_i2s_pins {
|
||||
mux {
|
||||
groups = "i2s_am_clk",
|
||||
"i2s_ao_clk_out",
|
||||
"i2s_lr_clk_out",
|
||||
"i2sout_ch01",
|
||||
"i2sin_ch23",
|
||||
"i2sin_ch45",
|
||||
"i2sin_ch67";
|
||||
function = "i2s";
|
||||
};
|
||||
};
|
||||
|
||||
&i2c_AO {
|
||||
status = "okay";
|
||||
pca9557:pca9557@0x1f{
|
||||
compatible = "nxp,pca9557";
|
||||
reg = <0x1f>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
1207
arch/arm/boot/dts/amlogic/gxl_sei210_1g.dts
Normal file
1207
arch/arm/boot/dts/amlogic/gxl_sei210_1g.dts
Normal file
File diff suppressed because it is too large
Load Diff
1201
arch/arm/boot/dts/amlogic/gxl_sei210_2g.dts
Normal file
1201
arch/arm/boot/dts/amlogic/gxl_sei210_2g.dts
Normal file
File diff suppressed because it is too large
Load Diff
1213
arch/arm/boot/dts/amlogic/gxl_skt.dts
Normal file
1213
arch/arm/boot/dts/amlogic/gxl_skt.dts
Normal file
File diff suppressed because it is too large
Load Diff
1223
arch/arm/boot/dts/amlogic/gxm_q200_2g.dts
Normal file
1223
arch/arm/boot/dts/amlogic/gxm_q200_2g.dts
Normal file
File diff suppressed because it is too large
Load Diff
1289
arch/arm/boot/dts/amlogic/gxm_q200_2g_buildroot.dts
Normal file
1289
arch/arm/boot/dts/amlogic/gxm_q200_2g_buildroot.dts
Normal file
File diff suppressed because it is too large
Load Diff
1231
arch/arm/boot/dts/amlogic/gxm_q201_1g.dts
Normal file
1231
arch/arm/boot/dts/amlogic/gxm_q201_1g.dts
Normal file
File diff suppressed because it is too large
Load Diff
1053
arch/arm/boot/dts/amlogic/gxm_skt.dts
Normal file
1053
arch/arm/boot/dts/amlogic/gxm_skt.dts
Normal file
File diff suppressed because it is too large
Load Diff
104
arch/arm/boot/dts/amlogic/meson_drm.dtsi
Normal file
104
arch/arm/boot/dts/amlogic/meson_drm.dtsi
Normal file
@@ -0,0 +1,104 @@
|
||||
/*
|
||||
* arch/arm/boot/dts/amlogic/meson_drm.dtsi
|
||||
*
|
||||
* Copyright (C) 2015 Amlogic, Inc. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
*/
|
||||
|
||||
/ {
|
||||
drm_amhdmitx: drm-amhdmitx {
|
||||
status = "disabled";
|
||||
hdcp = "disabled";
|
||||
compatible = "amlogic,drm-amhdmitx";
|
||||
dev_name = "meson-amhdmitx";
|
||||
interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>;
|
||||
ports {
|
||||
port {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
hdmi_in_vpu: endpoint@0 {
|
||||
reg = <0>;
|
||||
remote-endpoint = <&vpu_out_hdmi>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
drm_lcd: drm-lcd {
|
||||
status = "disabled";
|
||||
compatible = "amlogic,drm-lcd";
|
||||
dev_name = "meson-lcd";
|
||||
ports {
|
||||
port {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
lcd_in_vpu: endpoint@0 {
|
||||
reg = <0>;
|
||||
remote-endpoint = <&vpu_out_lcd>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
drm_vpu: drm-vpu@0xff900000 {
|
||||
status = "disabled";
|
||||
compatible = "amlogic,meson-gxbb-vpu";
|
||||
reg = <0xd0100000 0x100000>,
|
||||
<0xc883c000 0x1000>,
|
||||
<0xc8838000 0x1000>;
|
||||
reg-names = "base", "hhi", "dmc";
|
||||
interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>;
|
||||
dma-coherent;
|
||||
vpu_out: port {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
vpu_out_hdmi: endpoint@0 {
|
||||
reg = <0>;
|
||||
remote-endpoint = <&hdmi_in_vpu>;
|
||||
};
|
||||
vpu_out_lcd: endpoint@1 {
|
||||
reg = <1>;
|
||||
remote-endpoint = <&lcd_in_vpu>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
drm_subsystem: drm-subsystem {
|
||||
status = "okay";
|
||||
compatible = "amlogic,drm-subsystem";
|
||||
ports = <&vpu_out>;
|
||||
};
|
||||
};
|
||||
|
||||
&gpu{
|
||||
/*gpu max freq is 750M*/
|
||||
def_clk = <1>;
|
||||
tbl = <&clk285_cfg &clk666_cfg &clk750_cfg &clk750_cfg>;
|
||||
|
||||
clk285_cfg:clk285_cfg {
|
||||
keep_count = <2>;
|
||||
threshold = <100 200>;
|
||||
};
|
||||
|
||||
clk666_cfg:clk666_cfg {
|
||||
keep_count = <1>;
|
||||
threshold = <85 200>;
|
||||
};
|
||||
|
||||
clk750_cfg:clk750_cfg {
|
||||
keep_count = <1>;
|
||||
threshold = <179 255>;
|
||||
};
|
||||
|
||||
};
|
||||
109
arch/arm/boot/dts/amlogic/mesong12a_drm.dtsi
Normal file
109
arch/arm/boot/dts/amlogic/mesong12a_drm.dtsi
Normal file
@@ -0,0 +1,109 @@
|
||||
/*
|
||||
* arch/arm/boot/dts/amlogic/meson_drm.dtsi
|
||||
*
|
||||
* Copyright (C) 2015 Amlogic, Inc. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
*/
|
||||
|
||||
/ {
|
||||
venc-cvbs {
|
||||
status = "okay";
|
||||
compatible = "amlogic,meson-gxbb-cvbs";
|
||||
|
||||
ports {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
enc_cvbs_in: port@0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0>;
|
||||
|
||||
//venc_cvbs_in_vpu: endpoint@0 {
|
||||
// reg = <0>;
|
||||
// remote-endpoint = <&vpu_out_venc_cvbs>;
|
||||
//};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
drm_amhdmitx: drm-amhdmitx {
|
||||
status = "disabled";
|
||||
hdcp = "disabled";
|
||||
compatible = "amlogic,drm-amhdmitx";
|
||||
dev_name = "meson-amhdmitx";
|
||||
interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>;
|
||||
ports {
|
||||
port {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
hdmi_in_vpu: endpoint@0 {
|
||||
reg = <0>;
|
||||
remote-endpoint = <&vpu_out_hdmi>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
drm_lcd: drm-lcd {
|
||||
status = "disabled";
|
||||
compatible = "amlogic,drm-lcd";
|
||||
dev_name = "meson-lcd";
|
||||
ports {
|
||||
port {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
lcd_in_vpu: endpoint@0 {
|
||||
reg = <0>;
|
||||
remote-endpoint = <&vpu_out_lcd>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
drm_vpu: drm-vpu@0xff900000 {
|
||||
status = "disabled";
|
||||
compatible = "amlogic,meson-g12a-vpu";
|
||||
memory-region = <&logo_reserved>;
|
||||
reg = <0xff900000 0x40000>,
|
||||
<0xff63c000 0x2000>,
|
||||
<0xff638000 0x2000>;
|
||||
reg-names = "base", "hhi", "dmc";
|
||||
interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>,
|
||||
<GIC_SPI 56 IRQ_TYPE_EDGE_RISING>;
|
||||
interrupt-names = "viu-vsync", "viu2-vsync";
|
||||
clocks = <&clkc CLKID_VPU_CLKC_MUX>;
|
||||
clock-names = "vpu_clkc";
|
||||
dma-coherent;
|
||||
vpu_out: port {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
vpu_out_hdmi: endpoint@0 {
|
||||
reg = <0>;
|
||||
remote-endpoint = <&hdmi_in_vpu>;
|
||||
};
|
||||
vpu_out_lcd: endpoint@1 {
|
||||
reg = <1>;
|
||||
remote-endpoint = <&lcd_in_vpu>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
drm_subsystem: drm-subsystem {
|
||||
status = "okay";
|
||||
compatible = "amlogic,drm-subsystem";
|
||||
ports = <&vpu_out>;
|
||||
};
|
||||
};
|
||||
|
||||
148
arch/arm/boot/dts/amlogic/mesongxl_p212-panel.dtsi
Normal file
148
arch/arm/boot/dts/amlogic/mesongxl_p212-panel.dtsi
Normal file
@@ -0,0 +1,148 @@
|
||||
/*
|
||||
* arch/arm/boot/dts/amlogic/mesongxl_p212-panel.dtsi
|
||||
*
|
||||
* Copyright (C) 2016 Amlogic, Inc. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
*/
|
||||
|
||||
/ {
|
||||
lcd{
|
||||
compatible = "amlogic, lcd-gxl";
|
||||
mode = "tablet";
|
||||
status = "okay";
|
||||
key_valid = <0>;
|
||||
/* clocks = <&clkc CLKID_VCLK2_ENCL
|
||||
* &clkc CLKID_VCLK2_VENCL>;
|
||||
* clock-names = "vencl_top_gate",
|
||||
* "vencl_int_gate";
|
||||
*/
|
||||
reg = <0xc8834400 0x100>;
|
||||
interrupts = <0 3 1>;
|
||||
interrupt-names = "vsync";
|
||||
pinctrl_version = <1>; /* for uboot */
|
||||
pinctrl-names = "ttl_6bit_hvsync_de_on",
|
||||
"ttl_6bit_hvsync_on",
|
||||
"ttl_6bit_de_on",
|
||||
"ttl_6bit_hvsync_de_off",
|
||||
"ttl_8bit_hvsync_de_on",
|
||||
"ttl_8bit_hvsync_on",
|
||||
"ttl_8bit_de_on",
|
||||
"ttl_8bit_hvsync_de_off";
|
||||
pinctrl-0 = <&lcd_ttl_rgb_6bit_on_pins
|
||||
&lcd_ttl_de_hvsync_on_pins>;
|
||||
pinctrl-1 = <&lcd_ttl_rgb_6bit_on_pins
|
||||
&lcd_ttl_hvsync_on_pins>;
|
||||
pinctrl-2 = <&lcd_ttl_rgb_6bit_on_pins
|
||||
&lcd_ttl_de_on_pins>;
|
||||
pinctrl-3 = <&lcd_ttl_rgb_6bit_off_pins
|
||||
&lcd_ttl_de_hvsync_off_pins>;
|
||||
pinctrl-4 = <&lcd_ttl_rgb_8bit_on_pins
|
||||
&lcd_ttl_de_hvsync_on_pins>;
|
||||
pinctrl-5 = <&lcd_ttl_rgb_8bit_on_pins
|
||||
&lcd_ttl_hvsync_on_pins>;
|
||||
pinctrl-6 = <&lcd_ttl_rgb_8bit_on_pins
|
||||
&lcd_ttl_de_on_pins>;
|
||||
pinctrl-7 = <&lcd_ttl_rgb_8bit_off_pins
|
||||
&lcd_ttl_de_hvsync_off_pins>;
|
||||
|
||||
/* power type:
|
||||
* (0=cpu_gpio, 1=pmu_gpio, 2=signal,3=extern, 0xff=ending)
|
||||
* power index:
|
||||
* (point gpios_index, or extern_index,0xff=invalid)
|
||||
* power value:(0=output low, 1=output high, 2=input)
|
||||
* power delay:(unit in ms)
|
||||
*/
|
||||
/*lcd_cpu-gpios = <&gpio GPIOX_3 GPIO_ACTIVE_HIGH>;*/
|
||||
/*lcd_cpu_gpio_names = "GPIOX_3";*/
|
||||
|
||||
lcd_0{
|
||||
model_name = "LCD720P";
|
||||
interface = "ttl";
|
||||
basic_setting = <1280 720 /*h_active, v_active*/
|
||||
1650 750 /*h_period, v_period*/
|
||||
8 /*lcd_bits */
|
||||
16 9>; /*screen_widht, screen_height*/
|
||||
lcd_timing = <40 220 1 /*hs_width, hs_bp, hs_pol*/
|
||||
5 20 1>; /*vs_width, vs_bp, vs_pol*/
|
||||
clk_attr = <0 /*fr_adj_type(0=clk, 1=htotal, 2=vtotal)*/
|
||||
0 /*clk_ss_level*/
|
||||
1 /*clk_auto_generate*/
|
||||
74250000>; /*pixel_clk(unit in Hz)*/
|
||||
ttl_attr = <0 /*clk_pol*/
|
||||
1 /*de_valid*/
|
||||
1 /*hvsync_valid*/
|
||||
0 /*rb_swap*/
|
||||
0>; /*bit_swap*/
|
||||
|
||||
/* power step: type, index, value, delay(ms) */
|
||||
power_on_step = <2 0 0 0
|
||||
0xff 0 0 0>; /*ending*/
|
||||
power_off_step = <2 0 0 50
|
||||
0xff 0 0 0>; /*ending*/
|
||||
backlight_index = <0xff>;
|
||||
};
|
||||
};
|
||||
|
||||
lcd_extern{
|
||||
compatible = "amlogic, lcd_extern";
|
||||
status = "disabled";
|
||||
i2c_bus = "i2c_bus_d";
|
||||
key_valid = <0>;
|
||||
|
||||
extern_0{
|
||||
index = <0>;
|
||||
extern_name = "ext_default";
|
||||
status = "disabled";
|
||||
type = <0>; /* 0=i2c, 1=spi, 2=mipi */
|
||||
i2c_address = <0x1c>; /* 7bit i2c address */
|
||||
i2c_address2 = <0xff>; /* 0xff for none */
|
||||
cmd_size = <0xff>; /*0xff for dynamic cmd_size*/
|
||||
|
||||
/* init on/off:
|
||||
* fixed cmd_size: (type, value...);
|
||||
* cmd_size include all data.
|
||||
* dynamic cmd_size: (type, cmd_size, value...);
|
||||
* cmd_size include value.
|
||||
*/
|
||||
/* type: 0x00=cmd with delay(bit[3:0]=1 for address2),
|
||||
* 0xc0=cmd(bit[3:0]=1 for address2),
|
||||
* 0xf0=gpio,
|
||||
* 0xfd=delay,
|
||||
* 0xff=ending
|
||||
*/
|
||||
/* value: i2c or spi cmd, or gpio index & level */
|
||||
/* delay: unit ms */
|
||||
init_on = <
|
||||
0xc0 7 0x20 0x01 0x02 0x00 0x40 0xFF 0x00
|
||||
0xc0 7 0x80 0x02 0x00 0x40 0x62 0x51 0x73
|
||||
0xc0 7 0x61 0x06 0x00 0x00 0x00 0x00 0x00
|
||||
0xc0 7 0xC1 0x05 0x0F 0x00 0x08 0x70 0x00
|
||||
0xc0 7 0x13 0x01 0x00 0x00 0x00 0x00 0x00
|
||||
0xc0 7 0x3D 0x02 0x01 0x00 0x00 0x00 0x00
|
||||
0xc0 7 0xED 0x0D 0x01 0x00 0x00 0x00 0x00
|
||||
0xc0 7 0x23 0x02 0x00 0x00 0x00 0x00 0x00
|
||||
0xfd 1 10 /* delay 10ms */
|
||||
0xff 0>; /*ending*/
|
||||
init_off = <0xff 0>; /*ending*/
|
||||
};
|
||||
|
||||
extern_1{
|
||||
index = <1>;
|
||||
extern_name = "i2c_DLPC3439";
|
||||
status = "disabled";
|
||||
type = <0>; /* 0=i2c, 1=spi, 2=mipi */
|
||||
i2c_address = <0x1b>; /* 7bit i2c address */
|
||||
};
|
||||
};
|
||||
};/* end of panel */
|
||||
|
||||
1317
arch/arm/boot/dts/amlogic/mesongxl_sei210.dtsi
Normal file
1317
arch/arm/boot/dts/amlogic/mesongxl_sei210.dtsi
Normal file
File diff suppressed because it is too large
Load Diff
141
arch/arm/boot/dts/amlogic/partition_mbox_normal_sei32bit.dtsi
Normal file
141
arch/arm/boot/dts/amlogic/partition_mbox_normal_sei32bit.dtsi
Normal file
@@ -0,0 +1,141 @@
|
||||
/*
|
||||
* Amlogic partition set for normal
|
||||
*
|
||||
* Copyright (c) 2017-2017 Amlogic Ltd
|
||||
*
|
||||
* This file is licensed under a dual GPLv2 or BSD license.
|
||||
*
|
||||
*/
|
||||
/ {
|
||||
partitions: partitions{
|
||||
parts = <14>;
|
||||
part-0 = <&logo>;
|
||||
part-1 = <&recovery>;
|
||||
part-2 = <&misc>;
|
||||
part-3 = <&dtbo>;
|
||||
part-4 = <&cri_data>;
|
||||
part-5 = <¶m>;
|
||||
part-6 = <&boot>;
|
||||
part-7 = <&rsv>;
|
||||
part-8 = <&tee>;
|
||||
part-9 = <&vendor>;
|
||||
part-10 = <&odm>;
|
||||
part-11 = <&system>;
|
||||
part-12 = <&cache>;
|
||||
part-13 = <&data>;
|
||||
|
||||
logo:logo{
|
||||
pname = "logo";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
recovery:recovery{
|
||||
pname = "recovery";
|
||||
size = <0x0 0x1800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
misc:misc{
|
||||
pname = "misc";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
dtbo:dtbo{
|
||||
pname = "dtbo";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
cri_data:cri_data
|
||||
{
|
||||
pname = "cri_data";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <2>;
|
||||
};
|
||||
rsv:rsv{
|
||||
pname = "rsv";
|
||||
size = <0x0 0x1000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
param:param{
|
||||
pname = "param";
|
||||
size = <0x0 0x1000000>;
|
||||
mask = <2>;
|
||||
};
|
||||
boot:boot
|
||||
{
|
||||
pname = "boot";
|
||||
size = <0x0 0x1000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
tee:tee{
|
||||
pname = "tee";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
vendor:vendor
|
||||
{
|
||||
pname = "vendor";
|
||||
size = <0x0 0x10000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
odm:odm
|
||||
{
|
||||
pname = "odm";
|
||||
size = <0x0 0x9000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
system:system
|
||||
{
|
||||
pname = "system";
|
||||
size = <0x0 0x67000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
cache:cache
|
||||
{
|
||||
pname = "cache";
|
||||
size = <0x0 0x32000000>;
|
||||
mask = <2>;
|
||||
};
|
||||
data:data
|
||||
{
|
||||
pname = "data";
|
||||
size = <0xffffffff 0xffffffff>;
|
||||
mask = <4>;
|
||||
};
|
||||
};
|
||||
|
||||
firmware {
|
||||
android {
|
||||
compatible = "android,firmware";
|
||||
vbmeta {
|
||||
compatible = "android,vbmeta";
|
||||
parts = "boot,system,vendor";
|
||||
by_name_prefix="/dev/block";
|
||||
};
|
||||
fstab {
|
||||
compatible = "android,fstab";
|
||||
system {
|
||||
compatible = "android,system";
|
||||
dev = "/dev/block/system";
|
||||
type = "ext4";
|
||||
mnt_flags = "ro,barrier=1,inode_readahead_blks=8";
|
||||
fsmgr_flags = "wait";
|
||||
};
|
||||
|
||||
vendor {
|
||||
compatible = "android,vendor";
|
||||
dev = "/dev/block/vendor";
|
||||
type = "ext4";
|
||||
mnt_flags = "ro,barrier=1,inode_readahead_blks=8";
|
||||
fsmgr_flags = "wait";
|
||||
};
|
||||
odm {
|
||||
compatible = "android,odm";
|
||||
dev = "/dev/block/odm";
|
||||
type = "ext4";
|
||||
mnt_flags = "ro,barrier=1,inode_readahead_blks=8";
|
||||
fsmgr_flags = "wait";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};/* end of / */
|
||||
141
arch/arm/boot/dts/amlogic/partition_tv_4G.dtsi
Normal file
141
arch/arm/boot/dts/amlogic/partition_tv_4G.dtsi
Normal file
@@ -0,0 +1,141 @@
|
||||
/*
|
||||
* Amlogic partition set for normal
|
||||
*
|
||||
* Copyright (c) 2017-2017 Amlogic Ltd
|
||||
*
|
||||
* This file is licensed under a dual GPLv2 or BSD license.
|
||||
*
|
||||
*/
|
||||
/ {
|
||||
partitions: partitions{
|
||||
parts = <14>;
|
||||
part-0 = <&logo>;
|
||||
part-1 = <&recovery>;
|
||||
part-2 = <&misc>;
|
||||
part-3 = <&dto>;
|
||||
part-4 = <&cri_data>;
|
||||
part-5 = <¶m>;
|
||||
part-6 = <&boot>;
|
||||
part-7 = <&rsv>;
|
||||
part-8 = <&tee>;
|
||||
part-9 = <&vendor>;
|
||||
part-10 = <&odm>;
|
||||
part-11 = <&system>;
|
||||
part-12 = <&cache>;
|
||||
part-13 = <&data>;
|
||||
|
||||
logo:logo{
|
||||
pname = "logo";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
recovery:recovery{
|
||||
pname = "recovery";
|
||||
size = <0x0 0x1800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
misc:misc{
|
||||
pname = "misc";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
dto:dto{
|
||||
pname = "dto";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <1>;
|
||||
};
|
||||
cri_data:cri_data
|
||||
{
|
||||
pname = "cri_data";
|
||||
size = <0x0 0x800000>;
|
||||
mask = <2>;
|
||||
};
|
||||
rsv:rsv{
|
||||
pname = "rsv";
|
||||
size = <0x0 0x1000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
param:param{
|
||||
pname = "param";
|
||||
size = <0x0 0x1000000>;
|
||||
mask = <2>;
|
||||
};
|
||||
boot:boot
|
||||
{
|
||||
pname = "boot";
|
||||
size = <0x0 0x1000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
tee:tee{
|
||||
pname = "tee";
|
||||
size = <0x0 0x2000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
vendor:vendor
|
||||
{
|
||||
pname = "vendor";
|
||||
size = <0x0 0x10000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
odm:odm
|
||||
{
|
||||
pname = "odm";
|
||||
size = <0x0 0x10000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
system:system
|
||||
{
|
||||
pname = "system";
|
||||
size = <0x0 0x46000000>;
|
||||
mask = <1>;
|
||||
};
|
||||
cache:cache
|
||||
{
|
||||
pname = "cache";
|
||||
size = <0x0 0x25000000>;
|
||||
mask = <2>;
|
||||
};
|
||||
data:data
|
||||
{
|
||||
pname = "data";
|
||||
size = <0xffffffff 0xffffffff>;
|
||||
mask = <4>;
|
||||
};
|
||||
};
|
||||
|
||||
firmware {
|
||||
android {
|
||||
compatible = "android,firmware";
|
||||
vbmeta {
|
||||
compatible = "android,vbmeta";
|
||||
parts = "boot,system,vendor";
|
||||
by_name_prefix="/dev/block";
|
||||
};
|
||||
fstab {
|
||||
compatible = "android,fstab";
|
||||
system {
|
||||
compatible = "android,system";
|
||||
dev = "/dev/block/system";
|
||||
type = "ext4";
|
||||
mnt_flags = "ro,barrier=1,inode_readahead_blks=8";
|
||||
fsmgr_flags = "wait";
|
||||
};
|
||||
|
||||
vendor {
|
||||
compatible = "android,vendor";
|
||||
dev = "/dev/block/vendor";
|
||||
type = "ext4";
|
||||
mnt_flags = "ro,barrier=1,inode_readahead_blks=8";
|
||||
fsmgr_flags = "wait";
|
||||
};
|
||||
odm {
|
||||
compatible = "android,odm";
|
||||
dev = "/dev/block/odm";
|
||||
type = "ext4";
|
||||
mnt_flags = "ro,barrier=1,inode_readahead_blks=8";
|
||||
fsmgr_flags = "wait";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};/* end of / */
|
||||
1127
arch/arm/boot/dts/amlogic/txl_t950_p341.dts
Normal file
1127
arch/arm/boot/dts/amlogic/txl_t950_p341.dts
Normal file
File diff suppressed because it is too large
Load Diff
1134
arch/arm/boot/dts/amlogic/txl_t960_p346.dts
Normal file
1134
arch/arm/boot/dts/amlogic/txl_t960_p346.dts
Normal file
File diff suppressed because it is too large
Load Diff
1143
arch/arm/boot/dts/amlogic/txl_t962_p320.dts
Normal file
1143
arch/arm/boot/dts/amlogic/txl_t962_p320.dts
Normal file
File diff suppressed because it is too large
Load Diff
1594
arch/arm/boot/dts/amlogic/txlx_t962e_r321_buildroot.dts
Normal file
1594
arch/arm/boot/dts/amlogic/txlx_t962e_r321_buildroot.dts
Normal file
File diff suppressed because it is too large
Load Diff
1643
arch/arm/boot/dts/amlogic/txlx_t962x_r311_720p.dts
Normal file
1643
arch/arm/boot/dts/amlogic/txlx_t962x_r311_720p.dts
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user