Merge remote-tracking branch 'gerrit2/odroidn2-4.9.y-upstream' into odroidn2-4.9.y

Change-Id: Ie41eaa91a0baca613a21c1f230a6afb56640637e
This commit is contained in:
Mauro (mdrjr) Ribeiro
2019-08-05 20:43:57 -03:00
1039 changed files with 223597 additions and 24529 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

@@ -22,6 +22,9 @@ Required Properties:
"amlogic,tl1-clkc" - for tl1 ee clock
"amlogic,tl1-aoclkc" - for tl1 ao clock
"amlogic,tl1-measure" - for tl1 clock measurement
"amlogic,sm1-clkc-1" - for sm1 ee part1 clock
"amlogic,sm1-clkc-2" - for sm1 ee part2 clock
"amlogic,sm1-aoclkc" - for sm1 ao clock
- reg: physical base address of the clock controller and length of memory
mapped region.

View File

@@ -2,10 +2,12 @@
These are the HW cryptographic accelerators found on Amlogic products.
*For S805 series and S905 series
* Advanced Encryption Standard (AES)
Required properties:
- compatible : Should be "amlogic,aes" for aes-128/192/256 or "amlogic,aes_g12a_dma" for aes-128/256
- compatible : Should be "amlogic,aes" for aes-128/192/256
- dev_name : Should be "aml_aes"
- interrupts: Should contain the IRQ line for the AES.
- resets: Should contain the clock to enable the module
@@ -25,10 +27,10 @@ aml_aes{
Required properties:
- compatible : Should be "amlogic,des,tdes".
- dev_name : Should be "aml_aes"
- dev_name : Should be "aml_tdes"
- interrupts: Should contain the IRQ line for the TDES.
- resets: Should contain the clock to enable the module
- reg: Should contain the base address of regs
- reg: Should contain the base address of regs
Example:
aml_tdes{
@@ -40,29 +42,16 @@ aml_tdes{
0x0 0xda832000 0x0 0xe4>;
};
* Secure Hash Algorithm (SHA1/SHA224/SHA256)
********************************************************************************
Required properties:
- compatible : Should be "amlogic,sha".
- dev_name : Should be "aml_sha"
- interrupts: Should contain the IRQ line for the SHA.
- resets: Should contain the clock to enable the module
- reg: Should contain the base address of regs
* For S905X series and beyond
* S905X series use gxl
* T962X series use txlx
* S905X2 series use g12a
Example:
aml_sha{
compatible = "amlogic,sha";
dev_name = "aml_sha";
interrupts = <0 36 1>;
resets = <&clock GCLK_IDX_BLK_MOV>;
reg = <0x0 0xc8832000 0x0 0x2c4
0x0 0xda832000 0x0 0xe4>;
};
* New DMA for GXL and beyond
* Dma engine for crypto operations
Required properties:
- compatible : Should be "amlogic,aml_gxl_dma" or "amlogic,aml_txlx_dma".
- compatible : Should be "amlogic,aml_gxl_dma" or "amlogic,aml_txlx_dma"
- reg: Should contain the base address of regs
- interrupts: Should contain the IRQ line for DMA.
@@ -76,8 +65,9 @@ aml_dma {
* Advanced Encryption Standard (AES)
Required properties:
- compatible : Should be "amlogic,aes".
- dev_name : Should be "aml_aes"
- compatible : Should be "amlogic,aes_dma" for aes-128/192/256
or "amlogic,aes_g12a_dma" for aes-128/256
- dev_name : Should be "aml_aes_dma"
Example:
aml_aes{
@@ -89,8 +79,9 @@ aml_aes{
* Triple Data Encryption Standard (Triple DES)
Required properties:
- compatible : Should be "amlogic,des,tdes".
- dev_name : Should be "aml_aes"
- compatible : Should be "amlogic,des_dma,tdes_dma" for gxl
or "amlogic,tdes_dma" for other series.
- dev_name : Should be "aml_tdes_dma"
Example:
aml_tdes{
@@ -100,8 +91,8 @@ aml_tdes{
* Secure Hash Algorithm (SHA1/SHA224/SHA256/HMAC)
Required properties:
- compatible : Should be "amlogic,sha".
- dev_name : Should be "aml_sha"
- compatible : Should be "amlogic,sha_dma".
- dev_name : Should be "aml_sha_dma"
Example:
aml_sha{

View File

@@ -19,6 +19,8 @@ Required properties:
“amlogic,meson-g12a-gpio-intc” for G12A SoCs (S905D2, S905X2, S905Y2)
“amlogic,meson-txl-gpio-intc” for TXL SoCs (T950, T952, T960, T962)
“amlogic,meson-tl1-gpio-intc” for TL1 SoCs (T962X2)
“amlogic,meson-sm1-gpio-intc” for SM1 SoCs (S905D3, S905X3, S905Y3)
“amlogic,meson-tm2-gpio-intc” for TM2 SoCs (T962X3, T962E2)
- interrupt-parent : a phandle to the GIC the interrupts are routed to.
Usually this is provided at the root level of the device tree as it is
common to most of the SoC.

View File

@@ -11487,7 +11487,6 @@ F: arch/alpha/kernel/srm_env.c
STABLE BRANCH
M: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
M: Sasha Levin <sashal@kernel.org>
L: stable@vger.kernel.org
S: Supported
F: Documentation/stable_kernel_rules.txt
@@ -13528,6 +13527,8 @@ F: drivers/amlogic/memory_ext/*
F: include/linux/amlogic/ramdump.h
F: include/linux/amlogic/vmap_stack.h
F: drivers/amlogic/memory_ext/vmap_stack.c
F: drivers/amlogic/memory_ext/watch_point.c
F: include/linux/amlogic/watch_point.h
AMLOGIC driver for memory extend
M: Tao Zeng <tao.zeng@amlogic.com>
@@ -13545,6 +13546,11 @@ AMLOGIC boot config for M8B
M: Tao Zeng <tao.zeng@amlogic.com>
F: arch/arm/mach-meson/Makefile.boot
AMLOGIC implementation for 32bit kasan
M: Tao Zeng <tao.zeng@amlogic.com>
F: arch/arm/include/asm/kasan.h
F: arch/arm/mm/kasan_init.c
HDMITX OUTPUT DRIVER
M: Yi Zhou <yi.zhou@amlogic.com>
M: Zongdong Jiao <zongdong.jiao@amlogic.com>
@@ -13558,6 +13564,7 @@ F: drivers/amlogic/esm/*
AMLOGIC DWC_OTG USB
M: Yue Wang <yue.wang@amlogic.com>
F: drivers/amlogic/usb/*
F: drivers/amlogic/usb/phy/phy-aml-new-otg.c
F: drivers/usb/phy/phy-aml-new-usb.h
F: drivers/usb/phy/phy-aml-new-usb.c
F: drivers/usb/phy/phy-aml-new-usb2.c
@@ -13566,6 +13573,7 @@ F: drivers/usb/phy/phy-aml-new-usb-v2.h
F: drivers/usb/phy/phy-aml-new-usb-v2.c
F: drivers/usb/phy/phy-aml-new-usb2-v2.c
F: drivers/usb/phy/phy-aml-new-usb3-v2.c
F: drivers/amlogic/usb/phy/phy-aml-new-usb3-v3.c
F: drivers/usb/phy/phy-aml-usb.h
F: drivers/usb/phy/phy-aml-usb.c
F: drivers/usb/phy/phy-aml-usb2.c
@@ -13798,27 +13806,21 @@ AMLOGIC M8b
M: Jianxin Pan <jianxin.pan@amlogic.com>
F: arch/arm/boot/dts/amlogic>
ANLOGIC AUDIO
ANLOGIC AUDIO DRIVER
M: Xing Wang <xing.wang@amlogic.com>
F: arch/arm64/boot/dts/amlogic/gxl_p212_1g.dts
F: arch/arm64/boot/dts/amlogic/gxl_p212_2g.dts
F: arch/arm64/boot/dts/amlogic/gxl_p230_2g.dts
F: arch/arm64/boot/dts/amlogic/gxm_q200_2g.dts
F: arch/arm64/boot/dts/amlogic/gxm_skt.dts
F: arch/arm64/boot/dts/amlogic/mesongxl.dtsi
F: arch/arm64/boot/dts/amlogic/mesongxm.dtsi
M: Zhe Wang <Zhe.Wang@amlogic.com>
F: arch/arm64/boot/dts/amlogic/*
F: arch/arm/boot/dts/amlogic/*
F: arch/arm64/configs/meson64_defconfig
F: drivers/amlogic/clk/clk-mpll.c
F: drivers/amlogic/clk/clk_misc.c
F: drivers/amlogic/clk/clkc.h
F: drivers/amlogic/clk/gxl.c
F: drivers/amlogic/clk/*
F: drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hdmi_tx_main.c
F: drivers/amlogic/pinctrl/pinctrl_gxl.c
F: include/dt-bindings/clock/amlogic,gxl-clkc.h
F: include/linux/amlogic/media/sound/audin_regs.h
F: drivers/amlogic/pinctrl/*
F: include/dt-bindings/clock/*
F: include/linux/amlogic/media/sound/*
F: sound/soc/Kconfig
F: sound/soc/Makefile
F: sound/soc/amlogic/*
F: sound/soc/amlogic/auge/*
F: sound/soc/amlogic/meson/*
F: sound/soc/codecs/Kconfig
F: sound/soc/codecs/Makefile
F: sound/soc/codecs/amlogic/*
@@ -13925,6 +13927,7 @@ F: drivers/amlogic/media/enhancement/amvecm/arch/*
F: drivers/amlogic/media/enhancement/amvecm/dnlp_algorithm/*
F: include/linux/amlogic/media/amvecm/*
F: drivers/amlogic/media/enhancement/amvecm/hdr/*
F: drivers/amlogic/media/enhancement/amvecm/amprime_sl/*
AMLOGIC GXL ADD SKT DTS
M: Yun Cai <yun.cai@amlogic.com>
@@ -14413,6 +14416,7 @@ F: sound/soc/codecs/amlogic/ad82584f.h
AMLOGIC CPUFREQS DRIVER
M: hong guo <hong.guo@amlogic.com>
F: drivers/amlogic/cpufreq/meson-cpufreq.h
F: drivers/amlogic/cpufreq/meson-cpufreq.c
F: drivers/amlogic/clk/clk-cpu-fclk-composite.c
@@ -14430,6 +14434,7 @@ F: include/linux/amlogic/meson_cooldev.h
AMLOGIC G12A Audio DRIVER
M: Xing Wang <xing.wang@amlogic.com>
F: sound/soc/amlogic/auge/*
F: sound/soc/codec/amlogic/*
AMLOGIC G12A BL_EXTERN LP8556 DRIVER
M: Weiming Liu <weiming.liu@amlogic.com>
@@ -14440,6 +14445,11 @@ M: Zhilei Wu <zhilei.wu@amlogic.com>
F: drivers/amlogic/media/enhancement/amdolby_vision*
F: include/linux/amlogic/media/amdolbyvision/*
AMLOGIC HDR PRIMSE SL DRIVER
M: Yi Zhou <yi.zhou@amlogic.com>
F: drivers/amlogic/media/enhancement/amprime_sl/*
F: include/linux/amlogic/media/amprime_sl/*
AMLOGIC G12A Media codec io bus
M: Nanxin Qin <nanxin.qin@amlogic.com>
F: include/linux/amlogic/media/registers/regs/efuse_regs.h
@@ -14505,6 +14515,8 @@ F: drivers/amlogic/media/dtv_demod/*
AMLOGIC DTV DEMOD DRIVER
M: Zhiwei Yuan <zhiwei.yuan@amlogic.com>
F: drivers/amlogic/media/dtv_demod/include/addr_atsc*.h
F: drivers/amlogic/media/dtv_demod/include/demod_dbg.h
F: drivers/amlogic/media/dtv_demod/demod_dbg.c
AMLOGIC DEFENDKEY DRIVER
M: Zhongfu Luo <zhongfu.luo@amlogic.com>
@@ -14512,7 +14524,9 @@ F: drivers/amlogic/defendkey/*
AMLOGIC DEBUG
M: Jianxin Pan <jianxin.pan@amlogic.com>
M: Tao Guo <tao.guo@amlogic.com>
F: drivers/amlogic/debug/*
F: include/linux/amlogic/debug*.h
AMLOGIC G12A spdif channel status
M: xing wang<xing.wang@amlogic.com>
@@ -14567,6 +14581,10 @@ AMLOGIC G12B w400 buildroot dts
M: liangzhuo xie <liangzhuo.xie@amlogic.com>
F: arch/arm64/boot/dts/amlogic/g12b_a311d_w400_buildroot.dts
AMLOGIC G12B w411 buildroot dts
M: dianzhong.huo <dianzhong.huo@amlogic.com>
F: arch/arm64/boot/dts/amlogic/g12b_a311d_w411_buildroot.dts
AMLOGIC P PARTITION DTSI
M: Xindong Xu <xindong.xu@amlogic.com>
F: arch/arm64/boot/dts/amlogic/firmware_avb.dtsi
@@ -14681,9 +14699,11 @@ AMLOGIC TL1 AUDIO EXTERANL INPUT/OUTPUT DRIVERS
AMLOGIC TL1 NEW EQDRC
AMLOGIC TL1 MIXER CONTROLS
AMLOGIC TL1 VAD DRIVER
M: Xing Wang <xing.wang@amlogic.com
AMLOGIC SM1 SOUND CARD
M: Xing Wang <xing.wang@amlogic.com>
F: arch/arm/boot/dts/amlogic/tl1_pxp.dts
F: include/dt-bindings/clock/amlogic,tl1-audio-clk.h
F: include/dt-bindings/clock/amlogic,sm1-audio-clk.h
F: include/linux/amlogic/media/sound/misc.h
F: include/linux/amlogic/major.h
F: sound/soc/amlogic/auge/*
@@ -14728,6 +14748,29 @@ F: arch/arm64/boot/dts/amlogic/partition_mbox_ab_P_32.dtsi
AMLOGIC BACKLIGHT LDIM DRIVER
M: Evoke Zhang <evoke.zhang@amlogic.com>
F: drivers/amlogic/media/vout/backlight/aml_ldim/ldim_spi.c
F: drivers/amlogic/media/vout/backlight/aml_ldim/ldim_hw.c
AMLOGIC MESON TL1 DTS
M: Xingyu Chen <xingyu.chen@amlogic.com>
M: Bo Yang <bo.yang@amlogic.com>
F: arch/arm/boot/dts/amlogic/tl1_t962x2_skt.dts
F: arch/arm/boot/dts/amlogic/tl1_t962x2_x301.dts
F: arch/arm/boot/dts/amlogic/tl1_t962x2_t309.dts
F: arch/arm64/boot/dts/amlogic/mesontl1*
F: arch/arm64/boot/dts/amlogic/tl1_t962x2_*
AMLOGIC MESON TL1 PANEL DTS
M: Evoke Zhang <evoke.zhang@amlogic.com>
F: arch/arm/boot/dts/amlogic/mesontl1_skt-panel.dtsi
F: arch/arm/boot/dts/amlogic/mesontl1_x301-panel.dtsi
F: arch/arm/boot/dts/amlogic/mesontl1_t309-panel.dtsi
F: drivers/amlogic/media/vout/lcd/lcd_phy_config.c
F: drivers/amlogic/media/vout/lcd/lcd_phy_config.h
AMLOGIC MESONAXG RSR DTS
M: Yeping Miao <yeping.miao@amlogic.com>
F: arch/arm64/boot/dts/amlogic/axg_rsr.dts
F: arch/arm64/boot/dts/amlogic/axg_rsr_v03.dts
AMLOGIC CAMERA DRIVER
M: Guosong Zhou <guosong.zhou@amlogic.com>
@@ -14742,6 +14785,97 @@ F: drivers/amlogic/media/common/canvas/canvas_mgr.c
F: drivers/amlogic/media/common/vfm/vfm.c
F: include/linux/amlogic/media/camera/*
AMLOGIC multimedia
M: Pengcheng Chen <pengcheng.chen@amlogic.com>
F: drivers/amlogic/media/common/ge2d/ge2d_dmabuf.c
F: drivers/amlogic/media/common/ge2d/ge2d_dmabuf.h
AMLOGIC GDC DRIVER
M: Pengcheng Chen <pengcheng.chen@amlogic.com>
F: drivers/amlogic/media/gdc/app/gdc_dmabuf.c
F: drivers/amlogic/media/gdc/app/gdc_dmabuf.h
F: drivers/amlogic/media/gdc/src/platform/system_log.c
AMLOGIC VIDEOSYNC
M: Jintao Xu <jintao.xu@amlogic.com>
F: drivers/amlogic/media/video_processor/videosync/Kconfig
F: drivers/amlogic/media/video_processor/videosync/Makefile
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
AMLOGIC MESONAXG SBR DTS
M: Bing Jiang <Bing.Jiang@amlogic.com>
F: arch/arm64/boot/dts/amlogic/axg_s400_v03sbr.dts
F: arch/arm/boot/dts/amlogic/axg_s400_v03sbr.dts
F: sound/soc/codecs/amlogic/tas5782m.c
F: sound/soc/codecs/amlogic/tas5782m.h
AMLOGIC SM1 DTS
M: Zhiqiang Liang <Zhiqiang.Liang@amlogic.com>
F: arch/arm64/boot/dts/amlogic/mesongsm1.dtsi
F: arch/arm64/boot/dts/amlogic/sm1_pxp.dts
F: arch/arm/boot/dts/amlogic/mesonsm1.dtsi
F: arch/arm/boot/dts/amlogic/sm1_pxp.dts
AMLOGIC SM1 CLOCK DRIVERS
M: Shunzhou Jiang <shunzhou.jiang@amlogic.com>
F: drivers/amlogic/clk/sm1/*
AMLOGIC SM1 DTS
M: shaochan.liu <shaochan.liu@amlogic.com>
F: arch/arm64/boot/dts/amlogic/mesonsm1_skt-panel.dtsi
F: arch/arm/boot/dts/amlogic/mesonsm1_skt-panel.dtsi
AMLOGIC SM1 POWER CTRL DRIVERS
M: Shunzhou Jiang <shunzhou.jiang@amlogic.com>
F: drivers/amlogic/power/power_ctrl.c
F: include/linux/amlogic/power_ctrl.h
AMLOGIC MESONAXG S400 GVA SBR DTS
M: Yeping Miao <yeping.miao@amlogic.com>
F: arch/arm64/boot/dts/amlogic/axg_s400_v03gva_sbr.dts
F: arch/arm/boot/dts/amlogic/axg_s400_v03gva_sbr.dts
AMLOGIC TL1 DTS
M: Huijie Huang <huijie.huang@amlogic.com>
F: arch/arm/boot/dts/amlogic/tl1_t962x2_x301_1g.dts
F: arch/arm/boot/dts/amlogic/tl1_t962x2_x301_2g.dts
F: arch/arm64/boot/dts/amlogic/tl1_t962x2_x301_1g.dts
F: arch/arm64/boot/dts/amlogic/tl1_t962x2_x301_2g.dts
AMLOGIC TM2 PINCTRL DRIVER
M: Qianggui Song <qianggui.song@amlogic.com>
F: drivers/amlogic/pinctrl/pinctrl-meson-tm2.c
F: include/dt-bindings/gpio/meson-tm2-gpio.h
AMLOGIC MESON TM2 CLOCK DRIVER
M: Jian Hu <jian.hu@amlogic.com>
F: driver/amlogic/clk/tm2/*
AMLOGIC MESON TM2 LCD DTS
M: Shaochan Liu <shaochan.liu@amlogic.com>
F: arch/arm64/boot/dts/amlogic/mesontm2_t962x3_ab301-panel.dtsi
F: arch/arm64/boot/dts/amlogic/mesontm2_t962x3_ab309-panel.dtsi
F: arch/arm/boot/dts/amlogic/mesontm2_t962x3_ab301-panel.dtsi
F: arch/arm/boot/dts/amlogic/mesontm2_t962x3_ab309-panel.dtsi
AMLOGIC SM1 S905X3 DTS
M: Xiaoliang Wang <xiaoliang.wang@amlogic.com>
F: arch/arm/boot/dts/amlogic/g12a_s905x2_u212.dts
F: arch/arm/boot/dts/amlogic/g12a_s905x2_u212_1g.dts
F: arch/arm64/boot/dts/amlogic/g12a_s905x2_u212.dts
F: arch/arm64/boot/dts/amlogic/g12a_s905x2_u212_1g.dts
F: arch/arm/boot/dts/amlogic/sm1_s905x3_ac213.dts
F: arch/arm64/boot/dts/amlogic/sm1_s905x3_ac213.dts
HARDKERNEL S922D odroidn2
M: Joy Cho <joy.cho@hardkernel.com>
F: arch/arm64/configs/odroidn2_defconfig

View File

@@ -765,7 +765,7 @@ ifdef CONFIG_CC_STACKPROTECTOR_REGULAR
stackp-flag := -fstack-protector
stackp-name := REGULAR
else
ifdef CONFIG_CC_STACKPROTECTOR_STRONG
ifdef CONFIG_CC_STACKPROTECTOR_STRONG_AMLOGIC
stackp-flag := -fstack-protector-strong
stackp-name := STRONG
else

View File

@@ -450,6 +450,11 @@ config CC_STACKPROTECTOR_REGULAR
by about 0.3%.
config CC_STACKPROTECTOR_STRONG
bool "Strong"
help
Since this config will increase stack size. We repleace it
config CC_STACKPROTECTOR_STRONG_AMLOGIC
bool "Strong"
select CC_STACKPROTECTOR
help

View File

@@ -90,6 +90,7 @@ config ARM
select PERF_USE_VMALLOC
select RTC_LIB
select SYS_SUPPORTS_APM_EMULATION
select HAVE_ARCH_KASAN
# Above selects are sorted alphabetically; please add new ones
# according to that. Thanks.
help
@@ -1444,6 +1445,7 @@ config PAGE_OFFSET
default 0x40000000 if VMSPLIT_1G
default 0x80000000 if VMSPLIT_2G
default 0xB0000000 if VMSPLIT_3G_OPT
default 0xD0000000 if AMLOGIC_KASAN32
default 0xC0000000
config NR_CPUS

View File

@@ -52,6 +52,10 @@ AS += -EL
LD += -EL
endif
ifeq ($(CONFIG_KASAN),y)
KASAN_SHADOW_OFFSET := 0xA0000000
endif
#
# The Scalar Replacement of Aggregates (SRA) optimization pass in GCC 4.9 and
# later may result in code being generated that handles signed short and signed

View File

@@ -21,6 +21,10 @@ ifeq ($(CONFIG_MACH_MESON8B),y)
include $(srctree)/arch/arm/mach-meson/Makefile.boot
endif
ifeq ($(CONFIG_ARM64_A32),y)
include $(srctree)/arch/arm/mach-meson/Makefile.boot
endif
include $(srctree)/arch/arm/boot/dts/Makefile
# Note: the following conditions must always be true:

View File

@@ -4,6 +4,8 @@
# create a compressed vmlinuz image from the original vmlinux
#
KASAN_SANITIZE := n
OBJS =
AFLAGS_head.o += -DTEXT_OFFSET=$(TEXT_OFFSET)

View File

@@ -120,7 +120,9 @@ char *strchr(const char *s, int c)
return (char *)s;
}
#ifndef CONFIG_AMLOGIC_KASAN32 /* for compile problems */
#undef memset
#endif
void *memset(void *s, int c, size_t count)
{

View File

@@ -45,7 +45,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x7ff00000>;
linux,usable-memory = <0x0 0x80000000>;
};
reserved-memory {
@@ -58,8 +58,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
compatible = "shared-dma-pool";

View File

@@ -36,7 +36,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x3ff00000>;
linux,usable-memory = <0x0 0x40000000>;
};
reserved-memory {
@@ -49,8 +49,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -47,8 +47,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -32,7 +32,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x3ff00000>;
linux,usable-memory = <0x0 0x40000000>;
};
reserved-memory {

View File

@@ -47,8 +47,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -47,8 +47,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -1,5 +1,5 @@
/*
* arch/arm/boot/dts/amlogic/axg_s400_v03gva.dts
* arch/arm/boot/dts/amlogic/axg_s400_v03gva_sbr.dts
*
* Copyright (C) 2017 Amlogic, Inc. All rights reserved.
*
@@ -18,10 +18,10 @@
/dts-v1/;
#include "mesonaxg.dtsi"
#include "mesonaxg_s400-panel.dtsi"
/*#include "mesonaxg_s400-panel.dtsi" */
/ {
model = "Amlogic";
amlogic-dt-id = "axg_s400_v03gva";
amlogic-dt-id = "axg_s400_v03gva_sbr";
compatible = "amlogic, axg";
interrupt-parent = <&gic>;
#address-cells = <1>;
@@ -47,8 +47,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
@@ -348,7 +347,7 @@
"port";
/*reset-gpio-type 0:Shared pad(no reset)1:OD pad2:Normal pad*/
gpio-type = <2>;
status = "okay";
status = "disabled";
};
pcie_B: pcieB@fa000000 {
@@ -389,7 +388,7 @@
"port";
/*reset-gpio-type 0:Shared pad(no reset)1:OD pad2:Normal pad*/
gpio-type = <1>;
status = "okay";
status = "disabled";
};
@@ -421,14 +420,6 @@
pinctrl-0 = <&b_uart_pins>;
};
meson-irblaster {
compatible = "amlogic, am_irblaster";
dev_name = "meson-irblaster";
status = "disable";
pinctrl-names = "default";
pinctrl-0 = <&irblaster_pins>;
};
vpu {
compatible = "amlogic, vpu-axg";
dev_name = "vpu";
@@ -515,8 +506,18 @@
//continuous-clock;
//bitclock-inversion;
//frame-inversion;
bitclock-master = <&aml_tdmb>;
frame-master = <&aml_tdmb>;
/*A113D tdmb slave for HDMI*/
bitclock-master = <&tdmbcodec>;
frame-master = <&tdmbcodec>;
/*A113D tdmb master for LineIn*/
/*
* bitclock-master = <&aml_tdmb>;
* frame-master = <&aml_tdmb>;
*/
suffix-name = "alsaPORT-i2sCapture";
cpu {
sound-dai = <&aml_tdmb>;
dai-tdm-slot-tx-mask = <1 1>;
@@ -525,7 +526,7 @@
dai-tdm-slot-width = <32>;
system-clock-frequency = <12288000>;
};
codec {
tdmbcodec:codec {
/*
* prefix-names = "3101_A", "3101_B",
* "3101_C", "3101_D";
@@ -534,14 +535,14 @@
* &tlv320adc3101_34
* &tlv320adc3101_36>;
*/
sound-dai = <&tlv320adc3101_32 &dummy_codec>;
sound-dai = <&dummy_codec>;
};
};
aml-audio-card,dai-link@2 {
format = "i2s";
mclk-fs = <256>;
//continuous-clock;
continuous-clock;
//bitclock-inversion;
//frame-inversion;
//bitclock-master = <&aml_tdmc>;
@@ -555,9 +556,17 @@
system-clock-frequency = <12288000>;
};
codec {
prefix-names = "5707_A", "5707_B";
sound-dai = <&tas5707_36 &tas5707_3a
&dummy_codec>;
/*
*prefix-names = "5707_A", "5707_B";
*sound-dai = <&tas5707_36 &tas5707_3a
* &dummy_codec>;
*/
prefix-names = "tas5782m_pu1", "tas5782m_pu2",
"tas5782m_pu3", "tas5782m_pu4", "tas5782m_pu5",
"tas5782m_pu6";
sound-dai = <&tas5782m_pu1 &tas5782m_pu2
&tas5782m_pu3 &tas5782m_pu4 &tas5782m_pu5
&tas5782m_pu6>;
};
};
@@ -667,6 +676,7 @@
f_max = <200000000>;
max_req_size = <0x20000>; /**128KB*/
gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>;
tx_delay = <4>;
hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>;
card_type = <1>;
/* 1:mmc card(include eMMC),
@@ -798,7 +808,7 @@
compatible = "amlogic, meson-axg";
memory-region = <&fb_reserved>;
dev_name = "meson-fb";
status = "okay";
status = "disabled";
interrupts = <0 3 1
0 89 1>;
interrupt-names = "viu-vsync", "rdma";
@@ -817,7 +827,7 @@
ge2d {
compatible = "amlogic, ge2d-axg";
dev_name = "ge2d";
status = "okay";
status = "disabled";
interrupts = <0 150 1>;
interrupt-names = "ge2d";
clocks = <&clkc CLKID_VAPB_MUX>,
@@ -916,11 +926,55 @@
status = "okay";
};
/*****************************************************************/
tas5782m_pu1: tas5782m_pu1@48 {
compatible = "ti, tas5782m";
#sound-dai-cells = <0>;
reg = <0x48>;
reset_pin = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>;
status = "okay";
codec_name = "tas5782m";
work_mode = <0>; /*0: i2s 1:tdm*/
chip_offset = <1>; /*chip_N [1,2....]*/
};
tas5782m_pu2: tas5782m_pu2@49 {
compatible = "ti, tas5782m";
#sound-dai-cells = <0>;
reg = <0x49>;
status = "okay";
codec_name = "tas5782m";
work_mode = <0>; /*0: i2s 1:tdm*/
chip_offset = <2>; /*chip_N [1,2....]*/
};
tas5782m_pu3: tas5782m_pu3@4a {
compatible = "ti, tas5782m";
#sound-dai-cells = <0>;
reg = <0x4a>;
status = "okay";
codec_name = "tas5782m";
work_mode = <0>; /*0: i2s 1:tdm*/
chip_offset = <3>; /*chip_N [1,2....]*/
};
tas5782m_pu4: tas5782m_pu4@4b {
compatible = "ti, tas5782m";
#sound-dai-cells = <0>;
reg = <0x4b>;
status = "okay";
codec_name = "tas5782m";
work_mode = <0>; /*0: i2s 1:tdm*/
chip_offset = <4>; /*chip_N [1,2....]*/
};
/*****************************************************************/
tas5707_36: tas5707_36@36 {
compatible = "ti,tas5707";
#sound-dai-cells = <0>;
reg = <0x1b>;
status = "okay";
status = "disabled";
reset_pin = <&gpio_ao GPIOAO_4 0>;
};
@@ -928,7 +982,7 @@
compatible = "ti,tas5707";
#sound-dai-cells = <0>;
reg = <0x1d>;
status = "okay";
status = "disabled";
};
};
@@ -938,6 +992,33 @@
pinctrl-names="default";
pinctrl-0=<&ao_i2c_master_pin2>;
/*****************************************************************/
mcu6350: mcu6350@40 {
reg = <0x40>;
status = "okay";
};
/*****************************************************************/
tas5782m_pu5: tas5782m_pu5@48 {
compatible = "ti, tas5782m";
#sound-dai-cells = <0>;
reg = <0x48>;
status = "okay";
codec_name = "tas5782m";
work_mode = <0>; /*0: i2s 1:tdm*/
chip_offset = <5>; /*chip_N [1,2....]*/
};
tas5782m_pu6: tas5782m_pu6@49 {
compatible = "ti, tas5782m";
#sound-dai-cells = <0>;
reg = <0x49>;
status = "okay";
codec_name = "tas5782m";
work_mode = <0>; /*0: i2s 1:tdm*/
chip_offset = <6>; /*chip_N [1,2....]*/
};
/*****************************************************************/
aml_pca9557: aml_pca9557@0x1f {
compatible = "amlogic,pca9557_keypad";
reg = <0x1f>;
@@ -1064,27 +1145,34 @@
aml_tdmb: tdmb {
compatible = "amlogic, axg-snd-tdmb";
#sound-dai-cells = <0>;
/*dai-tdm-lane-slot-mask-in = <1 1 1 1>;*/
dai-tdm-lane-slot-mask-in = <0 0 0 1>;
dai-tdm-lane-slot-mask-in = <1 1 1 1>;
dai-tdm-lane-slot-mask-out = <0 0 0 0>;
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>;
/*A113D tdmb slave for HDMI*/
pinctrl-0 = <&tdmb_mclk &tdmin_b_slv &tdmin_b>;
/*A113D tdmb master for LineIn*/
/*
* 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 = <0 0 1 1>;
dai-tdm-lane-slot-mask-in = <0 0 0 0>;
dai-tdm-lane-slot-mask-out = <1 1 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>;
pinctrl-0 = <&tdmc_mclk &tdmout_c>;
};
aml_spdif: spdif {
@@ -1104,6 +1192,20 @@
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-0 = <&spdifout &spdifin>;
/*
* whether do asrc for pcm.
* if raw data, asrc is disabled automatically
* 0: "Disable",
* 1: "Enable:32K",
* 2: "Enable:44K",
* 3: "Enable:48K",
* 4: "Enable:88K",
* 5: "Enable:96K",
* 6: "Enable:176K",
* 7: "Enable:192K",
*/
auto_asrc = <3>;
status = "okay";
};
aml_pdm: pdm {
@@ -1150,8 +1252,8 @@
* 4: pdmin;
*/
datain_src = <4>;
datain_chnum = <4>;
datain_chmask = <0x3>;
datain_chnum = <8>;
datain_chmask = <0x7f>;
/* tdmin_lb src
* 0: tdmoutA
@@ -1167,10 +1269,53 @@
datalb_chnum = <2>;
/*config which data pin as loopback*/
/*datalb-lane-mask-in = <0 0 0 1>;*/
datalb_chmask = <0x3>;
datalb_chmask = <0x1>;
status = "okay";
};
audioresample: resample {
compatible = "amlogic, axg-resample";
clocks = <&clkc CLKID_MPLL3
&clkaudio CLKID_AUDIO_MCLK_F
&clkaudio CLKID_AUDIO_RESAMPLE_CTRL>;
clock-names = "resample_pll", "resample_src", "resample_clk";
/*same with toddr_src
* TDMIN_A,
* TDMIN_B,
* TDMIN_C,
* SPDIFIN,
* PDMIN,
* NONE,
* TDMIN_LB,
* LOOPBACK,
*/
resample_module = <3>;
status = "okay";
};
aml_pwrdet: pwrdet {
compatible = "amlogic, axg-power-detect";
interrupts = <GIC_SPI 91 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 {
@@ -1210,6 +1355,14 @@
function = "tdmb_out";
};
};
tdmin_b_slv: tdmin_b_slv{
mux {
groups = "tdmb_slv_sclk", "tdmb_slv_fs";
function = "tdmb_in";
};
};
// tdmin and tdmout are the same pins. can't use at same time
tdmin_b:tdmin_b {
mux {
@@ -1233,6 +1386,7 @@
groups = "tdmc_sclk",
"tdmc_fs",
"tdmc_dout0",
"tdmc_dout1",
"tdmc_dout2_a6",
"tdmc_dout3_a7";
function = "tdmc_out";
@@ -1319,3 +1473,206 @@
&audio_data{
status = "okay";
};
&audio_data{
status = "okay";
};
&custom_maps{
mapnum = <4>;
map0 = <&map_0>;
map1 = <&map_1>;
map2 = <&map_2>;
map3 = <&map_3>;
map_0: map_0{
mapname = "amlogic-remote-1";
customcode = <0xfb04>;
release_delay = <80>;
size = <50>; /*keymap size*/
keymap = <REMOTE_KEY(0x47, KEY_0)
REMOTE_KEY(0x13, KEY_1)
REMOTE_KEY(0x10, KEY_2)
REMOTE_KEY(0x11, KEY_3)
REMOTE_KEY(0x0F, KEY_4)
REMOTE_KEY(0x0C, KEY_5)
REMOTE_KEY(0x0D, KEY_6)
REMOTE_KEY(0x0B, KEY_7)
REMOTE_KEY(0x08, KEY_8)
REMOTE_KEY(0x09, KEY_9)
REMOTE_KEY(0x5C, KEY_RIGHTCTRL)
REMOTE_KEY(0x51, KEY_F3)
REMOTE_KEY(0x50, KEY_F4)
REMOTE_KEY(0x40, KEY_F5)
REMOTE_KEY(0x4d, KEY_F6)
REMOTE_KEY(0x43, KEY_F7)
REMOTE_KEY(0x17, KEY_F8)
REMOTE_KEY(0x00, KEY_F9)
REMOTE_KEY(0x01, KEY_F10)
REMOTE_KEY(0x16, KEY_F11)
REMOTE_KEY(0x49, KEY_BACKSPACE)
REMOTE_KEY(0x06, KEY_PROPS)
REMOTE_KEY(0x14, KEY_UNDO)
REMOTE_KEY(0x44, KEY_UP)
REMOTE_KEY(0x1D, KEY_DOWN)
REMOTE_KEY(0x1C, KEY_LEFT)
REMOTE_KEY(0x48, KEY_RIGHT)
REMOTE_KEY(0x53, KEY_LEFTMETA)
REMOTE_KEY(0x45, KEY_PAGEUP)
REMOTE_KEY(0x19, KEY_PAGEDOWN)
REMOTE_KEY(0x52, KEY_PAUSE)
REMOTE_KEY(0x05, KEY_HANGEUL)
REMOTE_KEY(0x59, KEY_HANJA)
REMOTE_KEY(0x1b, KEY_SCALE)
REMOTE_KEY(0x04, KEY_KPCOMMA)
REMOTE_KEY(0x1A, KEY_POWER)
REMOTE_KEY(0x0A, KEY_TAB)
REMOTE_KEY(0x0e, KEY_MUTE)
REMOTE_KEY(0x1F, KEY_HOME)
REMOTE_KEY(0x1e, KEY_FRONT)
REMOTE_KEY(0x07, KEY_COPY)
REMOTE_KEY(0x12, KEY_OPEN)
REMOTE_KEY(0x54, KEY_PASTE)
REMOTE_KEY(0x02, KEY_FIND)
REMOTE_KEY(0x4f, KEY_A)
REMOTE_KEY(0x42, KEY_B)
REMOTE_KEY(0x5d, KEY_C)
REMOTE_KEY(0x4c, KEY_D)
REMOTE_KEY(0x58, KEY_CUT)
REMOTE_KEY(0x55, KEY_CALC)>;
};
map_1: map_1{
mapname = "amlogic-remote-2";
customcode = <0xfe01>;
release_delay = <80>;
size = <53>;
keymap = <REMOTE_KEY(0x01, KEY_1)
REMOTE_KEY(0x02, KEY_2)
REMOTE_KEY(0x03, KEY_3)
REMOTE_KEY(0x04, KEY_4)
REMOTE_KEY(0x05, KEY_5)
REMOTE_KEY(0x06, KEY_6)
REMOTE_KEY(0x07, KEY_7)
REMOTE_KEY(0x08, KEY_8)
REMOTE_KEY(0x09, KEY_9)
REMOTE_KEY(0x0a, KEY_0)
REMOTE_KEY(0x1F, KEY_FN_F1)
REMOTE_KEY(0x15, KEY_MENU)
REMOTE_KEY(0x16, KEY_TAB)
REMOTE_KEY(0x0c, KEY_CHANNELUP)
REMOTE_KEY(0x0d, KEY_CHANNELDOWN)
REMOTE_KEY(0x0e, KEY_VOLUMEUP)
REMOTE_KEY(0x0f, KEY_VOLUMEDOWN)
REMOTE_KEY(0x11, KEY_HOME)
REMOTE_KEY(0x1c, KEY_RIGHT)
REMOTE_KEY(0x1b, KEY_LEFT)
REMOTE_KEY(0x19, KEY_UP)
REMOTE_KEY(0x1a, KEY_DOWN)
REMOTE_KEY(0x1d, KEY_ENTER)
REMOTE_KEY(0x17, KEY_MUTE)
REMOTE_KEY(0x49, KEY_FINANCE)
REMOTE_KEY(0x43, KEY_BACK)
REMOTE_KEY(0x12, KEY_FN_F4)
REMOTE_KEY(0x14, KEY_FN_F5)
REMOTE_KEY(0x18, KEY_FN_F6)
REMOTE_KEY(0x59, KEY_INFO)
REMOTE_KEY(0x5a, KEY_STOPCD)
REMOTE_KEY(0x10, KEY_POWER)
REMOTE_KEY(0x42, KEY_PREVIOUSSONG)
REMOTE_KEY(0x44, KEY_NEXTSONG)
REMOTE_KEY(0x1e, KEY_REWIND)
REMOTE_KEY(0x4b, KEY_FASTFORWARD)
REMOTE_KEY(0x58, KEY_PLAYPAUSE)
REMOTE_KEY(0x46, KEY_PROPS)
REMOTE_KEY(0x40, KEY_UNDO)
REMOTE_KEY(0x38, KEY_SCROLLLOCK)
REMOTE_KEY(0x57, KEY_FN)
REMOTE_KEY(0x5b, KEY_FN_ESC)
REMOTE_KEY(0x54, KEY_RED)
REMOTE_KEY(0x4c, KEY_GREEN)
REMOTE_KEY(0x4e, KEY_YELLOW)
REMOTE_KEY(0x55, KEY_BLUE)
REMOTE_KEY(0x53, KEY_BLUETOOTH)
REMOTE_KEY(0x52, KEY_WLAN)
REMOTE_KEY(0x39, KEY_CAMERA)
REMOTE_KEY(0x41, KEY_SOUND)
REMOTE_KEY(0x0b, KEY_QUESTION)
REMOTE_KEY(0x00, KEY_CHAT)
REMOTE_KEY(0x13, KEY_SEARCH)>;
};
map_2: map_2{
mapname = "amlogic-remote-3";
customcode = <0xbd02>;
release_delay = <80>;
size = <17>;
keymap = <REMOTE_KEY(0xca,103)
REMOTE_KEY(0xd2,108)
REMOTE_KEY(0x99,105)
REMOTE_KEY(0xc1,106)
REMOTE_KEY(0xce,97)
REMOTE_KEY(0x45,116)
REMOTE_KEY(0xc5,133)
REMOTE_KEY(0x80,113)
REMOTE_KEY(0xd0,15)
REMOTE_KEY(0xd6,125)
REMOTE_KEY(0x95,102)
REMOTE_KEY(0xdd,104)
REMOTE_KEY(0x8c,109)
REMOTE_KEY(0x89,131)
REMOTE_KEY(0x9c,130)
REMOTE_KEY(0x9a,120)
REMOTE_KEY(0xcd,121)>;
};
map_3: map_3{
mapname = "amlogic-remote-3";
customcode = <0xa4e8>; /* Reference Remote Control */
release_delay = <80>;
size = <45>;
keymap = <
REMOTE_KEY(0xc7, 200) /* power */
REMOTE_KEY(0x93, 201) /* eject-->input source */
REMOTE_KEY(0xb2, 202) /* usb */
REMOTE_KEY(0xb8, 203) /* coaxial */
REMOTE_KEY(0xb7, 204) /* aux */
REMOTE_KEY(0x8a, 205) /* scan-->hdmi arc */
REMOTE_KEY(0x96, 206) /* dimmer */
REMOTE_KEY(0x90, 207) /* hdmi1 */
REMOTE_KEY(0xa8, 208) /* hdmi2 */
REMOTE_KEY(0x85, 209) /* mute */
REMOTE_KEY(0x80, 210) /* vol+ */
REMOTE_KEY(0x81, 211) /* vol- */
REMOTE_KEY(0x61, 212) /* DAP */
REMOTE_KEY(0x62, 213) /* BM */
REMOTE_KEY(0x63, 214) /* DRC */
REMOTE_KEY(0x64, 215) /* POST */
REMOTE_KEY(0x65, 216) /* UPMIX */
REMOTE_KEY(0x66, 217) /* VIRT */
REMOTE_KEY(0x67, 218) /* LEGACY */
REMOTE_KEY(0x68, 219) /* HFILT */
REMOTE_KEY(0x69, 220) /* Loundness */
REMOTE_KEY(0x60, 221) /* Audio_info */
REMOTE_KEY(0xb1, 222) /* CD */
REMOTE_KEY(0xb4, 223) /* CD */
REMOTE_KEY(0xb9, 224) /* CD */
REMOTE_KEY(0xab, 225) /* CD */
REMOTE_KEY(0x91, 226) /* CD */
REMOTE_KEY(0x92, 227) /* CD */
REMOTE_KEY(0x89, 228) /* CD */
REMOTE_KEY(0x88, 229) /* CD */
REMOTE_KEY(0xa5, 230) /* CD */
REMOTE_KEY(0x84, 231) /* CD */
REMOTE_KEY(0x72, 232) /* CD */
REMOTE_KEY(0x73, 233) /* CD */
REMOTE_KEY(0x9a, 234) /* CD */
REMOTE_KEY(0x9b, 235) /* CD */
REMOTE_KEY(0xa0, 236) /* CD */
REMOTE_KEY(0x71, 237) /* CD */
REMOTE_KEY(0x74, 238) /* CD */
REMOTE_KEY(0x75, 239) /* CD */
REMOTE_KEY(0x7e, 240) /* CD */
REMOTE_KEY(0x7f, 241) /* CD */
REMOTE_KEY(0x7a, 242) /* CD */
REMOTE_KEY(0xa7, 243) /* CD */
REMOTE_KEY(0xa9, 244) /* CD */
>;
};
};

File diff suppressed because it is too large Load Diff

View File

@@ -47,8 +47,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -47,8 +47,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -47,8 +47,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
@@ -316,14 +315,6 @@
pinctrl-0 = <&b_uart_pins>;
};
meson-irblaster {
compatible = "amlogic, am_irblaster";
dev_name = "meson-irblaster";
status = "disable";
pinctrl-names = "default";
pinctrl-0 = <&irblaster_pins>;
};
/* Sound iomap */
aml_snd_iomap {
compatible = "amlogic, snd-iomap";

View File

@@ -39,7 +39,7 @@ firmware {
dev = "/dev/block/product";
type = "ext4";
mnt_flags = "ro,barrier=1,inode_readahead_blks=8";
fsmgr_flags = "wait,slotselect";
fsmgr_flags = "wait,slotselect,avb";
};
odm {
compatible = "android,odm";

View File

@@ -37,7 +37,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x3ff00000>;
linux,usable-memory = <0x0 0x40000000>;
};
reserved-memory {

View File

@@ -23,6 +23,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12a_skt_2g";
compatible = "amlogic, g12a";
interrupt-parent = <&gic>;
#address-cells = <1>;
@@ -45,7 +46,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x7ff00000>;
linux,usable-memory = <0x0 0x80000000>;
};
reserved-memory {
@@ -58,8 +59,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
@@ -233,6 +233,21 @@
status = "okay";
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -792,8 +807,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -837,8 +854,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout &spdifin>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1060,6 +1079,13 @@
function = "spdif_out_ao";
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* gpiao_10 */
groups = "GPIOAO_10";
function = "gpio_aobus";
};
};
}; /* end of pinctrl_aobus */
&audio_data {

View File

@@ -46,7 +46,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x7ff00000>;
linux,usable-memory = <0x0 0x80000000>;
};
reserved-memory {
@@ -213,6 +213,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -220,6 +228,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -784,8 +799,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout &spdifin>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1007,6 +1024,13 @@
function = "spdif_out_ao";
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* gpiao_10 */
groups = "GPIOAO_10";
function = "gpio_aobus";
};
};
}; /* end of pinctrl_aobus */
&audio_data {

View File

@@ -23,6 +23,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12a_u200_2g";
compatible = "amlogic, g12a";
interrupt-parent = <&gic>;
#address-cells = <1>;
@@ -45,7 +46,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x000000 0x80000000>;
linux,usable-memory = <0x100000 0x7ff00000>;
};
reserved-memory {
@@ -58,8 +59,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
@@ -154,8 +154,8 @@
vm0_cma_reserved:linux,vm0_cma {
compatible = "shared-dma-pool";
reusable;
size = <0x2000000>;
alignment = <0x400000>;
size = <0x0 0x2000000>;
alignment = <0x0 0x400000>;
};
};
@@ -167,8 +167,6 @@
label="sys_led";
gpios=<&gpio_ao GPIOAO_11 GPIO_ACTIVE_HIGH>;
default-state ="on";
retain-state-suspended;
linux,default-trigger="cpu0";
};
};
@@ -247,6 +245,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -254,6 +260,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -303,7 +316,7 @@
compatible = "amlogic, amvdec_656in";
dev_name = "amvdec_656in";
status = "disabled";
reg = <0xffe02000 0x7c>;
reg = <0x0 0xffe02000 0x0 0x7c>;
clocks = <&clkc CLKID_BT656_COMP>,
<&clkc CLKID_BT656>;
clock-names = "cts_bt656_clk1",
@@ -795,6 +808,122 @@
};
};
cpu_opp_table1: cpu_opp_table1 {
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>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <991000>;
};
};
cpu_opp_table2: cpu_opp_table2 {
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>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <991000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <1011000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <1011000>;
};
};
cpufreq-meson {
compatible = "amlogic, cpufreq-meson";
pinctrl-names = "default";
@@ -804,6 +933,50 @@
}; /* end of / */
&CPU0 {
/*set differents table cpufreq max*/
diff_tables_supply;
hispeed_cpufreq_max = <2100>;
medspeed_cpufreq_max = <1908>;
lospeed_cpufreq_max = <1800>;
operating-points-v2 = <&cpu_opp_table0>,
<&cpu_opp_table1>,
<&cpu_opp_table2>;
};
&CPU1 {
/*set differents table cpufreq max*/
diff_tables_supply;
hispeed_cpufreq_max = <2100>;
medspeed_cpufreq_max = <1908>;
lospeed_cpufreq_max = <1800>;
operating-points-v2 = <&cpu_opp_table0>,
<&cpu_opp_table1>,
<&cpu_opp_table2>;
};
&CPU2 {
/*set differents table cpufreq max*/
diff_tables_supply;
hispeed_cpufreq_max = <2100>;
medspeed_cpufreq_max = <1908>;
lospeed_cpufreq_max = <1800>;
operating-points-v2 = <&cpu_opp_table0>,
<&cpu_opp_table1>,
<&cpu_opp_table2>;
};
&CPU3 {
/*set differents table cpufreq max*/
diff_tables_supply;
hispeed_cpufreq_max = <2100>;
medspeed_cpufreq_max = <1908>;
lospeed_cpufreq_max = <1800>;
operating-points-v2 = <&cpu_opp_table0>,
<&cpu_opp_table1>,
<&cpu_opp_table2>;
};
&meson_fb {
status = "okay";
display_size_default = <1920 1080 1920 2160 32>;
@@ -911,8 +1084,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -970,8 +1145,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout &spdifin>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1220,6 +1397,13 @@
function = "spdif_out_ao";
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* gpiao_10 */
groups = "GPIOAO_10";
function = "gpio_aobus";
};
};
}; /* end of pinctrl_aobus */
&audio_data {

View File

@@ -23,6 +23,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12a_u200_1g";
compatible = "amlogic, g12a";
interrupt-parent = <&gic>;
#address-cells = <1>;
@@ -45,7 +46,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x000000 0x40000000>;
linux,usable-memory = <0x100000 0x3ff00000>;
};
reserved-memory {
@@ -58,8 +59,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
@@ -171,8 +171,6 @@
label="sys_led";
gpios=<&gpio_ao GPIOAO_11 GPIO_ACTIVE_HIGH>;
default-state ="on";
retain-state-suspended;
linux,default-trigger="cpu0";
};
};
@@ -251,6 +249,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -258,6 +264,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -915,8 +928,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -974,8 +989,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout &spdifin>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1224,6 +1241,13 @@
function = "spdif_out_ao";
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* gpiao_10 */
groups = "GPIOAO_10";
function = "gpio_aobus";
};
};
}; /* end of pinctrl_aobus */
&audio_data {

View File

@@ -19,6 +19,7 @@
#include "mesong12a.dtsi"
#include "mesong12a_skt-panel.dtsi"
#include "mesong12a_drm.dtsi"
/ {
model = "Amlogic";
@@ -44,7 +45,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x7ff00000>;
linux,usable-memory = <0x0 0x80000000>;
};
reserved-memory {
@@ -149,8 +150,6 @@
label="sys_led";
gpios=<&gpio_ao GPIOAO_11 GPIO_ACTIVE_HIGH>;
default-state ="on";
retain-state-suspended;
linux,default-trigger="cpu0";
};
};
@@ -224,6 +223,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -231,6 +238,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -882,8 +896,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -927,8 +943,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout &spdifin>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1151,6 +1169,13 @@
function = "spdif_out_ao";
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* gpiao_10 */
groups = "GPIOAO_10";
function = "gpio_aobus";
};
};
}; /* end of pinctrl_aobus */
&audio_data {

View File

@@ -19,6 +19,7 @@
#include "mesong12a.dtsi"
#include "mesong12a_skt-panel.dtsi"
#include "mesong12a_drm.dtsi"
/ {
model = "Amlogic";
@@ -44,7 +45,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x7ff00000>;
linux,usable-memory = <0x0 0x80000000>;
};
reserved-memory {
@@ -150,8 +151,6 @@
label="sys_led";
gpios=<&gpio_ao GPIOAO_11 GPIO_ACTIVE_HIGH>;
default-state ="on";
retain-state-suspended;
linux,default-trigger="cpu0";
};
};
@@ -901,8 +900,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -946,8 +947,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout &spdifin>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1170,6 +1173,13 @@
function = "spdif_out_ao";
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* gpiao_10 */
groups = "GPIOAO_10";
function = "gpio_aobus";
};
};
}; /* end of pinctrl_aobus */
&audio_data {

View File

@@ -45,7 +45,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x7ff00000>;
linux,usable-memory = <0x0 0x80000000>;
};
reserved-memory {
@@ -150,8 +150,6 @@
label="sys_led";
gpios=<&gpio_ao GPIOAO_11 GPIO_ACTIVE_HIGH>;
default-state ="on";
retain-state-suspended;
linux,default-trigger="cpu0";
};
};
@@ -225,6 +223,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -232,6 +238,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -897,8 +910,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -942,8 +957,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout &spdifin>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1166,6 +1183,13 @@
function = "spdif_out_ao";
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* gpiao_10 */
groups = "GPIOAO_10";
function = "gpio_aobus";
};
};
}; /* end of pinctrl_aobus */
&audio_data {

View File

@@ -45,7 +45,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x7ff00000>;
linux,usable-memory = <0x0 0x80000000>;
};
reserved-memory {
@@ -58,8 +58,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
@@ -188,8 +187,6 @@
label="sys_led";
gpios=<&gpio_ao GPIOAO_11 GPIO_ACTIVE_LOW>;
default-state ="on";
retain-state-suspended;
linux,default-trigger="cpu0";
};
};
@@ -263,6 +260,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -270,6 +275,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -842,8 +854,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -901,8 +915,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1095,6 +1111,13 @@
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* GPIOH_4 */
groups = "GPIOH_4";
function = "gpio_periphs";
};
};
pdmin: pdmin {
mux { /* gpioa_5, gpioa_6, gpioa_7, gpioa_8, gpioa_9*/
groups = "pdm_din0_a",

View File

@@ -45,7 +45,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x3ff00000>;
linux,usable-memory = <0x0 0x40000000>;
};
@@ -59,8 +59,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
@@ -189,8 +188,6 @@
label="sys_led";
gpios=<&gpio_ao GPIOAO_11 GPIO_ACTIVE_LOW>;
default-state ="on";
retain-state-suspended;
linux,default-trigger="cpu0";
};
};
@@ -257,6 +254,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -264,6 +269,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -833,8 +845,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -892,8 +906,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1086,6 +1102,13 @@
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* GPIOH_4 */
groups = "GPIOH_4";
function = "gpio_periphs";
};
};
pdmin: pdmin {
mux { /* gpioa_5, gpioa_6, gpioa_7, gpioa_8, gpioa_9*/
groups = "pdm_din0_a",

View File

@@ -57,8 +57,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
@@ -177,8 +176,6 @@
label="sys_led";
gpios=<&gpio_ao GPIOAO_11 GPIO_ACTIVE_LOW>;
default-state ="on";
retain-state-suspended;
linux,default-trigger="cpu0";
};
};
@@ -252,6 +249,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -259,6 +264,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -829,8 +841,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -888,8 +902,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1082,6 +1098,13 @@
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* GPIOH_4 */
groups = "GPIOH_4";
function = "gpio_periphs";
};
};
pdmin: pdmin {
mux { /* gpioa_5, gpioa_6, gpioa_7, gpioa_8, gpioa_9*/
groups = "pdm_din0_a",

View File

@@ -18,9 +18,11 @@
/dts-v1/;
#include "mesong12a.dtsi"
#include "mesong12a_drm.dtsi"
/ {
model = "Amlogic";
amlogic-dt-id = "g12a_u211_2g";
compatible = "amlogic, g12a";
interrupt-parent = <&gic>;
#address-cells = <1>;
@@ -43,7 +45,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x7ff00000>;
linux,usable-memory = <0x0 0x80000000>;
};
reserved-memory {
@@ -167,8 +169,6 @@
label="sys_led";
gpios=<&gpio_ao GPIOAO_11 GPIO_ACTIVE_LOW>;
default-state ="on";
retain-state-suspended;
linux,default-trigger="cpu0";
};
};
@@ -236,6 +236,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -243,6 +251,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -883,8 +898,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -928,8 +945,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1122,6 +1141,13 @@
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* GPIOH_4 */
groups = "GPIOH_4";
function = "gpio_periphs";
};
};
pdmin: pdmin {
mux { /* gpioa_5, gpioa_6, gpioa_7, gpioa_8, gpioa_9*/
groups = "pdm_din0_a",

View File

@@ -22,7 +22,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12a_s905x2_u212";
amlogic-dt-id = "g12a_u212_2g";
compatible = "amlogic, g12a";
interrupt-parent = <&gic>;
#address-cells = <1>;
@@ -45,7 +45,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x000000 0x80000000>;
linux,usable-memory = <0x100000 0x7ff00000>;
};
reserved-memory {
@@ -58,8 +58,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
@@ -163,17 +162,17 @@
gpioleds {
compatible = "gpio-leds";
status = "okay";
status = "disabled";
net_red {
label="net_red";
gpios=<&gpio GPIOA_14 GPIO_ACTIVE_LOW>;
/*gpios=<&gpio GPIOA_14 GPIO_ACTIVE_LOW>;*/
default-state ="on";
};
net_green {
label="net_green";
gpios=<&gpio GPIOA_15 GPIO_ACTIVE_HIGH>;
/*gpios=<&gpio GPIOA_15 GPIO_ACTIVE_HIGH>;*/
default-state ="on";
};
@@ -188,8 +187,6 @@
label="sys_led";
gpios=<&gpio_ao GPIOAO_11 GPIO_ACTIVE_LOW>;
default-state ="on";
retain-state-suspended;
linux,default-trigger="cpu0";
};
};
@@ -263,6 +260,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -270,6 +275,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -306,43 +318,47 @@
dev_name = "ionvideo";
status = "okay";
};
/*dvb {
* compatible = "amlogic, dvb";
* dev_name = "dvb";
*
* fe0_mode = "external";
* fe0_demod = "Atbm8881";
* fe0_i2c_adap_id = <&i2c2>;
* fe0_demod_i2c_addr = <0xc0>;
* fe0_ts = <1>;
* fe0_reset_value = <0>;
* fe0_reset_gpio = <&gpio GPIOZ_1 GPIO_ACTIVE_HIGH>;
*
* ts1 = "parallel";
* ts1_control = <0>;
* ts1_invert = <0>;
* interrupts = <0 23 1
* 0 5 1
* 0 21 1
* 0 19 1
* 0 25 1
* 0 18 1
* 0 24 1>;
* interrupt-names = "demux0_irq",
* "demux1_irq",
* "demux2_irq",
* "dvr0_irq",
* "dvr1_irq",
* "dvrfill0_fill",
* "dvrfill1_flush";
* pinctrl-names = "p_ts1";
* pinctrl-0 = <&dvb_p_ts1_pins>;
* clocks = <&clkc CLKID_DEMUX
* &clkc CLKID_AHB_ARB0
* &clkc CLKID_DOS_PARSER>;
* clock-names = "demux", "ahbarb0", "parser_top";
*};
*/
dvb {
compatible = "amlogic, dvb";
dev_name = "dvb";
status = "ok";
ts0 = "serial";
ts0_control = <0x800>;
ts0_invert = <0>;
pinctrl-names = "s_ts0";
pinctrl-0 = <&dvb_s_ts0_pins>;
interrupts = <0 23 1
0 5 1
0 53 1
0 19 1
0 25 1
0 18 1
0 24 1>;
interrupt-names = "demux0_irq",
"demux1_irq",
"demux2_irq",
"dvr0_irq",
"dvr1_irq",
"dvrfill0_fill",
"dvrfill1_flush";
};
dvbfe {
compatible = "amlogic, dvbfe";
dev_name = "dvbfe";
dtv_demod0 = "Avl6762";
dtv_demod0_i2c_adap = <&i2c3>;
dtv_demod0_i2c_addr = <0x14>;
dtv_demod0_reset_value = <0>;
dtv_demod0_reset_gpio = <&gpio GPIOZ_10 GPIO_ACTIVE_HIGH>;
dtv_demod0_ant_poweron_value = <0>;
dtv_demod0_ant_power_gpio = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
dtv_demod0_tuner_type = <52>;
fe0_dtv_demod = <0>;
fe0_ts = <0>;
fe0_dev = <0>;
};
unifykey{
compatible = "amlogic, unifykey";
status = "ok";
@@ -830,7 +846,7 @@
*/
&i2c3 {
status = "disabled";
status = "ok";
pinctrl-names="default";
pinctrl-0=<&i2c3_master_pins2>;
clock-frequency = <100000>; /* default 100k */
@@ -882,8 +898,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -941,8 +959,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1135,6 +1155,13 @@
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* GPIOH_4 */
groups = "GPIOH_4";
function = "gpio_periphs";
};
};
pdmin: pdmin {
mux { /* gpioa_5, gpioa_6, gpioa_7, gpioa_8, gpioa_9*/
groups = "pdm_din0_a",
@@ -1386,3 +1413,14 @@
status = "okay";
};
&pinctrl_aobus {
dvb_s_ts0_pins: dvb_s_ts0_pins {
tsin_a {
groups = "tsin_a_sop_ao",
"tsin_a_valid_ao",
"tsin_a_clk_ao",
"tsin_a_din0_ao";
function = "tsin_a_ao";
};
};
};

View File

@@ -22,7 +22,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12a_s905x2_u212_1g";
amlogic-dt-id = "g12a_u212_1g";
compatible = "amlogic, g12a";
interrupt-parent = <&gic>;
#address-cells = <1>;
@@ -45,7 +45,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x000000 0x40000000>;
linux,usable-memory = <0x100000 0x3ff00000>;
};
@@ -59,8 +59,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
@@ -168,17 +167,17 @@
gpioleds {
compatible = "gpio-leds";
status = "okay";
status = "disabled";
net_red {
label="net_red";
gpios=<&gpio GPIOA_14 GPIO_ACTIVE_LOW>;
/*gpios=<&gpio GPIOA_14 GPIO_ACTIVE_LOW>;*/
default-state ="on";
};
net_green {
label="net_green";
gpios=<&gpio GPIOA_15 GPIO_ACTIVE_HIGH>;
/*gpios=<&gpio GPIOA_15 GPIO_ACTIVE_HIGH>;*/
default-state ="on";
};
@@ -193,8 +192,6 @@
label="sys_led";
gpios=<&gpio_ao GPIOAO_11 GPIO_ACTIVE_LOW>;
default-state ="on";
retain-state-suspended;
linux,default-trigger="cpu0";
};
};
@@ -261,6 +258,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -268,6 +273,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -304,43 +316,47 @@
dev_name = "ionvideo";
status = "okay";
};
/*dvb {
* compatible = "amlogic, dvb";
* dev_name = "dvb";
*
* fe0_mode = "external";
* fe0_demod = "Atbm8881";
* fe0_i2c_adap_id = <&i2c2>;
* fe0_demod_i2c_addr = <0xc0>;
* fe0_ts = <1>;
* fe0_reset_value = <0>;
* fe0_reset_gpio = <&gpio GPIOZ_1 GPIO_ACTIVE_HIGH>;
*
* ts1 = "parallel";
* ts1_control = <0>;
* ts1_invert = <0>;
* interrupts = <0 23 1
* 0 5 1
* 0 21 1
* 0 19 1
* 0 25 1
* 0 18 1
* 0 24 1>;
* interrupt-names = "demux0_irq",
* "demux1_irq",
* "demux2_irq",
* "dvr0_irq",
* "dvr1_irq",
* "dvrfill0_fill",
* "dvrfill1_flush";
* pinctrl-names = "p_ts1";
* pinctrl-0 = <&dvb_p_ts1_pins>;
* clocks = <&clkc CLKID_DEMUX
* &clkc CLKID_AHB_ARB0
* &clkc CLKID_DOS_PARSER>;
* clock-names = "demux", "ahbarb0", "parser_top";
*};
*/
dvb {
compatible = "amlogic, dvb";
dev_name = "dvb";
status = "ok";
ts0 = "serial";
ts0_control = <0x800>;
ts0_invert = <0>;
pinctrl-names = "s_ts0";
pinctrl-0 = <&dvb_s_ts0_pins>;
interrupts = <0 23 1
0 5 1
0 53 1
0 19 1
0 25 1
0 18 1
0 24 1>;
interrupt-names = "demux0_irq",
"demux1_irq",
"demux2_irq",
"dvr0_irq",
"dvr1_irq",
"dvrfill0_fill",
"dvrfill1_flush";
};
dvbfe {
compatible = "amlogic, dvbfe";
dev_name = "dvbfe";
dtv_demod0 = "Avl6762";
dtv_demod0_i2c_adap = <&i2c3>;
dtv_demod0_i2c_addr = <0x14>;
dtv_demod0_reset_value = <0>;
dtv_demod0_reset_gpio = <&gpio GPIOZ_10 GPIO_ACTIVE_HIGH>;
dtv_demod0_ant_poweron_value = <0>;
dtv_demod0_ant_power_gpio = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
dtv_demod0_tuner_type = <52>;
fe0_dtv_demod = <0>;
fe0_ts = <0>;
fe0_dev = <0>;
};
unifykey{
compatible = "amlogic, unifykey";
status = "ok";
@@ -826,7 +842,7 @@
*/
&i2c3 {
status = "disabled";
status = "okay";
pinctrl-names="default";
pinctrl-0=<&i2c3_master_pins2>;
clock-frequency = <100000>; /* default 100k */
@@ -878,8 +894,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -937,8 +955,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1131,6 +1151,13 @@
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* GPIOH_4 */
groups = "GPIOH_4";
function = "gpio_periphs";
};
};
pdmin: pdmin {
mux { /* gpioa_5, gpioa_6, gpioa_7, gpioa_8, gpioa_9*/
groups = "pdm_din0_a",
@@ -1376,3 +1403,14 @@
&saradc {
status = "disabled";
};
&pinctrl_aobus {
dvb_s_ts0_pins: dvb_s_ts0_pins {
tsin_a {
groups = "tsin_a_sop_ao",
"tsin_a_valid_ao",
"tsin_a_clk_ao",
"tsin_a_din0_ao";
function = "tsin_a_ao";
};
};
};

View File

@@ -18,6 +18,7 @@
/dts-v1/;
#include "mesong12a.dtsi"
#include "mesong12a_drm.dtsi"
/ {
model = "Amlogic";
@@ -43,7 +44,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x7ff00000>;
linux,usable-memory = <0x0 0x80000000>;
};
reserved-memory {
@@ -167,8 +168,6 @@
label="sys_led";
gpios=<&gpio_ao GPIOAO_11 GPIO_ACTIVE_LOW>;
default-state ="on";
retain-state-suspended;
linux,default-trigger="cpu0";
};
};
@@ -236,6 +235,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -243,6 +250,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -883,8 +897,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -928,8 +944,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1122,6 +1140,13 @@
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* GPIOH_4 */
groups = "GPIOH_4";
function = "gpio_periphs";
};
};
pdmin: pdmin {
mux { /* gpioa_5, gpioa_6, gpioa_7, gpioa_8, gpioa_9*/
groups = "pdm_din0_a",

File diff suppressed because it is too large Load Diff

View File

@@ -44,7 +44,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x7ff00000>;
linux,usable-memory = <0x0 0x80000000>;
};
reserved-memory {
@@ -57,8 +57,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
@@ -220,6 +219,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -227,6 +234,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -823,8 +837,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -882,8 +898,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout &spdifin>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1098,6 +1116,13 @@
function = "spdif_out_ao";
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* gpiao_10 */
groups = "GPIOAO_10";
function = "gpio_aobus";
};
};
}; /* end of pinctrl_aobus */
&audio_data {

View File

@@ -44,7 +44,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x000000 0x80000000>;
linux,usable-memory = <0x100000 0x7ff00000>;
};
reserved-memory {
@@ -212,6 +212,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -219,6 +227,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -669,18 +684,20 @@
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <831000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <871000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <921000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <981000>;
};
/*
* opp08 {
* opp-hz = /bits/ 64 <1608000000>;
* opp-microvolt = <871000>;
* };
* opp09 {
* opp-hz = /bits/ 64 <1704000000>;
* opp-microvolt = <921000>;
* };
* opp10 {
* opp-hz = /bits/ 64 <1800000000>;
* opp-microvolt = <981000>;
* };
*/
};
cpufreq-meson {
@@ -784,8 +801,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -843,8 +862,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout &spdifin>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1059,6 +1080,13 @@
function = "spdif_out_ao";
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* gpiao_10 */
groups = "GPIOAO_10";
function = "gpio_aobus";
};
};
}; /* end of pinctrl_aobus */
&audio_data {
@@ -1287,3 +1315,13 @@
status = "okay";
};
&gpu{
/*max gpu is 500MHz*/
tbl = <&dvfs285_cfg
&dvfs400_cfg
&dvfs500_cfg>;
};
&amhdmitx {
dongle_mode = <1>;
};

