dts: g12b: copy g12b dts [1/1]

PD#SWPL-5020

Problem:
copy g12b dts.

Solution:
copy.

Verify:
local.

Change-Id: Ibd6423bd0cc99e98bf1d6359068f9f0719ad177f
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
Signed-off-by: Hong Guo <hong.guo@amlogic.com>
Signed-off-by: Luan Yuan <luan.yuan@amlogic.com>

Conflicts:
	arch/arm64/boot/dts/amlogic/g12b_a311x_w411_buildroot.dts
This commit is contained in:
Jianxiong Pan
2019-02-19 13:01:57 +08:00
committed by Dongjin Kim
parent de61151bac
commit 0378a935d9
26 changed files with 20923 additions and 107 deletions

View File

@@ -489,7 +489,7 @@ cpus {
CPU15: cpu@100010101 {
device_type = "cpu";
compatible = "arm,cortex-a53";
compatible = "arm,cortex-a73","arm,armv8";
reg = <0x1 0x10101>;
enable-method = "psci";
cpu-idle-states = <&CPU_RETENTION_1_0 &CPU_SLEEP_1_0

View File

@@ -14762,6 +14762,13 @@ F: drivers/amlogic/media/video_processor/videosync/vfp.h
F: drivers/amlogic/media/video_processor/videosync/videosync.h
F: drivers/amlogic/media/video_processor/videosync/videosync.c
AMLOGIC G12B_A DTS
M: Jianxiong Pan <jianxiong.pan@amlogic.com>
F: arch/arm/boot/dts/amlogic/g12b*_a.dts
F: arch/arm/boot/dts/amlogic/mesong12b.dtsi
F: arch/arm64/boot/dts/amlogic/g12b*_a.dts
F: arch/arm64/boot/dts/amlogic/mesong12b.dtsi
HARDKERNEL S922D odroidn2
M: Joy Cho <joy.cho@hardkernel.com>
F: arch/arm64/configs/odroidn2_defconfig

View File

@@ -23,6 +23,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12b_w400_b";
compatible = "amlogic, g12b";
interrupt-parent = <&gic>;
#address-cells = <1>;
@@ -699,43 +700,63 @@
opp00 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp01 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp02 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp03 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <731000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <731000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <731000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <741000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <771000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <801000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <821000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <851000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <901000>;
};
};

File diff suppressed because it is too large Load Diff

View File

@@ -23,6 +23,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12b_w400_b";
compatible = "amlogic, g12b";
interrupt-parent = <&gic>;
#address-cells = <1>;
@@ -667,43 +668,63 @@
opp00 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp01 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp02 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp03 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <731000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <731000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <731000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <741000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <771000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <801000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <821000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <851000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <901000>;
};
};

File diff suppressed because it is too large Load Diff

View File

@@ -22,6 +22,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12b_w400_b";
compatible = "amlogic, g12b";
interrupt-parent = <&gic>;
#address-cells = <1>;
@@ -762,43 +763,63 @@
opp00 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp01 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp02 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp03 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <731000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <731000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <731000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <741000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <771000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <801000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <821000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <851000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <901000>;
};
};

File diff suppressed because it is too large Load Diff

View File

@@ -22,6 +22,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12b_w400_b";
compatible = "amlogic, g12b";
interrupt-parent = <&gic>;
#address-cells = <1>;
@@ -735,55 +736,63 @@
opp00 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp01 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp02 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp03 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <731000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <731000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <731000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <741000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <1011000>;
opp-microvolt = <771000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <1011000>;
opp-microvolt = <801000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <1011000>;
opp-microvolt = <821000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <851000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <901000>;
};
};

File diff suppressed because it is too large Load Diff

View File

@@ -21,6 +21,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12b_w400_b";
compatible = "amlogic, g12b";
interrupt-parent = <&gic>;
#address-cells = <1>;
@@ -401,43 +402,63 @@
opp00 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp01 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp02 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp03 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <731000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <731000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <731000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <741000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <771000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <801000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <821000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <851000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <901000>;
};
};

View File