View File

@@ -0,0 +1,87 @@
/ {
energy-costs {
CPU_COST_A73: core-cost0 {
busy-cost-data = <
54 17
135 110
270 202
360 264
540 396
648 470
755 557
816 620
868 699
920 759
/*1024 1024*/
>;
idle-cost-data = <
5
0
0
>;
};
CPU_COST_A53: core-cost1 {
busy-cost-data = <
33 4
83 23
166 41
221 54
332 78
399 92
465 116
503 135
535 162
567 184
599 224
631 279
>;
idle-cost-data = <
3
0
0
>;
};
CLUSTER_COST_A73: cluster-cost0 {
busy-cost-data = <
54 17
135 20
270 25
360 27
540 35
648 40
755 49
816 57
868 54
920 64
/*1024 79*/
>;
idle-cost-data = <
10
10
0
>;
};
CLUSTER_COST_A53: cluster-cost1 {
busy-cost-data = <
33 7
83 8
166 9
221 10
332 13
399 15
465 19
503 23
535 26
567 31
599 36
631 42
>;
idle-cost-data = <
6
6
0
>;
};
};
};

View File

@@ -13,7 +13,11 @@
816 620
868 699
920 759
/*1024 1024*/
972 819
1030 887
1088 937
1134 976
1192 1048
>;
idle-cost-data = <
5
@@ -33,6 +37,7 @@
503 135
535 162
567 184
599 224
631 279
>;
idle-cost-data = <
@@ -53,7 +58,11 @@
816 57
868 54
920 64
/*1024 79*/
972 75
1030 86
1088 97
1134 108
1192 110
>;
idle-cost-data = <
10
@@ -73,6 +82,7 @@
503 23
535 26
567 31
599 36
631 42
>;
idle-cost-data = <

View File

@@ -23,6 +23,7 @@
/ {
model = "Amlogic";
amlogic-dt-id = "g12b_skt_b";
compatible = "amlogic, g12b";
interrupt-parent = <&gic>;
#address-cells = <1>;
@@ -45,7 +46,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x7ff00000>;
linux,usable-memory = <0x0 0x80000000>;
};
reserved-memory {
@@ -58,8 +59,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
@@ -483,11 +483,11 @@
};
amlogic_codec:t9015{
#sound-dai-cells = <0>;
/*compatible = "amlogic, aml_codec_T9015";*/
compatible = "amlogic, aml_codec_T9015";
reg = <0xFF632000 0x2000>;
is_auge_used = <1>; /* meson or auge chipset used */
tdmout_index = <1>;
status = "disabled";
status = "okay";
};
audio_effect:eqdrc{
/*eq_enable = <1>;*/
@@ -567,7 +567,7 @@
};
tdmbcodec: codec {
sound-dai = <&dummy_codec &dummy_codec
&dummy_codec &ad82584f_62>;
&amlogic_codec &ad82584f_62>;
};
};
@@ -665,31 +665,31 @@
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <731000>;
opp-microvolt = <761000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <731000>;
opp-microvolt = <781000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <761000>;
opp-microvolt = <811000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <791000>;
opp-microvolt = <861000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <831000>;
opp-microvolt = <901000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <861000>;
opp-microvolt = <951000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <981000>;
opp-microvolt = <1001000>;
};
};
@@ -699,43 +699,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 = <751000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <771000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <771000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <781000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <791000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <831000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <861000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <911000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <951000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <1011000>;
};
};
@@ -893,8 +913,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -904,7 +926,7 @@
* 3: spdifout;
* 4: spdifout_b;
*/
samesource_sel = <4>;
/*samesource_sel = <4>; */
};
aml_tdmc: tdmc {
@@ -952,8 +974,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout &spdifin>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1184,6 +1208,13 @@
function = "spdif_out_ao";
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* gpiao_10 */
groups = "GPIOAO_10";
function = "gpio_aobus";
};
};
}; /* end of pinctrl_aobus */
&irblaster {

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>;
@@ -45,7 +46,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x000000 0x80000000>;
linux,usable-memory = <0x100000 0x7ff00000>;
};
reserved-memory {
@@ -58,8 +59,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
@@ -146,6 +146,18 @@
size = <0x04000000>;
alignment = <0x400000>;
};
galcore_reserved:linux,galcore {
compatible = "shared-dma-pool";
reusable;
size = <0x1000000>;
alignment = <0x400000>;
linux,contiguous-region;
};
};
galcore {
status = "okay";
memory-region = <&galcore_reserved>;
};
gpioleds {
@@ -234,6 +246,21 @@
status = "okay";
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
deinterlace {
compatible = "amlogic, deinterlace";
status = "okay";
@@ -633,31 +660,31 @@
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <731000>;
opp-microvolt = <761000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <731000>;
opp-microvolt = <781000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <761000>;
opp-microvolt = <811000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <791000>;
opp-microvolt = <861000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <831000>;
opp-microvolt = <901000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <861000>;
opp-microvolt = <951000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <981000>;
opp-microvolt = <1001000>;
};
};
@@ -667,43 +694,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 = <751000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <771000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <771000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <781000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <791000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <831000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <861000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <911000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <951000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <1011000>;
};
};
@@ -833,8 +880,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -892,8 +941,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout &spdifin>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1116,6 +1167,13 @@
function = "spdif_out_ao";
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* gpiao_10 */
groups = "GPIOAO_10";
function = "gpio_aobus";
};
};
}; /* end of pinctrl_aobus */
&irblaster {
@@ -1161,9 +1219,9 @@
/* "MMC_CAP_1_8V_DDR", */
"MMC_CAP_HW_RESET",
"MMC_CAP_ERASE",
"MMC_CAP_CMD23";
caps2 = "MMC_CAP2_HS200";
/* "MMC_CAP2_HS400";*/
"MMC_CAP_CMD23",
"MMC_CAP_DRIVER_TYPE_A";
caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400";
f_min = <400000>;
f_max = <200000000>;
};
@@ -1275,7 +1333,7 @@
&usb3_phy_v2 {
status = "okay";
portnum = <0>;
portnum = <1>;
otg = <1>;
gpio-vbus-power = "GPIOH_6";
gpios = <&gpio GPIOH_6 GPIO_ACTIVE_HIGH>;
@@ -1301,7 +1359,7 @@
&pcie_A {
reset-gpio = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>;
status = "okay";
status = "disable";
};
&saradc {

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>;
@@ -44,7 +45,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x7ff00000>;
linux,usable-memory = <0x0 0x80000000>;
};
reserved-memory {
@@ -57,8 +58,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
@@ -193,8 +193,6 @@
label="sys_led";
gpios=<&gpio_ao GPIOAO_11 GPIO_ACTIVE_HIGH>;
default-state ="on";
retain-state-suspended;
linux,default-trigger="cpu0";
};
};
@@ -261,6 +259,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -268,6 +274,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -730,31 +743,31 @@
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <731000>;
opp-microvolt = <761000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <731000>;
opp-microvolt = <781000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <761000>;
opp-microvolt = <811000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <791000>;
opp-microvolt = <861000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <831000>;
opp-microvolt = <901000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <861000>;
opp-microvolt = <951000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <981000>;
opp-microvolt = <1001000>;
};
};
@@ -764,43 +777,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 = <751000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <771000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <771000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <781000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <791000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <831000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <861000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <911000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <951000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <1011000>;
};
};
@@ -818,6 +851,8 @@
clocks = <&clkc CLKID_24M>;
clock-names = "g12a_24m";
reset = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>;
ir_cut_gpio = <&gpio GPIOZ_11 GPIO_ACTIVE_HIGH
&gpio GPIOZ_7 GPIO_ACTIVE_HIGH>;
};
iq: iq {
@@ -950,8 +985,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -1009,8 +1046,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout &spdifin>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1241,6 +1280,13 @@
function = "spdif_out_ao";
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* gpiao_10 */
groups = "GPIOAO_10";
function = "gpio_aobus";
};
};
}; /* end of pinctrl_aobus */
&irblaster {

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>;
@@ -44,7 +45,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x7ff00000>;
linux,usable-memory = <0x0 0x80000000>;
};
reserved-memory {
@@ -57,10 +58,8 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
compatible = "shared-dma-pool";
reusable;
@@ -159,8 +158,6 @@
label="sys_led";
gpios=<&gpio_ao GPIOAO_11 GPIO_ACTIVE_HIGH>;
default-state ="on";
retain-state-suspended;
linux,default-trigger="cpu0";
};
};
@@ -227,6 +224,14 @@
};
};
picdec_cma_reserved:linux,picdec {
compatible = "shared-dma-pool";
reusable;
size = <0x0>;
alignment = <0x0>;
linux,contiguous-region;
};
codec_mm {
compatible = "amlogic, codec, mm";
memory-region = <&codec_mm_cma &codec_mm_reserved>;
@@ -234,6 +239,13 @@
status = "okay";
};
picdec {
compatible = "amlogic, picdec";
memory-region = <&picdec_cma_reserved>;
dev_name = "picdec";
status = "okay";
};
ppmgr {
compatible = "amlogic, ppmgr";
memory-region = <&ppmgr_reserved>;
@@ -695,39 +707,31 @@
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <731000>;
opp-microvolt = <761000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <731000>;
opp-microvolt = <781000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <761000>;
opp-microvolt = <811000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <791000>;
opp-microvolt = <861000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <831000>;
opp-microvolt = <901000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <861000>;
opp-microvolt = <951000>;
};
opp10 {
opp-hz = /bits/ 64 <1896000000>;
opp-microvolt = <981000>;
};
opp11 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <1011000>;
};
opp12 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <1011000>;
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <1001000>;
};
};
@@ -737,54 +741,62 @@
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 = <751000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <771000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <771000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <781000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <791000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <1011000>;
opp-microvolt = <831000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <1011000>;
opp-microvolt = <861000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <911000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <951000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <1011000>;
};
};
@@ -864,8 +876,10 @@
dai-tdm-clk-sel = <1>;
clocks = <&clkaudio CLKID_AUDIO_MCLK_B
&clkc CLKID_MPLL1
&clkc CLKID_MPLL0>;
clock-names = "mclk", "clk_srcpll", "samesource_sysclk";
&clkc CLKID_MPLL0
&clkaudio CLKID_AUDIO_SPDIFOUT_CTRL>;
clock-names = "mclk", "clk_srcpll",
"samesource_srcpll", "samesource_clk";
pinctrl-names = "tdm_pins";
pinctrl-0 = <&tdmb_mclk &tdmout_b &tdmin_b>;
/*
@@ -923,8 +937,10 @@
<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "irq_spdifin";
pinctrl-names = "spdif_pins";
pinctrl-names = "spdif_pins",
"spdif_pins_mute";
pinctrl-0 = <&spdifout &spdifin>;
pinctrl-1 = <&spdifout_a_mute>;
status = "okay";
};
aml_spdif_b: spdif_b {
@@ -1147,6 +1163,13 @@
function = "spdif_out_ao";
};
};
spdifout_a_mute: spdifout_a_mute {
mux { /* gpiao_10 */
groups = "GPIOAO_10";
function = "gpio_aobus";
};
};
}; /* end of pinctrl_aobus */
&irblaster {

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_skt_b";
compatible = "amlogic, g12b";
interrupt-parent = <&gic>;
#address-cells = <1>;
@@ -37,7 +38,7 @@
memory@00000000 {
device_type = "memory";
linux,usable-memory = <0x100000 0x3ff00000>;
linux,usable-memory = <0x0 0x40000000>;
};
reserved-memory {
@@ -367,31 +368,31 @@
};
opp04 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <731000>;
opp-microvolt = <761000>;
};
opp05 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <731000>;
opp-microvolt = <781000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <761000>;
opp-microvolt = <811000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <791000>;
opp-microvolt = <861000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <831000>;
opp-microvolt = <901000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <861000>;
opp-microvolt = <951000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <981000>;
opp-microvolt = <1001000>;
};
};
@@ -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 = <751000>;
};
opp06 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <791000>;
opp-microvolt = <771000>;
};
opp07 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <821000>;
opp-microvolt = <771000>;
};
opp08 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <861000>;
opp-microvolt = <781000>;
};
opp09 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <891000>;
opp-microvolt = <791000>;
};
opp10 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <831000>;
};
opp11 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <861000>;
};
opp12 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <911000>;
};
opp13 {
opp-hz = /bits/ 64 <2100000000>;
opp-microvolt = <951000>;
};
opp14 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <1011000>;
};
};

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_skt_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>;
};
};