@@ -0,0 +1,737 @@
/*
* arch/arm/boot/dts/amlogic/g12b_pxp_a.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_a.dtsi"
/ {
model = "Amlogic";
amlogic-dt-id = "g12b_w400_a";
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>;
};
};

File diff suppressed because it is too large Load Diff

View File

@@ -23,6 +23,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12b_w400_b";
compatible = "amlogic, g12b";
interrupt-parent = <&gic>;
#address-cells = <2>;
@@ -699,43 +700,63 @@
opp00 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp01 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp02 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp03 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <731000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <731000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <731000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <741000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <771000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <801000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <821000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <851000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <901000>;
};
};

File diff suppressed because it is too large Load Diff

View File

@@ -23,6 +23,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12b_w400_b";
compatible = "amlogic, g12b";
interrupt-parent = <&gic>;
#address-cells = <2>;
@@ -667,43 +668,63 @@
opp00 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp01 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp02 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp03 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <731000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <731000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <731000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <741000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <771000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <801000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <821000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <851000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <901000>;
};
};

File diff suppressed because it is too large Load Diff

View File

@@ -22,6 +22,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12b_w400_b";
compatible = "amlogic, g12b";
interrupt-parent = <&gic>;
#address-cells = <2>;
@@ -761,43 +762,63 @@
opp00 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp01 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp02 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp03 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <731000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <731000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <731000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <741000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <771000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <801000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <821000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <851000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <901000>;
};
};

File diff suppressed because it is too large Load Diff

View File

@@ -22,6 +22,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12b_w400_b";
compatible = "amlogic, g12b";
interrupt-parent = <&gic>;
#address-cells = <2>;
@@ -735,55 +736,63 @@
opp00 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp01 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp02 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp03 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <731000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <731000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <731000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <741000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <1011000>;
opp-microvolt = <771000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <1011000>;
opp-microvolt = <801000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <1011000>;
opp-microvolt = <821000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <851000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <901000>;
};
};

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -21,6 +21,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12b_w400_b";
compatible = "amlogic, g12b";
interrupt-parent = <&gic>;
#address-cells = <2>;
@@ -400,43 +401,63 @@
opp00 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp01 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp02 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp03 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <751000>;
opp-microvolt = <731000>;
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <771000>;
opp-microvolt = <731000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <731000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <731000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <731000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <741000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <771000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <801000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <821000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <851000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <901000>;
};
};

View File

@@ -0,0 +1,736 @@
/*
* arch/arm64/boot/dts/amlogic/g12b_pxp_a.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_a.dtsi"
/ {
model = "Amlogic";
amlogic-dt-id = "g12b_w400_a";
compatible = "amlogic, g12b";
interrupt-parent = <&gic>;
#address-cells = <2>;
#size-cells = <2>;
aliases {
serial0 = &uart_AO;
i2c0 = &i2c0;
i2c1 = &i2c1;
i2c2 = &i2c2;
i2c3 = &i2c3;
i2c4 = &i2c_AO;
};
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x0 0x100000 0x0 0x3ff00000>;
};
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
/* global autoconfigured region for contiguous allocations */
secmon_reserved:linux,secmon {
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x400000>;
alignment = <0x0 0x400000>;
alloc-ranges = <0x0 0x05000000 0x0 0x400000>;
};
secos_reserved:linux,secos {
status = "disable";
compatible = "amlogic, aml_secos_memory";
reg = <0x0 0x05300000 0x0 0x2000000>;
no-map;
};
logo_reserved:linux,meson-fb {
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x800000>;
alignment = <0x0 0x400000>;
alloc-ranges = <0x0 0x3f800000 0x0 0x800000>;
};
ion_cma_reserved:linux,ion-dev {
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x8000000>;
alignment = <0x0 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 = <0x0 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 = <0x0 0x02800000>;
alignment = <0x0 0x400000>;
};
codec_mm_cma:linux,codec_mm_cma {
compatible = "shared-dma-pool";
reusable;
/* ion_codec_mm max can alloc size 80M*/
size = <0x0 0x13400000>;
alignment = <0x0 0x400000>;
linux,contiguous-region;
};
/* codec shared reserved */
codec_mm_reserved:linux,codec_mm_reserved {
compatible = "amlogic, codec-mm-reserved";
size = <0x0 0x0>;
alignment = <0x0 0x100000>;
//no-map;
};
/* vdin0 CMA pool */
vdin0_cma_reserved:linux,vdin0_cma {
compatible = "shared-dma-pool";
reusable;
/* 1920x1080x2x4 =16+4 M */
size = <0x0 0x04000000>;
alignment = <0x0 0x400000>;
};
/* vdin1 CMA pool */
vdin1_cma_reserved:linux,vdin1_cma {
compatible = "shared-dma-pool";
reusable;
/* 1920x1080x2x4 =16 M */
size = <0x0 0x04000000>;
alignment = <0x0 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 = <0x0 0xFF632000 0x0 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>;
};
};

File diff suppressed because it is too large Load Diff