View File

@@ -56,9 +56,9 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
compatible = "shared-dma-pool";
reusable;

View File

@@ -56,8 +56,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
compatible = "shared-dma-pool";

View File

@@ -56,10 +56,8 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
compatible = "shared-dma-pool";
reusable;

View File

@@ -56,8 +56,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -56,8 +56,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -53,8 +53,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -55,8 +55,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -55,8 +55,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -55,8 +55,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -55,8 +55,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -51,8 +51,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -51,8 +51,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -56,8 +56,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
compatible = "shared-dma-pool";

View File

@@ -0,0 +1,68 @@
/ {
energy-costs {
CPU_COST_A53_HS: core-cost0 {
busy-cost-data = <
33 4
83 23
166 41
221 54
332 78
399 92
503 135
>;
idle-cost-data = <
3
0
0
>;
};
CPU_COST_A53: core-cost1 {
busy-cost-data = <
33 4
83 23
166 41
221 54
332 78
>;
idle-cost-data = <
3
0
0
>;
};
CLUSTER_COST_A53_HS: cluster-cost0 {
busy-cost-data = <
33 7
83 8
166 9
221 10
332 13
399 15
503 23
>;
idle-cost-data = <
6
6
0
>;
};
CLUSTER_COST_A53: cluster-cost1 {
busy-cost-data = <
33 7
83 8
166 9
221 10
332 13
>;
idle-cost-data = <
6
6
0
>;
};
};
};

View File

@@ -55,8 +55,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
compatible = "shared-dma-pool";

View File

@@ -54,8 +54,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -55,9 +55,8 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
};
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {
compatible = "shared-dma-pool";

View File

@@ -55,8 +55,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -55,8 +55,7 @@
reg = <0x07400000 0x00100000>;
record-size = <0x8000>;
console-size = <0x8000>;
ftrace-size = <0x0>;
pmsg-size = <0x8000>;
ftrace-size = <0x20000>;
};
secmon_reserved:linux,secmon {

View File

@@ -124,15 +124,10 @@
compatible = "amlogic, jtag";
status = "okay";
reg = <0xda004004 0x4>;
select = "apao"; /* disable apao apee */
jtagao-gpios = <&gpio_ao GPIOAO_8 0
&gpio_ao GPIOAO_9 0
&gpio_ao GPIOAO_10 0
&gpio_ao GPIOAO_11 0>;
jtagee-gpios = <&gpio CARD_0 0
&gpio CARD_1 0
&gpio CARD_2 0
&gpio CARD_3 0>;
select = "disable"; /* disable/apao/apee */
pinctrl-names="jtag_apao_pins", "jtag_apee_pins";
pinctrl-0=<&jtag_apao_pins>;
pinctrl-1=<&jtag_apee_pins>;
};
securitykey {
@@ -623,6 +618,15 @@
bias-pull-up;
};
};
jtag_apee_pins:jtag_apee_pin {
mux {
groups = "CARD_0",
"CARD_1",
"CARD_2",
"CARD_3";
function = "gpio_periphs";
};
};
};
pinctrl_aobus: pinctrl@c8100084 {
compatible = "amlogic,meson8b-aobus-pinctrl";
@@ -681,6 +685,15 @@
function = "spdif_2";
};
};
jtag_apao_pins:jtag_apao_pin {
mux {
groups = "GPIOAO_8",
"GPIOAO_9",
"GPIOAO_10",
"GPIOAO_11";
function = "gpio_aobus";
};
};
};
dwc2_b {
compatible = "amlogic,dwc2";

View File

@@ -631,7 +631,7 @@
"GPIOX_3",
"GPIOX_8",
"GPIOX_9";
function = "gpio";
function = "gpio_periphs";
};
};
@@ -653,7 +653,7 @@
"GPIOX_3",
"GPIOX_8",
"GPIOX_9";
function = "gpio";
function = "gpio_periphs";
};
};
@@ -676,7 +676,7 @@
"BOOT_7",
"BOOT_8",
"BOOT_10";
function = "gpio";
function = "gpio_periphs";
};
};
@@ -702,7 +702,7 @@
"BOOT_7",
"BOOT_8",
"BOOT_10";
function = "gpio";
function = "gpio_periphs";
};
};
};

View File

@@ -51,7 +51,7 @@
CPU0:cpu@0 {
device_type = "cpu";
compatible = "arm,cortex-a53","arm,armv8";
reg = <0x0 0x0>;
reg = <0x0>;
enable-method = "psci";
clocks = <&scpi_dvfs 0>;
clock-names = "cpu-cluster.0";
@@ -61,7 +61,7 @@
CPU1:cpu@1 {
device_type = "cpu";
compatible = "arm,cortex-a53","arm,armv8";
reg = <0x0 0x1>;
reg = <0x1>;
enable-method = "psci";
clocks = <&scpi_dvfs 0>;
clock-names = "cpu-cluster.0";
@@ -70,7 +70,7 @@
CPU2:cpu@2 {
device_type = "cpu";
compatible = "arm,cortex-a53","arm,armv8";
reg = <0x0 0x2>;
reg = <0x2>;
enable-method = "psci";
clocks = <&scpi_dvfs 0>;
clock-names = "cpu-cluster.0";
@@ -80,7 +80,7 @@
CPU3:cpu@3 {
device_type = "cpu";
compatible = "arm,cortex-a53","arm,armv8";
reg = <0x0 0x3>;
reg = <0x3>;
enable-method = "psci";
clocks = <&scpi_dvfs 0>;
clock-names = "cpu-cluster.0";
@@ -119,24 +119,19 @@
bit_mode=<12>;
bit_resolution=<0>;
};
arm_pmu {
compatible = "arm,cortex-a15-pmu";
interrupts = <0 137 4>;
reg = <0xff634400 0x1000>;
/* addr = base + offset << 2 */
sys_cpu_status0_offset = <0xa0>;
sys_cpu_status0_pmuirq_mask = <0xf>;
/* clusterb-enabled; */
interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
reg = <0xff634680 0x4>;
cpumasks = <0xf>;
/* default 10ms */
relax_timer_ns = <10000000>;
relax-timer-ns = <10000000>;
/* default 10000us */
max_wait_cnt = <10000>;
max-wait-cnt = <10000>;
};
gic: interrupt-controller@2c001000 {
compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
#interrupt-cells = <3>;
@@ -152,15 +147,14 @@
method = "smc";
};
meson_suspend:pm {
aml_pm {
compatible = "amlogic, pm";
device_name = "aml_pm";
status = "okay";
reg = <0xff8000a8 0x4>,
<0xff80023c 0x4>;
debug_reg = <0xff8000a8>;
exit_reg = <0xff80023c>;
};
secmon {
compatible = "amlogic, secmon";
memory-region = <&secmon_reserved>;
@@ -285,6 +279,18 @@
ram-dump {
compatible = "amlogic, ram_dump";
status = "okay";
reg = <0xFF6345E0 4>;
reg-names = "PREG_STICKY_REG8";
store_device = "data";
};
jtag {
compatible = "amlogic, jtag";
status = "okay";
select = "disable"; /* disable/apao/apee */
pinctrl-names="jtag_apao_pins", "jtag_apee_pins";
pinctrl-0=<&jtag_apao_pins>;
pinctrl-1=<&jtag_apee_pins>;
};
pinctrl_aobus: pinctrl@ff800014{
@@ -462,6 +468,16 @@
clock-names = "clk_i2c";
clock-frequency = <100000>;
};
irblaster: meson-irblaster@c0 {
compatible = "amlogic, aml_irblaster";
reg = <0xc0 0xc>,
<0x40 0x4>;
#irblaster-cells = <2>;
pinctrl-names = "default";
pinctrl-0 = <&irblaster_pins>;
status = "disabled";
};
};/* end of aobus */
periphs: periphs@ff634400 {
@@ -737,16 +753,6 @@
};
};
irblaster: meson-irblaster {
compatible = "amlogic, meson_irblaster";
reg = <0xff8000c0 0x10>,
<0xff800040 0x4>;
pinctrl-names = "default";
pinctrl-0 = <&irblaster_pins>;
interrupts = <0 198 1>;
status = "disabled";
};
saradc:saradc {
compatible = "amlogic,meson-axg-saradc";
status = "okay";
@@ -884,6 +890,16 @@
};
};
jtag_apao_pins:jtag_apao_pin {
mux {
groups = "jtag_ao_tdi",
"jtag_ao_tdo",
"jtag_ao_clk",
"jtag_ao_tms";
function = "jtag_ao";
};
};
}; /* end of pinctrl_aobus */
&pinctrl_periphs {
@@ -1145,5 +1161,15 @@
};
};
jtag_apee_pins:jtag_apee_pin {
mux {
groups = "jtag_tdo_x",
"jtag_tdi_x",
"jtag_clk_x",
"jtag_tms_x";
function = "jtag_ee";
};
};
}; /* end of pinctrl_periphs */

View File

@@ -155,21 +155,17 @@
bit_mode=<12>;
bit_resolution=<0>;
};
arm_pmu {
compatible = "arm,cortex-a15-pmu";
interrupts = <0 137 4>;
reg = <0xff634400 0x1000>;
/* addr = base + offset << 2 */
sys_cpu_status0_offset = <0xa0>;
sys_cpu_status0_pmuirq_mask = <0xf>;
/* clusterb-enabled; */
interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
reg = <0xff634680 0x4>;
cpumasks = <0xf>;
/* default 10ms */
relax_timer_ns = <10000000>;
relax-timer-ns = <10000000>;
/* default 10000us */
max_wait_cnt = <10000>;
max-wait-cnt = <10000>;
};
gic: interrupt-controller@2c001000 {
@@ -187,12 +183,12 @@
method = "smc";
};
meson_suspend:pm {
aml_pm {
compatible = "amlogic, pm";
status = "okay";
device_name = "aml_pm";
reg = <0xff8000a8 0x4>,
<0xff80023c 0x4>;
debug_reg = <0xff8000a8>;
exit_reg = <0xff80023c>;
};
secmon {
@@ -446,20 +442,18 @@
ram-dump {
compatible = "amlogic, ram_dump";
status = "okay";
reg = <0xFF6345E0 4>;
reg-names = "PREG_STICKY_REG8";
store_device = "data";
};
jtag {
compatible = "amlogic, jtag";
status = "okay";
select = "apao"; /* disable/apao/apee */
jtagao-gpios = <&gpio_ao GPIOAO_6 0
&gpio_ao GPIOAO_7 0
&gpio_ao GPIOAO_8 0
&gpio_ao GPIOAO_9 0>;
jtagee-gpios = <&gpio GPIOC_0 0
&gpio GPIOC_1 0
&gpio GPIOC_4 0
&gpio GPIOC_5 0>;
select = "disable"; /* disable/apao/apee */
pinctrl-names="jtag_apao_pins", "jtag_apee_pins";
pinctrl-0=<&jtag_apao_pins>;
pinctrl-1=<&jtag_apee_pins>;
};
saradc:saradc {
@@ -753,6 +747,17 @@
pinctrl-names = "default";
pinctrl-0 = <&ao_b_uart_pins>;
};
irblaster: meson-irblaster@14c {
compatible = "amlogic, meson_irblaster";
reg = <0x14c 0x10>,
<0x40 0x4>;
#irblaster-cells = <2>;
pinctrl-names = "default";
pinctrl-0 = <&irblaster_pins>;
interrupts = <GIC_SPI 198 IRQ_TYPE_EDGE_RISING>;
status = "disabled";
};
};/* end of aobus */
periphs: periphs@ff634400 {
@@ -1032,9 +1037,9 @@
interrupt-map-mask = <0 0 0 0>;
interrupt-map = <0 0 0 0 &gic GIC_SPI 223 IRQ_TYPE_EDGE_RISING>;
device_type = "pci";
ranges = <0x81000000 0 0 0 0xfc600000 0x0 0x100000
ranges = <0x81000000 0 0 0xfc600000 0x0 0x100000
/* downstream I/O */
0x82000000 0 0xfc700000 0x0 0xfc700000 0 0x1900000>;
0x82000000 0xfc700000 0x0 0xfc700000 0 0x1900000>;
/* non-prefetchable memory */
num-lanes = <1>;
pcie-num = <1>;
@@ -1079,6 +1084,7 @@
* 10:G12A
*/
ic_type = <10>;
dongle_mode = <0>;
vend_data: vend_data{ /* Should modified by Customer */
vendor_name = "Amlogic"; /* Max Chars: 8 */
/* standards.ieee.org/develop/regauth/oui/oui.txt */
@@ -1086,6 +1092,12 @@
};
};
amprime_sl:amprime_sl {
compatible = "amlogic, prime_sl_g12";
dev_name = "amprime_sl";
status = "disabled";
};
aocec: aocec {
compatible = "amlogic, aocec-g12a";
device_name = "aocec";
@@ -1329,15 +1341,6 @@
clocks = <&clkc CLKID_VPU_CLKC_MUX>;
clock-names = "vpu_clkc";
};
irblaster: meson-irblaster {
compatible = "amlogic, meson_irblaster";
reg = <0xff80014c 0x10>,
<0xff800040 0x4>;
pinctrl-names = "default";
pinctrl-0 = <&irblaster_pins>;
interrupts = <0 198 1>;
status = "okay";
};
sd_emmc_c: emmc@ffe07000 {
status = "disabled";
@@ -1372,7 +1375,7 @@
calc_f = <1>;
max_req_size = <0x20000>; /**128KB*/
gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>;
hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>;
hw_reset = <&gpio BOOT_12 GPIO_ACTIVE_HIGH>;
card_type = <1>;
/* 1:mmc card(include eMMC),
* 2:sd card(include tSD)
@@ -1820,6 +1823,12 @@
dev_name = "aml_sha_dma";
status = "okay";
};
aml_tdes {
compatible = "amlogic,tdes_dma";
dev_name = "aml_tdes_dma";
status = "okay";
};
};
rng {
@@ -1984,6 +1993,16 @@
function = "cec_ao";
};
};
jtag_apao_pins:jtag_apao_pin {
mux {
groups = "jtag_a_tdi",
"jtag_a_tdo",
"jtag_a_clk",
"jtag_a_tms";
function = "jtag_a";
};
};
};
&pinctrl_periphs {
@@ -2558,6 +2577,16 @@
drive-strength = <3>;
};
};
jtag_apee_pins:jtag_apee_pin {
mux {
groups = "jtag_b_tdi",
"jtag_b_tdo",
"jtag_b_clk",
"jtag_b_tms";
function = "jtag_b";
};
};
};
&pinctrl_aobus {

View File

@@ -107,3 +107,24 @@
};
};
&gpu{
/*gpu max freq is 850M*/
def_clk = <1>;
tbl = <&dvfs285_cfg &dvfs666_cfg &dvfs850_cfg &dvfs850_cfg>;
dvfs285_cfg:dvfs285_cfg {
keep_count = <2>;
threshold = <100 200>;
};
dvfs666_cfg:dvfs666_cfg {
keep_count = <1>;
threshold = <85 200>;
};
dvfs850_cfg:dvfs850_cfg {
keep_count = <1>;
threshold = <179 255>;
};
};

View File

@@ -34,8 +34,8 @@
"encl_top_gate",
"encl_int_gate",
"gp0_pll";
reg = <0x0 0xffd07000 0x0 0x400 /* dsi_host */
0x0 0xff644000 0x0 0x200>; /* dsi_phy */
reg = <0xffd07000 0x400 /* dsi_host */
0xff644000 0x200>; /* dsi_phy */
interrupts = <0 3 1
0 56 1>;
interrupt-names = "vsync","vsync2";

View File

@@ -196,7 +196,7 @@
};
timer {
compatible = "arm,armv8-timer";
compatible = "arm,armv7-timer";
interrupts = <GIC_PPI 13 0xff08>,
<GIC_PPI 14 0xff08>,
<GIC_PPI 11 0xff08>,
@@ -215,9 +215,19 @@
bit_mode=<12>;
bit_resolution=<0>;
};
arm_pmu {
compatible = "arm,armv8-pmuv3";
interrupts = <0 137 4>;
compatible = "arm,cortex-a15-pmu";
clusterb-enabled;
interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>;
reg = <0xff634680 0x4>,
<0xff6347c0 0x04>;
cpumasks = <0x3 0x3C>;
/* default 10ms */
relax-timer-ns = <10000000>;
/* default 10000us */
max-wait-cnt = <10000>;
};
gic: interrupt-controller@2c001000 {
@@ -235,12 +245,12 @@
method = "smc";
};
meson_suspend:pm {
aml_pm {
compatible = "amlogic, pm";
status = "okay";
device_name = "aml_pm";
reg = <0xff8000a8 0x4>,
<0xff80023c 0x4>;
debug_reg = <0xff8000a8>;
exit_reg = <0xff80023c>;
};
secmon {
@@ -311,6 +321,14 @@
#clock-cells = <0>;
};
rtc{
compatible = "amlogic, aml_vrtc";
alarm_reg_addr = <0xff8000a8>;
timer_e_addr = <0xffd0f188>;
init_date = "2019/01/01";
status = "okay";
};
cpu_info {
compatible = "amlogic, cpuinfo";
status = "okay";
@@ -484,6 +502,15 @@
clocks = <&xtal>;
};
jtag {
compatible = "amlogic, jtag";
status = "okay";
select = "disable"; /* disable/apao/apee */
pinctrl-names="jtag_apao_pins", "jtag_apee_pins";
pinctrl-0=<&jtag_apao_pins>;
pinctrl-1=<&jtag_apee_pins>;
};
saradc:saradc {
compatible = "amlogic,meson-g12a-saradc";
status = "disabled";
@@ -530,6 +557,14 @@
#thermal-sensor-cells = <1>;
};
ram-dump {
compatible = "amlogic, ram_dump";
status = "okay";
reg = <0xFF6345E0 4>;
reg-names = "PREG_STICKY_REG8";
store_device = "data";
};
soc {
compatible = "simple-bus";
#address-cells = <1>;
@@ -776,6 +811,15 @@
pinctrl-names = "default";
pinctrl-0 = <&ao_b_uart_pins>;
};
irblaster: meson-irblaster@14c {
compatible = "amlogic, meson_irblaster";
reg = <0x14c 0x10>,
<0x40 0x4>;
#irblaster-cells = <2>;
interrupts = <GIC_SPI 198 IRQ_TYPE_EDGE_RISING>;
status = "disabled";
};
};/* end of aobus */
periphs: periphs@ff634400 {
@@ -838,6 +882,29 @@
};
};/* end of audiobus*/
aml_dma {
compatible = "amlogic,aml_txlx_dma";
reg = <0xff63e000 0x48>;
interrupts = <0 180 1>;
aml_aes {
compatible = "amlogic,aes_g12a_dma";
dev_name = "aml_aes_dma";
status = "okay";
};
aml_sha {
compatible = "amlogic,sha_dma";
dev_name = "aml_sha_dma";
status = "okay";
};
aml_tdes {
compatible = "amlogic,tdes_dma";
dev_name = "aml_tdes_dma";
status = "okay";
};
};
}; /* end of soc*/
remote:rc@0xff808040 {
@@ -1112,6 +1179,12 @@
};
};
amprime_sl:amprime_sl {
compatible = "amlogic, prime_sl_g12";
dev_name = "amprime_sl";
status = "disabled";
};
galcore {
compatible = "amlogic, galcore";
dev_name = "galcore";
@@ -1120,7 +1193,7 @@
<&clkc CLKID_VNANOQ_CORE_CLK_COMP>;
clock-names = "cts_vipnanoq_axi_clk_composite",
"cts_vipnanoq_core_clk_composite";
interrupts = <0 147 1>;
interrupts = <0 147 4>;
interrupt-names = "galcore";
reg = <0xff100000 0x800
0xff000000 0x400000>;
@@ -1350,7 +1423,7 @@
};
rdma{
compatible = "amlogic, meson, rdma";
compatible = "amlogic, meson-g12b, rdma";
dev_name = "amlogic-rdma";
status = "okay";
interrupts = <0 89 1>;
@@ -1375,15 +1448,6 @@
clocks = <&clkc CLKID_VPU_CLKC_MUX>;
clock-names = "vpu_clkc";
};
irblaster: meson-irblaster {
compatible = "amlogic, meson_irblaster";
reg = <0xff80014c 0x10>,
<0xff800040 0x4>;
pinctrl-names = "default";
pinctrl-0 = <&irblaster_pins>;
interrupts = <0 198 1>;
status = "disabled";
};
sd_emmc_c: emmc@ffe07000 {
status = "disabled";
@@ -1396,9 +1460,9 @@
clocks = <&clkc CLKID_SD_EMMC_C>,
<&clkc CLKID_SD_EMMC_C_P0_COMP>,
<&clkc CLKID_FCLK_DIV2>,
<&clkc CLKID_FCLK_DIV5>,
<&clkc CLKID_FCLK_DIV2P5>,
<&xtal>;
clock-names = "core", "clkin0", "clkin1", "clkin2", "xtal";
clock-names = "core","clkin0","clkin1","clkin2","xtal";
bus-width = <8>;
cap-sd-highspeed;
@@ -1562,20 +1626,11 @@
node_name = "cpufreq_cool1";
device_type = "cpufreq";
};
cpucore_cool_cluster0 {
cpucore_cool_cluster {
min_state = <1>;
dyn_coeff = <0>;
cluster_id = <0>;
gpu_pp = <2>;
node_name = "cpucore_cool0";
device_type = "cpucore";
};
cpucore_cool_cluster1 {
min_state = <0>;
dyn_coeff = <0>;
cluster_id = <1>;
gpu_pp = <2>;
node_name = "cpucore_cool1";
node_name = "cpucore_cool";
device_type = "cpucore";
};
gpufreq_cool {
@@ -1601,10 +1656,7 @@
cpufreq_cool1:cpufreq_cool1 {
#cooling-cells = <2>; /* min followed by max */
};
cpucore_cool0:cpucore_cool0 {
#cooling-cells = <2>; /* min followed by max */
};
cpucore_cool1:cpucore_cool1 {
cpucore_cool:cpucore_cool {
#cooling-cells = <2>; /* min followed by max */
};
gpufreq_cool0:gpufreq_cool0 {
@@ -1656,14 +1708,9 @@
cooling-device = <&cpufreq_cool1 0 9>;
contribution = <1024>;
};
cpucore_cooling_map0 {
cpucore_cooling_map {
trip = <&pcontrol>;
cooling-device = <&cpucore_cool0 0 1>;
contribution = <1024>;
};
cpucore_cooling_map1 {
trip = <&pcontrol>;
cooling-device = <&cpucore_cool1 0 4>;
cooling-device = <&cpucore_cool 0 5>;
contribution = <1024>;
};
gpufreq_cooling_map {
@@ -1876,6 +1923,7 @@
reg-names = "adapter";
interrupts = <0 179 0>;
interrupt-names = "adapter-irq";
mem_alloc = <48>;
};
phycsi: phy-csi@ff650000 {
@@ -2037,6 +2085,16 @@
function = "pwm_a_gpioe";
};
};
jtag_apao_pins:jtag_apao_pin {
mux {
groups = "jtag_a_tdi",
"jtag_a_tdo",
"jtag_a_clk",
"jtag_a_tms";
function = "jtag_a";
};
};
};
&pinctrl_periphs {
@@ -2544,6 +2602,16 @@
function = "remote_out";
};
};
jtag_apee_pins:jtag_apee_pin {
mux {
groups = "jtag_b_tdi",
"jtag_b_tdo",
"jtag_b_clk",
"jtag_b_tms";
function = "jtag_b";
};
};
};
&gpu{

File diff suppressed because it is too large Load Diff

View File

@@ -134,19 +134,14 @@
arm_pmu {
compatible = "arm,cortex-a15-pmu";
interrupts = <0 137 4>;
reg = <0xc8834400 0x1000>;
/* addr = base + offset << 2 */
sys_cpu_status0_offset = <0xa0>;
sys_cpu_status0_pmuirq_mask = <0xf>;
/* clusterb-enabled; */
interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
reg = <0xc8834680 0x4>;
cpumasks = <0xf>;
/* default 10ms */
relax_timer_ns = <10000000>;
relax-timer-ns = <10000000>;
/* default 10000us */
max_wait_cnt = <10000>;
max-wait-cnt = <10000>;
};
gic: interrupt-controller@2c001000 {
@@ -164,11 +159,12 @@
method = "smc";
};
meson_suspend:pm{
aml_pm {
compatible = "amlogic, pm";
status = "okay";
device_name = "aml_pm";
reg = <0xc81000a8 0x4>,
<0xc810023c 0x4>;
debug_reg = <0xc81000a8>;
exit_reg = <0xc810023c>;
};
secmon {
@@ -250,20 +246,21 @@
ram-dump {
compatible = "amlogic, ram_dump";
status = "okay";
reg = <0xC88345E0 4>;
reg-names = "PREG_STICKY_REG8";
store_device = "data";
};
jtag {
compatible = "amlogic, jtag";
status = "okay";
select = "apao"; /* disable/apao/apee */
jtagao-gpios = <&gpio GPIOH_6 0
&gpio GPIOH_7 0
&gpio GPIOH_8 0
&gpio GPIOH_9 0>;
jtagee-gpios = <&gpio CARD_0 0
&gpio CARD_1 0
&gpio CARD_2 0
&gpio CARD_3 0>;
select = "disable"; /* disable/apao/apee */
/* both sets of jtags for the GXL platform */
/* are in the ee domain, this is named apao */
/* just to match the jtag driver */
pinctrl-names="jtag_apao_pins", "jtag_apee_pins";
pinctrl-0=<&jtag_a_pins>;
pinctrl-1=<&jtag_b_pins>;
};
mailbox: mhu@c883c400 {
@@ -527,6 +524,14 @@
clocks = <&clkc CLKID_I2C>;
clock-names = "clk_i2c";
};
irblaster: meson-irblaster@c0 {
compatible = "amlogic, aml_irblaster";
reg = <0xc0 0xc>,
<0x40 0x4>;
#irblaster-cells = <2>;
status = "disabled";
};
};
periphs: periphs@c8834000 {
@@ -639,6 +644,20 @@
function = "ee_cec";
};
};
irblaster_pins:irblaster_pin {
mux {
groups = "ir_out_ao7";
function = "ir_out";
};
};
irblaster_pins1:irblaster_pin1 {
mux {
groups = "ir_out_ao9";
function = "ir_out";
};
};
}; /* end of pinctrl_aobus*/
&pinctrl_periphs {
@@ -662,23 +681,23 @@
};
};
jtag_apao_pins:jtag_apao_pin {
jtag_a_pins:jtag_a_pin {
mux {
groups = "jtag_tdi_0",
"jtag_tdo_0",
"jtag_clk_0",
"jtag_tms_0";
function = "jtag";
groups = "GPIOH_6",
"GPIOH_7",
"GPIOH_8",
"GPIOH_9";
function = "gpio_periphs";
};
};
jtag_apee_pins:jtag_apee_pin {
jtag_b_pins:jtag_b_pin {
mux {
groups ="jtag_tdi_1",
"jtag_tdo_1",
"jtag_clk_1",
"jtag_tms_1";
function = "jtag";
groups = "CARD_0",
"CARD_1",
"CARD_2",
"CARD_3";
function = "gpio_periphs";
};
};

View File

@@ -115,7 +115,7 @@
};
timer {
compatible = "arm,armv8-timer";
compatible = "arm,armv7-timer";
interrupts = <GIC_PPI 13 0xff08>,
<GIC_PPI 14 0xff08>,
<GIC_PPI 11 0xff08>,
@@ -133,12 +133,17 @@
bit_mode=<12>;
bit_resolution=<0>;
};
arm_pmu {
compatible = "arm,armv8-pmuv3";
interrupts = <0 137 4>,
<0 138 4>,
<0 153 4>,
<0 154 4>;
compatible = "arm,cortex-a15-pmu";
/* clusterb-enabled; */
interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
reg = <0xc8834680 0x4>;
cpumasks = <0xf>;
/* default 10ms */
relax-timer-ns = <10000000>;
/* default 10000us */
max-wait-cnt = <10000>;
};
gic: interrupt-controller@2c001000 {
@@ -156,11 +161,12 @@
method = "smc";
};
meson_suspend:pm{
aml_pm {
compatible = "amlogic, pm";
status = "okay";
device_name = "aml_pm";
reg = <0xc81000a8 0x4
0xc810023c 0x4>;
debug_reg = <0xc81000a8>;
exit_reg = <0xc810023c>;
};
secmon {
@@ -235,15 +241,13 @@
jtag {
compatible = "amlogic, jtag";
status = "okay";
select = "apao"; /* disable/apao/apee */
jtagao-gpios = <&gpio GPIOH_6 0
&gpio GPIOH_7 0
&gpio GPIOH_8 0
&gpio GPIOH_9 0>;
jtagee-gpios = <&gpio CARD_0 0
&gpio CARD_1 0
&gpio CARD_2 0
&gpio CARD_3 0>;
select = "disable"; /* disable/apao/apee */
/* both sets of jtags for the GXL platform */
/* are in the ee domain, this is named apao */
/* just to match the jtag driver */
pinctrl-names="jtag_apao_pins", "jtag_apee_pins";
pinctrl-0=<&jtag_a_pins>;
pinctrl-1=<&jtag_b_pins>;
};
mailbox: mhu@c883c400 {
@@ -638,23 +642,23 @@
};
};
jtag_apao_pins:jtag_apao_pin {
jtag_a_pins:jtag_a_pin {
mux {
groups = "jtag_tdi_0",
"jtag_tdo_0",
"jtag_clk_0",
"jtag_tms_0";
function = "jtag";
groups = "GPIOH_6",
"GPIOH_7",
"GPIOH_8",
"GPIOH_9";
function = "gpio_periphs";
};
};
jtag_apee_pins:jtag_apee_pin {
jtag_b_pins:jtag_b_pin {
mux {
groups ="jtag_tdi_1",
"jtag_tdo_1",
"jtag_clk_1",
"jtag_tms_1";
function = "jtag";
groups = "CARD_0",
"CARD_1",
"CARD_2",
"CARD_3";
function = "gpio_periphs";
};
};

View File

@@ -26,6 +26,7 @@
#include <dt-bindings/pwm/pwm.h>
#include <dt-bindings/pwm/meson.h>
#include "mesongxm-gpu-t82x.dtsi"
#include "gxm-sched-energy.dtsi"
/ {
cpus:cpus {
#address-cells = <1>;
@@ -69,6 +70,8 @@
clocks = <&scpi_dvfs 0>;
clock-names = "cpu-cluster.0";
cpu-idle-states = <&SYSTEM_SLEEP_0>;
sched-energy-costs = <&CPU_COST_A53_HS
&CLUSTER_COST_A53_HS>;
/*
* cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0
* &SYSTEM_SLEEP_0>;
@@ -83,6 +86,8 @@
clocks = <&scpi_dvfs 0>;
clock-names = "cpu-cluster.0";
cpu-idle-states = <&SYSTEM_SLEEP_0>;
sched-energy-costs = <&CPU_COST_A53_HS
&CLUSTER_COST_A53_HS>;
/*
* cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0
* &SYSTEM_SLEEP_0>;
@@ -97,6 +102,8 @@
clocks = <&scpi_dvfs 0>;
clock-names = "cpu-cluster.0";
cpu-idle-states = <&SYSTEM_SLEEP_0>;
sched-energy-costs = <&CPU_COST_A53_HS
&CLUSTER_COST_A53_HS>;
/*
* cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0
* &SYSTEM_SLEEP_0>;
@@ -111,6 +118,8 @@
clocks = <&scpi_dvfs 0>;
clock-names = "cpu-cluster.0";
cpu-idle-states = <&SYSTEM_SLEEP_0>;
sched-energy-costs = <&CPU_COST_A53_HS
&CLUSTER_COST_A53_HS>;
/*
* cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0
* &SYSTEM_SLEEP_0>;
@@ -125,6 +134,8 @@
clocks = <&scpi_dvfs 1>;
clock-names = "cpu-cluster.1";
cpu-idle-states = <&SYSTEM_SLEEP_0>;
sched-energy-costs = <&CPU_COST_A53
&CLUSTER_COST_A53>;
/*
* cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0
* &SYSTEM_SLEEP_0>;
@@ -139,6 +150,8 @@
clocks = <&scpi_dvfs 1>;
clock-names = "cpu-cluster.1";
cpu-idle-states = <&SYSTEM_SLEEP_0>;
sched-energy-costs = <&CPU_COST_A53
&CLUSTER_COST_A53>;
/*
* cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0
* &SYSTEM_SLEEP_0>;
@@ -152,6 +165,8 @@
clocks = <&scpi_dvfs 1>;
clock-names = "cpu-cluster.1";
cpu-idle-states = <&SYSTEM_SLEEP_0>;
sched-energy-costs = <&CPU_COST_A53
&CLUSTER_COST_A53>;
/*
* cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0
* &SYSTEM_SLEEP_0>;
@@ -166,6 +181,8 @@
clocks = <&scpi_dvfs 1>;
clock-names = "cpu-cluster.1";
cpu-idle-states = <&SYSTEM_SLEEP_0>;
sched-energy-costs = <&CPU_COST_A53
&CLUSTER_COST_A53>;
/*
* cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0
* &SYSTEM_SLEEP_0>;
@@ -205,7 +222,7 @@
};
timer {
compatible = "arm,armv8-timer";
compatible = "arm,armv7-timer";
interrupts = <GIC_PPI 13 0xff08>,
<GIC_PPI 14 0xff08>,
<GIC_PPI 11 0xff08>,
@@ -223,12 +240,17 @@
bit_mode=<12>;
bit_resolution=<0>;
};
arm_pmu {
compatible = "arm,armv8-pmuv3";
interrupts = <0 137 4>,
<0 138 4>,
<0 153 4>,
<0 154 4>;
compatible = "arm,cortex-a15-pmu";
/* clusterb-enabled; */
interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
reg = <0xc8834680 0x4>;
cpumasks = <0xf>;
/* default 10ms */
relax-timer-ns = <10000000>;
/* default 10000us */
max-wait-cnt = <10000>;
};
gic: interrupt-controller@2c001000 {
@@ -258,14 +280,21 @@
ram-dump {
compatible = "amlogic, ram_dump";
status = "okay";
reg = <0xC88345E0 4>;
reg-names = "PREG_STICKY_REG8";
store_device = "data";
};
jtag {
compatible = "amlogic, jtag";
status = "disabled";
status = "okay";
select = "disable"; /* disable/apao/apee */
/* both sets of jtags for the GXM platform */
/* are in the ee domain, this is named apao */
/* just to match the jtag driver */
pinctrl-names = "jtag_apao_pins", "jtag_apee_pins";
pinctrl-0 = <&jtag_apao_pins>;
pinctrl-1 = <&jtag_apee_pins>;
pinctrl-0 = <&jtag_a_pins>;
pinctrl-1 = <&jtag_b_pins>;
};
psci {
@@ -273,11 +302,12 @@
method = "smc";
};
meson_suspend:pm{
aml_pm {
compatible = "amlogic, pm";
status = "okay";
device_name = "aml_pm";
reg = <0xc81000a8 0x4>,
<0xc810023c 0x4>;
debug_reg = <0xc81000a8>;
exit_reg = <0xc810023c>;
};
secmon {
@@ -601,6 +631,14 @@
clocks = <&clkc CLKID_I2C>;
clock-names = "clk_i2c";
};
irblaster: meson-irblaster@c0 {
compatible = "amlogic, aml_irblaster";
reg = <0xc0 0xc>,
<0x40 0x4>;
#irblaster-cells = <2>;
status = "disabled";
};
};
periphs: periphs@c8834000 {
@@ -706,6 +744,20 @@
function = "ee_cec";
};
};
irblaster_pins:irblaster_pin {
mux {
groups = "ir_out_ao7";
function = "ir_out";
};
};
irblaster_pins1:irblaster_pin1 {
mux {
groups = "ir_out_ao9";
function = "ir_out";
};
};
}; /* end of pinctrl_aobus*/
&pinctrl_periphs {
@@ -729,23 +781,23 @@
};
};
jtag_apao_pins:jtag_apao_pin {
jtag_a_pins:jtag_a_pin {
mux {
groups = "jtag_tdi_0",
"jtag_tdo_0",
"jtag_clk_0",
"jtag_tms_0";
function = "jtag";
groups = "GPIOH_6",
"GPIOH_7",
"GPIOH_8",
"GPIOH_9";
function = "gpio_periphs";
};
};
jtag_apee_pins:jtag_apee_pin {
jtag_b_pins:jtag_b_pin {
mux {
groups ="jtag_tdi_1",
"jtag_tdo_1",
"jtag_clk_1",
"jtag_tms_1";
function = "jtag";
groups = "CARD_0",
"CARD_1",
"CARD_2",
"CARD_3";
function = "gpio_periphs";
};
};

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,503 @@
/*
* arch/arm64/boot/dts/amlogic/mesong12a_skt-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, sm1";
dev_name = "lcd";
mode = "tablet";
status = "okay";
key_valid = <0>;
clocks = <&clkc CLKID_MIPI_DSI_HOST
&clkc CLKID_MIPI_DSI_PHY
&clkc CLKID_DSI_MEAS_COMP
&clkc CLKID_VCLK2_ENCL
&clkc CLKID_VCLK2_VENCL
&clkc CLKID_GP0_PLL>;
clock-names = "dsi_host_gate",
"dsi_phy_gate",
"dsi_meas",
"encl_top_gate",
"encl_int_gate",
"gp0_pll";
reg = <0xffd07000 0x400 /* dsi_host */
0xff644000 0x200>; /* dsi_phy */
interrupts = <0 3 1
0 56 1>;
interrupt-names = "vsync","vsync2";
pinctrl_version = <2>; /* for uboot */
/* 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 GPIOZ_9 GPIO_ACTIVE_HIGH
&gpio GPIOZ_8 GPIO_ACTIVE_HIGH>;
lcd_cpu_gpio_names = "GPIOZ_9","GPIOZ_8";
lcd_0{
model_name = "B080XAN01";
interface = "mipi";
basic_setting = <768 1024 /*h_active, v_active*/
948 1140 /*h_period, v_period*/
8 /*lcd_bits*/
119 159>; /*screen_widht, screen_height*/
lcd_timing = <64 56 0 /*hs_width, hs_bp, hs_pol*/
50 30 0>; /*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*/
64843200>; /*pixel_clk(unit in Hz)*/
mipi_attr = <4 /*lane_num*/
550 /*bit_rate_max(MHz)*/
0 /*factor(*100, default 0 for auto)*/
1 /*operation_mode_init(0=video, 1=command)*/
0 /*operation_mode_display(0=video, 1=command)*/
2 /*
*video_mode_type
*(0=sync_pulse,1=sync_event,2=burst)
*/
1 /*clk_always_hs(0=disable,1=enable)*/
0>; /*phy_switch(0=auto,1=standard,2=slow)*/
/* dsi_init: data_type, num, data... */
dsi_init_on = <0x05 1 0x11
0xff 20 /*delay(ms)*/
0x05 1 0x29
0xff 20 /*delay(ms)*/
0xff 0xff>; /*ending*/
dsi_init_off = <0x05 1 0x28
0xff 10 /*delay(ms)*/
0x05 1 0x10
0xff 10 /*delay(ms)*/
0xff 0xff>; /*ending*/
extern_init = <0xff>; /*0xff for invalid*/
/* power step: type, index, value, delay(ms) */
power_on_step = <
0 1 0 100
0 0 0 10
0 0 1 20
2 0 0 0
0xff 0 0 0>; /*ending*/
power_off_step = <
2 0 0 50
0 0 0 10
0 1 1 100
0xff 0 0 0>; /*ending*/
backlight_index = <0>;
};
lcd_1{
model_name = "P070ACB_FT";
interface = "mipi";
basic_setting = <600 1024 /*h_active, v_active*/
770 1070 /*h_period, v_period*/
8 /*lcd_bits*/
3 5>; /*screen_widht, screen_height*/
lcd_timing = <10 80 0 /*hs_width,hs_bp,hs_pol*/
6 20 0>; /*vs_width,vs_bp,vs_pol*/
clk_attr = <0 /*fr_adj_type(0=clock,1=htotal,2=vtotal)*/
0 /*clk_ss_level*/
1 /*clk_auto_generate*/
49434000>; /*pixel_clk(unit in Hz)*/
mipi_attr = <4 /*lane_num*/
400 /*bit_rate_max(MHz)*/
0 /*factor(*100, default 0 for auto)*/
1 /*operation_mode_init(0=video, 1=command)*/
0 /*operation_mode_display(0=video, 1=command)*/
2 /*
*video_mode_type
*(0=sync_pulse,1=sync_event,2=burst)
*/
0 /*clk_always_hs(0=disable,1=enable)*/
0>; /*phy_switch(0=auto,1=standard,2=slow)*/
/* dsi_init: data_type, num, data... */
dsi_init_on = <
0xff 10
0xf0 3 0 1 30 /* reset high, delay 30ms */
0xf0 3 0 0 10 /* reset low, delay 10ms */
0xf0 3 0 1 30 /* reset high, delay 30ms */
0xfc 2 0x04 3 /* check_reg, check_cnt */
0xff 0xff>; /* ending flag */
dsi_init_off = <0xff 0xff>; /* ending flag */
/* extern_init: 0xff for invalid */
extern_init = <5>;
/* power step: type,index,value,delay(ms) */
power_on_step = <
0 1 0 200 /* panel power on */
2 0 0 0
0xff 0 0 0>;
power_off_step = <
2 0 0 0
0 0 0 20 /* reset low */
0 1 1 100 /* panel power off */
0xff 0 0 0>;
backlight_index = <0>;
};
};
lcd_extern{
compatible = "amlogic, lcd_extern";
dev_name = "lcd_extern";
status = "okay";
i2c_bus = "i2c_bus_0";
key_valid = <0>;
extern_0{
index = <0>;
extern_name = "mipi_default";/*default*/
status = "okay";
type = <2>; /* 0=i2c, 1=spi, 2=mipi */
cmd_size = <0xff>;
init_on = <
0xff 10
0x05 1 0x11
0xff 120 /* delay 120ms */
0x05 1 0x29
0xff 0xff>; /*ending*/
init_off = <
0x05 1 0x28 /* display off */
0xff 10 /* delay 10ms */
0x05 1 0x10 /* sleep in */
0xff 150 /* delay 150ms */
0xff 0xff>; /*ending*/
};
extern_1{
index = <1>;
extern_name = "mipi_default";/*P070ACB_FT*/
status = "okay";
type = <2>; /* 0=i2c, 1=spi, 2=mipi */
cmd_size = <0xff>;
init_on = <
0x23 2 0xE0 0x00 /* Page 0 */
0x23 2 0xE1 0x93 /* PASSWORD */
0x23 2 0xE2 0x65
0x23 2 0xE3 0xF8
0x23 2 0x80 0x03
0x23 2 0xE0 0x01 /* Page 01 */
0x23 2 0x0C 0x74 /* Set PWRIC */
0x23 2 0x17 0x00 /* Set Gamma Power */
0x23 2 0x18 0xEF /* VGMP=5.1V */
0x23 2 0x19 0x00
0x23 2 0x1A 0x00
0x23 2 0x1B 0xEF /* VGMN=-5.1V */
0x23 2 0x1C 0x00
0x23 2 0x1F 0x70 /* Set Gate Power */
0x23 2 0x20 0x2D
0x23 2 0x21 0x2D
0x23 2 0x22 0x7E
0x23 2 0x26 0xF3 /* VDDD from IOVCC */
0x23 2 0x37 0x09 /* SetPanel */
0x23 2 0x38 0x04 /* SET RGBCYC */
0x23 2 0x39 0x00
0x23 2 0x3A 0x01
0x23 2 0x3C 0x90
0x23 2 0x3D 0xFF
0x23 2 0x3E 0xFF
0x23 2 0x3F 0xFF
0x23 2 0x40 0x02 /* Set TCON */
0x23 2 0x41 0x80
0x23 2 0x42 0x99
0x23 2 0x43 0x14
0x23 2 0x44 0x19
0x23 2 0x45 0x5A
0x23 2 0x4B 0x04
0x23 2 0x55 0x02 /* power voltage */
0x23 2 0x56 0x01
0x23 2 0x57 0x69
0x23 2 0x58 0x0A
0x23 2 0x59 0x0A
0x23 2 0x5A 0x2E /* VGH = 16.2V */
0x23 2 0x5B 0x19 /* VGL = -12V */
0x23 2 0x5C 0x15
0x23 2 0x5D 0x77 /* Gamma */
0x23 2 0x5E 0x56
0x23 2 0x5F 0x45
0x23 2 0x60 0x38
0x23 2 0x61 0x35
0x23 2 0x62 0x27
0x23 2 0x63 0x2D
0x23 2 0x64 0x18
0x23 2 0x65 0x33
0x23 2 0x66 0x34
0x23 2 0x67 0x35
0x23 2 0x68 0x56
0x23 2 0x69 0x45
0x23 2 0x6A 0x4F
0x23 2 0x6B 0x42
0x23 2 0x6C 0x40
0x23 2 0x6D 0x34
0x23 2 0x6E 0x25
0x23 2 0x6F 0x02
0x23 2 0x70 0x77
0x23 2 0x71 0x56
0x23 2 0x72 0x45
0x23 2 0x73 0x38
0x23 2 0x74 0x35
0x23 2 0x75 0x27
0x23 2 0x76 0x2D
0x23 2 0x77 0x18
0x23 2 0x78 0x33
0x23 2 0x79 0x34
0x23 2 0x7A 0x35
0x23 2 0x7B 0x56
0x23 2 0x7C 0x45
0x23 2 0x7D 0x4F
0x23 2 0x7E 0x42
0x23 2 0x7F 0x40
0x23 2 0x80 0x34
0x23 2 0x81 0x25
0x23 2 0x82 0x02
0x23 2 0xE0 0x02 /* Page2 */
0x23 2 0x00 0x53
/* GIP_L Pin mapping RESET_EVEN */
0x23 2 0x01 0x55 /* VSSG_EVEN */
0x23 2 0x02 0x55 /* VSSA_EVEN */
0x23 2 0x03 0x51 /* STV2_EVEN */
0x23 2 0x04 0x77 /* VDD2_EVEN */
0x23 2 0x05 0x57 /* VDD1_EVEN */
0x23 2 0x06 0x1F
0x23 2 0x07 0x4F /* CK12 */
0x23 2 0x08 0x4D /* CK10 */
0x23 2 0x09 0x1F
0x23 2 0x0A 0x4B /* CK8 */
0x23 2 0x0B 0x49 /* CK6 */
0x23 2 0x0C 0x1F
0x23 2 0x0D 0x47 /* CK4 */
0x23 2 0x0E 0x45 /* CK2 */
0x23 2 0x0F 0x41 /* STV1_EVEN */
0x23 2 0x10 0x1F
0x23 2 0x11 0x1F
0x23 2 0x12 0x1F
0x23 2 0x13 0x55 /* VGG */
0x23 2 0x14 0x1F
0x23 2 0x15 0x1F
0x23 2 0x16 0x52
/* GIP_R Pin mapping RESET_ODD */
0x23 2 0x17 0x55 /* VSSG_ODD */
0x23 2 0x18 0x55 /* VSSA_ODD */
0x23 2 0x19 0x50 /* STV2_ODD */
0x23 2 0x1A 0x77 /* VDD2_ODD */
0x23 2 0x1B 0x57 /* VDD1_ODD */
0x23 2 0x1C 0x1F
0x23 2 0x1D 0x4E /* CK11 */
0x23 2 0x1E 0x4C /* CK9 */
0x23 2 0x1F 0x1F
0x23 2 0x20 0x4A /* CK7 */
0x23 2 0x21 0x48 /* CK5 */
0x23 2 0x22 0x1F
0x23 2 0x23 0x46 /* CK3 */
0x23 2 0x24 0x44 /* CK1 */
0x23 2 0x25 0x40 /* STV1_ODD */
0x23 2 0x26 0x1F
0x23 2 0x27 0x1F
0x23 2 0x28 0x1F
0x23 2 0x29 0x1F
0x23 2 0x2A 0x1F
0x23 2 0x2B 0x55 /* VGG */
0x23 2 0x2C 0x12 /* GIP_L_GS Pin mapping */
0x23 2 0x2D 0x15
0x23 2 0x2E 0x15
0x23 2 0x2F 0x00
0x23 2 0x30 0x37
0x23 2 0x31 0x17
0x23 2 0x32 0x1F
0x23 2 0x33 0x08
0x23 2 0x34 0x0A
0x23 2 0x35 0x1F
0x23 2 0x36 0x0C
0x23 2 0x37 0x0E
0x23 2 0x38 0x1F
0x23 2 0x39 0x04
0x23 2 0x3A 0x06
0x23 2 0x3B 0x10
0x23 2 0x3C 0x1F
0x23 2 0x3D 0x1F
0x23 2 0x3E 0x1F
0x23 2 0x3F 0x15
0x23 2 0x40 0x1F
0x23 2 0x41 0x1F
0x23 2 0x42 0x13 /* GIP_R_GS Pin mapping */
0x23 2 0x43 0x15
0x23 2 0x44 0x15
0x23 2 0x45 0x01
0x23 2 0x46 0x37
0x23 2 0x47 0x17
0x23 2 0x48 0x1F
0x23 2 0x49 0x09
0x23 2 0x4A 0x0B
0x23 2 0x4B 0x1F
0x23 2 0x4C 0x0D
0x23 2 0x4D 0x0F
0x23 2 0x4E 0x1F
0x23 2 0x4F 0x05
0x23 2 0x50 0x07
0x23 2 0x51 0x11
0x23 2 0x52 0x1F
0x23 2 0x53 0x1F
0x23 2 0x54 0x1F
0x23 2 0x55 0x1F
0x23 2 0x56 0x1F
0x23 2 0x57 0x15
0x23 2 0x58 0x40 /* GIP Timing */
0x23 2 0x59 0x00
0x23 2 0x5A 0x00
0x23 2 0x5B 0x10
0x23 2 0x5C 0x14
0x23 2 0x5D 0x40
0x23 2 0x5E 0x01
0x23 2 0x5F 0x02
0x23 2 0x60 0x40
0x23 2 0x61 0x03
0x23 2 0x62 0x04
0x23 2 0x63 0x7A
0x23 2 0x64 0x7A
0x23 2 0x65 0x74
0x23 2 0x66 0x16
0x23 2 0x67 0xB4
0x23 2 0x68 0x16
0x23 2 0x69 0x7A
0x23 2 0x6A 0x7A
0x23 2 0x6B 0x0C
0x23 2 0x6C 0x00
0x23 2 0x6D 0x04
0x23 2 0x6E 0x04
0x23 2 0x6F 0x88
0x23 2 0x70 0x00
0x23 2 0x71 0x00
0x23 2 0x72 0x06
0x23 2 0x73 0x7B
0x23 2 0x74 0x00
0x23 2 0x75 0xBC
0x23 2 0x76 0x00
0x23 2 0x77 0x04
0x23 2 0x78 0x2C
0x23 2 0x79 0x00
0x23 2 0x7A 0x00
0x23 2 0x7B 0x00
0x23 2 0x7C 0x00
0x23 2 0x7D 0x03
0x23 2 0x7E 0x7B
0x23 2 0xE0 0x04 /* Page4 */
0x23 2 0x09 0x11 /* Set RGBCYC2 */
0x23 2 0x0E 0x48
0x23 2 0x2B 0x2B /* ESD Protect */
0x23 2 0x2E 0x44
0x23 2 0xE0 0x00 /* Page0 */
0x23 2 0xE6 0x02 /* Watch dog */
0x23 2 0xE7 0x0C
0x05 1 0x11 /* sleep out */
0xff 120
0x05 1 0x29 /* display on */
0x05 1 0x35
0xFF 20 /* delay(ms) */
0xFF 0xFF>; /*ending*/
init_off = <
0x05 1 0x28 /* display off */
0xff 10 /* delay 10ms */
0x05 1 0x10 /* sleep in */
0xff 150 /* delay 150ms */
0xff 0xff>; /*ending*/
};
};
backlight{
compatible = "amlogic, backlight-sm1";
dev_name = "backlight";
status = "okay";
key_valid = <0>;
pinctrl-names = "pwm_on","pwm_off";
pinctrl-0 = <&pwm_f_pins2>;
pinctrl-1 = <&bl_pwm_off_pins>;
pinctrl_version = <2>; /* for uboot */
bl_pwm_config = <&bl_pwm_conf>;
bl-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_HIGH
&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
bl_gpio_names = "GPIOH_4","GPIOH_5";
/* pwm port: PWM_A, PWM_B, PWM_C, PWM_D, PWM_E, PWM_F, PWM_VS*/
/* power index:(point gpios_index, 0xff=invalid)
* power value:(0=output low, 1=output high, 2=input)
* power delay:(unit in ms)
*/
backlight_0{
index = <0>;
bl_name = "backlight_pwm";
bl_level_default_uboot_kernel = <100 100>;
bl_level_attr = <255 10 /*max, min*/
128 128>; /*mid, mid_mapping*/
bl_ctrl_method = <1>; /* 1=pwm, 2=pwm_combo, 4=extern */
bl_power_attr = <0 /*en_gpio_index*/
1 0 /*on_value, off_value*/
200 200>; /*on_delay(ms), off_delay(ms)*/
bl_pwm_port = "PWM_F";
bl_pwm_attr = <0 /*pwm_method*/
180 /*pwm_freq(pwm:Hz, pwm_vs:multiple of vs)*/
100 25>; /*duty_max(%), duty_min(%)*/
bl_pwm_power = <1 1 /*pwm_gpio_index, pwm_gpio_off*/
10 10>; /*pwm_on_delay(ms), pwm_off_delay(ms)*/
bl_pwm_en_sequence_reverse = <0>; /* 1 for reverse */
};
backlight_1{
index = <1>;
bl_name = "bl_extern";
bl_level_default_uboot_kernel = <100 100>;
bl_level_attr = <255 10 /*max, min*/
128 128>; /*mid, mid_mapping*/
bl_ctrl_method = <4>; /*1=pwm, 2=pwm_combo, 4=extern*/
bl_power_attr = <1 /*en_gpio_index*/
1 0 /*on_value, off_value*/
200 200>; /*on_delay(ms), off_delay(ms)*/
bl_extern_index = <0>;
};
};
bl_pwm_conf:bl_pwm_conf{
pwm_channel_0 {
pwm_port_index = <5>;
pwms = <&pwm_ef MESON_PWM_1 30040 0>;
};
};
bl_extern{
compatible = "amlogic, bl_extern";
dev_name = "bl_extern";
status = "disabled";
i2c_bus = "i2c_bus_3";
extern_0{
index = <0>;
extern_name = "i2c_lp8556";
type = <0>; /*0=i2c, 1=spi, 2=mipi*/
i2c_address = <0x2c>; /*7bit i2c address*/
dim_max_min = <255 10>;
};
extern_1{
index = <1>;
extern_name = "mipi_lt070me05";
type = <2>; /*0=i2c, 1=spi, 2=mipi*/
dim_max_min = <255 10>;
};
};
};/* end of panel */

View File

@@ -1,92 +0,0 @@
/*
* arch/arm64/boot/dts/amlogic/mesontl1_pxp-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-tl1";
status = "okay";
mode = "tv";
fr_auto_policy = <0>; /* 0=disable, 1=60/50hz, 2=60/50/48hz */
key_valid = <0>;
clocks = <&clkc CLKID_VCLK2_ENCL
&clkc CLKID_VCLK2_VENCL
&clkc CLKID_TCON
&clkc CLKID_FCLK_DIV5
&clkc CLKID_TCON_PLL_COMP>;
clock-names = "encl_top_gate",
"encl_int_gate",
"tcon_gate",
"fclk_div5",
"clk_tcon";
reg = <0xff660000 0x8100
0xff634400 0x100>;
interrupts = <0 3 1
0 78 1
0 88 1>;
interrupt-names = "vsync","vbyone","tcon";
pinctrl_version = <2>; /* for uboot */
/* power type:(0=cpu_gpio, 2=signal, 3=extern, 0xff=ending) */
/* power index:(gpios_index, or extern_index, 0xff=invalid) */
/* power value:(0=output low, 1=output high, 2=input) */
/* power delay:(unit in ms) */
lvds_0{
model_name = "1080p-vfreq";
interface = "lvds"; /*lcd_interface(lvds, vbyone)*/
basic_setting = <
1920 1080 /*h_active, v_active*/
2200 1125 /*h_period, v_period*/
8 /*lcd_bits */
16 9>; /*screen_widht, screen_height*/
range_setting = <
2060 2650 /*h_period_min,max*/
1100 1480 /*v_period_min,max*/
120000000 160000000>; /*pclk_min,max*/
lcd_timing = <
44 148 0 /*hs_width, hs_bp, hs_pol*/
5 30 0>; /*vs_width, vs_bp, vs_pol*/
clk_attr = <
2 /*fr_adj_type
*(0=clk, 1=htotal, 2=vtotal, 3=auto_range,
* 4=hdmi_mode)
*/
0 /*clk_ss_level*/
1 /*clk_auto_generate*/
0>; /*pixel_clk(unit in Hz)*/
lvds_attr = <
1 /*lvds_repack*/
1 /*dual_port*/
0 /*pn_swap*/
0 /*port_swap*/
0>; /*lane_reverse*/
phy_attr=<
3 0 /*vswing_level, preem_level*/
0 0>; /*clk vswing_level, preem_level*/
/* power step: type, index, value, delay(ms) */
power_on_step = <
2 0 0 0 /*signal enable*/
0xff 0 0 0>; /*ending*/
power_off_step = <
2 0 0 10 /*signal disable*/
0xff 0 0 0>; /*ending*/
backlight_index = <0xff>;
};
}; /* end of lcd */
}; /* end of / */

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

@@ -0,0 +1,585 @@
/*
* arch/arm/boot/dts/amlogic/mesontm2_t962x3_ab309-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-tm2";
status = "okay";
mode = "tv";
fr_auto_policy = <0>; /* 0=disable, 1=60/50hz, 2=60/50/48hz */
key_valid = <0>;
clocks = <&clkc CLKID_VCLK2_ENCL
&clkc CLKID_VCLK2_VENCL
&clkc CLKID_TCON
&clkc CLKID_FCLK_DIV5
&clkc CLKID_TCON_PLL_COMP>;
clock-names = "encl_top_gate",
"encl_int_gate",
"tcon_gate",
"fclk_div5",
"clk_tcon";
reg = <0xff660000 0x8100
0xff634400 0x300>;
interrupts = <0 3 1
0 78 1
0 88 1>;
interrupt-names = "vsync","vbyone","tcon";
pinctrl-names = "vbyone","vbyone_off","tcon","tcon_off";
pinctrl-0 = <&lcd_vbyone_pins>;
pinctrl-1 = <&lcd_vbyone_off_pins>;
pinctrl-2 = <&lcd_tcon_pins>;
pinctrl-3 = <&lcd_tcon_off_pins>;
pinctrl_version = <2>; /* for uboot */
/* power type:(0=cpu_gpio, 2=signal, 3=extern, 0xff=ending) */
/* power index:(gpios_index, or extern_index, 0xff=invalid) */
/* power value:(0=output low, 1=output high, 2=input) */
/* power delay:(unit in ms) */
lvds_0{
model_name = "1080p-vfreq";
interface = "lvds"; /*lcd_interface(lvds, vbyone)*/
basic_setting = <
1920 1080 /*h_active, v_active*/
2200 1125 /*h_period, v_period*/
8 /*lcd_bits */
16 9>; /*screen_widht, screen_height*/
range_setting = <
2060 2650 /*h_period_min,max*/
1100 1480 /*v_period_min,max*/
120000000 160000000>; /*pclk_min,max*/
lcd_timing = <
44 148 0 /*hs_width, hs_bp, hs_pol*/
5 30 0>; /*vs_width, vs_bp, vs_pol*/
clk_attr = <
2 /*fr_adj_type
*(0=clk, 1=htotal, 2=vtotal, 3=auto_range,
* 4=hdmi_mode)
*/
0 /*clk_ss_level*/
1 /*clk_auto_generate*/
0>; /*pixel_clk(unit in Hz)*/
lvds_attr = <
1 /*lvds_repack*/
1 /*dual_port*/
0 /*pn_swap*/
0 /*port_swap*/
0>; /*lane_reverse*/
phy_attr=<0xf 0>; /*vswing_level, preem_level*/
/* power step: type, index, value, delay(ms) */
power_on_step = <
2 0 0 0 /*signal enable*/
0xff 0 0 0>; /*ending*/
power_off_step = <
2 0 0 10 /*signal disable*/
0xff 0 0 0>; /*ending*/
backlight_index = <0xff>;
};
lvds_1{
model_name = "1080p-hfreq_hdmi";
interface = "lvds"; /*lcd_interface(lvds, vbyone)*/
basic_setting = <
1920 1080 /*h_active, v_active*/
2200 1125 /*h_period, v_period*/
8 /*lcd_bits*/
16 9>; /*screen_widht, screen_height*/
range_setting = <
2080 2720 /*h_period min, max*/
1100 1380 /*v_period min, max*/
133940000 156000000>; /*pclk_min, max*/
lcd_timing = <
44 148 0 /*hs_width, hs_bp, hs_pol*/
5 30 0>; /*vs_width, vs_bp, vs_pol*/
clk_attr = <
4 /*fr_adj_type
*(0=clk, 1=htotal, 2=vtotal, 3=auto_range,
* 4=hdmi_mode)
*/
0 /*clk_ss_level */
1 /*clk_auto_generate*/
0>; /*pixel_clk(unit in Hz)*/
lvds_attr = <
1 /*lvds_repack*/
1 /*dual_port*/
0 /*pn_swap*/
0 /*port_swap*/
0>; /*lane_reverse*/
phy_attr=<0xf 0>; /*vswing_level, preem_level*/
/* power step: type, index, value, delay(ms) */
power_on_step = <
2 0 0 0 /*signal enable*/
0xff 0 0 0>; /*ending*/
power_off_step = <
2 0 0 10 /*signal disable*/
0xff 0 0 0>; /*ending*/
backlight_index = <0xff>;
};
vbyone_0{
model_name = "public_2region";
interface = "vbyone"; /*lcd_interface(lvds, vbyone)*/
basic_setting = <
3840 2160 /*h_active, v_active*/
4400 2250 /*h_period, v_period*/
10 /*lcd_bits */
16 9>; /*screen_widht, screen_height*/
range_setting = <
4240 4800 /*h_period_min, max*/
2200 2760 /*v_period_min, max*/
480000000 624000000>; /*pclk_min, max*/
lcd_timing = <
33 477 0 /*hs_width, hs_bp, hs_pol*/
6 65 0>; /*vs_width, vs_bp, vs_pol*/
clk_attr = <
2 /*fr_adj_type
*(0=clk, 1=htotal, 2=vtotal, 3=auto_range,
* 4=hdmi_mode)
*/
0 /*clk_ss_level*/
1 /*clk_auto_generate*/
0>; /*pixel_clk(unit in Hz)*/
vbyone_attr = <
8 /*lane_count*/
2 /*region_num*/
4 /*byte_mode*/
4>; /*color_fmt*/
vbyone_intr_enable = <
1 /*vbyone_intr_enable */
3>; /*vbyone_vsync_intr_enable*/
phy_attr=<0xf 1>; /* vswing_level, preem_level */
/* power step: type, index, value, delay(ms) */
power_on_step = <
2 0 0 10 /*signal enable*/
0xff 0 0 0>; /*ending*/
power_off_step = <
2 0 0 10 /*signal disable*/
0xff 0 0 0>; /*ending*/
backlight_index = <0xff>;
};
vbyone_1{
model_name = "public_1region";
interface = "vbyone"; /*lcd_interface(lvds, vbyone)*/
basic_setting = <
3840 2160 /*h_active, v_active*/
4400 2250 /*h_period, v_period*/
10 /*lcd_bits*/
16 9>; /*screen_widht, screen_height*/
range_setting = <
4240 4800 /*h_period_min, max*/
2200 2790 /*v_period_min, max*/
552000000 632000000>; /*pclk_min,max*/
lcd_timing = <
33 477 0 /*hs_width, hs_bp, hs_pol*/
6 65 0>; /*vs_width, vs_bp, vs_pol*/
clk_attr = <
2 /*fr_adj_type
*(0=clk, 1=htotal, 2=vtotal, 3=auto_range,
* 4=hdmi_mode)
*/
0 /*clk_ss_level*/
1 /*clk_auto_generate*/
0>; /*pixel_clk(unit in Hz)*/
vbyone_attr = <
8 /*lane_count*/
1 /*region_num*/
4 /*byte_mode*/
4>; /*color_fmt*/
vbyone_intr_enable = <
1 /*vbyone_intr_enable*/
3>; /*vbyone_vsync_intr_enable*/
phy_attr=<0xf 1>; /* vswing_level, preem_level */
/* power step: type, index, value, delay(ms) */
power_on_step = <
2 0 0 10 /*signal enable*/
0xff 0 0 0>; /*ending*/
power_off_step = <
2 0 0 10 /*signal disable*/
0xff 0 0 0>; /*ending*/
backlight_index = <0xff>;
};
p2p_0{
model_name = "p2p_ceds";
interface = "p2p"; /*lcd_interface
*(lvds, vbyone, minilvds, p2p)
*/
basic_setting = <
3840 2160 /*h_active, v_active*/
5000 2250 /*h_period, v_period*/
8 /*lcd_bits */
16 9>; /*screen_widht, screen_height*/
range_setting = <
4240 5100 /*h_period_min, max*/
2200 2760 /*v_period_min, max*/
480000000 624000000>; /*pclk_min, max*/
lcd_timing = <
16 29 0 /*hs_width, hs_bp, hs_pol*/
6 65 0>; /*vs_width, vs_bp, vs_pol*/
clk_attr = <
2 /*fr_adj_type
*(0=clk, 1=htotal, 2=vtotal, 3=auto_range,
* 4=hdmi_mode)
*/
0 /*clk_ss_level*/
1 /*clk_auto_generate*/
0>; /*pixel_clk(unit in Hz)*/
p2p_attr = <
0 /* teyp: 0=ceds, 1=cmpi, 2=isp, 3=epi,
* 10=chpi, 11=cspi, 12=usit
*/
12 /* channel_num */
0x76543210 /* channel_sel0 */
0xba98 /* channel_sel1 */
0 /* pn_swap */
0>; /* bit_swap */
phy_attr=<0xf 1>; /* vswing_level, preem_level */
/* power step: type, index, value, delay(ms) */
power_on_step = <
2 0 0 10 /*signal enable*/
0xff 0 0 0>; /*ending*/
power_off_step = <
2 0 0 10 /*signal disable*/
0xff 0 0 0>; /*ending*/
backlight_index = <0xff>;
};
p2p_1{
model_name = "p2p_ceds";
interface = "p2p"; /*lcd_interface
*(lvds, vbyone, minilvds, p2p)
*/
basic_setting = <
3840 2160 /*h_active, v_active*/
5000 2250 /*h_period, v_period*/
8 /*lcd_bits */
16 9>; /*screen_widht, screen_height*/
range_setting = <
4240 5100 /*h_period_min, max*/
2200 2760 /*v_period_min, max*/
480000000 624000000>; /*pclk_min, max*/
lcd_timing = <
16 29 0 /*hs_width, hs_bp, hs_pol*/
6 65 0>; /*vs_width, vs_bp, vs_pol*/
clk_attr = <
2 /*fr_adj_type
*(0=clk, 1=htotal, 2=vtotal, 3=auto_range,
* 4=hdmi_mode)
*/
0 /*clk_ss_level*/
1 /*clk_auto_generate*/
0>; /*pixel_clk(unit in Hz)*/
p2p_attr = <
0 /* teyp: 0=ceds, 1=cmpi, 2=isp, 3=epi,
* 10=chpi, 11=cspi, 12=usit
*/
6 /* channel_num */
0x76543210 /* channel_sel0 */
0xba98 /* channel_sel1 */
0 /* pn_swap */
0>; /* bit_swap */
phy_attr=<0xf 1>; /* vswing_level, preem_level */
/* power step: type, index, value, delay(ms) */
power_on_step = <
2 0 0 10 /*signal enable*/
0xff 0 0 0>; /*ending*/
power_off_step = <
2 0 0 10 /*signal disable*/
0xff 0 0 0>; /*ending*/
backlight_index = <0xff>;
};
p2p_2{
model_name = "p2p_chpi";
interface = "p2p"; /*lcd_interface
*(lvds, vbyone, minilvds, p2p)
*/
basic_setting = <
3840 2160 /*h_active, v_active*/
4400 2250 /*h_period, v_period*/
8 /*lcd_bits */
16 9>; /*screen_widht, screen_height*/
range_setting = <
4240 5100 /*h_period_min, max*/
2200 2760 /*v_period_min, max*/
480000000 624000000>; /*pclk_min, max*/
lcd_timing = <
16 29 0 /*hs_width, hs_bp, hs_pol*/
6 65 0>; /*vs_width, vs_bp, vs_pol*/
clk_attr = <
2 /*fr_adj_type
*(0=clk, 1=htotal, 2=vtotal, 3=auto_range,
* 4=hdmi_mode)
*/
0 /*clk_ss_level*/
1 /*clk_auto_generate*/
0>; /*pixel_clk(unit in Hz)*/
p2p_attr = <
10 /* teyp: 0=ceds, 1=cmpi, 2=isp, 3=epi,
* 10=chpi, 11=cspi, 12=usit
*/
6 /* channel_num */
0x76543210 /* channel_sel0 */
0xba98 /* channel_sel1 */
0 /* pn_swap */
0>; /* bit_swap */
phy_attr=<0xf 1>; /* vswing_level, preem_level */
/* power step: type, index, value, delay(ms) */
power_on_step = <
2 0 0 10 /*signal enable*/
0xff 0 0 0>; /*ending*/
power_off_step = <
2 0 0 10 /*signal disable*/
0xff 0 0 0>; /*ending*/
backlight_index = <0xff>;
};
p2p_3{
model_name = "p2p_chpi";
interface = "p2p"; /*lcd_interface
*(lvds, vbyone, minilvds, p2p)
*/
basic_setting = <
3840 2160 /*h_active, v_active*/
4400 2250 /*h_period, v_period*/
8 /*lcd_bits */
16 9>; /*screen_widht, screen_height*/
range_setting = <
4240 5100 /*h_period_min, max*/
2200 2760 /*v_period_min, max*/
480000000 624000000>; /*pclk_min, max*/
lcd_timing = <
16 29 0 /*hs_width, hs_bp, hs_pol*/
6 65 0>; /*vs_width, vs_bp, vs_pol*/
clk_attr = <
2 /*fr_adj_type
*(0=clk, 1=htotal, 2=vtotal, 3=auto_range,
* 4=hdmi_mode)
*/
0 /*clk_ss_level*/
1 /*clk_auto_generate*/
0>; /*pixel_clk(unit in Hz)*/
p2p_attr = <
10 /* teyp: 0=ceds, 1=cmpi, 2=isp, 3=epi,
* 10=chpi, 11=cspi, 12=usit
*/
12 /* channel_num */
0x76543210 /* channel_sel0 */
0xba98 /* channel_sel1 */
0 /* pn_swap */
0>; /* bit_swap */
phy_attr=<0xf 1>; /* vswing_level, preem_level */
/* power step: type, index, value, delay(ms) */
power_on_step = <
2 0 0 10 /*signal enable*/
0xff 0 0 0>; /*ending*/
power_off_step = <
2 0 0 10 /*signal disable*/
0xff 0 0 0>; /*ending*/
backlight_index = <0xff>;
};
mlvds_0{
model_name = "mlvds_1080p";
interface = "minilvds"; /*lcd_interface
*(lvds, vbyone, minilvds, p2p)
*/
basic_setting = <
1920 1080 /*h_active, v_active*/
2200 1125 /*h_period, v_period*/
8 /*lcd_bits */
16 9>; /*screen_widht, screen_height*/
range_setting = <
2080 2720 /*h_period_min, max*/
2200 1125 /*v_period_min, max*/
133940000 156000000>; /*pclk_min, max*/
lcd_timing = <
44 148 0 /*hs_width, hs_bp, hs_pol*/
5 30 0>; /*vs_width, vs_bp, vs_pol*/
clk_attr = <
2 /*fr_adj_type
*(0=clk, 1=htotal, 2=vtotal, 3=auto_range,
* 4=hdmi_mode)
*/
0 /*clk_ss_level*/
1 /*clk_auto_generate*/
0>; /*pixel_clk(unit in Hz)*/
minilvds_attr = <
6 /* channel_num */
0x76543210 /* channel_sel0 */
0xba98 /* channel_sel1 */
0x660 /* clk_phase */
0 /* pn_swap */
0>; /* bit_swap */
phy_attr=<0xf 0>; /* vswing_level, preem_level */
/* power step: type, index, value, delay(ms) */
power_on_step = <
2 0 0 10 /*signal enable*/
0xff 0 0 0>; /*ending*/
power_off_step = <
2 0 0 10 /*signal disable*/
0xff 0 0 0>; /*ending*/
backlight_index = <0xff>;
};
mlvds_1{
model_name = "mlvds_768p";
interface = "minilvds"; /*lcd_interface
*(lvds, vbyone, minilvds, p2p)
*/
basic_setting = <
1366 768 /*h_active, v_active*/
1560 806 /*h_period, v_period*/
8 /*lcd_bits */
16 9>; /*screen_widht, screen_height*/
range_setting = <
1460 2000 /*h_period_min, max*/
784 1015 /*v_period_min, max*/
50000000 85000000>; /*pclk_min, max*/
lcd_timing = <
56 64 0 /*hs_width, hs_bp, hs_pol*/
3 28 0>; /*vs_width, vs_bp, vs_pol*/
clk_attr = <
2 /*fr_adj_type
*(0=clk, 1=htotal, 2=vtotal, 3=auto_range,
* 4=hdmi_mode)
*/
0 /*clk_ss_level*/
1 /*clk_auto_generate*/
0>; /*pixel_clk(unit in Hz)*/
minilvds_attr = <
6 /* channel_num */
0x76543210 /* channel_sel0 */
0xba98 /* channel_sel1 */
0x660 /* clk_phase */
0 /* pn_swap */
0>; /* bit_swap */
phy_attr=<0xf 0>; /* vswing_level, preem_level */
/* power step: type, index, value, delay(ms) */
power_on_step = <
2 0 0 10 /*signal enable*/
0xff 0 0 0>; /*ending*/
power_off_step = <
2 0 0 10 /*signal disable*/
0xff 0 0 0>; /*ending*/
backlight_index = <0xff>;
};
};
lcd_extern{
compatible = "amlogic, lcd_extern";
status = "okay";
key_valid = <0>;
i2c_bus = "i2c_bus_1";
extern_0{
index = <0>;
extern_name = "ext_default";
status = "disabled";
type = <0>; /*0=i2c, 1=spi, 2=mipi*/
i2c_address = <0x1c>; /*7bit i2c_addr*/
i2c_address2 = <0xff>;
cmd_size = <0xff>; /*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_T5800Q";
status = "disabled";
type = <0>; /* 0=i2c, 1=spi, 2=mipi */
i2c_address = <0x1c>; /* 7bit i2c address */
};
extern_2{
index = <2>;
extern_name = "i2c_ANX6862_7911";
status = "okay";
type = <0>; /* 0=i2c, 1=spi, 2=mipi */
i2c_address = <0x20>; /* 7bit i2c address */
i2c_address2 = <0x74>; /* 7bit i2c address */
cmd_size = <0xff>;
init_on = <
0xc0 2 0x01 0x2b
0xc0 2 0x02 0x05
0xc0 2 0x03 0x00
0xc0 2 0x04 0x00
0xc0 2 0x05 0x0c
0xc0 2 0x06 0x04
0xc0 2 0x07 0x21
0xc0 2 0x08 0x0f
0xc0 2 0x09 0x04
0xc0 2 0x0a 0x00
0xc0 2 0x0b 0x04
0xc0 2 0xff 0x00
0xfd 1 100 /* delay 100ms */
0xc1 2 0x01 0xca
0xc1 2 0x02 0x3b
0xc1 2 0x03 0x33
0xc1 2 0x04 0x05
0xc1 2 0x05 0x2c
0xc1 2 0x06 0xf2
0xc1 2 0x07 0x9c
0xc1 2 0x08 0x1b
0xc1 2 0x09 0x82
0xc1 2 0x0a 0x3d
0xc1 2 0x0b 0x20
0xc1 2 0x0c 0x11
0xc1 2 0x0d 0xc4
0xc1 2 0x0e 0x1a
0xc1 2 0x0f 0x31
0xc1 2 0x10 0x4c
0xc1 2 0x11 0x12
0xc1 2 0x12 0x90
0xc1 2 0x13 0xf7
0xc1 2 0x14 0x0c
0xc1 2 0x15 0x20
0xc1 2 0x16 0x13
0xff 0>; /*ending*/
init_off = <0xff 0>; /*ending*/
};
};
}; /* end of / */

File diff suppressed because it is too large Load Diff

View File

@@ -79,7 +79,7 @@
CPU3:cpu@3 {
device_type = "cpu";
compatible = "arm,cortex-a53","arm,armv8";
reg = <0x0 0x3>;
reg = <0x3>;
enable-method = "psci";
clocks = <&scpi_dvfs 0>;
clock-names = "cpu-cluster.0";
@@ -134,19 +134,14 @@
arm_pmu {
compatible = "arm,cortex-a15-pmu";
interrupts = <0 137 4>;
reg = <0xff634400 0x1000>;
/* addr = base + offset << 2 */
sys_cpu_status0_offset = <0xa0>;
sys_cpu_status0_pmuirq_mask = <0xf>;
/* clusterb-enabled; */
interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
reg = <0xff634680 0x4>;
cpumasks = <0xf>;
/* default 10ms */
relax_timer_ns = <10000000>;
relax-timer-ns = <10000000>;
/* default 10000us */
max_wait_cnt = <10000>;
max-wait-cnt = <10000>;
};
gic: interrupt-controller@2c001000 {
@@ -164,13 +159,12 @@
method = "smc";
};
meson_suspend:pm {
aml_pm {
compatible = "amlogic, pm";
device_name = "aml_pm";
/*gxbaby-suspend;*/
status = "okay";
reg = <0xff8000a8 0x4>,
<0xff80023c 0x4>;
device_name = "aml_pm";
debug_reg = <0xff8000a8>;
exit_reg = <0xff80023c>;
};
secmon {
@@ -288,11 +282,18 @@
ram-dump {
compatible = "amlogic, ram_dump";
status = "okay";
reg = <0xFF6345E0 4>;
reg-names = "PREG_STICKY_REG8";
store_device = "data";
};
amlogic-jtag {
jtag {
compatible = "amlogic, jtag";
status = "okay";
select = "disable"; /* disable/apao/apee */
pinctrl-names="jtag_apao_pins", "jtag_apee_pins";
pinctrl-0=<&jtag_apao_pins>;
pinctrl-1=<&jtag_apee_pins>;
};
vpu {
@@ -839,12 +840,12 @@
status = "disabled";
};
meson-irblaster {
compatible = "amlogic, am_irblaster";
dev_name = "meson-irblaster";
status = "disable";
pinctrl-names = "default";
pinctrl-0 = <&irblaster_pins>;
irblaster: meson-irblaster@c0 {
compatible = "amlogic, aml_irblaster";
reg = <0xc0 0xc>,
<0x40 0x4>;
#irblaster-cells = <2>;
status = "disabled";
};
@@ -943,6 +944,13 @@
compatible = "amlogic, vdac-txlx";
status = "okay";
};
defendkey: defendkey {
compatible = "amlogic, defendkey";
reg = <0xff634500 0x4>; /*RNG_USR_DATA*/
mem_size = <0x0 0x100000>;
status = "okay";
};
}; /* end of / */
&pinctrl_aobus {
@@ -1022,6 +1030,13 @@
};
};
irblaster_pins1:irblaster_pin1 {
mux {
groups = "remote_out_ao6";
function = "ir_out";
};
};
pwmleds_pins:pwmleds {
mux {
@@ -1045,6 +1060,16 @@
function = "i2c_ao";
};
};
jtag_apao_pins:jtag_apao_pin {
mux {
groups = "GPIOAO_3",
"GPIOAO_4",
"GPIOAO_5",
"GPIOAO_7";
function = "gpio_aobus";
};
};
};
&pinctrl_periphs {
@@ -1385,6 +1410,16 @@
function = "pwm_d";
};
};
jtag_apee_pins:jtag_apee_pin {
mux {
groups = "GPIOC_0",
"GPIOC_1",
"GPIOC_2",
"GPIOC_3";
function = "gpio_periphs";
};
};
};
&gpu{

View File

@@ -678,7 +678,7 @@
};
backlight_4{
index = <4>;
bl_name = "ldim_iw7027";
bl_name = "ldim_global";
bl_level_default_uboot_kernel = <100 100>;
bl_level_attr = <255 10 /*max, min*/
128 128>; /*mid, mid_mapping*/
@@ -687,15 +687,15 @@
1 0 /*on_value, off_value*/
200 200>; /*on_delay(ms), off_delay(ms)*/
bl_ldim_region_row_col = <1 10>;
bl_ldim_mode = <1>; /*1=single_side
* (top, bottom, left or right),
*2=uniform(top/bottom, left/right)
bl_ldim_mode = <1>; /*0=left/right side
*1=top/bottom side
*2=direct
*/
ldim_dev_index = <2>;
ldim_dev_index = <1>;
};
backlight_5{
index = <5>;
bl_name = "ldim_global";
bl_name = "ldim_iw7027";
bl_level_default_uboot_kernel = <100 100>;
bl_level_attr = <255 10 /*max, min*/
128 128>; /*mid, mid_mapping*/
@@ -704,11 +704,11 @@
1 0 /*on_value, off_value*/
200 200>; /* on_delay(ms), off_delay(ms)*/
bl_ldim_region_row_col = <1 1>;
bl_ldim_mode = <1>; /*1=single_side
* (top, bottom, left or right),
*2=uniform(top/bottom, left/right)
bl_ldim_mode = <1>; /*0=left/right side
*1=top/bottom side
*2=direct
*/
ldim_dev_index = <1>;
ldim_dev_index = <2>;
};
};
@@ -728,54 +728,63 @@
status = "okay";
pinctrl-names = "ldim_pwm",
"ldim_pwm_vs",
"ldim_pwm_off";
"ldim_pwm_combo",
"ldim_pwm_vs_combo",
"ldim_pwm_off",
"ldim_pwm_combo_off";
pinctrl-0 = <&bl_pwm_on_pins>;
pinctrl-1 = <&bl_pwm_vs_on_pins>;
pinctrl-2 = <&bl_pwm_off_pins>;
pinctrl-2 = <&bl_pwm_on_pins &bl_pwm_combo_1_on_pins>;
pinctrl-3 = <&bl_pwm_vs_on_pins &bl_pwm_combo_1_on_pins>;
pinctrl-4 = <&bl_pwm_off_pins>;
pinctrl-5 = <&bl_pwm_combo_off_pins>;
pinctrl_version = <1>; /* for uboot */
ldim_pwm_config = <&bl_pwm_conf>;
/* pwm port: PWM_A, PWM_B, PWM_C, PWM_D, PWM_E, PWM_F, PWM_VS*/
ldim_dev-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH
&gpio GPIOZ_6 GPIO_ACTIVE_HIGH
&gpio GPIOZ_7 GPIO_ACTIVE_HIGH>;
ldim_dev_gpio_names = "GPIOZ_12","GPIOZ_6","GPIOZ_7";
&gpio GPIOZ_7 GPIO_ACTIVE_HIGH
&gpio GPIOZ_4 GPIO_ACTIVE_HIGH>;
ldim_dev_gpio_names = "GPIOZ_12","GPIOZ_6","GPIOZ_7","GPIOZ_4";
ldim_dev_0 {
index = <0>;
type = <0>; /*0=normal, 1=spi, 2=i2c*/
ldim_dev_name = "ob3350";
ldim_pwm_pinmux_sel = "ldim_pwm";
ldim_pwm_port = "PWM_B";
ldim_pwm_attr = <0 /* pol */
200 /*freq(pwm:Hz, pwm_vs:multiple of vs)*/
50>;/*duty(%)*/
dim_max_min = <100 20>; /*dim_max, dim_min*/
50>;/*default duty(%)*/
en_gpio_on_off = <0 /*ldim_dev-gpios index*/
1 0>; /*on_level, off_level*/
dim_max_min = <100 20>; /*dim_max, dim_min*/
};
ldim_dev_1 {
index = <1>;
type = <0>; /*0=normal, 1=spi, 2=i2c*/
ldim_dev_name = "global";
ldim_pwm_pinmux_sel = "ldim_pwm";
ldim_pwm_port = "PWM_B";
ldim_pwm_attr = <1 /* pol */
180 /*freq(pwm:Hz, pwm_vs:multiple of vs)*/
50>;/*duty(%)*/
dim_max_min = <100 20>; /*dim_max, dim_min*/
en_gpio_on_off = <2 /*ldim_dev-gpios index*/
50>;/*default duty(%)*/
analog_pwm_port = "PWM_C";
analog_pwm_attr = <1 /*pol(0=negative, 1=positvie)*/
18000 /*freq(pwm:Hz)*/
100 25 /*duty_max(%), duty_min(%)*/
80>; /*default duty(%)*/
en_gpio_on_off = <3 /*ldim_dev-gpios index*/
1 0>; /*on_level, off_level*/
dim_max_min = <100 20>; /*dim_max, dim_min*/
};
ldim_dev_2 {
index = <2>;
type = <1>; /* 0=normal,1=spi,2=i2c */
ldim_dev_name = "iw7027";
ldim_pwm_pinmux_sel = "ldim_pwm_vs";
ldim_pwm_port = "PWM_VS";
ldim_pwm_attr = <1 /* pol */
2 /*freq(pwm:Hz, pwm_vs:multiple of vs)*/
50>;/*duty(%)*/
50>;/*default duty(%)*/
spi_bus_num = <0>;
spi_chip_select = <0>;
spi_max_frequency = <1000000>; /* unit: hz */

View File

@@ -88,13 +88,13 @@
vendor_a:vendor_a
{
pname = "vendor_a";
size = <0x0 0x10000000>;
size = <0x0 0x14000000>;
mask = <1>;
};
vendor_b:vendor_b
{
pname = "vendor_b";
size = <0x0 0x10000000>;
size = <0x0 0x14000000>;
mask = <1>;
};
odm_a:odm_a

View File

@@ -120,13 +120,13 @@
vendor_a:vendor_a
{
pname = "vendor_a";
size = <0x0 0x10000000>;
size = <0x0 0x14000000>;
mask = <1>;
};
vendor_b:vendor_b
{
pname = "vendor_b";
size = <0x0 0x10000000>;
size = <0x0 0x14000000>;
mask = <1>;
};
odm_a:odm_a

View File

@@ -90,7 +90,7 @@
vendor:vendor
{
pname = "vendor";
size = <0x0 0x10000000>;
size = <0x0 0x14000000>;
mask = <1>;
};
odm:odm

View File

@@ -90,7 +90,7 @@
vendor:vendor
{
pname = "vendor";
size = <0x0 0x10000000>;
size = <0x0 0x14000000>;
mask = <1>;
};
odm:odm

Some files were not shown because too many files have changed in this diff Show More