diff --git a/arch/arm64/boot/dts/.gitignore b/arch/arm64/boot/dts/.gitignore deleted file mode 100644 index b60ed208c779e..0000000000000 --- a/arch/arm64/boot/dts/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*.dtb diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile index 8b2b7c1f0d55d..62d8177f0b902 100644 --- a/arch/arm64/boot/dts/Makefile +++ b/arch/arm64/boot/dts/Makefile @@ -1,12 +1,9 @@ -dtb-$(CONFIG_ARM64) += kvim_nougat.dtb \ +dtb-$(CONFIG_ARM64) += kvim_android.dtb \ + kvim_linux.dtb \ kvim_multios.dtb \ - kvim.dtb \ - kvim2_nougat.dtb \ - kvim2_dualos.dtb \ - kvim2_multios.dtb \ - kvim2_libreelec.dtb \ + kvim2_android.dtb \ kvim2_linux.dtb \ - kvim2.dtb + kvim2_multios.dtb targets += dtbs diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile deleted file mode 100644 index 1d819778d9556..0000000000000 --- a/arch/arm64/boot/dts/amlogic/Makefile +++ /dev/null @@ -1,14 +0,0 @@ - -targets += dtbs - -DTB_NAMES := $(subst $\",,$(CONFIG_BUILD_ARM64_APPENDED_DTB_IMAGE_NAMES)) -ifneq ($(DTB_NAMES),) -DTB_LIST := $(addsuffix .dtb,$(DTB_NAMES)) -else -DTB_LIST := $(dtb-y) -endif -targets += $(DTB_LIST) - -dtbs: $(addprefix $(obj)/, $(DTB_LIST)) - -clean-files := *.dtb diff --git a/arch/arm64/boot/dts/amlogic/gxbb_p200.dts b/arch/arm64/boot/dts/amlogic/gxbb_p200.dts deleted file mode 100644 index 6ef070006b1ab..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxbb_p200.dts +++ /dev/null @@ -1,1247 +0,0 @@ -/* - * Amlogic Ltd. GXBaby Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxbb.dtsi" -/ { - model = "Amlogic"; - amlogic-dt-id = "gxb_p200_1g"; - compatible = "amlogic, Gxbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - }; - - gpu_dvfs_tbl:gpu_dvfs_tbl { - sc_mpp = <3>;/* number of pp used most of time.*/ - tbl = <&clk285_cfg &clk400_cfg &clk500_cfg &clk666_cfg &clk800_cfg>; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x1900000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3133440=30M(0x1e) support 8bit **/ - size = <0x0 0x1e00000>; - //no-map; - multi-use; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - multi-use; - }; - - /* vdin0 */ -// vdin0_reserved:linux,vdin0 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* vdin1 */ -// vdin1_reserved:linux,vdin1 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* POST PROCESS MANAGER */ - //ppmgr_reserved:linux,ppmgr { - // compatible = "amlogic, ppmgr_memory"; - // size = <0x0 0x2000000>; - //}; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - status = "disabled"; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /*vm0_cma_reserved:linux,vm0_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x2000000>; - alignment = <0x0 0x400000>; - }; - vm1_cma_reserved:linux,vm1_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x2000000>; - alignment = <0x0 0x400000>; - };*/ - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - logo_addr = "0x3d851000"; - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000{ - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8>; - interrupts = <0 8 1>; - phy-mode= "rgmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <ð_pins>; - rst_pin-gpios = <&gpio GPIOZ_14 0>; - mc_val = <0x1621>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ion_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - buffer-size = <3133440>; - hw-version = <2>; - }; -/* vdin0 { - compatible = "amlogic, vdin"; - memory-region = <&vdin0_reserved>; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <0>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <1>; - };*/ - - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - /*vm0 { - compatible = "amlogic, vm"; - memory-region = <&vm0_cma_reserved>; - dev_name = "vm0"; - status = "okay"; - vm_id = <0>; - }; - - vm1 { - compatible = "amlogic, vm"; - memory-region = <&vm1_cma_reserved>; - dev_name = "vm1"; - status = "okay"; - vm_id = <1>; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "ok"; - gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - //power_low_level; - }; - bluesleep{ - compatible = "amlogic, bluesleep"; - dev_name = "bluesleep"; - status = "ok"; - interrupts = < 0 70 1>; - bt_port_id = < 1 >; - //bt_ext_wake = <&gpio GPIOX_22 GPIO_ACTIVE_HIGH>; - bt_host_wake = <&gpio GPIOX_21 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - dhd_static_buf; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel = ; - pwm_channel_conf = <30519 15260>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <200000000>; - tx_phase = <0>; - max_req_size = <0x20000>; /**256KB*/ -// gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - - sd{ - status = "okay"; - port = <1>; /**0:sdio_a, 1:sdio_b, 2:sdio_c, 3:sdhc_a, 4:sdhc_b, 5:sdhc_c */ - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER","MMC_CAP_SDIO_IRQ"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "ok"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "cam_gpio_a", "cam_gpio_b","cam_all"; - pinctrl-0 = <&cam_gpio_a> ; - pinctrl-1 = <&cam_gpio_b> ; - pinctrl-2 = <&cam_gpio_a &cam_gpio_b> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - bt_path_count = <2>; - vdin_path = <0>; - status = "okay"; - }; - cam_1{ - cam_name = "sp0838"; - front_back = <1>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_13 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio_b"; - bt_path_count = <2>; - vdin_path = <1>; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&instaboot>; - part-7 = <&boot>; - part-8 = <&system>; - part-9 = <&cache>; - part-10 = <&data>; - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - instaboot:instaboot{ - pname = "instaboot"; - size = <0x0 0x20000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x60000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11= <&keysn_11>; - unifykey-index-12= <&keysn_12>; - unifykey-index-13= <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "prpubkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "prprivkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - vend-data = <&vend_data>; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - /* hdcp14_en = <0x82000010>; */ - /* hdcp14_rslt = <0x82000011>; */ - gpio_i2c_en = <0x1>; - ranges; - #address-cells = <2>; - #size-cells = <2>; - vend_data: vend_data{ /* Should modified by Customer */ - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "MBox Meson Ref"; /* Max Chars: 16 */ - }; - }; - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - interrupts = <0 3 1>; - interrupt-names = "tvout_vsync"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc2_b { - compatible = "amlogic,dwc2"; - device_name = "dwc2_b"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <1>; /** lm name */ - clock-src = "usb1"; /** clock src */ - port-id = <1>; /** ref to mach/usb.h */ - port-type = <1>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, 1: high, 2: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <1>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - phy-reg = <0xc0000020>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - host-only-core = <1>; - pmu-apply-power = <1>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9000000 0x0 0x40000>; - interrupts = <0 30 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <1>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <1>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - gpio-vbus-power = "GPIODV_24"; - gpios = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - gpio-work-mask = <1>; /**0: work on pulldown,1:work on pullup*/ - phy-reg = <0xc0000000>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB0_TO_DDR - &clock GCLK_IDX_USB0>; - reset-names = "usb_general", - "usb0", - "usb0_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_3 0>; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>; /*"GPIOAO_3";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - - adc_keypad{ - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "menu", "vol-","vol+", "esc", "home"; - key_num = <5>; - key_code = <139 114 115 1 102>; - key_chan = <0 0 0 0 0>; - key_val = <0 143 271 393 510>; //voltage=0/252/478/692/824mV, val=voltage/1800mV*1023 - key_tolerance = <40 40 40 40 40>; - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>; - led_active_low = <1>; - }; - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - -/* - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - //"parallel","serial","disable" - ts0 = "parallel"; - ts0_control = <0>; - ts0_invert = <0>; - pinctrl-names = "p_ts0", "s_ts0"; - pinctrl-0 = <&dvb_p_ts0_pins>; - pinctrl-1 = <&dvb_s_ts0_pins>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - dtv_demod0 = "Mxl241"; - dtv_demod0_i2c_adap_id = <2>; - dtv_demod0_i2c_addr = <0x60>; - dtv_demod0_reset_value = <0>; - dtv_demod0_reset_gpio-gpios = <&gpio GPIOY_12 GPIO_ACTIVE_HIGH>; - fe0_dtv_demod = <0>; - fe0_ts = <0>; - fe0_dev = <0>; - }; -*/ -}; -&i2c_a { - status = "disabled"; - /*p200: multiplex with usb PWR, disbaled*/ -}; -/* -&i2c_b { - status = "okay"; -}; -*/ - -&i2c_slave { - status = "disabled"; -}; -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<1 0x200>; /*spdif_out*/ - amlogic,clrmask=<1 0x10000>; /*spdif_out*/ - amlogic,pins ="GPIOY_12"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<3 0x78000000>; - amlogic,clrmask=<3 0x803280 - 4 0xc0>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; - -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxbb_p200_1G_wetek_hub.dts b/arch/arm64/boot/dts/amlogic/gxbb_p200_1G_wetek_hub.dts deleted file mode 100644 index 08a9f341a1212..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxbb_p200_1G_wetek_hub.dts +++ /dev/null @@ -1,1218 +0,0 @@ -/* - * Amlogic Ltd. GXBaby Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include "mesongxbb.dtsi" -/ { - model = "Amlogic"; - amlogic-dt-id = "gxb_p200_1g"; - compatible = "amlogic, Gxbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - }; - - gpu_dvfs_tbl:gpu_dvfs_tbl { - sc_mpp = <3>;/* number of pp used most of time.*/ - tbl = <&clk285_cfg &clk400_cfg &clk500_cfg &clk666_cfg &clk800_cfg>; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x1900000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - size = <0x0 0x1e00000>; //10x1920x1088x3/2=30M - //no-map; - multi-use; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - multi-use; - }; - - /* vdin0 */ -// vdin0_reserved:linux,vdin0 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* vdin1 */ -// vdin1_reserved:linux,vdin1 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* POST PROCESS MANAGER */ - //ppmgr_reserved:linux,ppmgr { - // compatible = "amlogic, ppmgr_memory"; - // size = <0x0 0x2000000>; - //}; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - status = "disabled"; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /*vm0_cma_reserved:linux,vm0_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x2000000>; - alignment = <0x0 0x400000>; - }; - vm1_cma_reserved:linux,vm1_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x2000000>; - alignment = <0x0 0x400000>; - };*/ - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000{ - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8>; - interrupts = <0 8 1>; - phy-mode= "rgmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <ð_pins>; - rst_pin-gpios = <&gpio GPIOZ_14 0>; - mc_val = <0x1621>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - }; - - pwm { - compatible = "amlogic, gx-pwm"; - status = "okay"; - pwm-outputs = <0>,<1>,<2>,<3>,<4>,<5>,<6>,<7>; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = <0x0>,<0x0>,<0x0>,<0x0>,<0x3>,<0x0>,<0x0>,<0x0>; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ion_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - buffer-size = <3133440>; //1920x1088x3/2 - hw-version = <2>; - }; -/* vdin0 { - compatible = "amlogic, vdin"; - memory-region = <&vdin0_reserved>; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <0>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <1>; - };*/ - - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - /*vm0 { - compatible = "amlogic, vm"; - memory-region = <&vm0_cma_reserved>; - dev_name = "vm0"; - status = "okay"; - vm_id = <0>; - }; - - vm1 { - compatible = "amlogic, vm"; - memory-region = <&vm1_cma_reserved>; - dev_name = "vm1"; - status = "okay"; - vm_id = <1>; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "ok"; - gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - //power_low_level; - }; - bluesleep{ - compatible = "amlogic, bluesleep"; - dev_name = "bluesleep"; - status = "ok"; - interrupts = < 0 70 1>; - bt_port_id = < 1 >; - //bt_ext_wake = <&gpio GPIOX_22 GPIO_ACTIVE_HIGH>; - bt_host_wake = <&gpio GPIOX_21 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - dhd_static_buf; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - - sd{ - status = "okay"; - port = <1>; /**0:sdio_a, 1:sdio_b, 2:sdio_c, 3:sdhc_a, 4:sdhc_b, 5:sdhc_c */ - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <200000000>; - tx_phase = <0>; - max_req_size = <0x20000>; /**256KB*/ -// gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "ok"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "cam_gpio_a", "cam_gpio_b","cam_all"; - pinctrl-0 = <&cam_gpio_a> ; - pinctrl-1 = <&cam_gpio_b> ; - pinctrl-2 = <&cam_gpio_a &cam_gpio_b> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - bt_path_count = <2>; - vdin_path = <0>; - status = "okay"; - }; - cam_1{ - cam_name = "sp0838"; - front_back = <1>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_13 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio_b"; - bt_path_count = <2>; - vdin_path = <1>; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&instaboot>; - part-7 = <&boot>; - part-8 = <&system>; - part-9 = <&cache>; - part-10 = <&data>; - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - instaboot:instaboot{ - pname = "instaboot"; - size = <0x0 0x20000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11= <&keysn_11>; - unifykey-index-12= <&keysn_12>; - unifykey-index-13= <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "prpubkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "prprivkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - /* hdcp14_en = <0x82000010>; */ - /* hdcp14_rslt = <0x82000011>; */ - gpio_i2c_en = <0x1>; - ranges; - #address-cells = <2>; - #size-cells = <2>; - }; - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - status = "okay"; - vendor_name = "WeTek"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "WeTek Hub"; /* Max Chars: 16 */ - cec_osd_string = "Hub"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc2_b { - compatible = "amlogic,dwc2"; - device_name = "dwc2_b"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <1>; /** lm name */ - clock-src = "usb1"; /** clock src */ - port-id = <1>; /** ref to mach/usb.h */ - port-type = <1>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, 1: high, 2: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <1>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - phy-reg = <0xc0000020>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - host-only-core = <1>; - pmu-apply-power = <1>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9000000 0x0 0x40000>; - interrupts = <0 30 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <0>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - gpio-vbus-power = "GPIODV_24"; - gpios = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - gpio-work-mask = <1>; /**0: work on pulldown,1:work on pullup*/ - phy-reg = <0xc0000000>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB0_TO_DDR - &clock GCLK_IDX_USB0>; - reset-names = "usb_general", - "usb0", - "usb0_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - device_name = "dummy-spdif-dit.0"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_3 0>; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>; /*"GPIOAO_3";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - - adc_keypad{ - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "menu", "vol-","vol+", "esc", "home"; - key_num = <5>; - key_code = <139 114 115 1 102>; - key_chan = <0 0 0 0 0>; - key_val = <0 143 271 393 510>; //voltage=0/252/478/692/824mV, val=voltage/1800mV*1023 - key_tolerance = <40 40 40 40 40>; - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>; - led_active_low = <1>; - }; - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - -/* - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - //"parallel","serial","disable" - ts0 = "parallel"; - ts0_control = <0>; - ts0_invert = <0>; - pinctrl-names = "p_ts0", "s_ts0"; - pinctrl-0 = <&dvb_p_ts0_pins>; - pinctrl-1 = <&dvb_s_ts0_pins>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - dtv_demod0 = "Mxl241"; - dtv_demod0_i2c_adap_id = <2>; - dtv_demod0_i2c_addr = <0x60>; - dtv_demod0_reset_value = <0>; - dtv_demod0_reset_gpio-gpios = <&gpio GPIOY_12 GPIO_ACTIVE_HIGH>; - fe0_dtv_demod = <0>; - fe0_ts = <0>; - fe0_dev = <0>; - }; -*/ -}; -&i2c_a { - status = "disabled"; - /*p200: multiplex with usb PWR, disbaled*/ -}; -/* -&i2c_b { - status = "okay"; -}; -*/ - -&i2c_slave { - status = "disabled"; -}; -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=; /*spdif_out*/ - amlogic,clrmask=; /*spdif_out*/ - amlogic,pins ="GPIOAO_6"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<3 0x78000000>; - amlogic,clrmask=<3 0x803280 - 4 0xc0>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; - -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; -&meson_ir { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxbb_p200_2G.dts b/arch/arm64/boot/dts/amlogic/gxbb_p200_2G.dts deleted file mode 100644 index f95293e84a353..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxbb_p200_2G.dts +++ /dev/null @@ -1,1208 +0,0 @@ -/* - * Amlogic Ltd. GXBaby Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxbb.dtsi" -/ { - model = "Amlogic"; - amlogic-dt-id = "gxb_p200_2g"; - compatible = "amlogic, Gxbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - }; - - gpu_dvfs_tbl:gpu_dvfs_tbl { - sc_mpp = <3>;/* number of pp used most of time.*/ - tbl = <&clk285_cfg &clk400_cfg &clk500_cfg &clk666_cfg &clk800_cfg>; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x7f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x1900000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3133440=30M(0x1e) support 8bit **/ - size = <0x0 0x1e00000>; - //no-map; - multi-use; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - multi-use; - }; - - /* vdin0 */ -// vdin0_reserved:linux,vdin0 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* vdin1 */ -// vdin1_reserved:linux,vdin1 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* POST PROCESS MANAGER */ - //ppmgr_reserved:linux,ppmgr { - // compatible = "amlogic, ppmgr_memory"; - // size = <0x0 0x2000000>; - //}; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - status = "disabled"; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /*vm0_cma_reserved:linux,vm0_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x2000000>; - alignment = <0x0 0x400000>; - }; - vm1_cma_reserved:linux,vm1_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x2000000>; - alignment = <0x0 0x400000>; - };*/ - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - logo_addr = "0x7d851000"; - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000{ - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8>; - interrupts = <0 8 1>; - phy-mode= "rgmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <ð_pins>; - rst_pin-gpios = <&gpio GPIOZ_14 0>; - mc_val = <0x1621>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ion_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - buffer-size = <3133440>; - hw-version = <2>; - }; -/* vdin0 { - compatible = "amlogic, vdin"; - memory-region = <&vdin0_reserved>; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <0>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <1>; - };*/ - - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - /*vm0 { - compatible = "amlogic, vm"; - memory-region = <&vm0_cma_reserved>; - dev_name = "vm0"; - status = "okay"; - vm_id = <0>; - }; - - vm1 { - compatible = "amlogic, vm"; - memory-region = <&vm1_cma_reserved>; - dev_name = "vm1"; - status = "okay"; - vm_id = <1>; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "ok"; - gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - dhd_static_buf; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel = ; - pwm_channel_conf = <30519 15260>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <200000000>; - tx_phase = <0>; - max_req_size = <0x20000>; /**256KB*/ - // gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - - sd{ - status = "okay"; - port = <1>; /**0:sdio_a, 1:sdio_b, 2:sdio_c, 3:sdhc_a, 4:sdhc_b, 5:sdhc_c */ - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER","MMC_CAP_SDIO_IRQ"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "ok"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "cam_gpio_a", "cam_gpio_b","cam_all"; - pinctrl-0 = <&cam_gpio_a> ; - pinctrl-1 = <&cam_gpio_b> ; - pinctrl-2 = <&cam_gpio_a &cam_gpio_b> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - bt_path_count = <2>; - vdin_path = <0>; - status = "okay"; - }; - cam_1{ - cam_name = "sp0838"; - front_back = <1>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_13 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio_b"; - bt_path_count = <2>; - vdin_path = <1>; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&instaboot>; - part-7 = <&boot>; - part-8 = <&system>; - part-9 = <&cache>; - part-10 = <&data>; - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - instaboot:instaboot{ - pname = "instaboot"; - size = <0x0 0x20000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x60000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <11>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - /* hdcp14_en = <0x82000010>; */ - /* hdcp14_rslt = <0x82000011>; */ - gpio_i2c_en = <0x1>; - ranges; - #address-cells = <2>; - #size-cells = <2>; - }; - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc2_b { - compatible = "amlogic,dwc2"; - device_name = "dwc2_b"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <1>; /** lm name */ - clock-src = "usb1"; /** clock src */ - port-id = <1>; /** ref to mach/usb.h */ - port-type = <1>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, 1: high, 2: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <1>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - phy-reg = <0xc0000020>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - host-only-core = <1>; - pmu-apply-power = <1>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9000000 0x0 0x40000>; - interrupts = <0 30 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <1>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <1>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - gpio-vbus-power = "GPIODV_24"; - gpios = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - gpio-work-mask = <1>; /**0: work on pulldown,1:work on pullup*/ - phy-reg = <0xc0000000>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB0_TO_DDR - &clock GCLK_IDX_USB0>; - reset-names = "usb_general", - "usb0", - "usb0_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_3 0>; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>; /*"GPIOAO_3";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - adc_keypad{ - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "menu", "vol-","vol+", "esc", "home"; - key_num = <5>; - key_code = <139 114 115 1 102>; - key_chan = <0 0 0 0 0>; - key_val = <0 143 271 393 510>; //voltage=0/252/478/692/824mV, val=voltage/1800mV*1023 - key_tolerance = <40 40 40 40 40>; - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>; - led_active_low = <1>; - }; - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - -/* - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - //"parallel","serial","disable" - ts0 = "parallel"; - ts0_control = <0>; - ts0_invert = <0>; - pinctrl-names = "p_ts0", "s_ts0"; - pinctrl-0 = <&dvb_p_ts0_pins>; - pinctrl-1 = <&dvb_s_ts0_pins>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - dtv_demod0 = "Mxl241"; - dtv_demod0_i2c_adap_id = <2>; - dtv_demod0_i2c_addr = <0x60>; - dtv_demod0_reset_value = <0>; - dtv_demod0_reset_gpio-gpios = <&gpio GPIOY_12 GPIO_ACTIVE_HIGH>; - fe0_dtv_demod = <0>; - fe0_ts = <0>; - fe0_dev = <0>; - }; -*/ -}; -&i2c_a { - status = "disabled"; - /*p200: multiplex with usb PWR, disbaled*/ -}; -/* -&i2c_b { - status = "okay"; -}; -*/ - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<1 0x200>; /*spdif_out*/ - amlogic,clrmask=<1 0x10000>; /*spdif_out*/ - amlogic,pins ="GPIOY_12"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<3 0x78000000>; - amlogic,clrmask=<3 0x803280 - 4 0xc0>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; - -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxbb_p200_2G_wetek_play_2.dts b/arch/arm64/boot/dts/amlogic/gxbb_p200_2G_wetek_play_2.dts deleted file mode 100644 index a5c8f824d26af..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxbb_p200_2G_wetek_play_2.dts +++ /dev/null @@ -1,1171 +0,0 @@ -/* - * Amlogic Ltd. GXBaby Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include "mesongxbb.dtsi" -/ { - model = "Amlogic"; - amlogic-dt-id = "gxb_p200_2g"; - compatible = "amlogic, Gxbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - }; - - gpu_dvfs_tbl:gpu_dvfs_tbl { - sc_mpp = <3>;/* number of pp used most of time.*/ - tbl = <&clk285_cfg &clk400_cfg &clk500_cfg &clk666_cfg &clk800_cfg>; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x7f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x1900000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - size = <0x0 0x1e00000>; //10x1920x1088x3/2=30M - //no-map; - multi-use; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - multi-use; - }; - - /* vdin0 */ -// vdin0_reserved:linux,vdin0 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* vdin1 */ -// vdin1_reserved:linux,vdin1 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* POST PROCESS MANAGER */ - //ppmgr_reserved:linux,ppmgr { - // compatible = "amlogic, ppmgr_memory"; - // size = <0x0 0x2000000>; - //}; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - status = "disabled"; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /*vm0_cma_reserved:linux,vm0_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x2000000>; - alignment = <0x0 0x400000>; - }; - vm1_cma_reserved:linux,vm1_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x2000000>; - alignment = <0x0 0x400000>; - };*/ - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000{ - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8>; - interrupts = <0 8 1>; - phy-mode= "rgmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <ð_pins>; - rst_pin-gpios = <&gpio GPIOZ_14 0>; - mc_val = <0x1621>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ion_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - buffer-size = <3133440>; //1920x1088x3/2 - hw-version = <2>; - }; -/* vdin0 { - compatible = "amlogic, vdin"; - memory-region = <&vdin0_reserved>; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <0>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <1>; - };*/ - - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - /*vm0 { - compatible = "amlogic, vm"; - memory-region = <&vm0_cma_reserved>; - dev_name = "vm0"; - status = "okay"; - vm_id = <0>; - }; - - vm1 { - compatible = "amlogic, vm"; - memory-region = <&vm1_cma_reserved>; - dev_name = "vm1"; - status = "okay"; - vm_id = <1>; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "ok"; - gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - dhd_static_buf; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - - sd{ - status = "okay"; - port = <1>; /**0:sdio_a, 1:sdio_b, 2:sdio_c, 3:sdhc_a, 4:sdhc_b, 5:sdhc_c */ - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <200000000>; - tx_phase = <0>; - max_req_size = <0x20000>; /**256KB*/ -// gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "ok"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "cam_gpio_a", "cam_gpio_b","cam_all"; - pinctrl-0 = <&cam_gpio_a> ; - pinctrl-1 = <&cam_gpio_b> ; - pinctrl-2 = <&cam_gpio_a &cam_gpio_b> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - bt_path_count = <2>; - vdin_path = <0>; - status = "okay"; - }; - cam_1{ - cam_name = "sp0838"; - front_back = <1>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_13 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio_b"; - bt_path_count = <2>; - vdin_path = <1>; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&instaboot>; - part-7 = <&boot>; - part-8 = <&system>; - part-9 = <&cache>; - part-10 = <&data>; - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - instaboot:instaboot{ - pname = "instaboot"; - size = <0x0 0x20000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <11>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - /* hdcp14_en = <0x82000010>; */ - /* hdcp14_rslt = <0x82000011>; */ - gpio_i2c_en = <0x1>; - ranges; - #address-cells = <2>; - #size-cells = <2>; - }; - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc2_b { - compatible = "amlogic,dwc2"; - device_name = "dwc2_b"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <1>; /** lm name */ - clock-src = "usb1"; /** clock src */ - port-id = <1>; /** ref to mach/usb.h */ - port-type = <1>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, 1: high, 2: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <1>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - phy-reg = <0xc0000020>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - host-only-core = <1>; - pmu-apply-power = <1>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9000000 0x0 0x40000>; - interrupts = <0 30 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <1>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ -// gpio-vbus-power = "GPIODV_24"; -// gpios = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; -// gpio-work-mask = <1>; /**0: work on pulldown,1:work on pullup*/ - phy-reg = <0xc0000000>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB0_TO_DDR - &clock GCLK_IDX_USB0>; - reset-names = "usb_general", - "usb0", - "usb0_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_3 0>; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>; /*"GPIOAO_3";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - - adc_keypad{ - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "menu", "vol-","vol+", "esc", "home"; - key_num = <5>; - key_code = <139 114 115 1 102>; - key_chan = <0 0 0 0 0>; - key_val = <0 143 271 393 510>; //voltage=0/252/478/692/824mV, val=voltage/1800mV*1023 - key_tolerance = <40 40 40 40 40>; - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>; - led_active_low = <1>; - }; - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - - dvb { - compatible = "amlogic,dvb"; - dev_name = "wetek-dvb"; - status = "okay"; - fec_reset_gpio-gpios = <&gpio GPIOY_13 GPIO_ACTIVE_HIGH>; - power_ctrl_gpio-gpios = <&gpio GPIOY_15 GPIO_ACTIVE_LOW>; - //"parallel","serial","disable" - ts0 = "parallel"; - ts0_control = <0>; - ts0_invert = <0>; - pinctrl-names = "p_ts0", "s_ts0"; - pinctrl-0 = <&dvb_p_ts0_pins>; - pinctrl-1 = <&dvb_s_ts0_pins>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; -/* dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - dtv_demod0 = "Mxl241"; - dtv_demod0_i2c_adap_id = <2>; - dtv_demod0_i2c_addr = <0x60>; - dtv_demod0_reset_value = <0>; - dtv_demod0_reset_gpio-gpios = <&gpio GPIOY_12 GPIO_ACTIVE_HIGH>; - fe0_dtv_demod = <0>; - fe0_ts = <0>; - fe0_dev = <0>; - };*/ -}; -&i2c_a { - status = "okay"; - /*p200: multiplex with usb PWR, disbaled*/ -}; -/* -&i2c_b { - status = "okay"; -}; -*/ - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<1 0x200>; /*spdif_out*/ - amlogic,clrmask=<1 0x10000>; /*spdif_out*/ - amlogic,pins ="GPIOY_12"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<3 0x78000000>; - amlogic,clrmask=<3 0x803280 - 4 0xc0>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; - -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; -&aml_remote { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxbb_p200_iptv.dts b/arch/arm64/boot/dts/amlogic/gxbb_p200_iptv.dts deleted file mode 100644 index f6fc038d2da04..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxbb_p200_iptv.dts +++ /dev/null @@ -1,1204 +0,0 @@ -/* - * Amlogic Ltd. GXBaby Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxbb.dtsi" -/ { - model = "Amlogic"; - compatible = "amlogic, Gxbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - }; - - gpu_dvfs_tbl:gpu_dvfs_tbl { - sc_mpp = <3>;/* number of pp used most of time.*/ - tbl = <&clk285_cfg &clk400_cfg &clk500_cfg &clk666_cfg &clk800_cfg>; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3133440=30M(0x1e) support 8bit **/ - size = <0x0 0x1e00000>; - //no-map; - multi-use; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - multi-use; - }; - - /* vdin0 */ -// vdin0_reserved:linux,vdin0 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* vdin1 */ -// vdin1_reserved:linux,vdin1 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* POST PROCESS MANAGER */ - //ppmgr_reserved:linux,ppmgr { - // compatible = "amlogic, ppmgr_memory"; - // size = <0x0 0x2000000>; - //}; - - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xbc00000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - status = "disabled"; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /*vm0_cma_reserved:linux,vm0_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x2000000>; - alignment = <0x0 0x400000>; - }; - vm1_cma_reserved:linux,vm1_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x2000000>; - alignment = <0x0 0x400000>; - };*/ - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x00b00000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1280 720 1280 2160 32>; //1920*1080*4*3 = 0x17BB000,1280*720*4*3 = 11,059,200 - logo_addr = "0x3d851000"; - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000{ - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8>; - interrupts = <0 8 1>; - phy-mode= "rgmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <ð_pins>; - rst_pin-gpios = <&gpio GPIOZ_14 0>; - mc_val = <0x1621>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ion_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - buffer-size = <3133440>; - hw-version = <2>; - }; -/* vdin0 { - compatible = "amlogic, vdin"; - memory-region = <&vdin0_reserved>; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <0>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <1>; - };*/ - - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - /*vm0 { - compatible = "amlogic, vm"; - memory-region = <&vm0_cma_reserved>; - dev_name = "vm0"; - status = "okay"; - vm_id = <0>; - }; - - vm1 { - compatible = "amlogic, vm"; - memory-region = <&vm1_cma_reserved>; - dev_name = "vm1"; - status = "okay"; - vm_id = <1>; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "ok"; - gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - dhd_static_buf; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel = ; - pwm_channel_conf = <30519 15260>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <200000000>; - tx_phase = <0>; - max_req_size = <0x20000>; /**256KB*/ - // gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - - sd{ - status = "okay"; - port = <1>; /**0:sdio_a, 1:sdio_b, 2:sdio_c, 3:sdhc_a, 4:sdhc_b, 5:sdhc_c */ - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "ok"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "cam_gpio_a", "cam_gpio_b","cam_all"; - pinctrl-0 = <&cam_gpio_a> ; - pinctrl-1 = <&cam_gpio_b> ; - pinctrl-2 = <&cam_gpio_a &cam_gpio_b> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - bt_path_count = <2>; - vdin_path = <0>; - status = "okay"; - }; - cam_1{ - cam_name = "sp0838"; - front_back = <1>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_13 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio_b"; - bt_path_count = <2>; - vdin_path = <1>; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <10>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&data>; - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x80000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <11>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - /* hdcp14_en = <0x82000010>; */ - /* hdcp14_rslt = <0x82000011>; */ - - gpio_i2c_en = <0x1>; - ranges; - #address-cells = <2>; - #size-cells = <2>; - }; - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc2_b { - compatible = "amlogic,dwc2"; - device_name = "dwc2_b"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <1>; /** lm name */ - clock-src = "usb1"; /** clock src */ - port-id = <1>; /** ref to mach/usb.h */ - port-type = <1>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, 1: high, 2: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <1>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - phy-reg = <0xc0000020>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - host-only-core = <1>; - pmu-apply-power = <1>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9000000 0x0 0x40000>; - interrupts = <0 30 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <0>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - gpio-vbus-power = "GPIODV_24"; - gpios = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - gpio-work-mask = <1>; /**0: work on pulldown,1:work on pullup*/ - phy-reg = <0xc0000000>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB0_TO_DDR - &clock GCLK_IDX_USB0>; - reset-names = "usb_general", - "usb0", - "usb0_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_3 0>; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>; /*"GPIOAO_3";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - - adc_keypad{ - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "menu", "vol-","vol+", "esc", "home"; - key_num = <5>; - key_code = <139 114 115 1 102>; - key_chan = <0 0 0 0 0>; - key_val = <0 143 271 393 510>; //voltage=0/252/478/692/824mV, val=voltage/1800mV*1023 - key_tolerance = <40 40 40 40 40>; - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>; - led_active_low = <1>; - }; - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - -/* - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - //"parallel","serial","disable" - ts0 = "parallel"; - ts0_control = <0>; - ts0_invert = <0>; - pinctrl-names = "p_ts0", "s_ts0"; - pinctrl-0 = <&dvb_p_ts0_pins>; - pinctrl-1 = <&dvb_s_ts0_pins>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - dtv_demod0 = "Mxl241"; - dtv_demod0_i2c_adap_id = <2>; - dtv_demod0_i2c_addr = <0x60>; - dtv_demod0_reset_value = <0>; - dtv_demod0_reset_gpio-gpios = <&gpio GPIOY_12 GPIO_ACTIVE_HIGH>; - fe0_dtv_demod = <0>; - fe0_ts = <0>; - fe0_dev = <0>; - }; -*/ -}; -&i2c_a { - status = "disabled"; - /*p200: multiplex with usb PWR, disbaled*/ -}; -/* -&i2c_b { - status = "okay"; -}; -*/ - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=; /*spdif_out*/ - amlogic,clrmask=; /*spdif_out*/ - amlogic,pins ="GPIOAO_6"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<3 0x78000000>; - amlogic,clrmask=<3 0x803280 - 4 0xc0>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; - -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxbb_p201.dts b/arch/arm64/boot/dts/amlogic/gxbb_p201.dts deleted file mode 100644 index f6fdade1774c4..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxbb_p201.dts +++ /dev/null @@ -1,1111 +0,0 @@ -/* - * Amlogic Ltd. GXBaby Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxbb.dtsi" -/ { - model = "Amlogic"; - amlogic-dt-id = "gxb_p201_1g"; - compatible = "amlogic, Gxbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - }; - - gpu_dvfs_tbl:gpu_dvfs_tbl { - sc_mpp = <3>;/* number of pp used most of time.*/ - tbl = <&clk285_cfg &clk400_cfg &clk500_cfg &clk666_cfg &clk800_cfg>; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x1900000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3133440=30M(0x1e) support 8bit **/ - size = <0x0 0x1e00000>; - //no-map; - multi-use; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - multi-use; - }; - - - /* vdin0 CMA pool */ - vdin0_cma_reserved:linux,vdin0_cma { - compatible = "shared-dma-pool"; - reusable; - status = "disable"; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - status = "disable"; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* POST PROCESS MANAGER */ - //ppmgr_reserved:linux,ppmgr { - // compatible = "amlogic, ppmgr_memory"; - // size = <0x0 0x2000000>; - //}; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - status = "disabled"; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - logo_addr = "0x3d851000"; - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000{ - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8>; - interrupts = <0 8 1>; - phy-mode= "rmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <ð_pins>; - rst_pin-gpios = <&gpio GPIOZ_14 0>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ion_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - //post-wr-surpport = <1>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - buffer-size = <3133440>; - hw-version = <2>; - }; - amlvideo2 { - compatible = "amlogic, amlvideo2"; - dev_name = "amlvideo2"; - status = "okay"; - cma_mode = <1>; - }; -/* vdin0 { - compatible = "amlogic, vdin"; - memory-region = <&vdin0_cma_reserved>; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <0>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <1>; - };*/ - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - //bt-dev{ - //compatible = "amlogic, bt-dev"; - //dev_name = "bt-dev"; - //status = "ok"; - //gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - //}; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - dhd_static_buf; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel = ; - pwm_channel_conf = <30519 15260>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**256KB*/ - // gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - - sd{ - status = "okay"; - port = <1>; /**0:sdio_a, 1:sdio_b, 2:sdio_c, 3:sdhc_a, 4:sdhc_b, 5:sdhc_c */ - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - tx_phase = <0>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 4>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER","MMC_CAP_SDIO_IRQ"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "ok"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&instaboot>; - part-7 = <&boot>; - part-8 = <&system>; - part-9 = <&cache>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - instaboot:instaboot{ - pname = "instaboot"; - size = <0x0 0x20000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <11>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - - gpio_i2c_en = <0x1>; - #address-cells = <2>; - #size-cells = <2>; - ranges; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc2_b { - compatible = "amlogic,dwc2"; - device_name = "dwc2_b"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <1>; /** lm name */ - clock-src = "usb1"; /** clock src */ - port-id = <1>; /** ref to mach/usb.h */ - port-type = <1>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, 1: high, 2: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <1>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - phy-reg = <0xc0000020>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - host-only-core = <1>; - pmu-apply-power = <1>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9000000 0x0 0x40000>; - interrupts = <0 30 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <1>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <1>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - gpio-vbus-power = "GPIODV_24"; - gpios = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - gpio-work-mask = <1>; /**0: work on pulldown,1:work on pullup*/ - phy-reg = <0xc0000000>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB0_TO_DDR - &clock GCLK_IDX_USB0>; - reset-names = "usb_general", - "usb0", - "usb0_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_3 0>; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8","aml_snd_suspend"; - pinctrl-0 = <&audio_pins>; - pinctrl-1 = <&audio_suspend_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>; /*"GPIOAO_3";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>; - led_active_low = <1>; - }; - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; -}; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11"; - }; - audio_suspend_pins:audio_suspend_pin{ - amlogic,clrmask=; - amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11"; - amlogic,pullupen = <1>; - amlogic,pullup = <0>; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<1 0x200>; /*spdif_out*/ - amlogic,clrmask=<1 0x10000>; /*spdif_out*/ - amlogic,pins ="GPIOY_12"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<3 0x78000000>; - amlogic,clrmask=<3 0x00803280 - 4 0xc0>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxbb_p201_2G.dts b/arch/arm64/boot/dts/amlogic/gxbb_p201_2G.dts deleted file mode 100644 index 5680c2188110a..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxbb_p201_2G.dts +++ /dev/null @@ -1,2164 +0,0 @@ -/dts-v1/; - -/ { - model = "Amlogic"; - amlogic-dt-id = "gxbb_p201_2g"; - compatible = "amlogic, Gxbb"; - interrupt-parent = <0x1>; - #address-cells = <0x2>; - #size-cells = <0x2>; - - mali@d00c0000 { - #cooling-cells = <0x2>; - compatible = "arm,mali-450"; - interrupt-parent = <0x1>; - reg = <0x0 0xd00c0000 0x0 0x40000 0x0 0xc883c000 0x0 0x1000 0x0 0xc8100000 0x0 0x1000 0x0 0xc883c000 0x0 0x1000 0x0 0xc1104440 0x0 0x1000>; - interrupts = <0x0 0xa0 0x4 0x0 0xa1 0x4 0x0 0xa2 0x4 0x0 0xa3 0x4 0x0 0xa4 0x4 0x0 0xa5 0x4 0x0 0xa6 0x4 0x0 0xa7 0x4 0x0 0xa8 0x4 0x0 0xa9 0x4>; - interrupt-names = "IRQGP", "IRQGPMMU", "IRQPP", "IRQPMU", "IRQPP0", "IRQPPMMU0", "IRQPP1", "IRQPPMMU1", "IRQPP2", "IRQPPMMU2"; - pmu_domain_config = <0x1 0x2 0x4 0x4 0x0 0x0 0x0 0x0 0x0 0x1 0x2 0x0>; - pmu_switch_delay = <0xffff>; - num_of_pp = <0x3>; - def_clk = <0x3>; - sc_mpp = <0x3>; - tbl = <0x2 0x3 0x4 0x5 0x6 0x7 0x7>; - clocks = <0x8 0x8 0x8 0x9 0x8 0x11 0x8 0x12 0x8 0x1e 0x8 0x15 0x8 0x13 0x8 0x14>; - clock-names = "fclk_div3", "fclk_div4", "fclk_div5", "fclk_div7", "gp0_pll", "clk_mali", "clk_mali_0", "clk_mali_1"; - control_interval = <0xc8>; - linux,phandle = <0x78>; - phandle = <0x78>; - - clk125_cfg { - clk_freq = <0x7735940>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x1e 0xfa>; - linux,phandle = <0x2>; - phandle = <0x2>; - }; - - clk250_cfg { - clk_freq = <0xee6b280>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x73 0xfa>; - }; - - clk285_cfg { - clk_freq = <0x10fcc140>; - clk_parent = "fclk_div7"; - clkp_freq = <0x10fcc140>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x64 0xfa>; - linux,phandle = <0x3>; - phandle = <0x3>; - }; - - clk400_cfg { - clk_freq = <0x17d78400>; - clk_parent = "fclk_div5"; - clkp_freq = <0x17d78400>; - voltage = <0x47e>; - keep_count = <0x3>; - threshold = <0xa8 0xfa>; - linux,phandle = <0x4>; - phandle = <0x4>; - }; - - clk500_cfg { - clk_freq = <0x1dcd6500>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x2>; - threshold = <0xbe 0xfa>; - linux,phandle = <0x5>; - phandle = <0x5>; - }; - - clk666_cfg { - clk_freq = <0x27b25a80>; - clk_parent = "fclk_div3"; - clkp_freq = <0x27b25a80>; - voltage = <0x47e>; - keep_count = <0x1>; - threshold = <0xb1 0xfa>; - linux,phandle = <0x6>; - phandle = <0x6>; - }; - - clk750_cfg { - clk_freq = <0x2c588a00>; - clk_parent = "gp0_pll"; - clkp_freq = <0x2c588a00>; - voltage = <0x47e>; - keep_count = <0x1>; - threshold = <0xd5 0xff>; - }; - - clk800_cfg { - clk_freq = <0x2f34f600>; - clk_parent = "gp0_pll"; - clkp_freq = <0x2f34f600>; - voltage = <0x47e>; - keep_count = <0x1>; - threshold = <0xe6 0xff>; - linux,phandle = <0x7>; - phandle = <0x7>; - }; - }; - - cpus { - #address-cells = <0x2>; - #size-cells = <0x0>; - #cooling-cells = <0x2>; - linux,phandle = <0x76>; - phandle = <0x76>; - - cpu@0 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x0>; - enable-method = "psci"; - linux,phandle = <0x23>; - phandle = <0x23>; - }; - - cpu@1 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x1>; - enable-method = "psci"; - linux,phandle = <0x25>; - phandle = <0x25>; - }; - - cpu@2 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x2>; - enable-method = "psci"; - linux,phandle = <0x27>; - phandle = <0x27>; - }; - - cpu@3 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x3>; - enable-method = "psci"; - linux,phandle = <0x29>; - phandle = <0x29>; - }; - }; - - timer { - compatible = "arm,armv8-timer"; - interrupts = <0x1 0xd 0xff01 0x1 0xe 0xff01 0x1 0xb 0xff01 0x1 0xa 0xff01>; - }; - - timer_bc { - compatible = "arm, meson-bc-timer"; - reg = <0x0 0xc1109990 0x0 0x4 0x0 0xc1109994 0x0 0x4>; - timer_name = "Meson TimerF"; - clockevent-rating = <0x12c>; - clockevent-shift = <0x14>; - clockevent-features = <0x3>; - interrupts = <0x0 0x3c 0x1>; - bit_enable = <0x10>; - bit_mode = <0xc>; - bit_resolution = <0x0>; - }; - - arm_pmu { - compatible = "arm,armv8-pmuv3"; - interrupts = <0x0 0x89 0x4 0x0 0x8a 0x4 0x0 0x99 0x4 0x0 0x9a 0x4>; - }; - - pm { - compatible = "amlogic, pm"; - device_name = "aml_pm"; - gxbaby-suspend; - reg = <0x0 0xc81000a8 0x0 0x4 0x0 0xc810023c 0x0 0x4>; - }; - - interrupt-controller@2c001000 { - compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; - #interrupt-cells = <0x3>; - #address-cells = <0x0>; - interrupt-controller; - reg = <0x0 0xc4301000 0x0 0x1000 0x0 0xc4302000 0x0 0x100>; - interrupts = <0x1 0x9 0xf04>; - linux,phandle = <0x1>; - phandle = <0x1>; - }; - - aml_restart { - compatible = "aml, restart"; - sys_reset = <0x84000009>; - sys_poweroff = <0x84000008>; - }; - - psci { - compatible = "arm,psci"; - method = "smc"; - cpu_suspend = <0xc4000001>; - cpu_off = <0x84000002>; - cpu_on = <0xc4000003>; - migrate = <0xc4000005>; - }; - - secmon { - compatible = "amlogic, secmon"; - memory-region = <0x9>; - in_base_func = <0x82000020>; - out_base_func = <0x82000021>; - }; - - securitykey { - compatible = "aml, securitykey"; - storage_query = <0x82000060>; - storage_read = <0x82000061>; - storage_write = <0x82000062>; - storage_tell = <0x82000063>; - storage_verify = <0x82000064>; - storage_status = <0x82000065>; - storage_list = <0x82000067>; - storage_remove = <0x82000068>; - storage_in_func = <0x82000023>; - storage_out_func = <0x82000024>; - storage_block_func = <0x82000025>; - storage_size_func = <0x82000027>; - storage_set_enctype = <0x8200006a>; - storage_get_enctype = <0x8200006b>; - storage_version = <0x8200006c>; - }; - - cpu_iomap { - compatible = "amlogic, iomap"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - - io_apb_base { - reg = <0x0 0xd0000000 0x0 0x200000>; - }; - - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - }; - - cpufreq-meson { - compatible = "amlogic, cpufreq-scpi"; - status = "okay"; - clocks = <0xa 0x0>; - clock-names = "cpu_clk"; - }; - - amlogic-watchdog { - compatible = "amlogic, gx-wdt"; - status = "disable"; - default_timeout = <0xa>; - reset_watchdog_method = <0x1>; - reset_watchdog_time = <0x2>; - shutdown_timeout = <0xa>; - firmware_timeout = <0x6>; - suspend_timeout = <0x6>; - reg = <0x0 0xc11098d0 0x0 0x10>; - clocks = <0x8 0x2>; - }; - - amlogic-jtag { - compatible = "amlogic, jtag"; - status = "okay"; - pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; - pinctrl-0 = <0xb>; - pinctrl-1 = <0xc>; - }; - - meson_clock { - compatible = "amlogic, gxbb-clock"; - reg = <0x0 0xc883c000 0x0 0x1000 0x0 0xc8100000 0x0 0x1000>; - #clock-cells = <0x1>; - #reset-cells = <0x1>; - sys_max = <0x5b8d8000>; - linux,phandle = <0x8>; - phandle = <0x8>; - }; - - cpu_info { - compatible = "amlogic, cpuinfo"; - cpuinfo_cmd = <0x82000044>; - }; - - pinmux { - compatible = "amlogic, pinmux-gxbb"; - dev_name = "pinmux"; - #pinmux-cells = <0x2>; - #address-cells = <0x2>; - #size-cells = <0x2>; - reg = <0x0 0xc1109880 0x0 0x10>; - interrupts = <0x0 0x40 0x1 0x0 0x41 0x1 0x0 0x42 0x1 0x0 0x43 0x1 0x0 0x44 0x1 0x0 0x45 0x1 0x0 0x46 0x1 0x0 0x47 0x1>; - ranges; - - banks@c11080b0 { - reg = <0x0 0xc88344b0 0x0 0x28 0x0 0xc88344e8 0x0 0x14 0x0 0xc8834520 0x0 0x14 0x0 0xc8834430 0x0 0x40>; - reg-names = "mux", "pull", "pull-enable", "gpio"; - gpio-controller; - #gpio-cells = <0x2>; - linux,phandle = <0x2f>; - phandle = <0x2f>; - }; - - ao-bank@c1108030 { - reg = <0x0 0xc8100014 0x0 0x8 0x0 0xc810002c 0x0 0x4 0x0 0xc8100024 0x0 0x8>; - reg-names = "mux", "pull", "gpio"; - gpio-controller; - #gpio-cells = <0x2>; - linux,phandle = <0x73>; - phandle = <0x73>; - }; - - eth_pins { - amlogic,setmask = <0x6 0x3fff>; - amlogic,clrmask = <0x6 0xc000 0x5 0x3c0000f0 0x4 0x300>; - amlogic,pins = "GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3", "GPIOZ_4", "GPIOZ_5", "GPIOZ_6", "GPIOZ_7", "GPIOZ_8", "GPIOZ_9", "GPIOZ_10", "GPIOZ_11", "GPIOZ_12", "GPIOZ_13", "GPIOZ_15"; - linux,phandle = <0x2e>; - phandle = <0x2e>; - }; - - jtag_apao_pin { - amlogic,clrmask = <0x10 0x78000000>; - amlogic,pins = "GPIOAO_8", "GPIOAO_9", "GPIOAO_10", "GPIOAO_11"; - linux,phandle = <0xb>; - phandle = <0xb>; - }; - - jtag_apee_pin { - amlogic,clrmask = <0x2 0xcc00>; - amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3"; - linux,phandle = <0xc>; - phandle = <0xc>; - }; - - remote_pin { - amlogic,setmask = <0x10 0x1>; - amlogic,pins = "GPIOAO_7"; - linux,phandle = <0x18>; - phandle = <0x18>; - }; - - ao_uart { - amlogic,setmask = <0x10 0x1800>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - }; - - ao_b_uart { - amlogic,setmask = <0x10 0x1800000>; - amlogic,pins = "GPIOAO_4", "GPIOAO_5"; - }; - - a_uart { - amlogic,setmask = <0x4 0x3c00>; - amlogic,pins = "GPIOX_12", "GPIOX_13", "GPIOX_14", "GPIOX_15"; - linux,phandle = <0x60>; - phandle = <0x60>; - }; - - b_uart { - amlogic,setmask = <0x2 0x30000000>; - amlogic,pins = "GPIODV_24", "GPIODV_25"; - }; - - c_uart { - amlogic,setmask = <0x1 0xc0000>; - amlogic,pins = "GPIOY_13", "GPIOY_14"; - }; - - wifi_32k_pins { - amlogic,setmask = <0x2 0x40000000>; - amlogic,clrmask = <0x2 0x400000 0x3 0x8000>; - amlogic,pins = "GPIOX_19"; - linux,phandle = <0x33>; - phandle = <0x33>; - }; - - sd_clk_cmd_pins { - amlogic,setmask = <0x2 0xc00 0x10 0x1800>; - amlogic,pins = "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x37>; - phandle = <0x37>; - }; - - sd_all_pins { - amlogic,setmask = <0x2 0xfc00 0x10 0x1800>; - amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3", "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x38>; - phandle = <0x38>; - }; - - sd_1bit_pins { - amlogic,setmask = <0x2 0x8c00 0x10 0x1800>; - amlogic,pins = "CARD_1", "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x39>; - phandle = <0x39>; - }; - - sd_clk_cmd_uart_pins { - amlogic,setmask = <0x2 0xc00 0x8 0x600>; - amlogic,pins = "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x3a>; - phandle = <0x3a>; - }; - - sd_1bit_uart_pins { - amlogic,setmask = <0x2 0x8c00 0x8 0x600>; - amlogic,pins = "CARD_1", "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x3b>; - phandle = <0x3b>; - }; - - sd_to_ao_uart_pins { - amlogic,setmask = <0x10 0x1800>; - amlogic,clrmask = <0x8 0x600>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x3c>; - phandle = <0x3c>; - }; - - ao_to_sd_uart_pins { - amlogic,setmask = <0x8 0x600>; - amlogic,clrmask = <0x10 0x1800 0x2 0x3000>; - amlogic,pins = "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x3d>; - phandle = <0x3d>; - }; - - ao_to_sd_jtag_pins { - amlogic,setmask = <0x8 0x600>; - amlogic,clrmask = <0x2 0xcc00 0x10 0x1800>; - amlogic,pins = "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x3e>; - phandle = <0x3e>; - }; - - sd_to_ao_jtag_pins { - amlogic,setmask = <0x10 0x1800>; - amlogic,clrmask = <0x8 0x600 0x2 0xcc00>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x3f>; - phandle = <0x3f>; - }; - - emmc_clk_cmd_pins { - amlogic,setmask = <0x4 0xc00c0000>; - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x35>; - phandle = <0x35>; - }; - - emmc_all_pins { - amlogic,setmask = <0x4 0xc00c0000>; - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_10"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x36>; - phandle = <0x36>; - }; - - sdio_clk_cmd_pins { - amlogic,setmask = <0x8 0x3>; - amlogic,pins = "GPIOX_4", "GPIOX_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x40>; - phandle = <0x40>; - }; - - sdio_all_pins { - amlogic,setmask = <0x8 0x3f>; - amlogic,pins = "GPIOX_0", "GPIOX_1", "GPIOX_2", "GPIOX_3", "GPIOX_4", "GPIOX_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x41>; - phandle = <0x41>; - }; - - conf_nand_pulldown { - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_15"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x42>; - phandle = <0x42>; - }; - - conf_nand_pullup { - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x43>; - phandle = <0x43>; - }; - - all_nand_pins { - amlogic,setmask = <0x4 0x7ff00000>; - amlogic,clrmask = <0x0 0x80000 0x4 0x800c0000 0x5 0xf>; - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_9", "BOOT_10", "BOOT_11", "BOOT_12", "BOOT_13", "BOOT_14", "BOOT_15", "BOOT_16", "BOOT_17"; - amlogic,enable-output = <0x1>; - linux,phandle = <0x44>; - phandle = <0x44>; - }; - - nand_cs { - amlogic,setmask = <0x4 0xc000000>; - amlogic,clrmask = <0x4 0x40000>; - amlogic,pins = "BOOT_8", "BOOT_9"; - linux,phandle = <0x45>; - phandle = <0x45>; - }; - - hdmitx_hpd { - amlogic,setmask = <0x1 0x4000000>; - amlogic,pins = "GPIOH_0"; - linux,phandle = <0x5d>; - phandle = <0x5d>; - }; - - hdmitx_ddc { - amlogic,setmask = <0x1 0x3000000>; - amlogic,pins = "GPIOH_1", "GPIOH_2"; - linux,phandle = <0x5e>; - phandle = <0x5e>; - }; - - hdmitx_aocec { - amlogic,setmask = <0x10 0x8000>; - amlogic,clrmask = <0x10 0x24000 0x11 0x1>; - amlogic,pins = "GPIOAO_12"; - linux,phandle = <0x5f>; - phandle = <0x5f>; - }; - - hdmitx_eecec { - amlogic,setmask = <0x10 0x4000>; - amlogic,clrmask = <0x10 0x28000 0x11 0x1>; - amlogic,pins = "GPIOAO_12"; - }; - - a_i2c { - amlogic,setmask = <0x7 0xc000000>; - amlogic,clrmask = <0x0 0x18c0 0x2 0x30000000 0x5 0x1800>; - amlogic,pins = "GPIODV_24", "GPIODV_25"; - linux,phandle = <0xd>; - phandle = <0xd>; - }; - - b_i2c { - amlogic,setmask = <0x7 0x3000000>; - amlogic,clrmask = <0x0 0x600 0x2 0xc000000 0x5 0x700>; - amlogic,pins = "GPIODV_26", "GPIODV_27"; - linux,phandle = <0xe>; - phandle = <0xe>; - }; - - c_i2c { - amlogic,setmask = <0x7 0xc00000>; - amlogic,clrmask = <0x3 0x700000>; - amlogic,pins = "GPIODV_28", "GPIODV_29"; - linux,phandle = <0xf>; - phandle = <0xf>; - }; - - d_i2c { - amlogic,setmask = <0x4 0xc>; - amlogic,clrmask = <0x2 0x3000000 0x3 0x1000>; - amlogic,pins = "GPIOX_16", "GPIOX_17"; - linux,phandle = <0x10>; - phandle = <0x10>; - }; - - s_i2c { - amlogic,setmask = <0x10 0x6>; - amlogic,clrmask = <0x10 0x1800060>; - amlogic,pins = "GPIOAO_4", "GPIOAO_5"; - linux,phandle = <0x11>; - phandle = <0x11>; - }; - - dvb_p_ts0_pins { - amlogic,setmask = <0x3 0x37>; - amlogic,clrmask = <0x2 0xf0000 0x1 0x30ff>; - amlogic,pins = "GPIOY_0", "GPIOY_1", "GPIOY_2", "GPIOY_3", "GPIOY_4", "GPIOY_5", "GPIOY_6", "GPIOY_7", "GPIOY_8", "GPIOY_9", "GPIOY_10"; - }; - - dvb_s_ts0_pins { - amlogic,setmask = <0x3 0x17>; - amlogic,clrmask = <0x2 0xf0000 0x1 0x7>; - amlogic,pins = "GPIOY_0", "GPIOY_1", "GPIOY_2", "GPIOY_3"; - }; - - audio_pin { - amlogic,setmask = <0x10 0x78000000>; - amlogic,clrmask = <0x10 0x40000>; - amlogic,pins = "GPIOAO_8", "GPIOAO_9", "GPIOAO_10", "GPIOAO_11"; - linux,phandle = <0x63>; - phandle = <0x63>; - }; - - audio_suspend_pin { - amlogic,clrmask = <0x10 0x78000000>; - amlogic,pins = "GPIOAO_8", "GPIOAO_9", "GPIOAO_10", "GPIOAO_11"; - amlogic,pullupen = <0x1>; - amlogic,pullup = <0x0>; - linux,phandle = <0x64>; - phandle = <0x64>; - }; - - audio_pin1 { - amlogic,setmask = <0x1 0x200>; - amlogic,clrmask = <0x1 0x10000>; - amlogic,pins = "GPIOY_12"; - linux,phandle = <0x62>; - phandle = <0x62>; - }; - - audio_btpcm_pins { - amlogic,setmask = <0x3 0x78000000>; - amlogic,clrmask = <0x3 0x803280 0x4 0xc0>; - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - linux,phandle = <0x61>; - phandle = <0x61>; - }; - }; - - cpu_version { - reg = <0x0 0xc8100220 0x0 0x4>; - }; - - meson_clk_msr { - compatible = "amlogic, gxbb_measure"; - reg = <0x0 0xc110875c 0x0 0x4 0x0 0xc1108764 0x0 0x4>; - }; - - i2c@c1108500 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-A"; - status = "disabled"; - reg = <0x0 0xc1108500 0x0 0x20>; - device_id = <0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0xd>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x8 0xa>; - clock-names = "clk_i2c"; - resets = <0x8 0x9>; - }; - - i2c@c11087c0 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-B"; - status = "disabled"; - reg = <0x0 0xc11087c0 0x0 0x20>; - device_id = <0x2>; - pinctrl-names = "default"; - pinctrl-0 = <0xe>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x8 0xa>; - clock-names = "clk_i2c"; - resets = <0x8 0x9>; - }; - - i2c@c11087e0 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-C"; - status = "disabled"; - reg = <0x0 0xc11087e0 0x0 0x20>; - device_id = <0x3>; - pinctrl-names = "default"; - pinctrl-0 = <0xf>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x8 0xa>; - clock-names = "clk_i2c"; - resets = <0x8 0x9>; - }; - - i2c@c1108d20 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-D"; - status = "disabled"; - reg = <0x0 0xc1108d20 0x0 0x20>; - device_id = <0x4>; - pinctrl-names = "default"; - pinctrl-0 = <0x10>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x8 0xa>; - clock-names = "clk_i2c"; - resets = <0x8 0x9>; - }; - - i2c_slave@c8100540 { - compatible = "amlogic, meson-i2c-slave"; - status = "disabled"; - reg = <0x0 0xc8100540 0x0 0x20>; - interrupts = <0x0 0xc2 0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x11>; - }; - - efuse { - compatible = "amlogic, efuse"; - read_cmd = <0x82000030>; - write_cmd = <0x82000031>; - get_max_cmd = <0x82000033>; - key = <0x12>; - resets = <0x8 0x3e>; - reset-names = "efuse_clk"; - status = "okay"; - }; - - efusekey { - keynum = <0x4>; - key0 = <0x13>; - key1 = <0x14>; - key2 = <0x15>; - key3 = <0x16>; - linux,phandle = <0x12>; - phandle = <0x12>; - - key_0 { - keyname = "mac"; - offset = <0x0>; - size = <0x6>; - linux,phandle = <0x13>; - phandle = <0x13>; - }; - - key_1 { - keyname = "mac_bt"; - offset = <0x6>; - size = <0x6>; - linux,phandle = <0x14>; - phandle = <0x14>; - }; - - key_2 { - keyname = "mac_wifi"; - offset = <0xc>; - size = <0x6>; - linux,phandle = <0x15>; - phandle = <0x15>; - }; - - key_3 { - keyname = "usid"; - offset = <0x12>; - size = <0x10>; - linux,phandle = <0x16>; - phandle = <0x16>; - }; - }; - - mhu@c883c400 { - compatible = "amlogic, meson_mhu"; - reg = <0x0 0xc883c400 0x0 0x4c 0x0 0xc8013000 0x0 0x800>; - interrupts = <0x0 0xd1 0x1 0x0 0xd2 0x1>; - #mbox-cells = <0x1>; - mbox-names = "cpu_to_scp_low", "cpu_to_scp_high"; - mboxes = <0x17 0x0 0x17 0x1>; - linux,phandle = <0x17>; - phandle = <0x17>; - }; - - scpi_clocks { - compatible = "arm,scpi-clks"; - - scpi_clocks@0 { - compatible = "arm,scpi-clk-indexed"; - #clock-cells = <0x1>; - clock-indices = <0x0>; - clock-output-names = "vcpu"; - linux,phandle = <0xa>; - phandle = <0xa>; - }; - }; - - meson-remote { - compatible = "amlogic, aml_remote"; - dev_name = "meson-remote"; - status = "okay"; - remote_ao_offset = <0x580>; - interrupts = <0x0 0xc4 0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x18>; - }; - - meson-ir { - compatible = "amlogic,meson-gxbb-ir"; - status = "disabled"; - reg = <0x0 0xc8100580 0x0 0x40>; - interrupts = <0x0 0xc4 0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x18>; - }; - - rng { - compatible = "amlogic,meson-rng"; - reg = <0x0 0xc8834000 0x0 0x4>; - }; - - audio_data { - compatible = "amlogic, audio_data"; - query_licence_cmd = <0x82000050>; - status = "okay"; - }; - - saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0x0 0x9 0x1>; - interrupt-names = "saradc_int"; - clocks = <0x8 0x2>; - clock-names = "saradc_clk"; - resets = <0x8 0x56>; - reg = <0x0 0xc1108680 0x0 0x30 0x0 0xc883c3d8 0x0 0x8>; - }; - - defendkey { - compatible = "amlogic, defendkey"; - reg = <0x0 0xc8834500 0x0 0x4>; - mem_size = <0x0 0x100000>; - status = "okay"; - }; - - tpiu@0,c0202000 { - compatible = "arm,coresight-tpiu", "arm,primecell"; - reg = <0x0 0xc0202000 0x0 0x1000>; - clocks = <0x8 0x29>; - clock-names = "apb_pclk"; - - port { - - endpoint@0 { - slave-mode; - remote-endpoint = <0x19>; - linux,phandle = <0x1b>; - phandle = <0x1b>; - }; - }; - }; - - etb@0,c0203000 { - compatible = "arm,coresight-etb10", "arm,primecell"; - reg = <0x0 0xc0203000 0x0 0x1000>; - clocks = <0x8 0x29>; - clock-names = "apb_pclk"; - - port { - - endpoint@0 { - slave-mode; - remote-endpoint = <0x1a>; - linux,phandle = <0x1c>; - phandle = <0x1c>; - }; - }; - }; - - replicator@0,c0204000 { - compatible = "arm,coresight-replicator-qcom", "arm,primecell"; - reg = <0x0 0xc0204000 0x0 0x1000>; - clocks = <0x8 0x29>; - clock-names = "apb_pclk"; - - ports { - #address-cells = <0x1>; - #size-cells = <0x0>; - - port@0 { - #address-cells = <0x1>; - #size-cells = <0x0>; - reg = <0x0>; - - endpoint { - reg = <0x0>; - remote-endpoint = <0x1b>; - linux,phandle = <0x19>; - phandle = <0x19>; - }; - }; - - port@1 { - #address-cells = <0x1>; - #size-cells = <0x0>; - reg = <0x1>; - - endpoint { - reg = <0x1>; - remote-endpoint = <0x1c>; - linux,phandle = <0x1a>; - phandle = <0x1a>; - }; - }; - - port@2 { - reg = <0x0>; - - endpoint { - slave-mode; - remote-endpoint = <0x1d>; - linux,phandle = <0x1e>; - phandle = <0x1e>; - }; - }; - }; - }; - - funnel@0,c0201000 { - compatible = "arm,coresight-funnel", "arm,primecell"; - reg = <0x0 0xc0201000 0x0 0x1000>; - clocks = <0x8 0x29>; - clock-names = "apb_pclk"; - - ports { - #address-cells = <0x1>; - #size-cells = <0x0>; - - port@0 { - reg = <0x0>; - - endpoint { - remote-endpoint = <0x1e>; - linux,phandle = <0x1d>; - phandle = <0x1d>; - }; - }; - - port@1 { - reg = <0x0>; - - endpoint { - slave-mode; - remote-endpoint = <0x1f>; - linux,phandle = <0x24>; - phandle = <0x24>; - }; - }; - - port@2 { - reg = <0x1>; - - endpoint { - slave-mode; - remote-endpoint = <0x20>; - linux,phandle = <0x26>; - phandle = <0x26>; - }; - }; - - port@3 { - reg = <0x2>; - - endpoint { - slave-mode; - remote-endpoint = <0x21>; - linux,phandle = <0x28>; - phandle = <0x28>; - }; - }; - - port@4 { - reg = <0x3>; - - endpoint { - slave-mode; - remote-endpoint = <0x22>; - linux,phandle = <0x2a>; - phandle = <0x2a>; - }; - }; - }; - }; - - etm@0,c0440000 { - compatible = "arm,coresight-etm4x", "arm,primecell"; - reg = <0x0 0xc0440000 0x0 0x1000>; - cpu = <0x23>; - clocks = <0x8 0x29>; - clock-names = "apb_pclk"; - - port { - - endpoint { - remote-endpoint = <0x24>; - linux,phandle = <0x1f>; - phandle = <0x1f>; - }; - }; - }; - - etm@0,c0540000 { - compatible = "arm,coresight-etm4x", "arm,primecell"; - reg = <0x0 0xc0540000 0x0 0x1000>; - cpu = <0x25>; - clocks = <0x8 0x29>; - clock-names = "apb_pclk"; - - port { - - endpoint { - remote-endpoint = <0x26>; - linux,phandle = <0x20>; - phandle = <0x20>; - }; - }; - }; - - etm@0,c0640000 { - compatible = "arm,coresight-etm4x", "arm,primecell"; - reg = <0x0 0xc0640000 0x0 0x1000>; - cpu = <0x27>; - clocks = <0x8 0x29>; - clock-names = "apb_pclk"; - - port { - - endpoint { - remote-endpoint = <0x28>; - linux,phandle = <0x21>; - phandle = <0x21>; - }; - }; - }; - - etm@0,c0740000 { - compatible = "arm,coresight-etm4x", "arm,primecell"; - reg = <0x0 0xc0740000 0x0 0x1000>; - cpu = <0x29>; - clocks = <0x8 0x29>; - clock-names = "apb_pclk"; - - port { - - endpoint { - remote-endpoint = <0x2a>; - linux,phandle = <0x22>; - phandle = <0x22>; - }; - }; - }; - - aliases { - serial0 = "/serial@c81004c0"; - serial1 = "/serial@c11084c0"; - }; - - gpu_dvfs_tbl { - sc_mpp = <0x3>; - tbl = <0x3 0x4 0x5 0x6 0x7>; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x7f000000>; - }; - - reserved-memory { - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - linux,phandle = <0x9>; - phandle = <0x9>; - }; - - linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x5300000 0x0 0x2000000>; - no-map; - }; - - aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x7300000 0x0 0x100000>; - no-map; - }; - - linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x1900000>; - no-map; - linux,phandle = <0x2b>; - phandle = <0x2b>; - }; - - linux,di { - compatible = "amlogic, di-mem"; - size = <0x0 0x1e00000>; - multi-use; - linux,phandle = <0x32>; - phandle = <0x32>; - }; - - linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - multi-use; - linux,phandle = <0x30>; - phandle = <0x30>; - }; - - linux,vdin0_cma { - compatible = "shared-dma-pool"; - reusable; - status = "disable"; - size = <0x0 0x1400000>; - alignment = <0x0 0x400000>; - }; - - linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - status = "disable"; - size = <0x0 0x1400000>; - alignment = <0x0 0x400000>; - }; - - linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - linux,phandle = <0x2c>; - phandle = <0x2c>; - }; - - linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - status = "disabled"; - alignment = <0x0 0x400000>; - linux,contiguous-region; - linux,phandle = <0x31>; - phandle = <0x31>; - }; - - linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - linux,phandle = <0x2d>; - phandle = <0x2d>; - }; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <0x2b>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0x0 0x3 0x1 0x0 0x59 0x1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x1800000 0x100000>; - display_mode_default = "1080p60hz"; - scale_mode = <0x1>; - display_size_default = <0x780 0x438 0x780 0xca8 0x20>; - logo_addr = "0x3d851000"; - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0x0 0x96 0x1>; - interrupt-names = "ge2d"; - clocks = <0x8 0x17 0x8 0x19>; - clock-names = "clk_vapb_0", "clk_ge2d"; - resets = <0x8 0x34>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - - io_dos_base { - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - - io_hiubus_base { - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - - io_vcbus_base { - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - - io_dmc_base { - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <0x2c 0x2d>; - dev_name = "codec_mm"; - status = "okay"; - }; - - ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 0x0 0xc8834540 0x0 0x8>; - interrupts = <0x0 0x8 0x1>; - phy-mode = "rmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <0x2e>; - rst_pin-gpios = <0x2f 0xe 0x0>; - mc_val = <0x1800>; - resets = <0x8 0x23>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <0x8 0xa>; - clock-names = "ethclk81"; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7>; - pwm-outputs-new = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xa 0xb 0xc 0xd 0xe 0xf>; - reg = <0x0 0xc1108550 0x0 0x30 0x0 0xc8100550 0x0 0x10>; - clocks = <0x8 0x2 0x8 0x5 0x8 0x9 0x8 0x8>; - clock-names = "xtal", "vid_pll_clk", "fclk_div4", "fclk_div3"; - clock-select = <0x0 0x0 0x0 0x0 0x3 0x0 0x0 0x0>; - clock-select-new = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <0x8 0x39 0x8 0x59 0x8 0x24 0x8 0x1>; - reset-names = "parser_top", "vpu_intr", "demux", "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <0x30>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0x0 0x3 0x1 0x0 0x17 0x1 0x0 0x20 0x1 0x0 0x2b 0x1 0x0 0x2c 0x1 0x0 0x2d 0x1>; - interrupt-names = "vsync", "demux", "parser", "mailbox_0", "mailbox_1", "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <0x31>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr"; - memory-region = <0x30>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <0x32>; - interrupts = <0x0 0x2e 0x1 0x0 0x6 0x1>; - interrupt-names = "de_irq", "timerc"; - buffer-size = <0x2fd000>; - hw-version = <0x2>; - }; - - amlvideo2 { - compatible = "amlogic, amlvideo2"; - dev_name = "amlvideo2"; - status = "okay"; - cma_mode = <0x1>; - }; - - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <0x8 0x7 0x8 0x26>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0x0>; - }; - - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <0x8 0x7 0x8 0x27>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <0x1>; - }; - - amvenc_avc { - compatible = "amlogic, amvenc_avc"; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0x0 0x2d 0x1>; - interrupt-names = "mailbox_2"; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <0x7>; - }; - - rtc { - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <0x2f 0x63 0x0>; - interrupts = <0x0 0x44 0x4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <0x2f 0x62 0x0>; - dhd_static_buf; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <0x33>; - pwm_config = <0x34>; - }; - - wifi_pwm_conf { - pwm_channel = <0x4>; - pwm_channel_conf = <0x7737 0x3b9c>; - linux,phandle = <0x34>; - phandle = <0x34>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = <0x0 0xda 0x1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <0x35>; - pinctrl-1 = <0x36>; - - emmc { - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_8_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_1_8V_DDR", "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <0x493e0>; - f_max = <0xbebc200>; - max_req_size = <0x20000>; - gpio_dat3 = <0x2f 0x17 0x0>; - hw_reset = <0x2f 0x1d 0x0>; - card_type = <0x1>; - }; - }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = <0x0 0xd9 0x1 0x0 0x43 0x1 0x0 0x45 0x1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins", "sd_clk_cmd_uart_pins", "sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins", "ao_to_sd_jtag_pins", "sd_to_ao_jtag_pins"; - pinctrl-0 = <0x37>; - pinctrl-1 = <0x38>; - pinctrl-2 = <0x39>; - pinctrl-3 = <0x3a>; - pinctrl-4 = <0x3b>; - pinctrl-5 = <0x3c>; - pinctrl-6 = <0x3d>; - pinctrl-7 = <0x3e>; - pinctrl-8 = <0x3f>; - - sd { - status = "okay"; - port = <0x1>; - pinname = "sd"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED"; - f_min = <0x61a80>; - f_max = <0x5f5e100>; - tx_phase = <0x0>; - max_req_size = <0x20000>; - gpio_dat3 = <0x2f 0x2a 0x0>; - jtag_pin = <0x2f 0x26 0x0>; - gpio_cd = <0x2f 0x2c 0x0>; - irq_in = <0x3>; - irq_out = <0x5>; - card_type = <0x5>; - }; - }; - - sdio { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = <0x0 0xd8 0x4>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <0x40>; - pinctrl-1 = <0x41>; - - sdio { - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_UHS_SDR12", "MMC_CAP_UHS_SDR25", "MMC_CAP_UHS_SDR50", "MMC_CAP_UHS_SDR104", "MMC_PM_KEEP_POWER", "MMC_CAP_SDIO_IRQ"; - f_min = <0x61a80>; - f_max = <0xbebc200>; - max_req_size = <0x20000>; - card_type = <0x3>; - }; - }; - - nand { - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "ok"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = <0x0 0x22 0x1>; - pinctrl-names = "nand_rb_mod", "nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <0x42 0x43 0x44>; - pinctrl-1 = <0x42 0x43 0x44>; - pinctrl-2 = <0x45>; - device_id = <0x0>; - plat-names = "nandnormal"; - plat-num = <0x1>; - plat-part-0 = <0x46>; - - normal { - enable_pad = "ce0", "ce1", "ce2", "ce3"; - busy_pad = "rb0"; - linux,phandle = <0x46>; - phandle = <0x46>; - }; - }; - - aml_nftl { - compatible = "amlogic, nftl"; - }; - - partitions { - parts = <0xb>; - part-0 = <0x47>; - part-1 = <0x48>; - part-2 = <0x49>; - part-3 = <0x4a>; - part-4 = <0x4b>; - part-5 = <0x4c>; - part-6 = <0x4d>; - part-7 = <0x4e>; - part-8 = <0x4f>; - part-9 = <0x50>; - part-10 = <0x51>; - - logo { - pname = "logo"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x47>; - phandle = <0x47>; - }; - - recovery { - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x48>; - phandle = <0x48>; - }; - - rsv { - pname = "rsv"; - size = <0x0 0x800000>; - mask = <0x1>; - linux,phandle = <0x49>; - phandle = <0x49>; - }; - - tee { - pname = "tee"; - size = <0x0 0x800000>; - mask = <0x1>; - linux,phandle = <0x4a>; - phandle = <0x4a>; - }; - - crypt { - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x4b>; - phandle = <0x4b>; - }; - - misc { - pname = "misc"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x4c>; - phandle = <0x4c>; - }; - - instaboot { - pname = "instaboot"; - size = <0x0 0x20000000>; - mask = <0x1>; - linux,phandle = <0x4d>; - phandle = <0x4d>; - }; - - boot { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x4e>; - phandle = <0x4e>; - }; - - system { - pname = "system"; - size = <0x0 0x40000000>; - mask = <0x1>; - linux,phandle = <0x4f>; - phandle = <0x4f>; - }; - - cache { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <0x2>; - linux,phandle = <0x50>; - phandle = <0x50>; - }; - - data { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <0x4>; - linux,phandle = <0x51>; - phandle = <0x51>; - }; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - unifykey-num = <0xb>; - unifykey-index-0 = <0x52>; - unifykey-index-1 = <0x53>; - unifykey-index-2 = <0x54>; - unifykey-index-3 = <0x55>; - unifykey-index-4 = <0x56>; - unifykey-index-5 = <0x57>; - unifykey-index-6 = <0x58>; - unifykey-index-7 = <0x59>; - unifykey-index-8 = <0x5a>; - unifykey-index-9 = <0x5b>; - unifykey-index-10 = <0x5c>; - - key_0 { - key-name = "usid"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x52>; - phandle = <0x52>; - }; - - key_1 { - key-name = "mac"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x53>; - phandle = <0x53>; - }; - - key_2 { - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read", "write", "del"; - linux,phandle = <0x54>; - phandle = <0x54>; - }; - - key_3 { - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - linux,phandle = <0x55>; - phandle = <0x55>; - }; - - key_4 { - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read", "write", "del"; - key-type = "mac"; - linux,phandle = <0x56>; - phandle = <0x56>; - }; - - key_5 { - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read", "write", "del"; - key-type = "mac"; - linux,phandle = <0x57>; - phandle = <0x57>; - }; - - key_6 { - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x58>; - phandle = <0x58>; - }; - - key_7 { - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x59>; - phandle = <0x59>; - }; - - key_8 { - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5a>; - phandle = <0x5a>; - }; - - key_9 { - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5b>; - phandle = <0x5b>; - }; - - key_10 { - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5c>; - phandle = <0x5c>; - }; - }; - - amhdmitx { - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names = "hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0 = <0x5d>; - pinctrl-1 = <0x5e>; - interrupts = <0x0 0x39 0x1>; - interrupt-names = "hdmitx_hpd"; - clocks = <0x8 0xb 0x8 0xc 0x8 0xd 0x8 0xe 0x8 0xf 0x8 0x16>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - }; - - aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; - vendor_id = <0x0>; - product_desc = "GXBB Mbox"; - cec_osd_string = "MBox"; - port_num = <0x1>; - arc_port_mask = <0x0>; - interrupts = <0x0 0xc7 0x1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0 = <0x5f>; - reg = <0x0 0xc810023c 0x0 0x4 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio { - compatible = "i2c-gpio"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <0xa>; - gpios = <0x2f 0x11 0x0 0x2f 0x12 0x0>; - #address-cells = <0x2>; - #size-cells = <0x2>; - i2c-gpio,timeout-ms = <0xa>; - - i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0x0 0xc1 0x1>; - status = "okay"; - clocks = <0x8 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - support-sysrq = <0x0>; - }; - - serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0x0 0x1a 0x1>; - status = "okay"; - clocks = <0x8 0x2>; - clock-names = "clk_uart"; - fifosize = <0x80>; - pinctrl-names = "default"; - pinctrl-0 = <0x60>; - resets = <0x8 0xd>; - }; - - canvas { - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma { - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0x0 0x59 0x1>; - interrupt-names = "rdma"; - }; - - dwc2_b { - compatible = "amlogic,dwc2"; - device_name = "dwc2_b"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0x0 0x1f 0x4>; - status = "okay"; - pl-periph-id = <0x1>; - clock-src = "usb1"; - port-id = <0x1>; - port-type = <0x1>; - port-speed = <0x0>; - port-config = <0x0>; - port-dma = <0x0>; - port-id-mode = <0x1>; - phy-reg = <0xc0000020>; - phy-reg-size = <0x20>; - usb-fifo = <0x400>; - host-only-core = <0x1>; - pmu-apply-power = <0x1>; - cpu-type = "gxbaby"; - resets = <0x8 0x3a 0x8 0x48 0x8 0x36>; - reset-names = "usb_general", "usb1", "usb1_to_ddr"; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9000000 0x0 0x40000>; - interrupts = <0x0 0x1e 0x4>; - status = "okay"; - pl-periph-id = <0x0>; - clock-src = "usb0"; - port-id = <0x0>; - port-type = <0x1>; - port-speed = <0x0>; - port-config = <0x0>; - port-dma = <0x0>; - port-id-mode = <0x1>; - gpio-vbus-power = "GPIODV_24"; - gpios = <0x2f 0x45 0x0>; - gpio-work-mask = <0x1>; - phy-reg = <0xc0000000>; - phy-reg-size = <0x20>; - usb-fifo = <0x400>; - cpu-type = "gxbaby"; - resets = <0x8 0x3a 0x8 0x49 0x8 0x35>; - reset-names = "usb_general", "usb0", "usb0_to_ddr"; - }; - - I2S { - #sound-dai-cells = <0x0>; - resets = <0x8 0x26 0x8 0x12 0x8 0x28 0x8 0x29 0x8 0x2a 0x8 0x2b 0x8 0x2c 0x8 0x2d 0x8 0x2f 0x8 0x8e 0x8 0x22>; - reset-names = "top_glue", "aud_buf", "i2s_out", "amclk_measure", "aififo2", "aud_mixer", "mixer_reg", "adc", "top_level", "aoclk", "aud_in"; - clocks = <0x8 0x21 0x8 0x22>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - linux,phandle = <0x6d>; - phandle = <0x6d>; - }; - - SPDIF { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-spdif-dai"; - resets = <0x8 0x27 0x8 0x90>; - reset-names = "iec958", "iec958_amclk"; - clocks = <0x8 0x20 0x8 0x24 0x8 0x22 0x8 0x25 0x8 0xa>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - linux,phandle = <0x6e>; - phandle = <0x6e>; - }; - - PCM { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <0x61>; - clocks = <0x8 0x1f 0x8 0x2a 0x8 0x2b>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <0x1>; - linux,phandle = <0x6f>; - phandle = <0x6f>; - }; - - i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0x0 0x1d 0x1>; - linux,phandle = <0x6b>; - phandle = <0x6b>; - }; - - pcm_platform { - compatible = "amlogic, aml-pcm"; - linux,phandle = <0x6c>; - phandle = <0x6c>; - }; - - spdif_codec { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <0x62>; - linux,phandle = <0x71>; - phandle = <0x71>; - }; - - pcm_codec { - #sound-dai-cells = <0x0>; - compatible = "amlogic, pcm2BT-codec"; - linux,phandle = <0x72>; - phandle = <0x72>; - }; - - dummy { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml_dummy_codec"; - status = "okay"; - linux,phandle = <0x70>; - phandle = <0x70>; - }; - - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = "Ext Spk", "LOUTL", "Ext Spk", "LOUTR"; - mute_gpio-gpios = <0x2f 0x13 0x0>; - hp_disable; - hp_paraments = <0x320 0x12c 0x0 0x5 0x1>; - pinctrl-names = "aml_snd_m8", "aml_snd_suspend"; - pinctrl-0 = <0x63>; - pinctrl-1 = <0x64>; - cpu_list = <0x65 0x66 0x67>; - codec_list = <0x68 0x69 0x6a>; - plat_list = <0x6b 0x6b 0x6c>; - - cpudai0 { - sound-dai = <0x6d>; - linux,phandle = <0x65>; - phandle = <0x65>; - }; - - cpudai1 { - sound-dai = <0x6e>; - linux,phandle = <0x66>; - phandle = <0x66>; - }; - - cpudai2 { - sound-dai = <0x6f>; - linux,phandle = <0x67>; - phandle = <0x67>; - }; - - codec0 { - sound-dai = <0x70>; - linux,phandle = <0x68>; - phandle = <0x68>; - }; - - codec1 { - sound-dai = <0x71>; - linux,phandle = <0x69>; - phandle = <0x69>; - }; - - codec2 { - sound-dai = <0x72>; - linux,phandle = <0x6a>; - phandle = <0x6a>; - }; - }; - - gpio_keypad { - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <0x14>; - key_num = <0x1>; - key_name = "power"; - key_code = <0x74>; - key_pin = <0x73 0x3 0x0>; - irq_keyup = <0x6>; - irq_keydown = <0x7>; - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <0x73 0xd 0x0>; - led_active_low = <0x1>; - }; - - aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <0x1>; - linux,phandle = <0x74>; - phandle = <0x74>; - - cooling_devices { - - cpufreq_cool_cluster0 { - min_state = <0xf4240>; - dyn_coeff = <0x8c>; - cluster_id = <0x0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - - cpucore_cool_cluster0 { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - - gpufreq_cool { - min_state = <0x190>; - dyn_coeff = <0x1b5>; - cluster_id = <0x0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - - gpucore_cool { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - - cpu_core_cluster0 { - #cooling-cells = <0x2>; - linux,phandle = <0x77>; - phandle = <0x77>; - }; - - thermal_gpu_cores { - #cooling-cells = <0x2>; - linux,phandle = <0x79>; - phandle = <0x79>; - }; - }; - - thermal-zones { - - soc_thermal { - polling-delay = <0x3e8>; - polling-delay-passive = <0x64>; - sustainable-power = <0x866>; - thermal-sensors = <0x74 0x3>; - - trips { - - trip-point@0 { - temperature = <0x11170>; - hysteresis = <0x3e8>; - type = "passive"; - }; - - trip-point@1 { - temperature = <0x13880>; - hysteresis = <0x3e8>; - type = "passive"; - linux,phandle = <0x75>; - phandle = <0x75>; - }; - - trip-point@2 { - temperature = <0x14c08>; - hysteresis = <0x1388>; - type = "hot"; - }; - - trip-point@3 { - temperature = <0x3f7a0>; - hysteresis = <0x3e8>; - type = "critical"; - }; - }; - - cooling-maps { - - cpufreq_cooling_map { - trip = <0x75>; - cooling-device = <0x76 0x0 0x4>; - contribution = <0x400>; - }; - - cpucore_cooling_map { - trip = <0x75>; - cooling-device = <0x77 0x0 0x3>; - contribution = <0x400>; - }; - - gpufreq_cooling_map { - trip = <0x75>; - cooling-device = <0x78 0x0 0x4>; - contribution = <0x400>; - }; - - gpucore_cooling_map { - trip = <0x75>; - cooling-device = <0x79 0x0 0x2>; - contribution = <0x400>; - }; - }; - }; - }; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxbb_skt.dts b/arch/arm64/boot/dts/amlogic/gxbb_skt.dts deleted file mode 100644 index 70f20003ff0ee..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxbb_skt.dts +++ /dev/null @@ -1,1132 +0,0 @@ -/* - * Amlogic Ltd. GXBaby Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxbb.dtsi" -/ { - model = "Amlogic"; - compatible = "amlogic, Gxbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - gpu_dvfs_tbl:gpu_dvfs_tbl { - sc_mpp = <3>;/* number of pp used most of time.*/ - tbl = <&clk285_cfg &clk400_cfg &clk500_cfg &clk666_cfg &clk800_cfg>; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3133440=30M(0x1e) support 8bit **/ - size = <0x0 0x1e00000>; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* vdin0 */ -// vdin0_reserved:linux,vdin0 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* vdin1 */ -// vdin1_reserved:linux,vdin1 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x2000000>; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xbc00000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - status = "disabled"; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /*vm_reserved:linux,vm { - compatible = "amlogic, vm_memory"; - size = <0x0 0x2000000>; - };*/ - - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - logo_addr = "0x3d851000"; - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - buffer-size = <3133440>; - hw-version = <2>; - }; -/* vdin0 { - compatible = "amlogic, vdin"; - memory-region = <&vdin0_reserved>; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <0>; - }; - vdin { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <1>; - };*/ - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - /*vm { - compatible = "amlogic, vm"; - memory-region = <&vm_reserved>; - dev_name = "vm"; - status = "okay"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "ok"; - gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_HIGH"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel = ; - pwm_channel_conf = <30519 15260>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - f_min = <300000>; - f_max = <200000000>; - tx_phase = <0>; - max_req_size = <0x20000>; /**256KB*/ - // gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED","MMC_CAP_SD_HIGHSPEED", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - /*if card have no switch gpio, remove all relative to vol_switch */ - vol_switch = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>; - vol_switch_18 = <0>; /* 1 = high, 0 = low */ - vol_switch_delay = <150>; /* Uint: ms*/ - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "ok"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "gpio"; - pinctrl-0 = <&aml_cam_gpio_pins> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <10>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <11>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <2>; - #size-cells = <2>; - ranges; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&b_uart_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&c_uart_pins>; - resets = <&clock GCLK_IDX_UART2>; - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_b_uart_pins>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc2_b { - compatible = "amlogic,dwc2"; - device_name = "dwc2_b"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <1>; /** lm name */ - clock-src = "usb1"; /** clock src */ - port-id = <1>; /** ref to mach/usb.h */ - port-type = <1>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, 1: high, 2: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <1>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - phy-reg = <0xc0000020>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - host-only-core = <1>; - pmu-apply-power = <1>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9000000 0x0 0x40000>; - interrupts = <0 30 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <0>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - gpio-vbus-power = "GPIODV_24"; - gpios = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - gpio-work-mask = <1>; /**0: work on pulldown,1:work on pullup*/ - phy-reg = <0xc0000000>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB0_TO_DDR - &clock GCLK_IDX_USB0>; - reset-names = "usb_general", - "usb0", - "usb0_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_3 0>; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - dmic:snd_dmic { - #sound-dai-cells = <0>; - compatible = "aml, aml_snd_dmic"; - reg = <0x0 0xd0042000 0x0 0x2000>; - status = "okay"; - resets = < - &clock GCLK_IDX_PDM - >; - reset-names = "pdm"; - pinctrl-names = "aml_dmic_pins"; - pinctrl-0 = <&aml_dmic>; - clocks = <&clock CLK_PDM>, - <&clock CLK_AMCLK>; - clock-names = "pdm", "mclk"; - }; - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; -}; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11","GPIOAO_6"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=; /*spdif_out*/ - amlogic,clrmask=; /*spdif_out*/ - amlogic,pins ="GPIOAO_13"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<3 0x78000000>; - amlogic,clrmask=<3 0x00803280 - 4 0xc0>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; - - aml_dmic:audio_dmic{ - amlogic,setmask=<1 0xc00>; - amlogic,clrmask=<1 0xc0000>; - amlogic,pins = "GPIOY_13","GPIOY_14"; - - }; -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxl_p212_1g.dts b/arch/arm64/boot/dts/amlogic/gxl_p212_1g.dts deleted file mode 100644 index 74a682b3fa47d..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxl_p212_1g.dts +++ /dev/null @@ -1,1219 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/gxl_p212.dts - * - * Copyright (C) 2015 Amlogic, Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxl.dtsi" -/ { - model = "Amlogic"; - compatible = "amlogic, Gxbb"; - amlogic-dt-id = "gxl_p212_1g"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x100000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3133440=30M(0x1e) support 8bit **/ - size = <0x0 0x1e00000>; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 1920x1080x2x4 =16+4 M */ - // size = <0x0 0x01400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - /* 1920x1080x2x4 =16 M */ - size = <0x0 0x01000000>; - alignment = <0x0 0x400000>; - }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "shared-dma-pool"; - size = <0x0 0x0>; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /*vm_reserved:linux,vm { - compatible = "amlogic, vm_memory"; - size = <0x0 0x2000000>; - };*/ - - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - led_active_low = <1>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - logo_addr = "0x3d851000"; - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1 - 0 9 1>; - phy-mode= "rmii"; - pinctrl-names = "internal_eth_pins"; - pinctrl-0 = <&internal_eth_pins>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq", - "phyirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - buffer-size = <3133440>; - hw-version = <2>; - }; - /*if you want to use vdin just modify status to "ok"*/ - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <16>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <1>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0>;/*1:enabel ;0:disable*/ - wb_en = <0>;/*1:enabel ;0:disable*/ - cm_en = <0>;/*1:enabel ;0:disable*/ - }; - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - /*vm { - compatible = "amlogic, vm"; - memory-region = <&vm_reserved>; - dev_name = "vm"; - status = "okay"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - //if use bt, open it - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "okay"; - gpio_reset = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - dhd_static_buf; //if use bcm wifi, config dhd_static_buf and 32k as bellow - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ; - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc{ - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**256KB*/ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 4>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER","MMC_CAP_SDIO_IRQ"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "gpio"; - pinctrl-0 = <&aml_cam_gpio_pins> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&instaboot>; - part-7 = <&boot>; - part-8 = <&system>; - part-9 = <&cache>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - instaboot:instaboot{ - pname = "instaboot"; - size = <0x0 0x20000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11= <&keysn_11>; - unifykey-index-12= <&keysn_12>; - unifykey-index-13= <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "prpubkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "prprivkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <2>; - #size-cells = <2>; - ranges; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&b_uart_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&c_uart_pins>; - resets = <&clock GCLK_IDX_UART2>; - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_b_uart_pins>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <2>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_5 0>; - mute_inv; - sleep_time = <100>; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>; /*"GPIOAO_2";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; -}; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<6 0x7800000>; - amlogic,clrmask=<6 0x07e0000>; - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8","GPIOH_9"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<6 0x10000000>; /*spdif_out*/ - amlogic,clrmask=<6 0x8000000>; - amlogic,pins ="GPIOH_4"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<5 0xf00000>; - amlogic,clrmask=<5 0x3c33>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxl_p212_1g_AB.dts b/arch/arm64/boot/dts/amlogic/gxl_p212_1g_AB.dts deleted file mode 100644 index 38abae3aa64d8..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxl_p212_1g_AB.dts +++ /dev/null @@ -1,1199 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/gxl_p212.dts - * - * Copyright (C) 2015 Amlogic, Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxl.dtsi" -/ { - model = "Amlogic"; - compatible = "amlogic, Gxbb"; - amlogic-dt-id = "gxl_p212_1g"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x100000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3203072=30.5M(0x1f) support 8bit **/ - size = <0x0 0x1f00000>; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* vdin0 */ -// vdin0_reserved:linux,vdin0 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* vdin1 */ -// vdin1_reserved:linux,vdin1 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "shared-dma-pool"; - size = <0x0 0x0>; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /*vm_reserved:linux,vm { - compatible = "amlogic, vm_memory"; - size = <0x0 0x2000000>; - };*/ - - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - led_active_low = <1>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1 - 0 9 1>; - phy-mode= "rmii"; - pinctrl-names = "internal_eth_pins"; - pinctrl-0 = <&internal_eth_pins>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq", - "phyirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 2944*544*2*8(yuv422 10bit) | 2432*544*2(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 2048*544/2 */ - /* count_size(byte) = 2048*544/2 */ - buffer-size = <3203072>; - hw-version = <2>; - }; -/* vdin0 { - compatible = "amlogic, vdin"; - memory-region = <&vdin0_reserved>; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <0>; - }; - vdin { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <1>; - };*/ - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0>;/*1:enabel ;0:disable*/ - wb_en = <0>;/*1:enabel ;0:disable*/ - cm_en = <0>;/*1:enabel ;0:disable*/ - }; - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - /*vm { - compatible = "amlogic, vm"; - memory-region = <&vm_reserved>; - dev_name = "vm"; - status = "okay"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - //if use bt, open it - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "okay"; - gpio_reset = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - dhd_static_buf; //if use bcm wifi, config dhd_static_buf and 32k as bellow - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ; - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc{ - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**256KB*/ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 4>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER","MMC_CAP_SDIO_IRQ"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "gpio"; - pinctrl-0 = <&aml_cam_gpio_pins> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <12>; - part-0 = <&logo>; - part-1 = <&boot>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot_a>; - part-7 = <&boot_b>; - part-8 = <&system_a>; - part-9 = <&system_b>; - part-10 = <&cache>; - part-11 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot{ - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot_a:boot_a - { - pname = "boot_a"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot_b:boot_b - { - pname = "boot_b"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system_a:system_a - { - pname = "system_a"; - size = <0x0 0x80000000>; - mask = <1>; - }; - system_b:system_b - { - pname = "system_b"; - size = <0x0 0x80000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11= <&keysn_11>; - unifykey-index-12= <&keysn_12>; - unifykey-index-13= <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "prpubkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "prprivkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <2>; - #size-cells = <2>; - ranges; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&b_uart_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&c_uart_pins>; - resets = <&clock GCLK_IDX_UART2>; - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_b_uart_pins>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <2>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_5 0>; - mute_inv; - sleep_time = <100>; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>; /*"GPIOAO_2";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; -}; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<6 0x7800000>; - amlogic,clrmask=<6 0x07e0000>; - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8","GPIOH_9"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<6 0x10000000>; /*spdif_out*/ - amlogic,clrmask=<6 0x8000000>; - amlogic,pins ="GPIOH_4"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<5 0xf00000>; - amlogic,clrmask=<5 0x3c33>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxl_p212_2g_AB.dts b/arch/arm64/boot/dts/amlogic/gxl_p212_2g_AB.dts deleted file mode 100644 index 66a79a5136fd1..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxl_p212_2g_AB.dts +++ /dev/null @@ -1,1200 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/gxl_p212.dts - * - * Copyright (C) 2015 Amlogic, Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxl.dtsi" -/ { - model = "Amlogic"; - amlogic-dt-id = "gxl_p212_2g"; - compatible = "amlogic, Gxbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x100000 0x0 0x7f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3203072=30.5M(0x1f) support 8bit **/ - size = <0x0 0x1f00000>; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x3000000>; - }; - - /* vdin0 */ -// vdin0_reserved:linux,vdin0 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* vdin1 */ -// vdin1_reserved:linux,vdin1 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "shared-dma-pool"; - size = <0x0 0x0>; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /*vm_reserved:linux,vm { - compatible = "amlogic, vm_memory"; - size = <0x0 0x2000000>; - };*/ - - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - led_active_low = <1>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1 - 0 9 1>; - phy-mode= "rmii"; - pinctrl-names = "internal_eth_pins"; - pinctrl-0 = <&internal_eth_pins>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq", - "phyirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 2944*544*2*8(yuv422 10bit) | 2432*544*2(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 2048*544/2 */ - /* count_size(byte) = 2048*544/2 */ - buffer-size = <3203072>; - hw-version = <2>; - }; -/* vdin0 { - compatible = "amlogic, vdin"; - memory-region = <&vdin0_reserved>; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <0>; - }; - vdin { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <1>; - };*/ - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0>;/*1:enabel ;0:disable*/ - wb_en = <0>;/*1:enabel ;0:disable*/ - cm_en = <0>;/*1:enabel ;0:disable*/ - }; - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - /*vm { - compatible = "amlogic, vm"; - memory-region = <&vm_reserved>; - dev_name = "vm"; - status = "okay"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - //if use bt, open it - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "okay"; - gpio_reset = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - dhd_static_buf; //if use bcm wifi, config dhd_static_buf and 32k as bellow - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ; - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc{ - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**256KB*/ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 4>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER","MMC_CAP_SDIO_IRQ"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "gpio"; - pinctrl-0 = <&aml_cam_gpio_pins> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <12>; - part-0 = <&logo>; - part-1 = <&boot>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot_a>; - part-7 = <&boot_b>; - part-8 = <&system_a>; - part-9 = <&system_b>; - part-10 = <&cache>; - part-11 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot{ - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot_a:boot_a - { - pname = "boot_a"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot_b:boot_b - { - pname = "boot_b"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system_a:system_a - { - pname = "system_a"; - size = <0x0 0x80000000>; - mask = <1>; - }; - system_b:system_b - { - pname = "system_b"; - size = <0x0 0x80000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11= <&keysn_11>; - unifykey-index-12= <&keysn_12>; - unifykey-index-13= <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "prpubkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "prprivkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <2>; - #size-cells = <2>; - ranges; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&b_uart_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&c_uart_pins>; - resets = <&clock GCLK_IDX_UART2>; - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_b_uart_pins>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <2>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_5 0>; - mute_inv; - sleep_time = <100>; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>; /*"GPIOAO_2";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; -}; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<6 0x7800000>; - amlogic,clrmask=<6 0x07e0000>; - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8","GPIOH_9"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<6 0x10000000>; /*spdif_out*/ - amlogic,clrmask=<6 0x8000000>; - amlogic,pins ="GPIOH_4"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<5 0xf00000>; - amlogic,clrmask=<5 0x3c33>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxl_p230_2g.dts b/arch/arm64/boot/dts/amlogic/gxl_p230_2g.dts deleted file mode 100644 index 577fc62846323..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxl_p230_2g.dts +++ /dev/null @@ -1,1318 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/gxl_p230_2g.dts - * - * Copyright (C) 2015 Amlogic, Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxl.dtsi" -/ { - model = "Amlogic"; - compatible = "amlogic, Gxbb"; - amlogic-dt-id = "gxl_p230_2g"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x100000 0x0 0x7f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3133440=30M(0x1e) support 8bit **/ - size = <0x0 0x1e00000>; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 1920x1080x2x4 =16+4 M */ - // size = <0x0 0x01400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - /* 1920x1080x2x4 =16 M */ - size = <0x0 0x01000000>; - alignment = <0x0 0x400000>; - }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "shared-dma-pool"; - size = <0x0 0x0>; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /*vm_reserved:linux,vm { - compatible = "amlogic, vm_memory"; - size = <0x0 0x2000000>; - };*/ - - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - //led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - led_active_low = <1>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - logo_addr = "0x7d851000"; - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - /*external phy config*/ - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1>; - phy-mode= "rgmii"; - pinctrl-names = "external_eth_pins"; - pinctrl-0 = <&external_eth_pins>; - rst_pin-gpios = <&gpio GPIOZ_14 0>; - GPIOZ4_pin-gpios = <&gpio GPIOZ_4 0>; - GPIOZ5_pin-gpios = <&gpio GPIOZ_5 0>; - mc_val = <0x1621>; - cali_val = <0x20000>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<0>; - }; - /*internal phy config*/ - /*ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1 - 0 9 1>; - phy-mode= "rmii"; - pinctrl-names = "internal_eth_pins"; - pinctrl-0 = <&internal_eth_pins>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq", - "phyirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - };*/ - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - buffer-size = <3133440>; - hw-version = <2>; - }; - /*if you want to use vdin just modify status to "ok"*/ - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <16>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <1>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0>;/*1:enabel ;0:disable*/ - wb_en = <0>;/*1:enabel ;0:disable*/ - cm_en = <0>;/*1:enabel ;0:disable*/ - }; - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - /*vm { - compatible = "amlogic, vm"; - memory-region = <&vm_reserved>; - dev_name = "vm"; - status = "okay"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - //if use bt, open it - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "okay"; - gpio_reset = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - dhd_static_buf; //if use bcm wifi, config dhd_static_buf and 32k as bellow - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ; - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc{ - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**256KB*/ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 4>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER","MMC_CAP_SDIO_IRQ"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "gpio"; - pinctrl-0 = <&aml_cam_gpio_pins> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <10>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x80000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11= <&keysn_11>; - unifykey-index-12= <&keysn_12>; - unifykey-index-13= <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "prpubkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "prprivkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <2>; - #size-cells = <2>; - ranges; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&b_uart_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&c_uart_pins>; - resets = <&clock GCLK_IDX_UART2>; - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_b_uart_pins>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <2>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - DMIC; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - dmic:snd_dmic { - #sound-dai-cells = <0>; - compatible = "aml, aml_snd_dmic"; - reg = <0x0 0xd0042000 0x0 0x2000>; - status = "okay"; - resets = < - &clock GCLK_IDX_PDM - >; - reset-names = "pdm"; - pinctrl-names = "aml_dmic_pins"; - pinctrl-0 = <&aml_dmic>; - clocks = <&clock CLK_PDM>, - <&clock CLK_AMCLK>; - clock-names = "pdm", "mclk"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_5 0>; - mute_inv; - hp_disable; - sleep_time = <100>; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>; /*"GPIOAO_2";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - /* dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - ts1 = "serial"; - ts1_control = <0x800>; - ts1_invert = <0>; - ts_out_invert = <0>; - pinctrl-names = "p_ts1", "s_ts1"; - pinctrl-0 = <&dvb_p_ts1_pins>; - pinctrl-1 = <&dvb_s_ts1_pins>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; */ - /* dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - dtv_demod0 = "Avl6211"; - dtv_demod0_i2c_adap_id = <2>; - dtv_demod0_i2c_addr = <0xc6>; - dtv_demod0_reset_value = <0>; - dtv_demod0_reset_gpio = <&gpio GPIOZ_15 GPIO_ACTIVE_HIGH>; - fe0_dtv_demod = <0>; - fe0_ts = <1>; - fe0_dev = <0>; - }; */ - - //dvbci { - // compatible = "amlogic, dvbci"; - // dev_name = "dvbci"; - // io_type = <1>; /* 0=iobus,1=spi*/ - // interrupts = < 0 70 1 >; - // dvbci_io { - // reset_pin = <&gpio GPIODV_12 GPIO_ACTIVE_HIGH>; - // cd_pin1 = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - // cd_pin2 = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - // pwr_pin = <&gpio GPIODV_11 GPIO_ACTIVE_HIGH>; - // irq_cam_pin = <&gpio GPIODV_28 GPIO_ACTIVE_HIGH>; - // ex_tsin_en_pin = <&gpio GPIODV_25 GPIO_ACTIVE_HIGH>; - // irq_cd1 = <6>; - /*below is spi config,*/ - /*if use iobus you need add iobus config below */ - // spi_bus_num = <0>; - // spi_chip_select = <0>; - // spi_max_frequency = <300000>; /* unit: hz */ - // spi_mode = <3>; /* mode: 0, 1, 2, 3 */ - // spi_cs_delay = <10 100>; /* hold_high_delay, clk_cs_delay (unit: us) */ - // spi_write_check = <0>; /* 0=disable, 1=enable */ - // }; - //}; -}; -/*&i2c_a { - status = "disabled"; -};*/ -/*&i2c_b { - status = "okay"; -};*/ - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<6 0x7800000>; - amlogic,clrmask=<6 0x07e0000>; - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8","GPIOH_9"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<6 0x10000000>; /*spdif_out*/ - amlogic,clrmask=<6 0x8000000>; - amlogic,pins ="GPIOH_4"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<5 0xf00000>; - amlogic,clrmask=<5 0x3c33>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; - - aml_dmic:audio_dmic{ - amlogic,setmask=<2 0xc0>; - amlogic,clrmask=<1 0x60c000 - 2 0x18000 - 3 0x18>; - amlogic,pins = "GPIODV_24","GPIODV_25"; - }; -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxl_p231_1g.dts b/arch/arm64/boot/dts/amlogic/gxl_p231_1g.dts deleted file mode 100644 index d9096210570b0..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxl_p231_1g.dts +++ /dev/null @@ -1,1213 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/gxl_p231_1g.dts - * - * Copyright (C) 2015 Amlogic, Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxl.dtsi" -/ { - model = "Amlogic"; - compatible = "amlogic, Gxbb"; - amlogic-dt-id = "gxl_p231_1g"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x100000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3133440=30M(0x1e) support 8bit **/ - size = <0x0 0x1e00000>; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 1920x1080x2x4 =16+4 M */ - // size = <0x0 0x01400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - /* 1920x1080x2x4 =16 M */ - size = <0x0 0x01000000>; - alignment = <0x0 0x400000>; - }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "shared-dma-pool"; - size = <0x0 0x0>; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /*vm_reserved:linux,vm { - compatible = "amlogic, vm_memory"; - size = <0x0 0x2000000>; - };*/ - - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - led_active_low = <1>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - logo_addr = "0x3d851000"; - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1 - 0 9 1>; - phy-mode= "rmii"; - pinctrl-names = "internal_eth_pins"; - pinctrl-0 = <&internal_eth_pins>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq", - "phyirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - buffer-size = <3133440>; - hw-version = <2>; - }; - /*if you want to use vdin just modify status to "ok"*/ - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <16>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <1>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0>;/*1:enabel ;0:disable*/ - wb_en = <0>;/*1:enabel ;0:disable*/ - cm_en = <0>;/*1:enabel ;0:disable*/ - }; - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - /*vm { - compatible = "amlogic, vm"; - memory-region = <&vm_reserved>; - dev_name = "vm"; - status = "okay"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - //if use bt, open it - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "okay"; - gpio_reset = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - dhd_static_buf; //if use bcm wifi, config dhd_static_buf and 32k as bellow - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ; - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc{ - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**256KB*/ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 4>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER","MMC_CAP_SDIO_IRQ"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "gpio"; - pinctrl-0 = <&aml_cam_gpio_pins> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <10>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x80000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11= <&keysn_11>; - unifykey-index-12= <&keysn_12>; - unifykey-index-13= <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "prpubkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "prprivkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <2>; - #size-cells = <2>; - ranges; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&b_uart_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&c_uart_pins>; - resets = <&clock GCLK_IDX_UART2>; - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_b_uart_pins>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <2>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_5 0>; - mute_inv; - hp_disable; - sleep_time = <100>; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>; /*"GPIOAO_2";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; -}; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<6 0x7800000>; - amlogic,clrmask=<6 0x07e0000>; - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8","GPIOH_9"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<6 0x10000000>; /*spdif_out*/ - amlogic,clrmask=<6 0x8000000>; - amlogic,pins ="GPIOH_4"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<5 0xf00000>; - amlogic,clrmask=<5 0x3c33>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxl_pxp.dts b/arch/arm64/boot/dts/amlogic/gxl_pxp.dts deleted file mode 100644 index 50eecbf0d0e5f..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxl_pxp.dts +++ /dev/null @@ -1,1148 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/gxl_pxp.dts - * - * Copyright (C) 2015 Amlogic, Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxl.dtsi" -/ { - model = "Amlogic"; - compatible = "amlogic, gxl"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3133440=30M(0x1e) support 8bit **/ - size = <0x0 0x1e00000>; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 1920x1080x2x4 =16+4 M */ - // size = <0x0 0x01400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - /* 1920x1080x2x4 =16 M */ - size = <0x0 0x01000000>; - alignment = <0x0 0x400000>; - }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x2000000>; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xbc00000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /*vm_reserved:linux,vm { - compatible = "amlogic, vm_memory"; - size = <0x0 0x2000000>; - };*/ - - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - pxp_mode = <1>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x3d851000"; - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - buffer-size = <3133440>; - hw-version = <2>; - }; - /*if you want to use vdin just modify status to "ok"*/ - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <16>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <1>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - /*vm { - compatible = "amlogic, vm"; - memory-region = <&vm_reserved>; - dev_name = "vm"; - status = "okay"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "disabled"; - gpio_reset = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "disabled"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_HIGH"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ; - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - //caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <50000000>; - tx_phase = <0>; - max_req_size = <0x20000>; /**256KB*/ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED","MMC_CAP_NONREMOVABLE"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - //irq_in = <3>; - //irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "gpio"; - pinctrl-0 = <&aml_cam_gpio_pins> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <10>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <11>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <2>; - #size-cells = <2>; - ranges; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "disabled"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - status = "disabled"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "disabled"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&b_uart_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - resets = <&clock GCLK_IDX_UART2>; - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_b_uart_pins>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, gxl-dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - status = "disable"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, aml-gxl-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - status = "disable"; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, aml-gxl-usb3"; - portnum = <1>; - reg = <0x0 0xd0078080 0x0 0x20>; - interrupts = <0 16 4>; - status = "disable"; - }; - - dwc2_a { - compatible = "amlogic, gxl_dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "disable"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <512>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_5 0>; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; -}; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<6 0x7800000>; - amlogic,clrmask=<6 0x07e0000>; - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8","GPIOH_9"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<6 0x10000000>; /*spdif_out*/ - amlogic,clrmask=<6 0x8000000>; - amlogic,pins ="GPIOH_4"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<5 0xf00000>; - amlogic,clrmask=<5 0x3c33>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; -&efuse { - status = "disabled"; -}; -&audio_data{ - status = "disabled"; -}; -&defendkey { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxl_skt.dts b/arch/arm64/boot/dts/amlogic/gxl_skt.dts deleted file mode 100644 index 18ef86f6edf8d..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxl_skt.dts +++ /dev/null @@ -1,1196 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/gxl_skt.dts - * - * Copyright (C) 2015 Amlogic, Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxl.dtsi" -/ { - model = "Amlogic"; - compatible = "amlogic, Gxbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3133440=30M(0x1e) support 8bit **/ - size = <0x0 0x1e00000>; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 1920x1080x2x4 =16+4 M */ - // size = <0x0 0x01400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - /* 1920x1080x2x4 =16 M */ - size = <0x0 0x01000000>; - alignment = <0x0 0x400000>; - }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x2000000>; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xbc00000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /*vm_reserved:linux,vm { - compatible = "amlogic, vm_memory"; - size = <0x0 0x2000000>; - };*/ - - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - logo_addr = "0x3d851000"; - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1>; - phy-mode= "rmii"; - pinctrl-names = "internal_eth_pins"; - pinctrl-0 = <&internal_eth_pins>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - buffer-size = <3133440>; - hw-version = <2>; - }; - /*if you want to use vdin just modify status to "ok"*/ - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <16>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <1>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0>;/*1:enabel ;0:disable*/ - wb_en = <0>;/*1:enabel ;0:disable*/ - cm_en = <0>;/*1:enabel ;0:disable*/ - }; - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - /*vm { - compatible = "amlogic, vm"; - memory-region = <&vm_reserved>; - dev_name = "vm"; - status = "okay"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "disabled"; - gpio_reset = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_HIGH"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ; - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc{ - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**256KB*/ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_UHS_SDR12", - "MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", "MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - /*if card have no switch gpio, remove all relative to vol_switch */ - vol_switch = <&gpio GPIODV_26 GPIO_ACTIVE_HIGH>; - vol_switch_18 = <1>; /* 1 = high, 0 = low */ - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 4>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER","MMC_CAP_SDIO_IRQ"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "gpio"; - pinctrl-0 = <&aml_cam_gpio_pins> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <10>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <11>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <2>; - #size-cells = <2>; - ranges; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&b_uart_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&c_uart_pins>; - resets = <&clock GCLK_IDX_UART2>; - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_b_uart_pins>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <2>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_5 0>; - mute_inv; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; -}; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<6 0x7800000>; - amlogic,clrmask=<6 0x07e0000>; - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8","GPIOH_9"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<6 0x10000000>; /*spdif_out*/ - amlogic,clrmask=<6 0x8000000>; - amlogic,pins ="GPIOH_4"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<5 0xf00000>; - amlogic,clrmask=<5 0x3c33>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "disabled"; -}; -&defendkey { - status = "okay"; -}; - -&spicc{ - status = "disabled"; - pinctrl-names = "spicc_pulldown","spicc_pullup"; - pinctrl-0 = <&spicc_pulldown_x8x9x11 &spicc_pins_x8x9x11>; - pinctrl-1 = <&spicc_pullup_x8x9x11 &spicc_pins_x8x9x11>; - num_chipselect = <1>; - cs-gpios = <&gpio GPIOX_10 GPIO_ACTIVE_HIGH>; - dma_en = <0>; - dma_tx_threshold = <3>; - dma_rx_threshold = <3>; - dma_num_per_read_burst = <3>; - dma_num_per_write_burst = <3>; - delay_control = <0x15>; - ssctl = <0>; -}; - diff --git a/arch/arm64/boot/dts/amlogic/gxm_pxp.dts b/arch/arm64/boot/dts/amlogic/gxm_pxp.dts deleted file mode 100644 index a6fc2ce7b6c66..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxm_pxp.dts +++ /dev/null @@ -1,1159 +0,0 @@ -/* - * Amlogic Ltd. GXBaby Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxl.dtsi" -/ { - model = "Amlogic"; - compatible = "amlogic, Gxm"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - /*fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - };*/ - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3133440=30M(0x1e) support 8bit **/ - size = <0x0 0x1e00000>; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x4000000>; - }; - - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 1920x1080x2x4 =16+4 M */ - // size = <0x0 0x01400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - /* 1920x1080x2x4 =16 M */ - size = <0x0 0x01000000>; - alignment = <0x0 0x400000>; - }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x2000000>; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xbc00000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /*vm_reserved:linux,vm { - compatible = "amlogic, vm_memory"; - size = <0x0 0x2000000>; - };*/ - - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - //memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01851000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - pxp_mode = <1>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x3d851000"; /*ion base + fb0 memory size for uboot logo osd1*/ - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - buffer-size = <3133440>; - hw-version = <2>; - }; - /*if you want to use vdin just modify status to "ok"*/ - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <16>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <1>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - /*vm { - compatible = "amlogic, vm"; - memory-region = <&vm_reserved>; - dev_name = "vm"; - status = "okay"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "disabled"; - gpio_reset = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "disabled"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_HIGH"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ; - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "disabled"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**256KB*/ - // gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED","MMC_CAP_NONREMOVABLE"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - //irq_in = <3>; - //irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "disabled"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "gpio"; - pinctrl-0 = <&aml_cam_gpio_pins> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <10>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <11>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <2>; - #size-cells = <2>; - ranges; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "disabled"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - status = "disabled"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "disabled"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&b_uart_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - resets = <&clock GCLK_IDX_UART2>; - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_b_uart_pins>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, gxl-dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - status = "disable"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, aml-gxl-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - status = "disable"; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, aml-gxl-usb3"; - portnum = <1>; - reg = <0x0 0xd0078080 0x0 0x20>; - interrupts = <0 16 4>; - status = "disable"; - }; - - dwc2_a { - compatible = "amlogic, gxl_dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "disable"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <512>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_5 0>; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cluster0"; - device_type = "cpufreq"; - }; - cpufreq_cool_cluster1 { - min_state = <500000>; - dyn_coeff = <140>; - cluster_id = <1>; - node_name = "cluster1"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - cpucore_cool_cluster1 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <1>; - node_name = "cpu_core_cluster1"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "t82x"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - cpu_cluster1:cpu_core_cluster1 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2450>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map0 { - trip = <&control>; - cooling-device = <&cluster0 0 4>; - contribution = <1024>; - }; - cpufreq_cooling_map1 { - trip = <&control>; - cooling-device = <&cluster1 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map0 { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - cpucore_cooling_map1 { - trip = <&control>; - cooling-device = <&cpu_cluster1 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&t82x_gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; -}; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<6 0x7800000>; - amlogic,clrmask=<6 0x07e0000>; - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8","GPIOH_9"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<6 0x10000000>; /*spdif_out*/ - amlogic,clrmask=<6 0x8000000>; - amlogic,pins ="GPIOH_4"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<5 0xf00000>; - amlogic,clrmask=<5 0x3c33>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "disabled"; -}; -&defendkey { - status = "okay"; -}; -&t82x_gpu { - tbl = <&dvfs285_cfg &dvfs400_cfg &dvfs500_cfg &dvfs666_cfg &dvfs666_cfg>; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxm_q201_1g.dts b/arch/arm64/boot/dts/amlogic/gxm_q201_1g.dts deleted file mode 100644 index cc45d2f09fa6c..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxm_q201_1g.dts +++ /dev/null @@ -1,1262 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/gxm_q201_1g.dts - * - * Copyright (C) 2015 Amlogic, Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxm.dtsi" -/ { - model = "Amlogic"; - compatible = "amlogic, Gxm"; - amlogic-dt-id = "gxm_q201_1g"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x100000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - /*fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - };*/ - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3133440=30M(0x1e) support 8bit **/ - size = <0x0 0x1e00000>; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x4000000>; - }; - - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 1920x1080x2x4 =16+4 M */ - // size = <0x0 0x01400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - /* 1920x1080x2x4 =16 M */ - size = <0x0 0x01000000>; - alignment = <0x0 0x400000>; - }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "shared-dma-pool"; - size = <0x0 0x0>; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /*vm_reserved:linux,vm { - compatible = "amlogic, vm_memory"; - size = <0x0 0x2000000>; - };*/ - - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - led_active_low = <1>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - //memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01851000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - logo_addr = "0x3d851000"; /*ion base + fb0 memory size for uboot logo osd1*/ - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1 - 0 9 1>; - phy-mode= "rmii"; - pinctrl-names = "internal_eth_pins"; - pinctrl-0 = <&internal_eth_pins>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq", - "phyirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - buffer-size = <3133440>; - hw-version = <2>; - }; - /*if you want to use vdin just modify status to "ok"*/ - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <16>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <1>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0>;/*1:enabel ;0:disable*/ - wb_en = <0>;/*1:enabel ;0:disable*/ - cm_en = <0>;/*1:enabel ;0:disable*/ - }; - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - hevc_enc{ - compatible = "cnm, HevcEnc"; - //memory-region = <&hevc_enc_reserved>; - dev_name = "HevcEnc"; - status = "okay"; - interrupts = <0 187 1>; - interrupt-names = "wave420l_irq"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_reg_base{ - reg = <0x0 0xc8810000 0x0 0x4000>; - }; - }; - - /*vm { - compatible = "amlogic, vm"; - memory-region = <&vm_reserved>; - dev_name = "vm"; - status = "okay"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - //if use bt, open it - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "okay"; - gpio_reset = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - dhd_static_buf; //if use bcm wifi, config dhd_static_buf and 32k as bellow - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ; - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc{ - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**256KB*/ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 4>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER","MMC_CAP_SDIO_IRQ"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "gpio"; - pinctrl-0 = <&aml_cam_gpio_pins> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&instaboot>; - part-7 = <&boot>; - part-8 = <&system>; - part-9 = <&cache>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - instaboot:instaboot{ - pname = "instaboot"; - size = <0x0 0x20000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11= <&keysn_11>; - unifykey-index-12= <&keysn_12>; - unifykey-index-13= <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "prpubkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "prprivkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <2>; - #size-cells = <2>; - ranges; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&b_uart_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&c_uart_pins>; - resets = <&clock GCLK_IDX_UART2>; - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_b_uart_pins>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <3>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_5 0>; - mute_inv; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>; /*"GPIOAO_2";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cluster0"; - device_type = "cpufreq"; - }; - cpufreq_cool_cluster1 { - min_state = <500000>; - dyn_coeff = <140>; - cluster_id = <1>; - node_name = "cluster1"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - cpucore_cool_cluster1 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <1>; - node_name = "cpu_core_cluster1"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "t82x"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - cpu_cluster1:cpu_core_cluster1 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2450>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map0 { - trip = <&control>; - cooling-device = <&cluster0 0 4>; - contribution = <1024>; - }; - cpufreq_cooling_map1 { - trip = <&control>; - cooling-device = <&cluster1 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map0 { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - cpucore_cooling_map1 { - trip = <&control>; - cooling-device = <&cpu_cluster1 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&t82x_gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; -}; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<6 0x7800000>; - amlogic,clrmask=<6 0x07e0000>; - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8","GPIOH_9"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<6 0x10000000>; /*spdif_out*/ - amlogic,clrmask=<6 0x8000000>; - amlogic,pins ="GPIOH_4"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<5 0xf00000>; - amlogic,clrmask=<5 0x3c33>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; -&efuse { - status = "ok"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; -&t82x_gpu { - tbl = <&dvfs285_cfg &dvfs400_cfg &dvfs500_cfg &dvfs666_cfg &dvfs666_cfg>; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxm_q201_2g.dts b/arch/arm64/boot/dts/amlogic/gxm_q201_2g.dts deleted file mode 100644 index 589d128b86020..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxm_q201_2g.dts +++ /dev/null @@ -1,1278 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/gxm_q201_2g.dts - * - * Copyright (C) 2015 Amlogic, Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxm.dtsi" -/ { - model = "Amlogic"; - compatible = "amlogic, Gxm"; - amlogic-dt-id = "gxm_q201_2g"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x100000 0x0 0x7f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - /*fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - };*/ - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3133440=30M(0x1e) support 8bit **/ - size = <0x0 0x1e00000>; - //no-map; - }; - - chunk_reserved:linux,chunk-reserve { - compatible = "amlogic, chunk-reserve"; - size = <0x0 0x4000000>; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x4000000>; - }; - - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 1920x1080x2x4 =16+4 M */ - // size = <0x0 0x01400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - /* 1920x1080x2x4 =16 M */ - size = <0x0 0x01000000>; - alignment = <0x0 0x400000>; - }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "shared-dma-pool"; - size = <0x0 0x0>; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /*vm_reserved:linux,vm { - compatible = "amlogic, vm_memory"; - size = <0x0 0x2000000>; - };*/ - - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; - led_active_low = <1>; - }; - - chunk-reserve { - compatible = "amlogic, chunk-reserve"; - memory-region = <&chunk_reserved>; - status = "okay"; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - //memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01851000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - logo_addr = "0x7d851000"; /*ion base + fb0 memory size for uboot logo osd1*/ - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1>; - phy-mode= "rmii"; - pinctrl-names = "internal_eth_pins"; - pinctrl-0 = <&internal_eth_pins>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - buffer-size = <3133440>; - hw-version = <2>; - }; - /*if you want to use vdin just modify status to "ok"*/ - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <16>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <1>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0>;/*1:enabel ;0:disable*/ - wb_en = <0>;/*1:enabel ;0:disable*/ - cm_en = <0>;/*1:enabel ;0:disable*/ - }; - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - hevc_enc{ - compatible = "cnm, HevcEnc"; - //memory-region = <&hevc_enc_reserved>; - dev_name = "HevcEnc"; - status = "okay"; - interrupts = <0 187 1>; - interrupt-names = "wave420l_irq"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_reg_base{ - reg = <0x0 0xc8810000 0x0 0x4000>; - }; - }; - - /*vm { - compatible = "amlogic, vm"; - memory-region = <&vm_reserved>; - dev_name = "vm"; - status = "okay"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - //if use bt, open it - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "okay"; - gpio_reset = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - dhd_static_buf; //if use bcm wifi, config dhd_static_buf and 32k as bellow - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ; - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc{ - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**256KB*/ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 4>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER","MMC_CAP_SDIO_IRQ"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "gpio"; - pinctrl-0 = <&aml_cam_gpio_pins> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&instaboot>; - part-7 = <&boot>; - part-8 = <&system>; - part-9 = <&cache>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - instaboot:instaboot{ - pname = "instaboot"; - size = <0x0 0x20000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11= <&keysn_11>; - unifykey-index-12= <&keysn_12>; - unifykey-index-13= <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "prpubkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "prprivkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - vend-data = <&vend_data>; - hdmi5v_pwr_ctrl = <&gpio GPIOH_3 GPIO_ACTIVE_LOW>; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <2>; - #size-cells = <2>; - ranges; - vend_data: vend_data{ /* Should modified by Customer */ - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "MBox Meson Ref"; /* Max Chars: 16 */ - }; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&b_uart_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&c_uart_pins>; - resets = <&clock GCLK_IDX_UART2>; - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_b_uart_pins>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <3>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_5 0>; - mute_inv; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>; /*"GPIOAO_2";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cluster0"; - device_type = "cpufreq"; - }; - cpufreq_cool_cluster1 { - min_state = <500000>; - dyn_coeff = <140>; - cluster_id = <1>; - node_name = "cluster1"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - cpucore_cool_cluster1 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <1>; - node_name = "cpu_core_cluster1"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "t82x"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - cpu_cluster1:cpu_core_cluster1 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2450>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map0 { - trip = <&control>; - cooling-device = <&cluster0 0 4>; - contribution = <1024>; - }; - cpufreq_cooling_map1 { - trip = <&control>; - cooling-device = <&cluster1 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map0 { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - cpucore_cooling_map1 { - trip = <&control>; - cooling-device = <&cpu_cluster1 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&t82x_gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; -}; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<6 0x7800000>; - amlogic,clrmask=<6 0x07e0000>; - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8","GPIOH_9"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<6 0x10000000>; /*spdif_out*/ - amlogic,clrmask=<6 0x8000000>; - amlogic,pins ="GPIOH_4"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<5 0xf00000>; - amlogic,clrmask=<5 0x3c33>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; -&efuse { - status = "ok"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; -&t82x_gpu { - tbl = <&dvfs285_cfg &dvfs400_cfg &dvfs500_cfg &dvfs666_cfg &dvfs666_cfg>; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxm_skt.dts b/arch/arm64/boot/dts/amlogic/gxm_skt.dts deleted file mode 100644 index b2823613f3793..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxm_skt.dts +++ /dev/null @@ -1,1222 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/gxm_skt.dts - * - * Copyright (C) 2015 Amlogic, Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxm.dtsi" -/ { - model = "Amlogic"; - compatible = "amlogic, Gxm"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - /*fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - };*/ - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /** 10x3133440=30M(0x1e) support 8bit **/ - size = <0x0 0x1e00000>; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x4000000>; - }; - - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 1920x1080x2x4 =16+4 M */ - // size = <0x0 0x01400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - /* 1920x1080x2x4 =16 M */ - size = <0x0 0x01000000>; - alignment = <0x0 0x400000>; - }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x2000000>; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xd000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /*vm_reserved:linux,vm { - compatible = "amlogic, vm_memory"; - size = <0x0 0x2000000>; - };*/ - - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - //memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01851000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - logo_addr = "0x3d851000"; /*ion base + fb0 memory size for uboot logo osd1*/ - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1>; - phy-mode= "rmii"; - pinctrl-names = "internal_eth_pins"; - pinctrl-0 = <&internal_eth_pins>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - buffer-size = <3133440>; - hw-version = <2>; - }; - /*if you want to use vdin just modify status to "ok"*/ - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <16>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <1>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0>;/*1:enabel ;0:disable*/ - wb_en = <0>;/*1:enabel ;0:disable*/ - cm_en = <0>;/*1:enabel ;0:disable*/ - }; - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - hevc_enc{ - compatible = "cnm, HevcEnc"; - //memory-region = <&hevc_enc_reserved>; - dev_name = "HevcEnc"; - status = "okay"; - interrupts = <0 187 1>; - interrupt-names = "wave420l_irq"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_reg_base{ - reg = <0x0 0xc8810000 0x0 0x4000>; - }; - }; - - /*vm { - compatible = "amlogic, vm"; - memory-region = <&vm_reserved>; - dev_name = "vm"; - status = "okay"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "disabled"; - gpio_reset = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "disabled"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_HIGH"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ; - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc{ - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**256KB*/ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - /*if card have no switch gpio, remove all relative to vol_switch */ - //vol_switch = <&gpio GPIODV_26 GPIO_ACTIVE_HIGH>; - //vol_switch_18 = <1>; /* 1 = high, 0 = low */ - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 4>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER","MMC_CAP_SDIO_IRQ"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "gpio"; - pinctrl-0 = <&aml_cam_gpio_pins> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - status = "okay"; - }; - };*/ - partitions: partitions{ - parts = <10>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <11>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <2>; - #size-cells = <2>; - ranges; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&b_uart_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&c_uart_pins>; - resets = <&clock GCLK_IDX_UART2>; - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_b_uart_pins>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <3>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_5 0>; - mute_inv; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cluster0"; - device_type = "cpufreq"; - }; - cpufreq_cool_cluster1 { - min_state = <500000>; - dyn_coeff = <140>; - cluster_id = <1>; - node_name = "cluster1"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - cpucore_cool_cluster1 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <1>; - node_name = "cpu_core_cluster1"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "t82x"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - cpu_cluster1:cpu_core_cluster1 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2450>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map0 { - trip = <&control>; - cooling-device = <&cluster0 0 4>; - contribution = <1024>; - }; - cpufreq_cooling_map1 { - trip = <&control>; - cooling-device = <&cluster1 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map0 { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - cpucore_cooling_map1 { - trip = <&control>; - cooling-device = <&cpu_cluster1 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&t82x_gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 4>; - contribution = <1024>; - }; - }; - }; - }; -}; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<6 0x7800000>; - amlogic,clrmask=<6 0x07e0000>; - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8","GPIOH_9"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<6 0x10000000>; /*spdif_out*/ - amlogic,clrmask=<6 0x8000000>; - amlogic,pins ="GPIOH_4"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<5 0xf00000>; - amlogic,clrmask=<5 0x3c33>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "disabled"; -}; -&defendkey { - status = "okay"; -}; -&t82x_gpu { - tbl = <&dvfs285_cfg &dvfs400_cfg &dvfs500_cfg &dvfs666_cfg &dvfs666_cfg>; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxtvbb_9023_skt.dts b/arch/arm64/boot/dts/amlogic/gxtvbb_9023_skt.dts deleted file mode 100644 index 2130c79d0e76d..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxtvbb_9023_skt.dts +++ /dev/null @@ -1,1147 +0,0 @@ -/* - * Amlogic Ltd. GXtvBaby 9023 skt Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxtvbb.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, gxtvbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x7f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - /*fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - };*/ - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x2c00000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x03000000>; - //alignment = <0x0 0x400000>; - //}; - demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x4000000>; - }; - - /* PICDEC reserved memory */ - picdec_reserved:linux,picdec { - compatible = "amlogic, picdec_memory"; - size = <0x0 0x1000000>; - //no-map; - }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x1000000>; - }; - /* AVC Encode CMA pool */ - avc_cma_reserved:linux,avc_cma { - compatible = "shared-dma-pool"; - linux,phandle = <1>; - reusable; - size = <0x0 0x2400000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /* vdec CMA pool */ - vdec_cma_reserved:linux,vdec_cma { - compatible = "shared-dma-pool"; - linux,phandle = <2>; - reusable; - size = <0x0 0x12000000>; - alignment = <0x0 0x400000>; - }; - - jpegenc_cma_reserved:linux,jpegenc_cma { - compatible = "shared-dma-pool"; - linux,phandle = <3>; - reusable; - size = <0x0 0x2400000>; - alignment = <0x0 0x400000>; - }; - /* vdin0 CMA pool */ - vdin0_cma_reserved:linux,vdin0_cma { - compatible = "shared-dma-pool"; - linux,phandle = <4>; - reusable; - /* 3840x2160x2x4 =64+4 M */ - size = <0x0 0x04400000>; - alignment = <0x0 0x400000>; - }; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - tvafe_cma_reserved:linux,tvafe_cma { - compatible = "shared-dma-pool"; - linux,phandle = <6>; - reusable; - /* 5 M */ - size = <0x0 0x00800000>; - alignment = <0x0 0x400000>; - }; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - /*memory-region = <&fb_reserved>;*/ - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - /*pxp_mode = <1>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x7d851000"; - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC0800000 0x0 0xb00000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x2000>; - }; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - memory-region = <&vdec_cma_reserved>; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <0>;/*0:use reserved;1:use cma*/ - memory-region = <&di_reserved>; - //memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <4596800>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <1>; - }; - vdin0 { - compatible = "amlogic, vdin"; - memory-region = <&vdin0_cma_reserved>; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - }; - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - interrupts = <0 56 1>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - }; - tvafe { - compatible = "amlogic, tvafe"; - memory-region = <&tvafe_cma_reserved>; - dev_name = "tvafe"; - status = "ok"; - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <2>; - interrupts = <0 65 1 - 0 66 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIOW_4 GPIO_ACTIVE_HIGH>, - <&gpio GPIOW_3 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - memory-region = <&demod_reserved>; - tuner0 = "mxl661_tuner"; - tuner0_i2c_adap_id = <1>; - tuner0_i2c_addr = <0x60>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - }; - aml_local_dimming { - compatible = "amlogic, aml_local_dimming"; - dev_name = "aml_local_dimming"; - status = "disable"; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <1>;/*1:enabel ;0:disable*/ - wb_en = <1>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - jpegenc{ - compatible = "amlogic, jpegenc"; - //memory-region = <&jpegenc_reserved>; - memory-region = <&jpegenc_cma_reserved>; - dev_name = "jpegenc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "ok"; - gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - }; - - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_1_8V_DDR", - "MMC_CAP_ERASE", "MMC_CAP_HW_RESET", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <200000000>; - tx_phase = <1>; - max_req_size = <0x20000>; /**256KB*/ - // gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //,"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104","MMC_CAP_NONREMOVABLE"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - - ampmu4 { - compatible = "amlogic, pmu4_prober"; - #address-cells = <1>; - #size-cells = <0>; - - pmu4 { - compatible = "amlogic, pmu4"; - sub_type = "aml_pmu4"; - i2c_bus = "i2c_bus_b"; - reg = <0x35>; - use_24m_clock = <0x0>; - status = "disable"; - }; - }; - - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXTVBB"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x0>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_a_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxbabytv"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d007800 { - compatible = "amlogic, amlogic-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-usb3"; - portnum = <1>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <512>; - cpu-type = "gxtvbaby"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "okay"; - }; - pmu4_codec:pmu4{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_pmu4_codec"; - status = "disable"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - //sound-dai = <&pmu4_codec>; - sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - ethmac: ethernet@0xc9410000{ - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8>; - interrupts = <0 8 1>; - phy-mode= "rmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <ð_pins>; - #rst_pin-gpios = <&gpio GPIOZ_14 0>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "t83x"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <1800>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&t83x_gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - - /* END OF AUDIO board specific */ - -}; - - &i2c_ao { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&ao_i2c_master>; - }; - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&a_i2c_master>; - }; - - &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&b_i2c_master_pin1>; - }; - &i2c_c { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&c_i2c_master>; - }; - &i2c_d { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&d_i2c_master>; - }; -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<8 0x7C0>; - amlogic,clrmask=<8 0x3800>; - amlogic,pins = "GPIOZ_1","GPIOZ_2","GPIOZ_3","GPIOZ_4","GPIOZ_5"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<8 0x4>; - amlogic,clrmask=<8 0x10 - 7 0x4000>; - amlogic,pins = "GPIOH_10"; - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<1 0x3c0000>; - amlogic,clrmask=<1 0x3C000000>; - amlogic,pins ="GPIOX_4", "GPIOX_5", "GPIOX_6", "GPIOX_7"; - }; - - eth_pins: eth_pins{ - amlogic,setmask =<8 0x1fffc000>; - amlogic,clrmask =<8 0x60000000>, - <9 0x1fff>; - amlogic,pins="GPIOZ_6","GPIOZ_7","GPIOZ_8","GPIOZ_9", - "GPIOZ_10","GPIOZ_11","GPIOZ_12","GPIOZ_13", - "GPIOZ_14","GPIOZ_15","GPIOZ_16","GPIOZ_17", - "GPIOZ_18","GPIOZ_19","GPIOZ_20"; - }; - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins = "GPIOW_3","GPIOW_4"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; - /*PWM-A*/ - /*pwm_a_pins:pwm_a_pins{ - amlogic,setmask=<10 0x200000>; - amlogic,clrmask=<10 0x405000>; - amlogic,pins="GPIOY_12"; - };*/ -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; - - &spicc{ - status = "okay"; - pinctrl-names = "spicc_pulldown","spicc_pullup"; - pinctrl-0 = <&spicc_pulldown_h6h7h8 &spicc_pins_h6h7h8>; - pinctrl-1 = <&spicc_pullup_h6h7h8 &spicc_pins_h6h7h8>; - num_chipselect = <1>; - cs-gpios = <&gpio GPIOH_9 GPIO_ACTIVE_HIGH>; - #address-cells = <1>; - #size-cells = <0>; - }; diff --git a/arch/arm64/boot/dts/amlogic/gxtvbb_p300.dts b/arch/arm64/boot/dts/amlogic/gxtvbb_p300.dts deleted file mode 100644 index 5cbdc3566b693..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxtvbb_p300.dts +++ /dev/null @@ -1,1901 +0,0 @@ -/* - * Amlogic Ltd. GXtvBaby Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxtvbb.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, gxtvbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x7f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - /*fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - };*/ - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x2c00000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x03000000>; - //alignment = <0x0 0x400000>; - //}; - demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - //size = <0x0 0x4000000>; - /* the most significant 64M memory reserved for ion */ - //reg = <0x0 0x3c000000 0x0 0x4000000>; /* for 1G memory */ - //reg = <0x0 0x5c000000 0x0 0x4000000>; /* for 1.5G memory */ - reg = <0x0 0x7c000000 0x0 0x4000000>; /* for 2G memory */ - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x0>; - multi-use; - }; -/* - amlvideo2_reserved:linux,amlvideo2 { - compatible = "amlogic, amlvideo2_memory"; - size = <0x0 0x01800000>; - }; -*/ - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - status = "disabled"; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - /*memory-region = <&fb_reserved>;*/ - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01851000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - // display_size_default: PAGE_ALIGN((1920*(align16(1080))/256*(256*16 + 16)+16)*3) = - // 0x1848000 (afbc body + afbc header + 16)*3 - display_size_default = <1920 1080 1920 3240 32>; - /*pxp_mode = <1>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x7d851000"; /*ion base + fb0 memory size for uboot logo osd1*/ - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC0800000 0x0 0xb00000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x2000>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <0>;/*0:use reserved;1:use cma*/ - memory-region = <&di_reserved>; - //memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <4596800>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <1>; - }; -/* - amlvideo2 { - compatible = "amlogic, amlvideo2"; - memory-region = <&amlvideo2_reserved>; - dev_name = "amlvideo2"; - status = "okay"; - }; -*/ - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <128>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <5>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none", - "hu_det_uart0","hu_det_uart1","hu_det_uart2"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - pinctrl-2 = <&hdmirx_pins &cha_uart_in>; - pinctrl-3 = <&hdmirx_pins &chb_uart_in>; - pinctrl-4 = <&hdmirx_pins &chc_uart_in>; - rx_port_maps = <0x3120>; - hdmiuart_share_cfg = <0>; - repeat = <0>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda83e000>; - hdmirx_data_port = <0xda83e004>; - hdmirx_ctrl_port = <0xda83e008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - en_4k_2_2k = <0>; - uart_scl_a_pin = <&gpio GPIOW_8 GPIO_ACTIVE_HIGH>; - uart_scl_b_pin = <&gpio GPIOW_12 GPIO_ACTIVE_HIGH>; - uart_scl_c_pin = <&gpio GPIOW_16 GPIO_ACTIVE_HIGH>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <2>; - interrupts = <0 65 1 - 0 66 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIOW_4 GPIO_ACTIVE_HIGH>, - <&gpio GPIOW_3 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - dtv_demod0_spectrum = <0>; - memory-region = <&demod_reserved>; - tuner0 = "si2151_tuner"; - tuner0_i2c_adap_id = <1>; - tuner0_i2c_addr = <0x60>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - pinctrl-names="atvdemod_agc"; - pinctrl-0=<&atvdemod_agc>; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <1>;/*1:enabel ;0:disable*/ - wb_en = <1>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "ok"; - gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - }; - - rtc { - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_1_8V_DDR", - "MMC_CAP_ERASE", "MMC_CAP_HW_RESET", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <100000000>; - tx_phase = <1>; - max_req_size = <0x20000>; /**256KB*/ - // gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED","MMC_CAP_UHS_SDR12", - "MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - /*if card have no switch gpio, remove all relative to vol_switch */ - vol_switch = <&gpio GPIOY_2 GPIO_ACTIVE_HIGH>; - vol_switch_18 = <1>; /* 1 = high, 0 = low */ - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11 = <&keysn_11>; - unifykey-index-12 = <&keysn_12>; - unifykey-index-13 = <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "hdcp22_rx_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "hdcp22_rx_fw"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "hdcp14_rx"; - key-device = "normal"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - };//End unifykey - - ampmu4 { - compatible = "amlogic, pmu4_prober"; - #address-cells = <1>; - #size-cells = <0>; - - pmu4 { - compatible = "amlogic, pmu4"; - sub_type = "aml_pmu4"; - i2c_bus = "i2c_bus_b"; - reg = <0x35>; - use_24m_clock = <0x1>; - status = "okay"; - }; - }; - - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "disabled"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXTVBB"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x2>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "disabled"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_a_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxbabytv"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d007800 { - compatible = "amlogic, amlogic-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-usb3"; - portnum = <1>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <512>; - cpu-type = "gxtvbaby"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio_ao GPIOAO_11 GPIO_ACTIVE_LOW>; - }; - - pwmled { - compatible = "amlogic, pwmled"; - dev_name = "pwmled"; - status = "disable"; - pwm = <6>; /* pwm_ao_a */ - polarity = <1>; /* 0-normal 1-inversed */ - max_brightness = <255>; - pinctrl-names = "pwm_ao_a_pins"; - pinctrl-0 = <&pwm_ao_a_pins>; - /* led timer data */ - expires = <400>; /* ms */ - expires_count = <8>; - }; - - lcd{ - compatible = "amlogic, lcd"; - dev_name = "lcd"; - mode = "tv"; - status = "okay"; - fr_auto_policy = <1>; /* 0=disable, 1=60/50hz, 2=60/50/48hz */ - key_valid = <0>; - resets = <&clock GCLK_IDX_VCLK2_ENCL &clock GCLK_IDX_VCLK2_VENCL>; - reset-names = "encl","vencl"; - interrupts = <0 78 1 0 3 1>; - interrupt-names = "vbyone","vbyone_vsync"; - pinctrl-names = "vbyone"; - pinctrl-0 = <&lcd_vbyone_pins>; - - /* power type:(0=cpu_gpio, 1=pmu_gpio, 2=signal, 3=extern, 0xff=ending) */ - /* power index:(point gpios_index, or extern_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - lcd_cpu-gpios = <&gpio GPIOX_3 GPIO_ACTIVE_HIGH - &gpio GPIOX_2 GPIO_ACTIVE_HIGH>; - lcd_cpu_gpio_names = "GPIOX_3","GPIOX_2"; - - lvds_0{ - model_name = "1080p-vfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2060 2650 1100 1480 120000000 160000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal, 3=auto range), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap, lane_reverse */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - lvds_1{ - model_name = "1080p-pclk"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2080 2720 1100 1380 133940000 156000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <0 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal, 3=auto range), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap, lane_reverse */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - lvds_2{ - model_name = "1080p-hfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2080 2720 1100 1380 133940000 156000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <1 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal, 3=auto range), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap, lane_reverse */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_0{ - model_name = "public"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4340 4700 2200 2850 480000000 614000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <0 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal, 3=auto range), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 50 /* panel power on */ - 2 0 0 200 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_1{ - model_name = "LG_RDL550WY"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 480000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal, 3=auto range), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 50 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_2{ - model_name = "INL_V580DJ2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2790 552000000 632000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal, 3=auto range), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 1 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 50 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_3{ - model_name = "BOE_HV550QU2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 560000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 1 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal, 3=auto range), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 0 1 0 10 /* 3d_enable=0 */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 30 /* signal disable */ - 0 1 2 0 /* 3d_enable pin reset to input */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - }; - - lcd_extern{ - compatible = "amlogic, lcd_extern"; - dev_name = "lcd_extern"; - status = "okay"; - key_valid = <0>; - - extern_0{ - index = <0>; - extern_name = "ext_default"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_second_address = <0xff>; /* 7bit i2c address, 0xff for none */ - i2c_bus = "i2c_bus_d"; - cmd_size = <9>; - /* init on/off: (type, value..., delay), must match cmd_size for every group */ - /* type: 0x00=cmd(bit[3:0]=1 for second_addr), 0x10=gpio, 0xff=ending*/ - /* value: i2c or spi cmd, or gpio index & level, fill 0x0 for no use */ - /* delay: unit ms */ - init_on = <0x00 0x20 0x01 0x02 0x00 0x40 0xFF 0x00 0x00 - 0x00 0x80 0x02 0x00 0x40 0x62 0x51 0x73 0x00 - 0x00 0x61 0x06 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0xC1 0x05 0x0F 0x00 0x08 0x70 0x00 0x00 - 0x00 0x13 0x01 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0x3D 0x02 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0xED 0x0D 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0x23 0x02 0x00 0x00 0x00 0x00 0x00 0x0A - 0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - init_off = <0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - }; - extern_1{ - index = <1>; - extern_name = "i2c_T5800Q"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_bus = "i2c_bus_d"; - }; - extern_2{ - index = <2>; - extern_name = "i2c_DLPC3439"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1b>; /* 7bit i2c address */ - i2c_bus = "i2c_bus_a"; - }; - }; - - backlight{ - compatible = "amlogic, backlight"; - dev_name = "backlight"; - status = "okay"; - key_valid = <0>; - pinctrl-names = "pwm_on","pwm_vs_on"; - pinctrl-0 = <&bl_pwm_on_pins>; - pinctrl-1 = <&bl_pwm_vs_on_pins>; - interrupts = <0 3 1 0 143 1>; - - /* power index:(point gpios_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - bl-gpios = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_HIGH - &gpio GPIOY_13 GPIO_ACTIVE_HIGH>; - bl_gpio_names = "GPIOAO_4","GPIOY_13"; - - backlight_0{ - index = <0>; - bl_name = "backlight_0"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 0=gpio, 1=pwm, 2=pwm_combo, 3=ldim, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_B"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <1 180 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - backlight_1{ - index = <1>; - bl_name = "backlight_1"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 0=gpio, 1=pwm, 2=pwm_combo, 3=ldim, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_VS"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <1 2 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_off_value, pwm_on_delay, pwm_off_delay */ - }; - backlight_2{ - index = <2>; - bl_name = "backlight_2"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <3>; /* 0=gpio, 1=pwm, 2=pwm_combo, 3=ldim, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - bl_ldim_region_row_col = <1 8>; - bl_ldim_mode = <1>; /* 1=single_side(top, bottom, left or right), 2=uniform(top/bottom, left/right) */ - bl_ldim_mapping = <0 1 2 3 4 5 6 7>; - ldim_dev_index = <0>; - }; - backlight_3{ - index = <3>; - bl_name = "backlight_3"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <3>; /* 0=gpio, 1=pwm, 2=pwm_combo, 3=ldim, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - 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) */ - ldim_dev_index = <2>; - }; - backlight_4{ - index = <4>; - bl_name = "backlight_4"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <3>; /* 0=gpio, 1=pwm, 2=pwm_combo, 3=ldim, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - 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_mapping = <0 1 2 3 4 5 6 7 8 9>; - ldim_dev_index = <1>; - }; - }; - - local_diming_device { - compatible = "amlogic, ldim_dev"; - dev_name = "ldim_dev"; - status = "disabled"; - pinctrl-names = "ldim_pwm0","ldim_pwm1"; - pinctrl-0 = <&ldim_pwm0_pins>; - pinctrl-1 = <&ldim_pwm1_pins>; - - ldim_dev-gpios = <&gpio GPIOX_9 GPIO_ACTIVE_HIGH - &gpio GPIOX_11 GPIO_ACTIVE_HIGH - &gpio GPIOY_4 GPIO_ACTIVE_HIGH>; - ldim_dev_gpio_names = "GPIOX_9","GPIOX_11","GPIOY_4"; - - ldim_dev_0 { - index = <0>; /* 120mA */ - type = <1>; /* 0=normal,1=spi,2=i2c */ - ldim_dev_name = "iw7019"; - ldim_pwm_pinmux_sel = "ldim_pwm0"; - ldim_pwm_port = "none"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - ldim_pwm_attr = <1 2 50>; /* pol, freq(Hz for pwm, v-freq mulit for pwm_vs), duty(%) */ - spi_bus_num = <0>; - spi_chip_select = <0>; - spi_max_frequency = <400000>; /* unit: hz */ - spi_mode = <0>; /* mode: 0, 1, 2, 3 */ - spi_cs_delay = <10 100>; /* hold_high_delay, clk_cs_delay (unit: us) */ - - en_gpio_on_off = <0 1 0>; /* ldim_dev-gpios index, on_level, off_level */ - lamp_err_gpio = <0xff>; /* ldim_dev-gpios index, 0xff=invalid */ - spi_write_check = <0>; /* 0=disable, 1=enable */ - - dim_max_min = <0xfff 0x7f>; /* dim_max, dim_min */ - cmd_size = <4>; - /* init: (type, data..., delay), must match cmd_size for every group */ - /* type: 0x00=cmd, 0xff=ending*/ - /* data: spi data, fill 0x0 for no use */ - /* delay: unit ms */ - init_on = < - /* step1: */ - 0x00 0x01 0x08 0x00 - /* step2:disable ocp and otp */ - 0x00 0x34 0x14 0x00 - 0x00 0x10 0x53 0x00 - /* step3: */ - 0x00 0x11 0x00 0x00 - 0x00 0x12 0x02 0x00 - 0x00 0x13 0x00 0x00 - 0x00 0x14 0x40 0x00 - 0x00 0x15 0x06 0x00 - 0x00 0x16 0x00 0x00 - 0x00 0x17 0x80 0x00 - 0x00 0x18 0x0a 0x00 - 0x00 0x19 0x00 0x00 - 0x00 0x1a 0xc0 0x00 - 0x00 0x1b 0x0e 0x00 - 0x00 0x1c 0x00 0x00 - 0x00 0x1d 0x00 0x00 - 0x00 0x1e 0x50 0x00 - 0x00 0x1f 0x00 0x00 - 0x00 0x20 0x63 0x00 - 0x00 0x21 0xff 0x00 - 0x00 0x2a 0xff 0x00 - 0x00 0x2b 0x41 0x00 - 0x00 0x2c 0x28 0x00 - 0x00 0x30 0xff 0x00 - 0x00 0x31 0x00 0x00 - 0x00 0x32 0x0f 0x00 - 0x00 0x33 0x40 0x00 - 0x00 0x34 0x40 0x00 - 0x00 0x35 0x00 0x00 - 0x00 0x3f 0xa3 0x00 - 0x00 0x45 0x00 0x00 - 0x00 0x47 0x04 0x00 - 0x00 0x48 0x60 0x00 - 0x00 0x4a 0x0d 0x00 - /* step4:set brightness */ - 0x00 0x01 0x7f 0x00 - 0x00 0x02 0xf7 0x00 - 0x00 0x03 0xff 0x00 - 0x00 0x04 0x7f 0x00 - 0x00 0x05 0xf7 0x00 - 0x00 0x06 0xff 0x00 - 0x00 0x07 0x7f 0x00 - 0x00 0x08 0xf7 0x00 - 0x00 0x09 0xff 0x00 - 0x00 0x0a 0x7f 0x00 - 0x00 0x0b 0xf7 0x00 - 0x00 0x0c 0xff 0x00 - /* step5: */ - 0x00 0x00 0x09 0x00 - /* step6: */ - 0x00 0x34 0x00 0x00 - 0xff 0x00 0x00 0x00>; - }; - ldim_dev_1 { - index = <1>; - type = <1>; /* 0=normal,1=spi,2=i2c */ - ldim_dev_name = "iw7027"; - ldim_pwm_pinmux_sel = "ldim_pwm0"; - ldim_pwm_port = "PWM_VS"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - ldim_pwm_attr = <1 2 50>; /* pol, freq(Hz for pwm, v-freq mulit for pwm_vs), duty(%) */ - spi_bus_num = <0>; - spi_chip_select = <0>; - spi_max_frequency = <400000>; /* unit: hz */ - spi_mode = <0>; /* mode: 0, 1, 2, 3 */ - spi_cs_delay = <10 100>; /* hold_high_delay, clk_cs_delay (unit: us) */ - - en_gpio_on_off = <0 1 0>; /* ldim_dev-gpios index, on_level, off_level */ - lamp_err_gpio = <0xff>; /* ldim_dev-gpios index, 0xff=invalid */ - spi_write_check = <0>; /* 0=disable, 1=enable */ - - dim_max_min = <0xfff 0x7f>; /* dim_max, dim_min */ - cmd_size = <4>; - /* init: (type, data..., delay), must match cmd_size for every group */ - /* type: 0x00=cmd, 0xff=ending*/ - /* data: spi data, fill 0x0 for no use */ - /* delay: unit ms */ - init_on = < - 0x00 0x23 0x03 0x00 - 0x00 0x24 0xff 0x00 - 0x00 0x25 0x00 0x00 - 0x00 0x26 0x00 0x00 - 0x00 0x27 0x60 0x00 - 0x00 0x29 0x00 0x00 - 0x00 0x2a 0x00 0x00 - /*0x00 0x2b 0x7f 0x00*/ - 0x00 0x2c 0x73 0x00 - 0x00 0x2d 0x37 0x00 - 0x00 0x31 0x93 0x00 - 0x00 0x32 0x0f 0x00 - 0x00 0x33 0xff 0x00 - 0x00 0x34 0xc8 0x00 - 0x00 0x35 0xbf 0x00 - 0xff 0x00 0x00 0x00>; - }; - ldim_dev_2 { - index = <2>; - type = <0>; /* 0=normal,1=spi,2=i2c */ - ldim_dev_name = "ob3350"; - ldim_pwm_pinmux_sel = "ldim_pwm1"; - ldim_pwm_port = "PWM_B"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - ldim_pwm_attr = <0 200 50>; /* pol, freq(Hz for pwm, v-freq mulit for pwm_vs), duty(%) */ - dim_max_min = <100 20>; /* dim_max, dim_min */ - en_gpio_on_off = <2 0 1>; /* ldim_dev-gpios index, on_level, off_level */ - }; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec { - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec: dummy { - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - pmu4_codec: pmu4 { - #sound-dai-cells = <0>; - compatible = "amlogic, aml_pmu4_codec"; - status = "okay"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - mute_gpio-gpios = <&gpio GPIOZ_6 GPIO_ACTIVE_HIGH>; - aux_dev = "tas5707"; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&pmu4_codec>; - //sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - tas5707 { - compatible = "amlogic, aml_tas5707_codec"; - codec_name = "tas5707"; - status = "okay"; - i2c_addr = <0x1B>; - i2c_bus = "i2c_bus_b"; - master_vol = <150>; - reset_pin = <&gpio GPIOX_19 GPIO_ACTIVE_LOW>; - input_mux_reg_buf = /bits/ 8 <0x00 0x01 0x77 0x72>;/*AD mode*/ - eq_enable = <0>; - drc_enable = <0>; - table_0 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - wall_0 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - table_1 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - wall_1 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - drc1_tko_table_0 = /bits/ 8 < - 0xFD 0xA2 0x14 0x90 /*0x40---drc1_t*/ - 0x03 0x84 0x21 0x09 /*0x41---drc1_k*/ - 0x00 0x08 0x42 0x10 /*0x42---drc1_o*/ - >; - drc1_table_0 = /bits/ 8 < - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3A---drc1_ae*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3B---drc1_aa*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3C---drc1_ad*/ - >; - drc1_tko_table_1 = /bits/ 8 < - 0xFD 0xA2 0x14 0x90 /*0x40---drc1_t*/ - 0x03 0x84 0x21 0x09 /*0x41---drc1_k*/ - 0x00 0x08 0x42 0x10 /*0x42---drc1_o*/ - >; - drc1_table_1 = /bits/ 8 < - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3A---drc1_ae*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3B---drc1_aa*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3C---drc1_ad*/ - >; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - ethmac: ethernet@0xc9410000{ - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8>; - interrupts = <0 8 1>; - phy-mode= "rmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <ð_pins>; - #rst_pin-gpios = <&gpio GPIOZ_14 0>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "t83x"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <1800>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&t83x_gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - - /* END OF AUDIO board specific */ -}; - - &i2c_ao { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&ao_i2c_master>; - }; - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&a_i2c_master>; - }; - - &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&b_i2c_master_pin1>; - }; - &i2c_c { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&c_i2c_master>; - }; - &i2c_d { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&d_i2c_master>; - }; -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<8 0x7E0>; - amlogic,clrmask=<8 0x3800>; - amlogic,pins = "GPIOZ_0","GPIOZ_1","GPIOZ_2","GPIOZ_3","GPIOZ_4","GPIOZ_5"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<8 0x4>; - amlogic,clrmask=<8 0x10 - 7 0x4000>; - amlogic,pins = "GPIOH_10"; - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<1 0x3c0000>; - amlogic,clrmask=<1 0x3C000000>; - amlogic,pins ="GPIOX_4", "GPIOX_5", "GPIOX_6", "GPIOX_7"; - }; - - eth_pins: eth_pins{ - amlogic,setmask =<8 0x19cf8000>; - amlogic,clrmask =<8 0x20000000>, - <9 0x1806>; - amlogic,pins="GPIOZ_7","GPIOZ_8","GPIOZ_9", - "GPIOZ_10","GPIOZ_11","GPIOZ_14","GPIOZ_15", - "GPIOZ_16","GPIOZ_19","GPIOZ_20"; - }; - - ldim_pwm0_pins:ldim_pwm0_pin { - amlogic,setmask = <2 0x00200000>; - amlogic,clrmask = <0 0x00900000 - 1 0x00000008 - 2 0x00180400 - 3 0x20000000>; - amlogic,pins = "GPIOX_10"; - }; - ldim_pwm1_pins:ldim_pwm1_pin { - amlogic,setmask = <10 0x00800000>; - amlogic,clrmask = <10 0x0100a000>; - amlogic,pins = "GPIOY_13"; - }; - - bl_pwm_on_pins:bl_pwm_on_pin { - amlogic,setmask = <10 0x00800000>; - amlogic,clrmask = <10 0x0100a000>; - amlogic,pins = "GPIOY_13"; - }; - bl_pwm_vs_on_pins:bl_pwm_vs_on_pin { - amlogic,setmask = <10 0x01000000>; - amlogic,clrmask = <10 0x0080a000>; - amlogic,pins = "GPIOY_13"; - }; - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <6 0x3def780>; - amlogic,clrmask = <6 0x04210800>, - <10 0x0000001e>; - amlogic,pins = "GPIOW_5","GPIOW_6","GPIOW_7","GPIOW_8", - "GPIOW_9","GPIOW_10","GPIOW_11","GPIOW_12", - "GPIOW_13","GPIOW_14","GPIOW_15","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - hu_det_none: hu_det_none { - amlogic,setmask = <6 0x3def780>, - ; - amlogic,clrmask = <6 0x04210800>, - <10 0x0000001e>; - amlogic,pins = "GPIOW_5"; - }; - cha_uart_in: cha_uart_in { - amlogic,setmask = <6 0x00000800>, - <10 0x00000002>; - amlogic,clrmask = <6 0x00000600>, - ; - amlogic,pins = "GPIOW_7","GPIOW_8"; - }; - chb_uart_in: chb_uart_in { - amlogic,setmask = <6 0x00010000>, - <10 0x00000004>; - amlogic,clrmask = <6 0x0000c000>, - ; - amlogic,pins = "GPIOW_11","GPIOW_12"; - }; - chc_uart_in: chc_uart_in { - amlogic,setmask = <6 0x00200000>, - <10 0x00000008>; - amlogic,clrmask = <6 0x00180000>, - ; - amlogic,pins = "GPIOW_15","GPIOW_16"; - }; - }; - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins = "GPIOW_3","GPIOW_4"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; - /* pwm_ao_a */ - pwm_ao_a_pins:pwm_ao_a_pins { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_11"; - }; -}; - - -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; - - &spicc{ - status = "okay"; - pinctrl-names = "spicc_pulldown","spicc_pullup"; - pinctrl-0 = <&spicc_pulldown_h6h7h8 &spicc_pins_h6h7h8>; - pinctrl-1 = <&spicc_pullup_h6h7h8 &spicc_pins_h6h7h8>; - num_chipselect = <1>; - cs-gpios = <&gpio GPIOH_9 GPIO_ACTIVE_HIGH>; - #address-cells = <1>; - #size-cells = <0>; - }; diff --git a/arch/arm64/boot/dts/amlogic/gxtvbb_p301.dts b/arch/arm64/boot/dts/amlogic/gxtvbb_p301.dts deleted file mode 100644 index ebe90ca2786cb..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxtvbb_p301.dts +++ /dev/null @@ -1,2077 +0,0 @@ -/* - * Amlogic Ltd. GXtvBaby Reference Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include "mesongxtvbb.dtsi" -#include -#include - -/ { - model = "Amlogic"; - compatible = "amlogic, gxtvbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - /*fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - };*/ - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x2c00000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x03000000>; - //alignment = <0x0 0x400000>; - //}; - demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - //size = <0x0 0x4000000>; - /* the most significant 64M memory reserved for ion */ - reg = <0x0 0x3c000000 0x0 0x4000000>; /* for 1G memory */ - //reg = <0x0 0x5c000000 0x0 0x4000000>; /* for 1.5G memory*/ - //reg = <0x0 0x7c000000 0x0 0x4000000>; /* for 2G memory */ - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x0>; - multi-use; - }; -/* - amlvideo2_reserved:linux,amlvideo2 { - compatible = "amlogic, amlvideo2_memory"; - size = <0x0 0x01800000>; - }; -*/ - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - status = "disabled"; - size = <0x0 0x0>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - /*memory-region = <&fb_reserved>;*/ - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01851000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - // display_size_default: PAGE_ALIGN((1920*(align16(1080))/256*(256*16 + 16)+16)*3) = - // 0x1848000 (afbc body + afbc header + 16)*3 - display_size_default = <1920 1080 1920 3240 32>; - /*pxp_mode = <1>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x3d851000"; /*ion base + fb0 memory size for uboot logo osd1*/ - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC0800000 0x0 0xb00000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x2000>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <0>;/*0:use reserved;1:use cma*/ - memory-region = <&di_reserved>; - //memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <4596800>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <1>; - }; -/* - amlvideo2 { - compatible = "amlogic, amlvideo2"; - memory-region = <&amlvideo2_reserved>; - dev_name = "amlvideo2"; - status = "okay"; - }; -*/ - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <128>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <5>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - hdmirx_uart { - compatible = "amlogic, hdmirx_uart"; - status = "ok"; - pinctrl-names = "hdmirx_init_pin","hu_det_none", - "hu_det_u1","hu_det_u2","hu_det_u3", - "hu_det_h1","hu_det_h2","hu_det_h3", - "hu_det_h1h2","hu_det_h1h3","hu_det_h2h3","hu_det_h1h2h3", - "hu_det_u1_h2","hu_det_u1_h3","hu_det_u1_h2h3", - "hu_det_u2_h1","hu_det_u2_h3","hu_det_u2_h1h3", - "hu_det_u3_h1","hu_det_u3_h2","hu_det_u3_h1h2"; - pinctrl-0 = <&hdmirx_init_pin>; - pinctrl-1 = <&hdmirx_init_pin &hu_hpds_gpio>; - pinctrl-2 = <&hdmirx_init_pin &hu_hpds_gpio &u_ch1_in>; - pinctrl-3 = <&hdmirx_init_pin &hu_hpds_gpio &u_ch2_in>; - pinctrl-4 = <&hdmirx_init_pin &hu_hpds_gpio &u_ch3_in>; - pinctrl-5 = <&hdmirx_init_pin &hu_hpd2_gpio &hu_hpd3_gpio>; - pinctrl-6 = <&hdmirx_init_pin &hu_hpd1_gpio &hu_hpd3_gpio>; - pinctrl-7 = <&hdmirx_init_pin &hu_hpd1_gpio &hu_hpd2_gpio>; - pinctrl-8 = <&hdmirx_init_pin &hu_hpd3_gpio>; - pinctrl-9 = <&hdmirx_init_pin &hu_hpd2_gpio>; - pinctrl-10 = <&hdmirx_init_pin &hu_hpd1_gpio>; - pinctrl-11 = <&hdmirx_init_pin &hu_uart_init>; - pinctrl-12 = <&hdmirx_init_pin &hu_hpd1_gpio &hu_hpd3_gpio &u_ch1_in>; - pinctrl-13 = <&hdmirx_init_pin &hu_hpd1_gpio &hu_hpd2_gpio &u_ch1_in>; - pinctrl-14 = <&hdmirx_init_pin &hu_hpd1_gpio &u_ch1_in>; - pinctrl-15 = <&hdmirx_init_pin &hu_hpd2_gpio &hu_hpd3_gpio &u_ch2_in>; - pinctrl-16 = <&hdmirx_init_pin &hu_hpd1_gpio &hu_hpd2_gpio &u_ch2_in>; - pinctrl-17 = <&hdmirx_init_pin &hu_hpd2_gpio &u_ch2_in>; - pinctrl-18 = <&hdmirx_init_pin &hu_hpd2_gpio &hu_hpd3_gpio &u_ch3_in>; - pinctrl-19 = <&hdmirx_init_pin &hu_hpd1_gpio &hu_hpd3_gpio &u_ch3_in>; - pinctrl-20 = <&hdmirx_init_pin &hu_hpd3_gpio &u_ch3_in>; - hdmiuart1_pin = <&gpio GPIOW_5 GPIO_ACTIVE_HIGH>; - hdmiuart2_pin = <&gpio GPIOW_9 GPIO_ACTIVE_HIGH>; - hdmiuart3_pin = <&gpio GPIOW_13 GPIO_ACTIVE_HIGH>; - hdmiuart_use_num = <7>;/*0:dont use. 1:use num1. 2:use num2. 4:use num3*/ - }; - - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none", - "hu_det_uart0","hu_det_uart1","hu_det_uart2"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - pinctrl-2 = <&hdmirx_pins &cha_uart_in>; - pinctrl-3 = <&hdmirx_pins &chb_uart_in>; - pinctrl-4 = <&hdmirx_pins &chc_uart_in>; - rx_port_maps = <0x3120>; - hdmiuart_share_cfg = <0>; - repeat = <0>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda83e000>; - hdmirx_data_port = <0xda83e004>; - hdmirx_ctrl_port = <0xda83e008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - en_4k_2_2k = <0>; - uart_scl_a_pin = <&gpio GPIOW_8 GPIO_ACTIVE_HIGH>; - uart_scl_b_pin = <&gpio GPIOW_12 GPIO_ACTIVE_HIGH>; - uart_scl_c_pin = <&gpio GPIOW_16 GPIO_ACTIVE_HIGH>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <2>; - interrupts = <0 65 1 - 0 66 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIOW_4 GPIO_ACTIVE_HIGH>, - <&gpio GPIOW_3 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - dtv_demod0_spectrum = <1>; - memory-region = <&demod_reserved>; - tuner0 = "r840_tuner"; - tuner0_i2c_adap_id = <1>; - tuner0_i2c_addr = <0x74>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - pinctrl-names="atvdemod_agc"; - pinctrl-0=<&atvdemod_agc>; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - audio_gain_val = <1024>; /*haier need this*/ - video_gain_val = <0x5C8808C1>; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <1>;/*1:enabel ;0:disable*/ - wb_en = <1>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "ok"; - gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - }; - rtc { - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_1_8V_DDR", - "MMC_CAP_ERASE", "MMC_CAP_HW_RESET", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <100000000>; - tx_phase = <1>; - max_req_size = <0x20000>; /**256KB*/ - // gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //,"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104","MMC_CAP_NONREMOVABLE"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11 = <&keysn_11>; - unifykey-index-12 = <&keysn_12>; - unifykey-index-13 = <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "hdcp22_rx_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "hdcp22_rx_fw"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "hdcp14_rx"; - key-device = "normal"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - };//End unifykey - ampmu4 { - compatible = "amlogic, pmu4_prober"; - #address-cells = <1>; - #size-cells = <0>; - - pmu4 { - compatible = "amlogic, pmu4"; - sub_type = "aml_pmu4"; - i2c_bus = "i2c_bus_b"; - reg = <0x35>; - use_24m_clock = <0x1>; - status = "okay"; - }; - }; - - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "disabled"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXTVBB"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x2>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "disabled"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_a_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxbabytv"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d007800 { - compatible = "amlogic, amlogic-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-usb3"; - portnum = <1>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <512>; - cpu-type = "gxtvbaby"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "disable"; - led_gpio = <&gpio_ao GPIOAO_11 GPIO_ACTIVE_LOW>; - }; - - pwmled { - compatible = "amlogic, pwmled"; - dev_name = "pwmled"; - status = "okay"; - pwm = <6>; /* pwm_ao_a */ - polarity = <1>; /* 0-normal 1-inversed */ - max_brightness = <255>; - pinctrl-names = "pwm_ao_a_pins"; - pinctrl-0 = <&pwm_ao_a_pins>; - /* led timer data */ - expires = <400>; /* ms */ - expires_count = <8>; - }; - - lcd{ - compatible = "amlogic, lcd"; - dev_name = "lcd"; - mode = "tv"; - status = "okay"; - fr_auto_policy = <1>; /* 0=disable, 1=60/50hz, 2=60/50/48hz */ - key_valid = <0>; - resets = <&clock GCLK_IDX_VCLK2_ENCL &clock GCLK_IDX_VCLK2_VENCL>; - reset-names = "encl","vencl"; - interrupts = <0 78 1 0 3 1>; - interrupt-names = "vbyone","vbyone_vsync"; - pinctrl-names = "vbyone"; - pinctrl-0 = <&lcd_vbyone_pins>; - - /* power type:(0=cpu_gpio, 1=pmu_gpio, 2=signal, 3=extern, 0xff=ending) */ - /* power index:(point gpios_index, or extern_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - lcd_cpu-gpios = <&gpio GPIOX_3 GPIO_ACTIVE_HIGH - &gpio GPIOX_2 GPIO_ACTIVE_HIGH>; - lcd_cpu_gpio_names = "GPIOX_3","GPIOX_2"; - - lvds_0{ - model_name = "1080p-vfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2060 2650 1100 1480 120000000 160000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal, 3=auto range), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap, lane_reverse */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - lvds_1{ - model_name = "1080p-pclk"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2080 2720 1100 1380 133940000 156000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <0 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal, 3=auto range), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap, lane_reverse */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - lvds_2{ - model_name = "1080p-hfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2080 2720 1100 1380 133940000 156000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <1 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal, 3=auto range), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap, lane_reverse */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_0{ - model_name = "public"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4340 4700 2200 2850 480000000 614000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <0 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal, 3=auto range), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 50 /* panel power on */ - 2 0 0 200 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_1{ - model_name = "LG_RDL550WY"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 480000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal, 3=auto range), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 50 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_2{ - model_name = "INL_V580DJ2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2790 552000000 632000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal, 3=auto range), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 1 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 50 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_3{ - model_name = "BOE_HV550QU2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 560000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 1 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal, 3=auto range), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 0 1 0 10 /* 3d_enable=0 */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 30 /* signal disable */ - 0 1 2 0 /* 3d_enable pin reset to input */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - }; - - lcd_extern{ - compatible = "amlogic, lcd_extern"; - dev_name = "lcd_extern"; - status = "okay"; - key_valid = <0>; - - extern_0{ - index = <0>; - extern_name = "ext_default"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_second_address = <0xff>; /* 7bit i2c address, 0xff for none */ - i2c_bus = "i2c_bus_d"; - cmd_size = <9>; - /* init on/off: (type, value..., delay), must match cmd_size for every group */ - /* type: 0x00=cmd(bit[3:0]=1 for second_addr), 0x10=gpio, 0xff=ending*/ - /* value: i2c or spi cmd, or gpio index & level, fill 0x0 for no use */ - /* delay: unit ms */ - init_on = <0x00 0x20 0x01 0x02 0x00 0x40 0xFF 0x00 0x00 - 0x00 0x80 0x02 0x00 0x40 0x62 0x51 0x73 0x00 - 0x00 0x61 0x06 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0xC1 0x05 0x0F 0x00 0x08 0x70 0x00 0x00 - 0x00 0x13 0x01 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0x3D 0x02 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0xED 0x0D 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0x23 0x02 0x00 0x00 0x00 0x00 0x00 0x0A - 0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - init_off = <0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - }; - extern_1{ - index = <1>; - extern_name = "i2c_T5800Q"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_bus = "i2c_bus_d"; - }; - extern_2{ - index = <2>; - extern_name = "i2c_DLPC3439"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1b>; /* 7bit i2c address */ - i2c_bus = "i2c_bus_a"; - }; - }; - - backlight{ - compatible = "amlogic, backlight"; - dev_name = "backlight"; - status = "okay"; - key_valid = <0>; - pinctrl-names = "pwm_on","pwm_vs_on", - "pwm_combo_0_1_on", - "pwm_combo_0_vs_1_on", - "pwm_combo_0_on", - "pwm_combo_0_vs_on", - "pwm_combo_1_on"; - pinctrl-0 = <&bl_pwm_on_pins>; - pinctrl-1 = <&bl_pwm_vs_on_pins>; - pinctrl-2 = <&bl_pwm_combo_0_on_pins &bl_pwm_combo_1_on_pins>; - pinctrl-3 = <&bl_pwm_combo_0_vs_on_pins &bl_pwm_combo_1_on_pins>; - pinctrl-4 = <&bl_pwm_combo_0_on_pins>; - pinctrl-5 = <&bl_pwm_combo_0_vs_on_pins>; - pinctrl-6 = <&bl_pwm_combo_1_on_pins>; - interrupts = <0 3 1 0 143 1>; - - /* power index:(point gpios_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - bl-gpios = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_HIGH - &gpio GPIOY_13 GPIO_ACTIVE_HIGH - &gpio GPIOY_8 GPIO_ACTIVE_HIGH>; - bl_gpio_names = "GPIOAO_4","GPIOY_13","GPIOY_8"; - - backlight_0{ - index = <0>; - bl_name = "backlight_0"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 0=gpio, 1=pwm, 2=pwm_combo, 3=ldim, 4=extern */ - bl_power_attr = <0 0 1 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_B"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <0 180 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - backlight_1{ - index = <1>; - bl_name = "backlight_1"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 0=gpio, 1=pwm, 2=pwm_combo, 3=ldim, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_VS"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <1 2 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_off_value, pwm_on_delay, pwm_off_delay */ - }; - backlight_2{ - index = <2>; - bl_name = "backlight_2"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <3>; /* 0=gpio, 1=pwm, 2=pwm_combo, 3=ldim, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - bl_ldim_region_row_col = <1 8>; - bl_ldim_mode = <1>; /* 1=single_side(top, bottom, left or right), 2=uniform(top/bottom, left/right) */ - bl_ldim_mapping = <0 1 2 3 4 5 6 7>; - ldim_dev_index = <0>; - }; - backlight_3{ - index = <3>; - bl_name = "backlight_3"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <2>; /* 0=gpio, 1=pwm, 2=pwm_combo, 3=ldim, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_combo_level_mapping = <255 100 100 10>; /* level_max, level_min */ - bl_pwm_combo_port = "PWM_B","PWM_D"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_combo_attr = <1 180 100 25 - 1 18000 100 20>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_combo_power = <1 0 2 0 10 10>; /* pwm0_gpio_index, pwm0_gpio_off, pwm1_gpio_index, pwm1_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - backlight_4{ - index = <4>; - bl_name = "backlight_4"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <3>; /* 0=gpio, 1=pwm, 2=pwm_combo, 3=ldim, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - 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) */ - ldim_dev_index = <2>; - }; - backlight_5{ - index = <5>; - bl_name = "backlight_5"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <3>; /* 0=gpio, 1=pwm, 2=pwm_combo, 3=ldim, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - 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_mapping = <0 1 2 3 4 5 6 7 8 9>; - ldim_dev_index = <1>; - }; - }; - - local_diming_device { - compatible = "amlogic, ldim_dev"; - dev_name = "ldim_dev"; - status = "disabled"; - pinctrl-names = "ldim_pwm0","ldim_pwm1"; - pinctrl-0 = <&ldim_pwm0_pins>; - pinctrl-1 = <&ldim_pwm1_pins>; - - ldim_dev-gpios = <&gpio GPIOX_9 GPIO_ACTIVE_HIGH - &gpio GPIOX_11 GPIO_ACTIVE_HIGH - &gpio GPIOY_4 GPIO_ACTIVE_HIGH>; - ldim_dev_gpio_names = "GPIOX_9","GPIOX_11","GPIOY_4"; - - ldim_dev_0 { - index = <0>; /* 120mA */ - type = <1>; /* 0=normal,1=spi,2=i2c */ - ldim_dev_name = "iw7019"; - ldim_pwm_pinmux_sel = "ldim_pwm0"; - ldim_pwm_port = "none"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - ldim_pwm_attr = <1 2 50>; /* pol, freq(Hz for pwm, v-freq mulit for pwm_vs), duty(%) */ - spi_bus_num = <0>; - spi_chip_select = <0>; - spi_max_frequency = <400000>; /* unit: hz */ - spi_mode = <0>; /* mode: 0, 1, 2, 3 */ - spi_cs_delay = <10 100>; /* hold_high_delay, clk_cs_delay (unit: us) */ - - en_gpio_on_off = <0 1 0>; /* ldim_dev-gpios index, on_level, off_level */ - lamp_err_gpio = <0xff>; /* ldim_dev-gpios index, 0xff=invalid */ - spi_write_check = <0>; /* 0=disable, 1=enable */ - - dim_max_min = <0xfff 0x7f>; /* dim_max, dim_min */ - cmd_size = <4>; - /* init: (type, data..., delay), must match cmd_size for every group */ - /* type: 0x00=cmd, 0xff=ending*/ - /* data: spi data, fill 0x0 for no use */ - /* delay: unit ms */ - init_on = < - /* step1: */ - 0x00 0x01 0x08 0x00 - /* step2:disable ocp and otp */ - 0x00 0x34 0x14 0x00 - 0x00 0x10 0x53 0x00 - /* step3: */ - 0x00 0x11 0x00 0x00 - 0x00 0x12 0x02 0x00 - 0x00 0x13 0x00 0x00 - 0x00 0x14 0x40 0x00 - 0x00 0x15 0x06 0x00 - 0x00 0x16 0x00 0x00 - 0x00 0x17 0x80 0x00 - 0x00 0x18 0x0a 0x00 - 0x00 0x19 0x00 0x00 - 0x00 0x1a 0xc0 0x00 - 0x00 0x1b 0x0e 0x00 - 0x00 0x1c 0x00 0x00 - 0x00 0x1d 0x00 0x00 - 0x00 0x1e 0x50 0x00 - 0x00 0x1f 0x00 0x00 - 0x00 0x20 0x63 0x00 - 0x00 0x21 0xff 0x00 - 0x00 0x2a 0xff 0x00 - 0x00 0x2b 0x41 0x00 - 0x00 0x2c 0x28 0x00 - 0x00 0x30 0xff 0x00 - 0x00 0x31 0x00 0x00 - 0x00 0x32 0x0f 0x00 - 0x00 0x33 0x40 0x00 - 0x00 0x34 0x40 0x00 - 0x00 0x35 0x00 0x00 - 0x00 0x3f 0xa3 0x00 - 0x00 0x45 0x00 0x00 - 0x00 0x47 0x04 0x00 - 0x00 0x48 0x60 0x00 - 0x00 0x4a 0x0d 0x00 - /* step4:set brightness */ - 0x00 0x01 0x7f 0x00 - 0x00 0x02 0xf7 0x00 - 0x00 0x03 0xff 0x00 - 0x00 0x04 0x7f 0x00 - 0x00 0x05 0xf7 0x00 - 0x00 0x06 0xff 0x00 - 0x00 0x07 0x7f 0x00 - 0x00 0x08 0xf7 0x00 - 0x00 0x09 0xff 0x00 - 0x00 0x0a 0x7f 0x00 - 0x00 0x0b 0xf7 0x00 - 0x00 0x0c 0xff 0x00 - /* step5: */ - 0x00 0x00 0x09 0x00 - /* step6: */ - 0x00 0x34 0x00 0x00 - 0xff 0x00 0x00 0x00>; - }; - ldim_dev_1 { - index = <1>; - type = <1>; /* 0=normal,1=spi,2=i2c */ - ldim_dev_name = "iw7027"; - ldim_pwm_pinmux_sel = "ldim_pwm0"; - ldim_pwm_port = "PWM_VS"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - ldim_pwm_attr = <1 2 50>; /* pol, freq(Hz for pwm, v-freq mulit for pwm_vs), duty(%) */ - spi_bus_num = <0>; - spi_chip_select = <0>; - spi_max_frequency = <400000>; /* unit: hz */ - spi_mode = <0>; /* mode: 0, 1, 2, 3 */ - spi_cs_delay = <10 100>; /* hold_high_delay, clk_cs_delay (unit: us) */ - - en_gpio_on_off = <0 1 0>; /* ldim_dev-gpios index, on_level, off_level */ - lamp_err_gpio = <0xff>; /* ldim_dev-gpios index, 0xff=invalid */ - spi_write_check = <0>; /* 0=disable, 1=enable */ - - dim_max_min = <0xfff 0x7f>; /* dim_max, dim_min */ - cmd_size = <4>; - /* init: (type, data..., delay), must match cmd_size for every group */ - /* type: 0x00=cmd, 0xff=ending*/ - /* data: spi data, fill 0x0 for no use */ - /* delay: unit ms */ - init_on = < - 0x00 0x23 0x03 0x00 - 0x00 0x24 0xff 0x00 - 0x00 0x25 0x00 0x00 - 0x00 0x26 0x00 0x00 - 0x00 0x27 0x60 0x00 - 0x00 0x29 0x00 0x00 - 0x00 0x2a 0x00 0x00 - /*0x00 0x2b 0x7f 0x00*/ - 0x00 0x2c 0x73 0x00 - 0x00 0x2d 0x37 0x00 - 0x00 0x31 0x93 0x00 - 0x00 0x32 0x0f 0x00 - 0x00 0x33 0xff 0x00 - 0x00 0x34 0xc8 0x00 - 0x00 0x35 0xbf 0x00 - 0xff 0x00 0x00 0x00>; - }; - ldim_dev_2 { - index = <2>; - type = <0>; /* 0=normal,1=spi,2=i2c */ - ldim_dev_name = "ob3350"; - ldim_pwm_pinmux_sel = "ldim_pwm1"; - ldim_pwm_port = "PWM_B"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - ldim_pwm_attr = <0 200 50>; /* pol, freq(Hz for pwm, v-freq mulit for pwm_vs), duty(%) */ - dim_max_min = <100 20>; /* dim_max, dim_min */ - en_gpio_on_off = <2 0 1>; /* ldim_dev-gpios index, on_level, off_level */ - }; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec { - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec: dummy { - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - pmu4_codec: pmu4 { - #sound-dai-cells = <0>; - compatible = "amlogic, aml_pmu4_codec"; - status = "okay"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - mute_gpio-gpios = <&gpio GPIOZ_6 GPIO_ACTIVE_HIGH>; - aux_dev = "tas5707"; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&pmu4_codec>; - //sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - tas5707 { - compatible = "amlogic, aml_tas5707_codec"; - codec_name = "tas5707"; - status = "okay"; - i2c_addr = <0x1B>; - i2c_bus = "i2c_bus_b"; - master_vol = <150>; - reset_pin = <&gpio GPIOX_19 GPIO_ACTIVE_LOW>; - input_mux_reg_buf = /bits/ 8 <0x00 0x01 0x77 0x72>;/*AD mode*/ - eq_enable = <0>; - drc_enable = <0>; - table_0 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - wall_0 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - table_1 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - wall_1 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - drc1_tko_table_0 = /bits/ 8 < - 0xFD 0xA2 0x14 0x90 /*0x40---drc1_t*/ - 0x03 0x84 0x21 0x09 /*0x41---drc1_k*/ - 0x00 0x08 0x42 0x10 /*0x42---drc1_o*/ - >; - drc1_table_0 = /bits/ 8 < - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3A---drc1_ae*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3B---drc1_aa*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3C---drc1_ad*/ - >; - drc1_tko_table_1 = /bits/ 8 < - 0xFD 0xA2 0x14 0x90 /*0x40---drc1_t*/ - 0x03 0x84 0x21 0x09 /*0x41---drc1_k*/ - 0x00 0x08 0x42 0x10 /*0x42---drc1_o*/ - >; - drc1_table_1 = /bits/ 8 < - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3A---drc1_ae*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3B---drc1_aa*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3C---drc1_ad*/ - >; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - ethmac: ethernet@0xc9410000{ - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8>; - interrupts = <0 8 1>; - phy-mode= "rmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <ð_pins>; - #rst_pin-gpios = <&gpio GPIOZ_14 0>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "t83x"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <1800>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&t83x_gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - - adc_keypad{ - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "left", "right","up", "down", "enter"; - key_num = <5>; - key_code = <106 105 103 108 28>; - key_chan = <2 2 3 3 3>; - key_val = <516 253 516 750 0>; //voltage=0/252/478/692/824mV, val=voltage/1800mV*1023 - key_tolerance = <40 40 40 40 40>; - }; - - /* END OF AUDIO board specific */ -}; - - &i2c_ao { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&ao_i2c_master>; - }; - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&a_i2c_master>; - }; - - &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&b_i2c_master_pin1>; - }; - &i2c_c { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&c_i2c_master>; - }; - &i2c_d { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&d_i2c_master>; - - at24 { - /*compatible = "at24,24c32";*/ - dev_name = "at24"; - reg = <0x50>; - status = "disabled"; - pagesize = <8>; - write_ops_interval= <10>;/*Write operation interval at24c32 at24c64 is 10ms at24c128 is 5ms in spec*/ - wp_gpios = <&gpio GPIOY_7 GPIO_ACTIVE_HIGH>; - write_gpio_port_status = <0>; - }; - }; -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<8 0x7E0>; - amlogic,clrmask=<8 0x3800>; - amlogic,pins = "GPIOZ_0","GPIOZ_1","GPIOZ_2","GPIOZ_3","GPIOZ_4","GPIOZ_5"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<8 0x4>; - amlogic,clrmask=<8 0x10 - 7 0x4000>; - amlogic,pins = "GPIOH_10"; - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<1 0x3c0000>; - amlogic,clrmask=<1 0x3C000000>; - amlogic,pins ="GPIOX_4", "GPIOX_5", "GPIOX_6", "GPIOX_7"; - }; - - eth_pins: eth_pins{ - amlogic,setmask =<8 0x19cf8000>; - amlogic,clrmask =<8 0x20000000>, - <9 0x1806>; - amlogic,pins="GPIOZ_7","GPIOZ_8","GPIOZ_9", - "GPIOZ_10","GPIOZ_11","GPIOZ_14","GPIOZ_15", - "GPIOZ_16","GPIOZ_19","GPIOZ_20"; - }; - - ldim_pwm0_pins:ldim_pwm0_pin { - amlogic,setmask = <2 0x00200000>; - amlogic,clrmask = <0 0x00900000 - 1 0x00000008 - 2 0x00180400 - 3 0x20000000>; - amlogic,pins = "GPIOX_10"; - }; - ldim_pwm1_pins:ldim_pwm1_pin { - amlogic,setmask = <10 0x00800000>; - amlogic,clrmask = <10 0x0100a000>; - amlogic,pins = "GPIOY_13"; - }; - - bl_pwm_on_pins:bl_pwm_on_pin { - amlogic,setmask = <10 0x00800000>; - amlogic,clrmask = <10 0x0100a000>; - amlogic,pins = "GPIOY_13"; - }; - bl_pwm_vs_on_pins:bl_pwm_vs_on_pin { - amlogic,setmask = <10 0x01000000>; - amlogic,clrmask = <10 0x0080a000>; - amlogic,pins = "GPIOY_13"; - }; - bl_pwm_combo_0_on_pins:bl_pwm_combo_0_on_pin { - amlogic,setmask = <10 0x00800000>; - amlogic,clrmask = <10 0x0100a000>; - amlogic,pins = "GPIOY_13"; - }; - bl_pwm_combo_1_on_pins:bl_pwm_combo_1_on_pin { - amlogic,setmask = <10 0x00040000>; - amlogic,clrmask = <4 0x29001008>; - amlogic,pins = "GPIOY_8"; - }; - bl_pwm_combo_0_vs_on_pins:bl_pwm_combo_0_vs_on_pin { - amlogic,setmask = <10 0x01000000>; - amlogic,clrmask = <10 0x0080a000>; - amlogic,pins = "GPIOY_13"; - }; - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <6 0x3def780>; - amlogic,clrmask = <6 0x04210800>, - <10 0x0000001e>; - amlogic,pins = "GPIOW_6","GPIOW_8", - "GPIOW_10","GPIOW_12", - "GPIOW_14","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - hdmirx_init_pin:hdmirx_init_pin { - amlogic,setmask = <6 0x3def780>; - amlogic,clrmask = <6 0x04210800>, - <10 0x0000001e>; - amlogic,pins = "GPIOW_7"; - }; - hu_det_none: hu_det_none { - amlogic,setmask = <6 0x3def780>, - ; - amlogic,clrmask = <6 0x04210800>, - <10 0x0000001e>; - amlogic,pins = "GPIOW_5"; - }; - cha_uart_in: cha_uart_in { - amlogic,setmask = <6 0x00000800>, - <10 0x00000002>; - amlogic,clrmask = <6 0x00000600>, - ; - amlogic,pins = "GPIOW_7","GPIOW_8"; - }; - chb_uart_in: chb_uart_in { - amlogic,setmask = <6 0x00010000>, - <10 0x00000004>; - amlogic,clrmask = <6 0x0000c000>, - ; - amlogic,pins = "GPIOW_11","GPIOW_12"; - }; - chc_uart_in: chc_uart_in { - amlogic,setmask = <6 0x00200000>, - <10 0x00000008>; - amlogic,clrmask = <6 0x00180000>, - ; - amlogic,pins = "GPIOW_15","GPIOW_16"; - }; - u_ch1_in:u_ch1_in { - amlogic,clrmask = , - <6 0x600>; - amlogic,setmask = <6 0x800>, - <10 0x2>; - amlogic,pins = "GPIOW_7"; - }; - u_ch2_in:u_ch2_in { - amlogic,clrmask = , - <6 0xC000>; - amlogic,setmask = <6 0x10000>, - <10 0x4>; - amlogic,pins = "GPIOW_11"; - }; - u_ch3_in:u_ch3_in { - amlogic,clrmask = , - <6 0x180000>; - amlogic,setmask = <6 0x200000>, - <10 0x8>; - amlogic,pins = "GPIOW_15"; - }; - hu_hpd1_pinmux:hu_hpd1_pinmux { - amlogic,setmask=<6 0x80>; - amlogic,pins = "GPIOW_5"; - }; - hu_hpd2_pinmux:hu_hpd2_pinmux { - amlogic,setmask=<6 0x1000>; - amlogic,pins = "GPIOW_9"; - }; - hu_hpd3_pinmux:hu_hpd3_pinmux { - amlogic,setmask=<6 0x20000>; - amlogic,pins = "GPIOW_13"; - }; - hu_hpd1_gpio:hu_hpd1_gpio { - amlogic,setmask=; - amlogic,clrmask=<6 0x80>; - amlogic,pins = "GPIOW_5"; - amlogic,enable-output=<1>; - amlogic,pullupen=<1>; - amlogic,pullup=<0>; - }; - hu_hpd2_gpio:hu_hpd2_gpio { - amlogic,setmask=; - amlogic,clrmask=<6 0x1000>; - amlogic,pins = "GPIOW_9"; - amlogic,enable-output=<1>; - amlogic,pullupen=<1>; - amlogic,pullup=<0>; - }; - hu_hpd3_gpio:hu_hpd3_gpio { - amlogic,setmask=; - amlogic,clrmask=<6 0x20000>; - amlogic,pins = "GPIOW_13"; - amlogic,enable-output=<1>; - amlogic,pullupen=<1>; - amlogic,pullup=<0>; - }; - hu_hpds_gpio:hu_hpds_gpio { - amlogic,setmask=; - amlogic,clrmask=<6 0x21080>; - amlogic,pins = "GPIOW_5","GPIOW_9","GPIOW_13"; - amlogic,enable-output=<1>; - amlogic,pullupen=<1>; - amlogic,pullup=<0>; - }; - hu_uart_init:hu_uart_init { - amlogic,setmask=; - amlogic,pins = "GPIOW_5"; - }; - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins = "GPIOW_3","GPIOW_4"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; - /* pwm_ao_a */ - pwm_ao_a_pins:pwm_ao_a_pins { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_11"; - }; -}; - - -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; - - &spicc{ - status = "okay"; - pinctrl-names = "spicc_pulldown","spicc_pullup"; - pinctrl-0 = <&spicc_pulldown_h6h7h8 &spicc_pins_h6h7h8>; - pinctrl-1 = <&spicc_pullup_h6h7h8 &spicc_pins_h6h7h8>; - num_chipselect = <1>; - cs-gpios = <&gpio GPIOH_9 GPIO_ACTIVE_HIGH>; - #address-cells = <1>; - #size-cells = <0>; - }; diff --git a/arch/arm64/boot/dts/amlogic/gxtvbb_p310.dts b/arch/arm64/boot/dts/amlogic/gxtvbb_p310.dts deleted file mode 100644 index 835b0b5976d26..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxtvbb_p310.dts +++ /dev/null @@ -1,1349 +0,0 @@ -/* - * Amlogic Ltd. GXtvBaby p310 Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include "mesongxtvbb.dtsi" -#include -#include - -/ { - model = "Amlogic"; - compatible = "amlogic, gxtvbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - /*fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - };*/ - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x2c00000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x03000000>; - //alignment = <0x0 0x400000>; - //}; - demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - //size = <0x0 0x4000000>; - /* the most significant 64M memory reserved for ion */ - reg = <0x0 0x3c000000 0x0 0x4000000>; /* for 1G memory */ - //reg = <0x0 0x5c000000 0x0 0x4000000>; /* for 1.5G memory*/ - //reg = <0x0 0x7c000000 0x0 0x4000000>; /* for 2G memory */ - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x0>; - multi-use; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - status = "disabled"; - size = <0x0 0x0>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - /*memory-region = <&fb_reserved>;*/ - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01851000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - /*pxp_mode = <1>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x3d851000"; /*ion base + fb0 memory size for uboot logo osd1*/ - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC0800000 0x0 0xb00000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x2000>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <0>;/*0:use reserved;1:use cma*/ - memory-region = <&di_reserved>; - //memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <4596800>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <1>; - }; - amlvideo2 { - compatible = "amlogic, amlvideo2"; - dev_name = "amlvideo2"; - status = "okay"; - cma_mode = <1>; - }; - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <128>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <5>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none", - "hu_det_uart0","hu_det_uart1","hu_det_uart2"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - pinctrl-2 = <&hdmirx_pins &cha_uart_in>; - pinctrl-3 = <&hdmirx_pins &chb_uart_in>; - pinctrl-4 = <&hdmirx_pins &chc_uart_in>; - rx_port_maps = <0x3120>; - hdmiuart_share_cfg = <0>; - repeat = <0>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda83e000>; - hdmirx_data_port = <0xda83e004>; - hdmirx_ctrl_port = <0xda83e008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - en_4k_2_2k = <0>; - uart_scl_a_pin = <&gpio GPIOW_8 GPIO_ACTIVE_HIGH>; - uart_scl_b_pin = <&gpio GPIOW_12 GPIO_ACTIVE_HIGH>; - uart_scl_c_pin = <&gpio GPIOW_16 GPIO_ACTIVE_HIGH>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <1>; - interrupts = <0 65 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIOW_4 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - dtv_demod0_spectrum = <1>; - memory-region = <&demod_reserved>; - tuner0 = "r840_tuner"; - tuner0_i2c_adap_id = <1>; - tuner0_i2c_addr = <0x74>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - pinctrl-names="atvdemod_agc"; - pinctrl-0=<&atvdemod_agc>; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - //audio_gain_val = <1024>; /*haier need this*/ - video_gain_val = <0x5C8808C1>; - }; - aml_local_dimming { - compatible = "amlogic, aml_local_dimming"; - dev_name = "aml_local_dimming"; - status = "disable"; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0>;/*1:enabel ;0:disable*/ - wb_en = <0>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "ok"; - gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - }; - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>; - interrupts = <0 68 4>; - irq_trigger_type = "GPIO_IRQ_HIGH"; - power_on_pin = <&gpio_ao GPIOAO_6 GPIO_ACTIVE_HIGH>; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ; - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_1_8V_DDR", - "MMC_CAP_ERASE", "MMC_CAP_HW_RESET", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <100000000>; - tx_phase = <1>; - max_req_size = <0x20000>; /**256KB*/ - // gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 4 >; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; /* 3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED","MMC_PM_KEEP_POWER", - "MMC_CAP_UHS_SDR104","MMC_CAP_NONREMOVABLE","MMC_CAP_SDIO_IRQ"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11 = <&keysn_11>; - unifykey-index-12 = <&keysn_12>; - unifykey-index-13 = <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "hdcp22_rx_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "hdcp22_rx_fw"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "hdcp14_rx"; - key-device = "normal"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - };//End unifykey - ampmu4 { - compatible = "amlogic, pmu4_prober"; - #address-cells = <1>; - #size-cells = <0>; - - pmu4 { - compatible = "amlogic, pmu4"; - sub_type = "aml_pmu4"; - i2c_bus = "i2c_bus_b"; - reg = <0x35>; - use_24m_clock = <0x0>; - status = "disable"; - }; - }; - - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - ranges; - #address-cells = <2>; - #size-cells = <2>; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXTVBB"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x2>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_3 0 - &gpio GPIOH_4 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_a_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - }; - - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x14>; - interrupts = <0 75 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&b_uart_pins_y>; - resets = <&clock GCLK_IDX_UART1>; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxbabytv"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d007800 { - compatible = "amlogic, amlogic-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-usb3"; - portnum = <1>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <512>; - cpu-type = "gxtvbaby"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "okay"; - }; - pmu4_codec:pmu4{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_pmu4_codec"; - status = "disable"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - //sound-dai = <&pmu4_codec>; - sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - ethmac: ethernet@0xc9410000{ - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8>; - interrupts = <0 8 1>; - phy-mode= "rgmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <ð_pins>; - rst_pin-gpios = <&gpio GPIOZ_6 0>; - mc_val = <0x1621>; - cali_val = <0x20000>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio GPIO_TEST_N GPIO_ACTIVE_HIGH>; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "t83x"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <1800>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&t83x_gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - - /* END OF AUDIO board specific */ -}; - - &i2c_ao { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&ao_i2c_master>; - }; - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&a_i2c_master>; - }; - -/* &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&b_i2c_master>; - };*/ - &i2c_c { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&c_i2c_master>; - }; - &i2c_d { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&d_i2c_master>; - }; -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<8 0x7C0>; - amlogic,clrmask=<8 0x3800>; - amlogic,pins = "GPIOZ_1","GPIOZ_2","GPIOZ_3","GPIOZ_4","GPIOZ_5"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<8 0x4>; - amlogic,clrmask=<8 0x10 - 7 0x4000>; - amlogic,pins = "GPIOH_10"; - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<1 0x3c0000>; - amlogic,clrmask=<1 0x3C000000>; - amlogic,pins ="GPIOX_4", "GPIOX_5", "GPIOX_6", "GPIOX_7"; - }; - - eth_pins: eth_pins{ - amlogic,setmask =<8 0x1fff8000>; - amlogic,clrmask =<8 0x60000000>, - <9 0x1fff>; - amlogic,pins="GPIOZ_7","GPIOZ_8","GPIOZ_9", - "GPIOZ_10","GPIOZ_11","GPIOZ_12","GPIOZ_13", - "GPIOZ_14","GPIOZ_15","GPIOZ_16","GPIOZ_17", - "GPIOZ_18","GPIOZ_19","GPIOZ_20"; - }; -hdmirx_pins: hdmirx_pins { - amlogic,setmask = <6 0x3def780>; - amlogic,clrmask = <6 0x04210800>, - <10 0x0000001e>; - amlogic,pins = "GPIOW_5","GPIOW_6","GPIOW_7","GPIOW_8", - "GPIOW_9","GPIOW_10","GPIOW_11","GPIOW_12", - "GPIOW_13","GPIOW_14","GPIOW_15","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - hu_det_none: hu_det_none { - amlogic,setmask = <6 0x3def780>, - ; - amlogic,clrmask = <6 0x04210800>, - <10 0x0000001e>; - amlogic,pins = "GPIOW_5"; - }; - cha_uart_in: cha_uart_in { - amlogic,setmask = <6 0x00000800>, - <10 0x00000002>; - amlogic,clrmask = <6 0x00000600>, - ; - amlogic,pins = "GPIOW_7","GPIOW_8"; - }; - chb_uart_in: chb_uart_in { - amlogic,setmask = <6 0x00010000>, - <10 0x00000004>; - amlogic,clrmask = <6 0x0000c000>, - ; - amlogic,pins = "GPIOW_11","GPIOW_12"; - }; - chc_uart_in: chc_uart_in { - amlogic,setmask = <6 0x00200000>, - <10 0x00000008>; - amlogic,clrmask = <6 0x00180000>, - ; - amlogic,pins = "GPIOW_15","GPIOW_16"; - }; - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins ="GPIOW_4"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; - /*PWM-A*/ - /*pwm_a_pins:pwm_a_pins{ - amlogic,setmask=<10 0x200000>; - amlogic,clrmask=<10 0x405000>; - amlogic,pins="GPIOY_12"; - };*/ -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; - -/* &spicc{ - status = "okay"; - pinctrl-names = "spicc_pulldown","spicc_pullup"; - pinctrl-0 = <&spicc_pulldown_h6h7h8 &spicc_pins_h6h7h8>; - pinctrl-1 = <&spicc_pullup_h6h7h8 &spicc_pins_h6h7h8>; - num_chipselect = <1>; - cs-gpios = <&gpio GPIOH_9 GPIO_ACTIVE_HIGH>; - #address-cells = <1>; - #size-cells = <0>; - }; */ diff --git a/arch/arm64/boot/dts/amlogic/gxtvbb_p311.dts b/arch/arm64/boot/dts/amlogic/gxtvbb_p311.dts deleted file mode 100644 index ada1e191a2d3b..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxtvbb_p311.dts +++ /dev/null @@ -1,1358 +0,0 @@ -/* - * Amlogic Ltd. GXtvBaby p311 Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxtvbb.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, gxtvbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - /*fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - };*/ - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x2c00000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x03000000>; - //alignment = <0x0 0x400000>; - //}; - demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - //size = <0x0 0x4000000>; - /* the most significant 64M memory reserved for ion */ - reg = <0x0 0x3c000000 0x0 0x4000000>; /* for 1G memory */ - //reg = <0x0 0x5c000000 0x0 0x4000000>; /* for 1.5G memory*/ - //reg = <0x0 0x7c000000 0x0 0x4000000>; /* for 2G memory */ - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x0>; - multi-use; - }; -/* - amlvideo2_reserved:linux,amlvideo2 { - compatible = "amlogic, amlvideo2_memory"; - size = <0x0 0x01800000>; - }; -*/ - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - status = "disabled"; - size = <0x0 0x0>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - /*memory-region = <&fb_reserved>;*/ - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01850000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - /*pxp_mode = <1>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x3d851000"; - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC0800000 0x0 0xb00000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x2000>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <0>;/*0:use reserved;1:use cma*/ - memory-region = <&di_reserved>; - //memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <4596800>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <1>; - }; -/* - amlvideo2 { - compatible = "amlogic, amlvideo2"; - memory-region = <&amlvideo2_reserved>; - dev_name = "amlvideo2"; - status = "okay"; - }; -*/ - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <128>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <5>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none", - "hu_det_uart0","hu_det_uart1","hu_det_uart2"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - pinctrl-2 = <&hdmirx_pins &cha_uart_in>; - pinctrl-3 = <&hdmirx_pins &chb_uart_in>; - pinctrl-4 = <&hdmirx_pins &chc_uart_in>; - rx_port_maps = <0x3120>; - hdmiuart_share_cfg = <0>; - repeat = <1>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda83e000>; - hdmirx_data_port = <0xda83e004>; - hdmirx_ctrl_port = <0xda83e008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - en_4k_2_2k = <0>; - uart_scl_a_pin = <&gpio GPIOW_8 GPIO_ACTIVE_HIGH>; - uart_scl_b_pin = <&gpio GPIOW_12 GPIO_ACTIVE_HIGH>; - uart_scl_c_pin = <&gpio GPIOW_16 GPIO_ACTIVE_HIGH>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <1>; - interrupts = <0 65 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIOW_4 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - dtv_demod0_spectrum = <1>; - memory-region = <&demod_reserved>; - tuner0 = "r840_tuner"; - tuner0_i2c_adap_id = <1>; - tuner0_i2c_addr = <0x74>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - pinctrl-names="atvdemod_agc"; - pinctrl-0=<&atvdemod_agc>; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - }; - aml_local_dimming { - compatible = "amlogic, aml_local_dimming"; - dev_name = "aml_local_dimming"; - status = "disable"; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0>;/*1:enabel ;0:disable*/ - wb_en = <0>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "ok"; - gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - //interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - //interrupts = < 0 68 4>; - //irq_trigger_type = "GPIO_IRQ_HIGH"; - power_on_pin = <&gpio_ao GPIOAO_6 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ; - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_1_8V_DDR", - "MMC_CAP_ERASE", "MMC_CAP_HW_RESET", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <100000000>; - tx_phase = <1>; - max_req_size = <0x20000>; /**256KB*/ - // gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_1_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //,"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104","MMC_CAP_NONREMOVABLE"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11 = <&keysn_11>; - unifykey-index-12 = <&keysn_12>; - unifykey-index-13 = <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "hdcp22_rx_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "hdcp22_rx_fw"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "hdcp14_rx"; - key-device = "normal"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - };//End unifykey - ampmu4 { - compatible = "amlogic, pmu4_prober"; - #address-cells = <1>; - #size-cells = <0>; - - pmu4 { - compatible = "amlogic, pmu4"; - sub_type = "aml_pmu4"; - i2c_bus = "i2c_bus_b"; - reg = <0x35>; - use_24m_clock = <0x1>; - status = "okay"; - }; - }; - - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - ranges; - #address-cells = <2>; - #size-cells = <2>; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXTVBB"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x2>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_3 0 - &gpio GPIOH_4 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_a_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - }; - - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x14>; - interrupts = <0 75 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&b_uart_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxbabytv"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d007800 { - compatible = "amlogic, amlogic-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-usb3"; - portnum = <1>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <512>; - cpu-type = "gxtvbaby"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - pmu4_codec:pmu4{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_pmu4_codec"; - status = "okay"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&pmu4_codec>; - //sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - ethmac: ethernet@0xc9410000{ - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8>; - interrupts = <0 8 1>; - phy-mode= "rmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <ð_pins>; - #rst_pin-gpios = <&gpio GPIOZ_14 0>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "t83x"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <1800>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&t83x_gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - - /* END OF AUDIO board specific */ -}; - - &i2c_ao { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&ao_i2c_master>; - }; - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&a_i2c_master>; - }; - - &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&b_i2c_master>; - }; - &i2c_c { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&c_i2c_master>; - }; - &i2c_d { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&d_i2c_master>; - }; -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<8 0x7C0>; - amlogic,clrmask=<8 0x3800>; - amlogic,pins = "GPIOZ_1","GPIOZ_2","GPIOZ_3","GPIOZ_4","GPIOZ_5"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<8 0x4>; - amlogic,clrmask=<8 0x10 - 7 0x4000>; - amlogic,pins = "GPIOH_10"; - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<1 0x3c0000>; - amlogic,clrmask=<1 0x3C000000>; - amlogic,pins ="GPIOX_4", "GPIOX_5", "GPIOX_6", "GPIOX_7"; - }; - - eth_pins: eth_pins{ - amlogic,setmask =<8 0x19cf8000>; - amlogic,clrmask =<8 0x20000000>, - <9 0x1806>; - amlogic,pins="GPIOZ_7","GPIOZ_8","GPIOZ_9", - "GPIOZ_10","GPIOZ_11","GPIOZ_14","GPIOZ_15", - "GPIOZ_16","GPIOZ_19","GPIOZ_20"; - }; - - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <6 0x3def780>; - amlogic,clrmask = <6 0x04210800>, - <10 0x0000001e>; - amlogic,pins = "GPIOW_5","GPIOW_6","GPIOW_7","GPIOW_8", - "GPIOW_9","GPIOW_10","GPIOW_11","GPIOW_12", - "GPIOW_13","GPIOW_14","GPIOW_15","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - hu_det_none: hu_det_none { - amlogic,setmask = <6 0x3def780>, - ; - amlogic,clrmask = <6 0x04210800>, - <10 0x0000001e>; - amlogic,pins = "GPIOW_5"; - }; - cha_uart_in: cha_uart_in { - amlogic,setmask = <6 0x00000800>, - <10 0x00000002>; - amlogic,clrmask = <6 0x00000600>, - ; - amlogic,pins = "GPIOW_7","GPIOW_8"; - }; - chb_uart_in: chb_uart_in { - amlogic,setmask = <6 0x00010000>, - <10 0x00000004>; - amlogic,clrmask = <6 0x0000c000>, - ; - amlogic,pins = "GPIOW_11","GPIOW_12"; - }; - chc_uart_in: chc_uart_in { - amlogic,setmask = <6 0x00200000>, - <10 0x00000008>; - amlogic,clrmask = <6 0x00180000>, - ; - amlogic,pins = "GPIOW_15","GPIOW_16"; - }; - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins ="GPIOW_4"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; - /*PWM-A*/ - /*pwm_a_pins:pwm_a_pins{ - amlogic,setmask=<10 0x200000>; - amlogic,clrmask=<10 0x405000>; - amlogic,pins="GPIOY_12"; - };*/ -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; - -/* &spicc{ - status = "okay"; - pinctrl-names = "spicc_pulldown","spicc_pullup"; - pinctrl-0 = <&spicc_pulldown_h6h7h8 &spicc_pins_h6h7h8>; - pinctrl-1 = <&spicc_pullup_h6h7h8 &spicc_pins_h6h7h8>; - num_chipselect = <1>; - cs-gpios = <&gpio GPIOH_9 GPIO_ACTIVE_HIGH>; - #address-cells = <1>; - #size-cells = <0>; - }; */ diff --git a/arch/arm64/boot/dts/amlogic/gxtvbb_pxp.dts b/arch/arm64/boot/dts/amlogic/gxtvbb_pxp.dts deleted file mode 100644 index 400394560f196..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxtvbb_pxp.dts +++ /dev/null @@ -1,813 +0,0 @@ -/* - * Amlogic Ltd. GXBaby Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxtvbb.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, gxtvbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x3f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - /*fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - };*/ - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x2c00000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x03000000>; - //alignment = <0x0 0x400000>; - //}; - - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - //size = <0x0 0x4000000>; - /* the most significant 64M memory reserved for ion */ - reg = <0x0 0x3c000000 0x0 0x4000000>; /* for 1G memory */ - //reg = <0x0 0x5c000000 0x0 0x4000000>; /* for 1.5G memory*/ - //reg = <0x0 0x7c000000 0x0 0x4000000>; /* for 2G memory */ - }; - - /* vdin0 */ - vdin0_reserved:linux,vdin0 { - compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ - size = <0x0 0x01000000>; - }; - /* vdin1 */ - vdin1_reserved:linux,vdin1 { - compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ - size = <0x0 0x01000000>; - }; - /* tvafe */ - tvafe_reserved:linux,tvafe { - compatible = "amlogic, tvafe_memory"; - /* 5M */ - size = <0x0 0x00500000>; - }; - /* PICDEC reserved memory */ - picdec_reserved:linux,picdec { - compatible = "amlogic, picdec_memory"; - size = <0x0 0x1000000>; - //no-map; - }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x1000000>; - }; - /* AVC Encode CMA pool */ - avc_cma_reserved:linux,avc_cma { - compatible = "shared-dma-pool"; - linux,phandle = <1>; - reusable; - size = <0x0 0x2400000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /* vdec CMA pool */ - vdec_cma_reserved:linux,vdec_cma { - compatible = "shared-dma-pool"; - linux,phandle = <2>; - reusable; - size = <0x0 0x12000000>; - alignment = <0x0 0x400000>; - }; - - jpegenc_cma_reserved:linux,jpegenc_cma { - compatible = "shared-dma-pool"; - linux,phandle = <3>; - reusable; - size = <0x0 0x2400000>; - alignment = <0x0 0x400000>; - }; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - /*memory-region = <&fb_reserved>;*/ - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01851000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - // display_size_default: PAGE_ALIGN((1920*(align16(1080))/256*(256*16 + 16)+16)*3) = - // 0x1848000 (afbc body + afbc header + 16)*3 - display_size_default = <1920 1080 1920 3240 32>; - /*pxp_mode = <1>; /** 0:normal mode 1:pxp mode */ - pxp_mode = <1>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x3d851000"; /*ion base + fb0 memory size for uboot logo osd1*/ - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC0800000 0x0 0xb00000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x2000>; - }; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - memory-region = <&vdec_cma_reserved>; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - vdin0 { - compatible = "amlogic, vdin"; - memory-region = <&vdin0_reserved>; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <0>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <1>; - }; - - tvafe { - compatible = "amlogic, tvafe"; - memory-region = <&tvafe_reserved>; - dev_name = "tvafe"; - status = "ok"; - reg = <0x0 0xc8842000 0x0 0x3ff>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - jpegenc{ - compatible = "amlogic, jpegenc"; - //memory-region = <&jpegenc_reserved>; - memory-region = <&jpegenc_cma_reserved>; - dev_name = "jpegenc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "ok"; - gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE"/*, - "MMC_CAP_ERASE", "MMC_CAP_HW_RESET"*/; - //caps2 = "MMC_CAP2_HS200_1_8V_SDR"; - f_min = <400000>; - f_max = <50000000>; - max_req_size = <0x20000>; /**256KB*/ - // gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED","MMC_CAP_NONREMOVABLE"; - //,"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104","MMC_CAP_NONREMOVABLE"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - //irq_in = <3>; - //irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - partitions: partitions{ - parts = <10>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&dtb>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - dtb:dtb{ - pname = "dtb"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - vend-data = <&vend_data>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - - vend_data: vend_data{ - compatible = "amlogic, amlogic-cec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - interrupts = <0 199 1>; - interrupt-names = "hdmitx_cec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - }; - }; - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "disabled"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_a_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_3 0>; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - adc_keypad{ - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "menu", "vol-","vol+", "esc", "home", "left", "right"; - key_num = <7>; - key_code = <139 114 115 1 102 105 106>; - key_chan = <2 2 2 2 3 3 3>; - key_val = <0 143 271 393 0 143 271>; //voltage=0/252/478/692/824mV, val=voltage/1800mV*1023 - key_tolerance = <40 40 40 40 40 40 40>; - }; -}; - &i2c_ao { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&ao_i2c_master>; - }; - - &i2c_a { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&a_i2c_master>; - }; - - &i2c_b { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&b_i2c_master>; - }; - &i2c_c { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&c_i2c_master>; - }; - &i2c_d { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&d_i2c_master>; - }; -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11","GPIOAO_6"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=; /*spdif_out*/ - amlogic,clrmask=; /*spdif_out*/ - amlogic,pins ="GPIOAO_13"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<1 0x3c0000>; - amlogic,clrmask=<1 0x3C000000>; - amlogic,pins ="GPIOX_4", "GPIOX_5", "GPIOX_6", "GPIOX_7"; - }; -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxtvbb_skt.dts b/arch/arm64/boot/dts/amlogic/gxtvbb_skt.dts deleted file mode 100644 index 69ce64bfe21d3..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxtvbb_skt.dts +++ /dev/null @@ -1,1480 +0,0 @@ -/* - * Amlogic Ltd. GXTVBaby Socket Platform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxtvbb.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, gxtvbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x7f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - /*fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - };*/ - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x2c00000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x03000000>; - //alignment = <0x0 0x400000>; - //}; - demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - //size = <0x0 0x4000000>; - /* the most significant 64M memory reserved for ion */ - //reg = <0x0 0x3c000000 0x0 0x4000000>; /* for 1G memory */ - //reg = <0x0 0x5c000000 0x0 0x4000000>; /* for 1.5G memory */ - reg = <0x0 0x7c000000 0x0 0x4000000>; /* for 2G memory */ - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x1000000>; - multi-use; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - status = "disabled"; - size = <0x0 0x0>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - /*memory-region = <&fb_reserved>;*/ - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01851000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - // display_size_default: PAGE_ALIGN((1920*(align16(1080))/256*(256*16 + 16)+16)*3) = - // 0x1848000 (afbc body + afbc header + 16)*3 - display_size_default = <1920 1080 1920 3240 32>; - /*pxp_mode = <1>;*/ /** 0:normal mode 1:pxp mode */ - logo_addr = "0x7d851000"; /*ion base + fb0 memory size for uboot logo osd1*/ - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC0800000 0x0 0xb00000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x2000>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <0>;/*0:use reserved;1:use cma*/ - memory-region = <&di_reserved>; - //memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <4596800>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <1>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - cma_size = <64>;/*MByte*/ - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - }; - - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - }; - - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none", - "hu_det_uart0","hu_det_uart1","hu_det_uart2"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - pinctrl-2 = <&hdmirx_pins &cha_uart_in>; - pinctrl-3 = <&hdmirx_pins &chb_uart_in>; - pinctrl-4 = <&hdmirx_pins &chc_uart_in>; - rx_port_maps = <0x3120>; - hdmiuart_share_cfg = <0>; - repeat = <0>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda83e000>; - hdmirx_data_port = <0xda83e004>; - hdmirx_ctrl_port = <0xda83e008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - uart_scl_a_pin = <&gpio GPIOW_8 GPIO_ACTIVE_HIGH>; - uart_scl_b_pin = <&gpio GPIOW_12 GPIO_ACTIVE_HIGH>; - uart_scl_c_pin = <&gpio GPIOW_16 GPIO_ACTIVE_HIGH>; - }; - - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <2>; - interrupts = <0 65 1 - 0 66 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIOW_4 GPIO_ACTIVE_HIGH>, - <&gpio GPIOW_3 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - memory-region = <&demod_reserved>; - tuner0 = "mxl661_tuner"; - tuner0_i2c_adap_id = <1>; - tuner0_i2c_addr = <0x60>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - }; - - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <1>;/*1:enabel ;0:disable*/ - wb_en = <1>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "ok"; - gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - }; - - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_1_8V_DDR", - "MMC_CAP_ERASE", "MMC_CAP_HW_RESET", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**256KB*/ - // gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //,"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104","MMC_CAP_NONREMOVABLE"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - - ampmu4 { - compatible = "amlogic, pmu4_prober"; - #address-cells = <1>; - #size-cells = <0>; - - pmu4 { - compatible = "amlogic, pmu4"; - sub_type = "aml_pmu4"; - i2c_bus = "i2c_bus_b"; - reg = <0x35>; - use_24m_clock = <0x0>; - status = "okay"; - }; - }; - - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "disable"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - vend-data = <&vend_data>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - - vend_data: vend_data{ - compatible = "amlogic, amlogic-cec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - interrupts = <0 199 1>; - interrupt-names = "hdmitx_cec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - }; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "disabled"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_a_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxbabytv"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d007800 { - compatible = "amlogic, amlogic-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-usb3"; - portnum = <1>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <512>; - cpu-type = "gxtvbaby"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - lcd{ - compatible = "amlogic, lcd"; - dev_name = "lcd"; - mode = "tv"; - status = "okay"; - fr_auto_policy = <0>; - key_valid = <0>; - resets = <&clock GCLK_IDX_VCLK2_ENCL &clock GCLK_IDX_VCLK2_VENCL>; - reset-names = "encl","vencl"; - interrupts = <0 78 1 0 3 1>; - interrupt-names = "vbyone","vbyone_vsync"; - pinctrl-names = "vbyone"; - pinctrl-0 = <&lcd_vbyone_pins>; - - /* power type:(0=cpu_gpio, 1=pmu_gpio, 2=signal, 3=extern, 0xff=ending) */ - /* power index:(point gpios_index, or extern_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - lcd_cpu-gpios = <&gpio GPIOX_3 GPIO_ACTIVE_HIGH>; - lcd_cpu_gpio_names = "GPIOX_3"; - - lvds_0{ - model_name = "1080p-vfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2060 2650 1100 1480 120000000 160000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <2 0 0 50 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - lvds_1{ - model_name = "1080p-pclk"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2080 2720 1100 1380 133940000 156000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <0 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <2 0 0 50 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - lvds_2{ - model_name = "1080p-hfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2080 2720 1100 1380 133940000 156000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <1 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <2 0 0 50 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_0{ - model_name = "public"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4340 4700 2200 2850 480000000 614000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <0 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <2 0 0 50 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_1{ - model_name = "LG_RDL550WY"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 480000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <2 0 0 50 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_2{ - model_name = "INL_V580DJ2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2790 552000000 632000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 1 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <2 0 0 50 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_3{ - model_name = "BOE_HV550QU2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 560000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 1 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <2 0 0 50 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 30 /* signal disable */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - }; - - lcd_extern{ - compatible = "amlogic, lcd_extern"; - dev_name = "lcd_extern"; - status = "okay"; - key_valid = <0>; - - extern_0{ - index = <0>; - extern_name = "ext_default"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_second_address = <0xff>; /* 7bit i2c address, 0xff for none */ - i2c_bus = "i2c_bus_d"; - cmd_size = <9>; - }; - extern_1{ - index = <1>; - extern_name = "i2c_T5800Q"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_bus = "i2c_bus_d"; - }; - }; - - aml_local_dimming { - compatible = "amlogic, aml_local_dimming"; - dev_name = "aml_local_dimming"; - status = "disabled"; - pinctrl-names = "ldim_pwm"; - pinctrl-0 = <&ldim_pwm_pins>; - interrupts = <0 3 1 - 0 143 1>; - ldim_region_row_col = <1 8>; - ldim_bl_mode = <1>; /* 1=single_side(top, bottom, left or right), 2=uniform(top/bottom, left/right) */ - ldim_bl_mapping = <0 1 2 3 4 5 6 7>; - ldim_pwm_port = "none"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - ldim_pwm_attr = <1 2 50>; /* pol, freq(Hz for pwm, v-freq mulit for pwm_vs), duty(%) */ - }; - - backlight{ - compatible = "amlogic, backlight"; - dev_name = "backlight"; - status = "disabled"; - key_valid = <0>; - pinctrl-names = "pwm_on","pwm_vs_on"; - pinctrl-0 = <&bl_pwm_on_pins>; - pinctrl-1 = <&bl_pwm_vs_on_pins>; - - /* power index:(point gpios_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - bl-gpios = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_HIGH - &gpio GPIOY_13 GPIO_ACTIVE_HIGH>; - bl_gpio_names = "GPIOAO_4","GPIOY_13"; - - backlight_0{ - index = <0>; - bl_name = "backlight_0"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 0=gpio, 1=pwm, 2=pwm_combo, 3=ldim, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_B"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <1 180 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - backlight_1{ - index = <1>; - bl_name = "backlight_1"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 0=gpio, 1=pwm, 2=pwm_combo, 3=ldim, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_VS"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <1 2 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_off_value, pwm_on_delay, pwm_off_delay */ - }; - backlight_2{ - index = <2>; - bl_name = "backlight_2"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <3>; /* 0=gpio, 1=pwm, 2=pwm_combo, 3=ldim, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - }; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "okay"; - }; - pmu4_codec:pmu4{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_pmu4_codec"; - status = "disable"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - //sound-dai = <&pmu4_codec>; - sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - ethmac: ethernet@0xc9410000{ - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8>; - interrupts = <0 8 1>; - phy-mode= "rmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <ð_pins>; - #rst_pin-gpios = <&gpio GPIOZ_14 0>; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "t83x"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <1800>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&t83x_gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - - /* END OF AUDIO board specific */ - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; -}; - - &i2c_ao { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&ao_i2c_master>; - }; - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&a_i2c_master>; - }; - - &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&b_i2c_master_pin1>; - }; - &i2c_c { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&c_i2c_master>; - }; - &i2c_d { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&d_i2c_master>; - }; -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<8 0x7C0>; - amlogic,clrmask=<8 0x3800>; - amlogic,pins = "GPIOZ_1","GPIOZ_2","GPIOZ_3","GPIOZ_4","GPIOZ_5"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<8 0x4>; - amlogic,clrmask=<8 0x10 - 7 0x4000>; - amlogic,pins = "GPIOH_10"; - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<1 0x3c0000>; - amlogic,clrmask=<1 0x3C000000>; - amlogic,pins ="GPIOX_4", "GPIOX_5", "GPIOX_6", "GPIOX_7"; - }; - - eth_pins: eth_pins{ - amlogic,setmask =<8 0x1fffc000>; - amlogic,clrmask =<8 0x60000000>, - <9 0x1fff>; - amlogic,pins="GPIOZ_6","GPIOZ_7","GPIOZ_8","GPIOZ_9", - "GPIOZ_10","GPIOZ_11","GPIOZ_12","GPIOZ_13", - "GPIOZ_14","GPIOZ_15","GPIOZ_16","GPIOZ_17", - "GPIOZ_18","GPIOZ_19","GPIOZ_20"; - }; - - ldim_pwm_pins:ldim_pwm_pin { - amlogic,setmask = <2 0x00200000>; - amlogic,clrmask = <0 0x00900000 - 1 0x00000008 - 2 0x00180400 - 3 0x20000000>; - amlogic,pins = "GPIOX_10"; - }; - bl_pwm_on_pins:bl_pwm_on_pin { - amlogic,setmask = <10 0x00800000>; - amlogic,clrmask = <10 0x0100a000>; - amlogic,pins = "GPIOY_13"; - }; - bl_pwm_vs_on_pins:bl_pwm_vs_on_pin { - amlogic,setmask = <10 0x01000000>; - amlogic,clrmask = <10 0x0080a000>; - amlogic,pins = "GPIOY_13"; - }; - - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <6 0x3def780>; - amlogic,clrmask = <6 0x04210800>, - <10 0x0000001e>; - amlogic,pins = "GPIOW_5","GPIOW_6","GPIOW_7","GPIOW_8", - "GPIOW_9","GPIOW_10","GPIOW_11","GPIOW_12", - "GPIOW_13","GPIOW_14","GPIOW_15","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - - hu_det_none: hu_det_none { - amlogic,setmask = <6 0x3def780>, - ; - amlogic,clrmask = <6 0x04210800>, - <10 0x0000001e>; - amlogic,pins = "GPIOW_5"; - }; - cha_uart_in: cha_uart_in { - amlogic,setmask = <6 0x00000800>, - <10 0x00000002>; - amlogic,clrmask = <6 0x00000600>, - ; - amlogic,pins = "GPIOW_7","GPIOW_8"; - }; - chb_uart_in: chb_uart_in { - amlogic,setmask = <6 0x00010000>, - <10 0x00000004>; - amlogic,clrmask = <6 0x0000c000>, - ; - amlogic,pins = "GPIOW_11","GPIOW_12"; - }; - chc_uart_in: chc_uart_in { - amlogic,setmask = <6 0x00200000>, - <10 0x00000008>; - amlogic,clrmask = <6 0x00180000>, - ; - amlogic,pins = "GPIOW_15","GPIOW_16"; - }; - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins = "GPIOW_3","GPIOW_4"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; - /*PWM-A*/ - /*pwm_a_pins:pwm_a_pins{ - amlogic,setmask=<10 0x200000>; - amlogic,clrmask=<10 0x405000>; - amlogic,pins="GPIOY_12"; - };*/ -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; - - &spicc{ - status = "okay"; - pinctrl-names = "spicc_pulldown","spicc_pullup"; - pinctrl-0 = <&spicc_pulldown_h6h7h8 &spicc_pins_h6h7h8>; - pinctrl-1 = <&spicc_pullup_h6h7h8 &spicc_pins_h6h7h8>; - num_chipselect = <1>; - cs-gpios = <&gpio GPIOH_9 GPIO_ACTIVE_HIGH>; - #address-cells = <1>; - #size-cells = <0>; - iw7019 { - compatible = "amlogic, iw7019"; - status = "disabled"; - en-gpio = <&gpio GPIOX_9 GPIO_ACTIVE_HIGH>; - spi_cs_delay = <10 10>; /* hold_high_delay, clk_cs_delay (unit: us) */ - spi_write_check = <0>; - lamp_err_check = <0>; - lamp_err-gpio = <&gpio GPIOX_11 GPIO_ACTIVE_HIGH>; - reg = <0>; - spi-max-frequency = <3000000>; - spi-cpha = <0>; - spi-cpol = <0>; - - dim_max_min = <0xfff 0x7f>; /* dim_max, dim_min */ - cmd_size = <4>; - }; - }; diff --git a/arch/arm64/boot/dts/amlogic/gxtvbb_t966_skt.dts b/arch/arm64/boot/dts/amlogic/gxtvbb_t966_skt.dts deleted file mode 100644 index 32d7f3cd5dc77..0000000000000 --- a/arch/arm64/boot/dts/amlogic/gxtvbb_t966_skt.dts +++ /dev/null @@ -1,1197 +0,0 @@ -/* - * Amlogic Ltd. GXtvBaby t966 skt Plaform - * - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include -#include "mesongxtvbb.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, gxtvbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x7f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - /*fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - };*/ - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x2c00000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x03000000>; - //alignment = <0x0 0x400000>; - //}; - demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - //size = <0x0 0x4000000>; - /* the most significant 64M memory reserved for ion */ - //reg = <0x0 0x3c000000 0x0 0x4000000>; /* for 1G memory */ - //reg = <0x0 0x5c000000 0x0 0x4000000>; /* for 1.5G memory*/ - reg = <0x0 0x7c000000 0x0 0x4000000>; /* for 2G memory */ - }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x1000000>; - multi-use; - }; - /* AVC Encode CMA pool */ - avc_cma_reserved:linux,avc_cma { - compatible = "shared-dma-pool"; - linux,phandle = <1>; - reusable; - size = <0x0 0x2400000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - status = "disabled"; - size = <0x0 0x0>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - /*memory-region = <&fb_reserved>;*/ - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01851000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - /*pxp_mode = <1>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x7d851000"; /*ion base + fb0 memory size for uboot logo osd1*/ - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC0800000 0x0 0xb00000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x2000>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <0>;/*0:use reserved;1:use cma*/ - memory-region = <&di_reserved>; - //memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <4596800>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <1>; - }; - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - cma_size = <64>;/*MByte*/ - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - }; - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none", - "hu_det_uart0","hu_det_uart1","hu_det_uart2"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - pinctrl-2 = <&hdmirx_pins &cha_uart_in>; - pinctrl-3 = <&hdmirx_pins &chb_uart_in>; - pinctrl-4 = <&hdmirx_pins &chc_uart_in>; - rx_port_maps = <0x3120>; - hdmiuart_share_cfg = <0>; - repeat = <0>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda83e000>; - hdmirx_data_port = <0xda83e004>; - hdmirx_ctrl_port = <0xda83e008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - uart_scl_a_pin = <&gpio GPIOW_8 GPIO_ACTIVE_HIGH>; - uart_scl_b_pin = <&gpio GPIOW_12 GPIO_ACTIVE_HIGH>; - uart_scl_c_pin = <&gpio GPIOW_16 GPIO_ACTIVE_HIGH>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <2>; - interrupts = <0 65 1 - 0 66 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIOW_4 GPIO_ACTIVE_HIGH>, - <&gpio GPIOW_3 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "disable"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - memory-region = <&demod_reserved>; - tuner0 = "r840_tuner"; - tuner0_i2c_adap_id = <1>; - tuner0_i2c_addr = <0x74>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - pinctrl-names="atvdemod_agc"; - pinctrl-0=<&atvdemod_agc>; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - }; - aml_local_dimming { - compatible = "amlogic, aml_local_dimming"; - dev_name = "aml_local_dimming"; - status = "disable"; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0>;/*1:enabel ;0:disable*/ - wb_en = <0>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "ok"; - gpio_reset = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; - }; - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>; - interrupts = <0 68 4>; - irq_trigger_type = "GPIO_IRQ_HIGH"; - power_on_pin = <&gpio_ao GPIOAO_6 GPIO_ACTIVE_HIGH>; - //pinctrl-names = "wifi_32k_pins"; - //pinctrl-0 = <&wifi_32k_pins>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ; - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_1_8V_DDR", - "MMC_CAP_ERASE", "MMC_CAP_HW_RESET", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200"; - f_min = <300000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**256KB*/ - // gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 4 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; /* 3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - /*if card have no switch gpio, remove all relative to vol_switch */ - //vol_switch = <&gpio GPIOY_2 GPIO_ACTIVE_HIGH>; - //vol_switch_18 = <1>; /* 1 = high, 0 = low */ - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - - ampmu4 { - compatible = "amlogic, pmu4_prober"; - #address-cells = <1>; - #size-cells = <0>; - - pmu4 { - compatible = "amlogic, pmu4"; - sub_type = "aml_pmu4"; - i2c_bus = "i2c_bus_b"; - reg = <0x35>; - use_24m_clock = <0x0>; - status = "disable"; - }; - }; - - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXTVBB"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x2>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_a_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxbabytv"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d007800 { - compatible = "amlogic, amlogic-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-usb3"; - portnum = <1>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <512>; - cpu-type = "gxtvbaby"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "okay"; - }; - pmu4_codec:pmu4{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_pmu4_codec"; - status = "disable"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - //sound-dai = <&pmu4_codec>; - sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - ethmac: ethernet@0xc9410000{ - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8>; - interrupts = <0 8 1>; - phy-mode= "rgmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <ð_pins>; - rst_pin-gpios = <&gpio GPIOZ_6 0>; - mc_val = <0x1621>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "t83x"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <1800>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&t83x_gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - - /* END OF AUDIO board specific */ -}; - - &i2c_ao { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&ao_i2c_master>; - }; - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&a_i2c_master>; - }; - - &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&b_i2c_master_pin1>; - }; - &i2c_c { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&c_i2c_master>; - }; - &i2c_d { - status = "disabled"; - pinctrl-names="default"; - pinctrl-0=<&d_i2c_master>; - }; -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<8 0x7C0>; - amlogic,clrmask=<8 0x3800>; - amlogic,pins = "GPIOZ_1","GPIOZ_2","GPIOZ_3","GPIOZ_4","GPIOZ_5"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<8 0x4>; - amlogic,clrmask=<8 0x10 - 7 0x4000>; - amlogic,pins = "GPIOH_10"; - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<1 0x3c0000>; - amlogic,clrmask=<1 0x3C000000>; - amlogic,pins ="GPIOX_4", "GPIOX_5", "GPIOX_6", "GPIOX_7"; - }; - - eth_pins: eth_pins{ - amlogic,setmask =<8 0x1fff8000>; - amlogic,clrmask =<8 0x60000000>, - <9 0x1fff>; - amlogic,pins="GPIOZ_7","GPIOZ_8","GPIOZ_9", - "GPIOZ_10","GPIOZ_11","GPIOZ_12","GPIOZ_13", - "GPIOZ_14","GPIOZ_15","GPIOZ_16","GPIOZ_17", - "GPIOZ_18","GPIOZ_19","GPIOZ_20"; - }; - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <6 0x3def780>; - amlogic,clrmask = <6 0x04210800>, - <10 0x0000001e>; - amlogic,pins = "GPIOW_5","GPIOW_6","GPIOW_7","GPIOW_8", - "GPIOW_9","GPIOW_10","GPIOW_11","GPIOW_12", - "GPIOW_13","GPIOW_14","GPIOW_15","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - hu_det_none: hu_det_none { - amlogic,setmask = <6 0x3def780>, - ; - amlogic,clrmask = <6 0x04210800>, - <10 0x0000001e>; - amlogic,pins = "GPIOW_5"; - }; - cha_uart_in: cha_uart_in { - amlogic,setmask = <6 0x00000800>, - <10 0x00000002>; - amlogic,clrmask = <6 0x00000600>, - ; - amlogic,pins = "GPIOW_7","GPIOW_8"; - }; - chb_uart_in: chb_uart_in { - amlogic,setmask = <6 0x00010000>, - <10 0x00000004>; - amlogic,clrmask = <6 0x0000c000>, - ; - amlogic,pins = "GPIOW_11","GPIOW_12"; - }; - chc_uart_in: chc_uart_in { - amlogic,setmask = <6 0x00200000>, - <10 0x00000008>; - amlogic,clrmask = <6 0x00180000>, - ; - amlogic,pins = "GPIOW_15","GPIOW_16"; - }; - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins = "GPIOW_3","GPIOW_4"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; - -/* &spicc{ - status = "okay"; - pinctrl-names = "spicc_pulldown","spicc_pullup"; - pinctrl-0 = <&spicc_pulldown_h6h7h8 &spicc_pins_h6h7h8>; - pinctrl-1 = <&spicc_pullup_h6h7h8 &spicc_pins_h6h7h8>; - num_chipselect = <1>; - cs-gpios = <&gpio GPIOH_9 GPIO_ACTIVE_HIGH>; - #address-cells = <1>; - #size-cells = <0>; - }; */ diff --git a/arch/arm64/boot/dts/amlogic/mesongxbb-gpu-mali450.dtsi b/arch/arm64/boot/dts/amlogic/mesongxbb-gpu-mali450.dtsi deleted file mode 100644 index 5bc8b247d4247..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesongxbb-gpu-mali450.dtsi +++ /dev/null @@ -1,134 +0,0 @@ -/* - * Amlogic GXBB Platform gpu - * - * Copyright (c) 2015-2015 Amlogic Ltd - * - * This file is licensed under a dual GPLv2 or BSD license. - * - */ - -/ { - gpu:mali@d00c0000{ - #cooling-cells = <2>; /* min followed by max */ - compatible = "arm,mali-450"; - interrupt-parent = <&gic>; - reg = <0 0xd00c0000 0 0x40000>, /*mali APB bus base address*/ - <0 0xc883c000 0 0x01000>, /*hiubus base address for gpu clk cntl*/ - <0 0xc8100000 0 0x01000>, /*aobus base address for gpu pmu domain*/ - <0 0xc883c000 0 0x01000>, /*hiubus base address for gpu clk cntl*/ - <0 0xc1104440 0 0x01000>; - interrupts = <0 160 4>, <0 161 4>, <0 162 4>, <0 163 4>, - <0 164 4>, <0 165 4>, <0 166 4>, <0 167 4>, - <0 168 4>, <0 169 4>; - interrupt-names = "IRQGP", "IRQGPMMU", "IRQPP", "IRQPMU", - "IRQPP0", "IRQPPMMU0", "IRQPP1", "IRQPPMMU1", - "IRQPP2", "IRQPPMMU2"; - pmu_domain_config = <0x1 0x2 0x4 0x4 0x0 0x0 0x0 0x0 0x0 0x1 0x2 0x0>; - pmu_switch_delay = <0xffff> ; - num_of_pp = <3> ; - def_clk = <3>; - sc_mpp = <3>;/* number of pp used most of time.*/ - tbl = <&clk125_cfg &clk285_cfg &clk400_cfg &clk500_cfg &clk666_cfg &clk800_cfg &clk800_cfg>; - - clocks = <&clock CLK_FPLL_DIV3>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV5>, - <&clock CLK_FPLL_DIV7>, - <&clock GP0_PLL>, - <&clock CLK_MALI>, - <&clock CLK_MALI_0>, - <&clock CLK_MALI_1>; - clock-names = - "fclk_div3", - "fclk_div4", - "fclk_div5", - "fclk_div7", - "gp0_pll", - "clk_mali", - "clk_mali_0", - "clk_mali_1"; - - /*control_interval x keep_count == 900 - 1000ms */ - control_interval = <200>; - - clk125_cfg:clk125_cfg { - clk_freq = <125000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <30 250>; - }; - - clk250_cfg:clk250_cfg { - clk_freq = <250000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <115 250>; - /*125 = 250*(125/250), 50= 60-10*/ - }; - - clk285_cfg:clk285_cfg { - clk_freq = <285000000>; - clk_parent = "fclk_div7"; - clkp_freq = <285000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <100 250>; - /*109 = 250*(125/285)*/ - }; - - clk400_cfg:clk400_cfg { - clk_freq = <400000000>; - clk_parent = "fclk_div5"; - clkp_freq = <400000000>; - voltage = <1150>; - keep_count = <3>; - threshold = <168 250>; - /*178 = 250*(285/400)*/ - }; - - clk500_cfg:clk500_cfg { - clk_freq = <500000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <2>; - threshold = <190 250>; - /*200=250*(400/500)*/ - }; - - clk666_cfg:clk666_cfg { - clk_freq = <666000000>; - clk_parent = "fclk_div3"; - clkp_freq = <666000000>; - voltage = <1150>; - keep_count = <1>; - threshold = <177 250>; - /*187.5=250*(500/666.6)*/ - }; - - clk750_cfg:clk750_cfg { - clk_freq = <744000000>; - clk_parent = "gp0_pll"; - clkp_freq = <744000000>; - voltage = <1150>; - keep_count = <1>; - threshold = <213 255>; - /*223=250*(666.0/744.0), 223+7=230*/ - }; - - clk800_cfg:clk800_cfg { - clk_freq = <792000000>; - clk_parent = "gp0_pll"; - clkp_freq = <792000000>; - voltage = <1150>; - keep_count = <1>; - threshold = <230 255>; - }; - - }; - -};/* end of / */ diff --git a/arch/arm64/boot/dts/amlogic/mesongxbb.dtsi b/arch/arm64/boot/dts/amlogic/mesongxbb.dtsi deleted file mode 100755 index f4b3bbb15474b..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesongxbb.dtsi +++ /dev/null @@ -1,836 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include "mesongxbb-gpu-mali450.dtsi" -/ { - cpus:cpus { - #address-cells = <2>; - #size-cells = <0>; - #cooling-cells = <2>; /* min followed by max */ - - cpu0:cpu@0 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x0>; - enable-method = "psci"; - }; - - cpu1:cpu@1 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x1>; - enable-method = "psci"; - }; - cpu2:cpu@2 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x2>; - enable-method = "psci"; - }; - - cpu3:cpu@3 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x3>; - enable-method = "psci"; - }; - - }; - - timer { - compatible = "arm,armv8-timer"; - interrupts = , - , - , - ; - }; - timer_bc { - compatible = "arm, meson-bc-timer"; - reg= <0x0 0xc1109990 0x0 0x4 0x0 0xc1109994 0x0 0x4>; - timer_name = "Meson TimerF"; - clockevent-rating=<300>; - clockevent-shift=<20>; - clockevent-features=<0x03>; - interrupts = <0 60 1>; - bit_enable=<16>; - 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>; - }; - meson_suspend:pm{ - compatible = "amlogic, pm"; - device_name = "aml_pm"; - gxbaby-suspend; - reg = <0x0 0xc81000a8 0x0 0x4 - 0x0 0xc810023c 0x0 0x4>; - }; - - gic: interrupt-controller@2c001000 { - compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; - #interrupt-cells = <3>; - #address-cells = <0>; - interrupt-controller; - reg = <0x0 0xc4301000 0 0x1000>, - <0x0 0xc4302000 0 0x0100>; - interrupts = ; - }; - - aml_restart{ - compatible = "aml, restart"; - sys_reset = <0x84000009>; - sys_poweroff = <0x84000008>; - }; - - - - psci { - compatible = "arm,psci"; - method = "smc"; - cpu_suspend = <0xC4000001>; - cpu_off = <0x84000002>; - cpu_on = <0xC4000003>; - migrate = <0xC4000005>; - }; - secmon { - compatible = "amlogic, secmon"; - memory-region = <&secmon_reserved>; - in_base_func = <0x82000020>; - out_base_func = <0x82000021>; - }; - securitykey { - compatible = "aml, securitykey"; - storage_query = <0x82000060>; - storage_read = <0x82000061>; - storage_write = <0x82000062>; - storage_tell = <0x82000063>; - storage_verify = <0x82000064>; - storage_status = <0x82000065>; - storage_list = <0x82000067>; - storage_remove = <0x82000068>; - storage_in_func = <0x82000023>; - storage_out_func = <0x82000024>; - storage_block_func = <0x82000025>; - storage_size_func = <0x82000027>; - storage_set_enctype = <0x8200006A>; - storage_get_enctype = <0x8200006B>; - storage_version = <0x8200006C>; - }; - cpu_iomap{ - compatible = "amlogic, iomap"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - io_apb_base{ - reg = <0x0 0xd0000000 0x0 0x200000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - }; - cpufreq-meson { - compatible = "amlogic, cpufreq-scpi"; - status = "okay"; - clocks = <&scpi_dvfs 0>; - clock-names = "cpu_clk"; - }; - - amlogic-watchdog{ - compatible = "amlogic, gx-wdt"; - status = "disable"; - default_timeout=<10>; - reset_watchdog_method=<1>;//0:sysfs,1:kernel - reset_watchdog_time=<2>; - shutdown_timeout=<10>; - firmware_timeout=<6>; - suspend_timeout=<6>; - reg = <0x0 0xc11098d0 0x0 0x10>; - clocks = <&clock CLK_XTAL>; - }; - amlogic-jtag { - compatible = "amlogic, jtag"; - status = "okay"; - pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; - pinctrl-0 = <&jtag_apao_pins>; - pinctrl-1 = <&jtag_apee_pins>; - }; - clock: meson_clock { - compatible = "amlogic, gxbb-clock"; - reg = <0x0 0xc883c000 0x0 0x1000>, /* HIU BUS*/ - <0x0 0xc8100000 0x0 0x1000>; //AOBUS - #clock-cells = <1>; - #reset-cells = <1>; - sys_max = <1536000000>; - }; - cpu_info{ - compatible = "amlogic, cpuinfo"; - cpuinfo_cmd = <0x82000044>; - }; - pinmux: pinmux{ - compatible = "amlogic, pinmux-gxbb"; - dev_name = "pinmux"; - #pinmux-cells=<2>; - #address-cells = <2>; - #size-cells = <2>; - reg = <0x0 0xc1109880 0x0 0x10>; - interrupts = < 0 64 1 /* gpio irq 0 = 64 + 32 = 96 */ - 0 65 1 - 0 66 1 - 0 67 1 - 0 68 1 - 0 69 1 - 0 70 1 - 0 71 1>; /* gpio irq bank 7 = 71 + 32 = 103 */ - ranges; - gpio: banks@c11080b0 { - reg = <0x0 0xc88344b0 0x0 0x28>, - <0x0 0xc88344e8 0x0 0x14>, - <0x0 0xc8834520 0x0 0x14>, - <0x0 0xc8834430 0x0 0x40>; - reg-names = "mux", "pull", "pull-enable", "gpio"; - gpio-controller; - #gpio-cells = <2>; - }; - gpio_ao: ao-bank@c1108030 { - reg = <0x0 0xc8100014 0x0 0x8>, - <0x0 0xc810002c 0x0 0x4>, - <0x0 0xc8100024 0x0 0x8>; - reg-names = "mux", "pull", "gpio"; - gpio-controller; - #gpio-cells = <2>; - }; - eth_pins:eth_pins{ - amlogic,setmask =<6 0x3fff>; - amlogic,clrmask =<6 0xc000>, - <5 0x3c0000f0>, - <4 0x300>; - amlogic,pins="GPIOZ_0","GPIOZ_1","GPIOZ_2","GPIOZ_3", - "GPIOZ_4","GPIOZ_5","GPIOZ_6","GPIOZ_7", - "GPIOZ_8","GPIOZ_9","GPIOZ_10","GPIOZ_11", - "GPIOZ_12","GPIOZ_13","GPIOZ_15"; - }; - jtag_apao_pins:jtag_apao_pin{ - amlogic,clrmask = ; - amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11"; - }; - jtag_apee_pins:jtag_apee_pin{ - amlogic,clrmask = <2 0xcc00>; - amlogic,pins = "CARD_0","CARD_1","CARD_2","CARD_3"; - }; - remote_pins:remote_pin{ - amlogic,setmask = ; - amlogic,pins = "GPIOAO_7"; - }; - ao_uart_pins:ao_uart{ - amlogic,setmask=; - amlogic,pins="GPIOAO_0", "GPIOAO_1"; - }; - ao_b_uart_pins:ao_b_uart{ - amlogic,setmask=; - amlogic,pins="GPIOAO_4", "GPIOAO_5"; - }; - a_uart_pins:a_uart{ - amlogic,setmask=<4 0x3c00>; - amlogic,pins="GPIOX_12", "GPIOX_13", "GPIOX_14", "GPIOX_15"; - }; - b_uart_pins:b_uart{ - amlogic,setmask=<2 0x30000000>; - amlogic,pins="GPIODV_24", "GPIODV_25"; - }; - c_uart_pins:c_uart{ - amlogic,setmask=<1 0xc0000>; - amlogic,pins="GPIOY_13", "GPIOY_14"; - }; - wifi_32k_pins:wifi_32k_pins{ - amlogic,setmask=<2 0x40000000>; - amlogic,clrmask=<2 0x400000 - 3 0x8000>; - amlogic,pins="GPIOX_19"; - }; - sd_clk_cmd_pins:sd_clk_cmd_pins{ - amlogic,setmask=<2 0x00000c00>, - ; - amlogic,pins = "CARD_2","CARD_3"; /* CARD_2:CLK, CARD_3:CMD */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_all_pins:sd_all_pins{ - amlogic,setmask=<2 0x0000fc00>, - ; - amlogic,pins="CARD_0","CARD_1","CARD_2","CARD_3","CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_1bit_pins:sd_1bit_pins{ - amlogic,setmask=<2 0x00008c00>, - ; - amlogic,pins = "CARD_1","CARD_2","CARD_3"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_clk_cmd_uart_pins:sd_clk_cmd_uart_pins{ - amlogic,setmask=<2 0x00000c00>, - <8 0x00000600>; - amlogic,pins = "CARD_2","CARD_3"; /* CARD_2:CLK, CARD_3:CMD */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_1bit_uart_pins:sd_1bit_uart_pins{ - amlogic,setmask=<2 0x00008c00>, - <8 0x00000600>; - amlogic,pins = "CARD_1","CARD_2","CARD_3"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_to_ao_uart_pins:sd_to_ao_uart_pins{ - amlogic,setmask=; - amlogic,clrmask=<8 0x00000600>; - amlogic,pins = "GPIOAO_0","GPIOAO_1"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - ao_to_sd_uart_pins:ao_to_sd_uart_pins{ - amlogic,setmask=<8 0x00000600>; - amlogic,clrmask=, - <2 0x00003000>; - amlogic,pins = "CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - ao_to_sd_jtag_pins:ao_to_sd_jtag_pins{ - amlogic,setmask=<8 0x00000600>; - amlogic,clrmask=<2 0x0000CC00>, - ; - amlogic,pins = "CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_to_ao_jtag_pins:sd_to_ao_jtag_pins{ - amlogic,setmask=; - amlogic,clrmask=<8 0x00000600>, - <2 0x0000CC00>; - amlogic,pins = "GPIOAO_0","GPIOAO_1"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - - emmc_clk_cmd_pins:emmc_clk_cmd_pins{ - amlogic,setmask=<4 0xc00c0000>; - amlogic,pins = "BOOT_8","BOOT_10"; /** BOOT_10:CMD, BOOT_8:CLK */ - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - emmc_all_pins:emmc_all_pins{ - amlogic,setmask=<4 0xc00c0000>; /*sdhc c*/ - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_10"; - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sdio_clk_cmd_pins:sdio_clk_cmd_pins{ - amlogic,setmask=<8 0x00000003>; - amlogic,pins = "GPIOX_4","GPIOX_5"; /** GPIOX_5:CMD, GPIOX_4:CLK */ - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sdio_all_pins:sdio_all_pins{ - amlogic,setmask=<8 0x0000003f>; - amlogic,pins = "GPIOX_0","GPIOX_1","GPIOX_2","GPIOX_3","GPIOX_4","GPIOX_5"; - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - /*cam_gpio_b: cam_gpio_b{ - amlogic,setmask=<5 0xf0>; - amlogic,clrmask=<4 0x300 - 5 0xc000000 - 6 0x1ff3>; - amlogic,pins = "GPIOZ_0","GPIOZ_1","GPIOZ_3","GPIOZ_4","GPIOZ_5","GPIOZ_6","GPIOZ_7","GPIOZ_8","GPIOZ_9","GPIOZ_10","GPIOZ_11"; - }; - cam_gpio_a: cam_gpio_a{ - amlogic,setmask=<2 0x3f0000>; - amlogic,clrmask=<1 0x7030ff - 3 0x37>; - amlogic,pins = "GPIOY_1","GPIOY_0","GPIOY_2","GPIOY_15","GPIOY_16", - "GPIOY_3","GPIOY_4","GPIOY_5","GPIOY_6", - "GPIOY_7","GPIOY_8","GPIOY_9","GPIOY_10"; - };*/ - conf_nand_pulldown: conf_nand_pulldown{ - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_15"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - conf_nand_pullup: conf_nand_pullup{ - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - all_nand_pins: all_nand_pins{ - amlogic,setmask=<4 0x7ff00000>; - amlogic,clrmask=<0 0x80000 - 4 0x800c0000 - 5 0xf>; - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_9", - "BOOT_10","BOOT_11","BOOT_12","BOOT_13", - "BOOT_14","BOOT_15","BOOT_16","BOOT_17"; - amlogic,enable-output=<1>; - }; - nand_cs_pins: nand_cs{ - amlogic,setmask=<4 0xc000000>; - amlogic,clrmask=<4 0x40000>; - amlogic,pins = "BOOT_8","BOOT_9"; - }; - hdmitx_hpd: hdmitx_hpd { - amlogic,setmask=<1 0x04000000>; - amlogic,pins="GPIOH_0"; - }; - hdmitx_ddc: hdmitx_ddc { - amlogic,setmask=<1 0x03000000>; - amlogic,pins="GPIOH_1", "GPIOH_2"; - }; - hdmitx_aocec: hdmitx_aocec { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_12"; - }; - hdmitx_eecec: hdmitx_eecec { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_12"; - }; - - /*p200 i2c-A multiplex with usb PWR*/ - a_i2c_master:a_i2c{ - amlogic,setmask=<7 0xc000000>; - amlogic,clrmask=<0 0x18c0 2 0x30000000 5 0x1800>; - amlogic,pins="GPIODV_24","GPIODV_25"; - }; - b_i2c_master:b_i2c{ - amlogic,setmask=<7 0x3000000>; - amlogic,clrmask=<0 0x600 2 0xc000000 5 0x700>; - amlogic,pins="GPIODV_26","GPIODV_27"; - }; - c_i2c_master:c_i2c{ - amlogic,setmask=<7 0xc00000>; - amlogic,clrmask=<3 0x700000>; - amlogic,pins="GPIODV_28","GPIODV_29"; - }; - d_i2c_master:d_i2c{ - amlogic,setmask=<4 0xc>; - amlogic,clrmask=<2 0x3000000 3 0x1000>; - amlogic,pins="GPIOX_16","GPIOX_17"; - }; - i2c_slave_pin:s_i2c{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_4","GPIOAO_5"; - }; - dvb_p_ts0_pins: dvb_p_ts0_pins { - amlogic,setmask = <3 0x37>; - amlogic,clrmask = <2 0xf0000 1 0x30ff>; - amlogic,pins = "GPIOY_0","GPIOY_1","GPIOY_2", "GPIOY_3","GPIOY_4","GPIOY_5","GPIOY_6","GPIOY_7","GPIOY_8","GPIOY_9","GPIOY_10"; - }; - dvb_s_ts0_pins: dvb_s_ts0_pins { - amlogic,setmask = <3 0x17>; - amlogic,clrmask = <2 0xf0000 1 0x7>; - amlogic,pins = "GPIOY_0","GPIOY_1","GPIOY_2","GPIOY_3"; - }; - }; - cpu_version{ - reg=<0x0 0xc8100220 0x0 0x4>; - }; - meson_clk_msr{ - compatible = "amlogic, gxbb_measure"; - reg = <0x0 0xc110875c 0x0 0x4 - 0x0 0xc1108764 0x0 0x4>; - }; - - i2c_a: i2c@c1108500{ /*I2C-A*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-A"; - status = "disabled"; - reg = <0x0 0xc1108500 0x0 0x20>; - device_id = <1>; - pinctrl-names="default"; - pinctrl-0=<&a_i2c_master>;/*p200 i2c-A multiplex with usb PWR*/ - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_b: i2c@c11087c0{ /*I2C-B*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-B"; - status = "disabled"; - reg = <0x0 0xc11087c0 0x0 0x20>; - device_id = <2>; - pinctrl-names="default"; - pinctrl-0=<&b_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_c: i2c@c11087e0{ /*I2C-C*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-C"; - status = "disabled"; - reg = <0x0 0xc11087e0 0x0 0x20>; - device_id = <3>; - pinctrl-names="default"; - pinctrl-0=<&c_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_d: i2c@c1108d20{ /*I2C-D*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-D"; - status = "disabled"; - reg = <0x0 0xc1108d20 0x0 0x20>; - device_id = <4>; - pinctrl-names="default"; - pinctrl-0=<&d_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_slave:i2c_slave@c8100540{ - compatible = "amlogic, meson-i2c-slave"; - status = "disabled"; - reg = <0x0 0xc8100540 0x0 0x20>; - interrupts = <0 194 1>; - pinctrl-names="default"; - pinctrl-0=<&i2c_slave_pin>; - - }; - efuse: efuse{ - compatible = "amlogic, efuse"; - read_cmd = <0x82000030>; - write_cmd = <0x82000031>; - get_max_cmd = <0x82000033>; - key = <&efusekey>; - resets = <&clock GCLK_IDX_EFUSE>; - reset-names = "efuse_clk"; - status = "disabled"; - }; - efusekey:efusekey{ - keynum = <4>; - key0 = <&key_0>; - key1 = <&key_1>; - key2 = <&key_2>; - key3 = <&key_3>; - key_0:key_0{ - keyname = "mac"; - offset = <0>; - size = <6>; - }; - key_1:key_1{ - keyname = "mac_bt"; - offset = <6>; - size = <6>; - }; - key_2:key_2{ - keyname = "mac_wifi"; - offset = <12>; - size = <6>; - }; - key_3:key_3{ - keyname = "usid"; - offset = <18>; - size = <16>; - }; - }; - - mailbox: mhu@c883c400 { - compatible = "amlogic, meson_mhu"; - reg = <0x0 0xc883c400 0x0 0x4c>, /* MHU registers */ - <0x0 0xc8013000 0x0 0x800>; /* Payload area */ - interrupts = <0 209 IRQ_TYPE_EDGE_RISING>, /* low priority interrupt */ - <0 210 IRQ_TYPE_EDGE_RISING>; /* high priority interrupt */ - #mbox-cells = <1>; - mbox-names = "cpu_to_scp_low", "cpu_to_scp_high"; - mboxes = <&mailbox 0 &mailbox 1>; - }; - scpi_clocks { - compatible = "arm,scpi-clks"; - - scpi_dvfs: scpi_clocks@0 { - compatible = "arm,scpi-clk-indexed"; - #clock-cells = <1>; - clock-indices = <0>; - clock-output-names = "vcpu"; - }; - - }; - aml_remote:meson-remote { - compatible = "amlogic, aml_remote"; - dev_name = "meson-remote"; - status = "okay"; - remote_ao_offset = <0x580>; /* 0x400 + (0x20 + idx)<<2 -- old ; 0x400 + (0x60 +idx)<<2 --new */ - interrupts = <0 196 1>; - pinctrl-names = "default"; - pinctrl-0 = <&remote_pins>; - }; - meson_ir:meson-ir { - compatible = "amlogic,meson-gxbb-ir"; - status = "disabled"; - reg = <0x0 0xc8100580 0x0 0x40>; - interrupts = <0 196 1>; - pinctrl-names = "default"; - pinctrl-0 = <&remote_pins>; - }; - - rng { - compatible = "amlogic,meson-rng"; - reg = <0x0 0xc8834000 0x0 0x4>; - }; - - audio_data:audio_data { - compatible = "amlogic, audio_data"; - query_licence_cmd = <0x82000050>; - status = "disabled"; - }; - - saradc: saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0 9 1>; - interrupt-names = "saradc_int"; - clocks = <&clock CLK_XTAL>; - clock-names = "saradc_clk"; - resets = <&clock GCLK_IDX_SARADC>; - reg = <0x0 0xc1108680 0x0 0x30 - 0x0 0xc883c3d8 0x0 0x08>; - }; - - defendkey: defendkey { - compatible = "amlogic, defendkey"; - reg = <0x0 0xc8834500 0x0 0x4>; /*RAND64_ADDR0*/ - mem_size = <0x0 0x100000>; - status = "disabled"; - }; - - tpiu@0,c0202000 { - compatible = "arm,coresight-tpiu", "arm,primecell"; - reg = <0 0xc0202000 0 0x1000>; - - clocks = <&clock CLK_APB_P>; - clock-names = "apb_pclk"; - port { - tpiu_in_port: endpoint@0 { - slave-mode; - remote-endpoint = <&replicator_out_port0>; - }; - }; - }; - - etb@0,c0203000 { - compatible = "arm,coresight-etb10", "arm,primecell"; - reg = <0 0xc0203000 0 0x1000>; - - clocks = <&clock CLK_APB_P>; - clock-names = "apb_pclk"; - port { - etb_in_port: endpoint@0 { - slave-mode; - remote-endpoint = <&replicator_out_port1>; - }; - }; - }; - - replicator@0,c0204000 { - compatible = "arm,coresight-replicator-qcom", "arm,primecell"; - reg = <0 0xc0204000 0 0x1000>; - - clocks = <&clock CLK_APB_P>; - clock-names = "apb_pclk"; - ports { - #address-cells = <1>; - #size-cells = <0>; - - /* replicator output ports */ - port@0 { - #address-cells = <1>; - #size-cells = <0>; - reg = <0>; - replicator_out_port0: endpoint { - reg = <0>; - remote-endpoint = <&tpiu_in_port>; - }; - }; - - port@1 { - #address-cells = <1>; - #size-cells = <0>; - reg = <1>; - replicator_out_port1: endpoint { - reg = <1>; - remote-endpoint = <&etb_in_port>; - }; - }; - - /* replicator input port */ - port@2 { - reg = <0>; - replicator_in_port0: endpoint { - slave-mode; - remote-endpoint = <&funnel_out_port0>; - }; - }; - }; - }; - - funnel@0,c0201000 { - compatible = "arm,coresight-funnel", "arm,primecell"; - reg = <0 0xc0201000 0 0x1000>; - - clocks = <&clock CLK_APB_P>; - clock-names = "apb_pclk"; - ports { - #address-cells = <1>; - #size-cells = <0>; - - /* funnel output port */ - port@0 { - reg = <0>; - funnel_out_port0: endpoint { - remote-endpoint = <&replicator_in_port0>; - }; - }; - - /* funnel input ports */ - port@1 { - reg = <0>; - funnel_in_port0: endpoint { - slave-mode; - remote-endpoint = <&etm0_out_port>; - }; - }; - - port@2 { - reg = <1>; - funnel_in_port1: endpoint { - slave-mode; - remote-endpoint = <&etm1_out_port>; - }; - }; - - port@3 { - reg = <2>; - funnel_in_port2: endpoint { - slave-mode; - remote-endpoint = <&etm2_out_port>; - }; - }; - - port@4 { - reg = <3>; - funnel_in_port3: endpoint { - slave-mode; - remote-endpoint = <&etm3_out_port>; - }; - }; - }; - }; - - etm@0,c0440000 { - compatible = "arm,coresight-etm4x", "arm,primecell"; - reg = <0 0xc0440000 0 0x1000>; - - cpu = <&cpu0>; - clocks = <&clock CLK_APB_P>; - clock-names = "apb_pclk"; - port { - etm0_out_port: endpoint { - remote-endpoint = <&funnel_in_port0>; - }; - }; - }; - - etm@0,c0540000 { - compatible = "arm,coresight-etm4x", "arm,primecell"; - reg = <0 0xc0540000 0 0x1000>; - - cpu = <&cpu1>; - clocks = <&clock CLK_APB_P>; - clock-names = "apb_pclk"; - port { - etm1_out_port: endpoint { - remote-endpoint = <&funnel_in_port1>; - }; - }; - }; - - etm@0,c0640000 { - compatible = "arm,coresight-etm4x", "arm,primecell"; - reg = <0 0xc0640000 0 0x1000>; - - cpu = <&cpu2>; - clocks = <&clock CLK_APB_P>; - clock-names = "apb_pclk"; - port { - etm2_out_port: endpoint { - remote-endpoint = <&funnel_in_port2>; - }; - }; - }; - - etm@0,c0740000 { - compatible = "arm,coresight-etm4x", "arm,primecell"; - reg = <0 0xc0740000 0 0x1000>; - - cpu = <&cpu3>; - clocks = <&clock CLK_APB_P>; - clock-names = "apb_pclk"; - port { - etm3_out_port: endpoint { - remote-endpoint = <&funnel_in_port3>; - }; - }; - }; - - -};/* end of / */ diff --git a/arch/arm64/boot/dts/amlogic/mesongxl.dtsi b/arch/arm64/boot/dts/amlogic/mesongxl.dtsi deleted file mode 100644 index 66df4520a15d6..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesongxl.dtsi +++ /dev/null @@ -1,763 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/mesongxl.dtsi - * - * Copyright (C) 2015 Amlogic, Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * -*/ - -#include -#include -#include -#include -#include -#include -#include "mesongxbb-gpu-mali450.dtsi" -/ { - cpus:cpus { - #address-cells = <2>; - #size-cells = <0>; - #cooling-cells = <2>; /* min followed by max */ - - cpu0:cpu@0 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x0>; - enable-method = "psci"; - cpu-idle-states = <&CPU_SLEEP_0>; - }; - - cpu1:cpu@1 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x1>; - enable-method = "psci"; - cpu-idle-states = <&CPU_SLEEP_0>; - }; - cpu2:cpu@2 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x2>; - enable-method = "psci"; - cpu-idle-states = <&CPU_SLEEP_0>; - }; - - cpu3:cpu@3 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x3>; - enable-method = "psci"; - cpu-idle-states = <&CPU_SLEEP_0>; - }; - - idle-states { - entry-method = "arm,psci"; - CPU_SLEEP_0: cpu-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x0010000>; - local-timer-stop; - entry-latency-us = <8000>; - exit-latency-us = <8000>; - min-residency-us = <20000>; - }; - }; - - }; - - timer { - compatible = "arm,armv8-timer"; - interrupts = , - , - , - ; - }; - timer_bc { - compatible = "arm, meson-bc-timer"; - reg= <0x0 0xc1109990 0x0 0x4 0x0 0xc1109994 0x0 0x4>; - timer_name = "Meson TimerF"; - clockevent-rating=<300>; - clockevent-shift=<20>; - clockevent-features=<0x23>; - interrupts = <0 60 1>; - bit_enable=<16>; - 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>; - }; - meson_suspend:pm{ - compatible = "amlogic, pm"; - device_name = "aml_pm"; - gxbaby-suspend; - reg = <0x0 0xc81000a8 0x0 0x4 - 0x0 0xc810023c 0x0 0x4>; - }; - - gic: interrupt-controller@2c001000 { - compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; - #interrupt-cells = <3>; - #address-cells = <0>; - interrupt-controller; - reg = <0x0 0xc4301000 0 0x1000>, - <0x0 0xc4302000 0 0x0100>; - interrupts = ; - }; - - aml_restart{ - compatible = "aml, restart"; - sys_reset = <0x84000009>; - sys_poweroff = <0x84000008>; - }; - - - - psci { - compatible = "arm,psci"; - method = "smc"; - cpu_suspend = <0xC4000001>; - cpu_off = <0x84000002>; - cpu_on = <0xC4000003>; - migrate = <0xC4000005>; - }; - secmon { - compatible = "amlogic, secmon"; - memory-region = <&secmon_reserved>; - in_base_func = <0x82000020>; - out_base_func = <0x82000021>; - }; - securitykey { - compatible = "aml, securitykey"; - storage_query = <0x82000060>; - storage_read = <0x82000061>; - storage_write = <0x82000062>; - storage_tell = <0x82000063>; - storage_verify = <0x82000064>; - storage_status = <0x82000065>; - storage_list = <0x82000067>; - storage_remove = <0x82000068>; - storage_in_func = <0x82000023>; - storage_out_func = <0x82000024>; - storage_block_func = <0x82000025>; - storage_size_func = <0x82000027>; - storage_set_enctype = <0x8200006A>; - storage_get_enctype = <0x8200006B>; - storage_version = <0x8200006C>; - }; - cpu_iomap{ - compatible = "amlogic, iomap"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - io_apb_base{ - reg = <0x0 0xd0000000 0x0 0x200000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - }; - cpufreq-meson { - compatible = "amlogic, cpufreq-scpi"; - status = "okay"; - clocks = <&scpi_dvfs 0>; - clock-names = "cpu_clk"; - }; - - amlogic-watchdog{ - compatible = "amlogic, gx-wdt"; - status = "disable"; - default_timeout=<10>; - reset_watchdog_method=<1>;//0:sysfs,1:kernel - reset_watchdog_time=<2>; - shutdown_timeout=<10>; - firmware_timeout=<6>; - suspend_timeout=<6>; - reg = <0x0 0xc11098d0 0x0 0x10>; - clocks = <&clock CLK_XTAL>; - }; - amlogic-jtag { - compatible = "amlogic, jtag"; - status = "disable"; - pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; - pinctrl-0 = <&jtag_apao_pins>; - pinctrl-1 = <&jtag_apee_pins>; - }; - clock: meson_clock { - compatible = "amlogic, gxl-clock"; - reg = <0x0 0xc883c000 0x0 0x1000>, /* HIU BUS*/ - <0x0 0xc8100000 0x0 0x1000>; //AOBUS - #clock-cells = <1>; - #reset-cells = <1>; - sys_max = <1536000000>; - }; - cpu_info{ - compatible = "amlogic, cpuinfo"; - cpuinfo_cmd = <0x82000044>; - }; - pinmux: pinmux{ - compatible = "amlogic, pinmux-gxl"; - dev_name = "pinmux"; - #pinmux-cells=<2>; - #address-cells = <2>; - #size-cells = <2>; - reg = <0x0 0xc1109880 0x0 0x10>; - ranges; - gpio: banks@c11080b0 { - reg = <0x0 0xc88344b0 0x0 0x28>, - <0x0 0xc88344e8 0x0 0x14>, - <0x0 0xc8834520 0x0 0x14>, - <0x0 0xc8834430 0x0 0x40>; - reg-names = "mux", "pull", "pull-enable", "gpio"; - gpio-controller; - #gpio-cells = <2>; - }; - gpio_ao: ao-bank@c1108030 { - reg = <0x0 0xc8100014 0x0 0x8>, - <0x0 0xc810002c 0x0 0x4>, - <0x0 0xc8100024 0x0 0x8>; - reg-names = "mux", "pull", "gpio"; - gpio-controller; - #gpio-cells = <2>; - }; - external_eth_pins:external_eth_pins{ - amlogic,setmask =<4 0xfffc00>; - amlogic,clrmask =<4 0x3fc>, - <3 0xffcff800>; - amlogic,pins="GPIOZ_0","GPIOZ_1","GPIOZ_2","GPIOZ_3", - "GPIOZ_4","GPIOZ_5","GPIOZ_6","GPIOZ_7", - "GPIOZ_8","GPIOZ_9","GPIOZ_10","GPIOZ_11", - "GPIOZ_12","GPIOZ_13"; - }; - internal_eth_pins:internal_eth_pins{ - amlogic,setmask =<4 0x3000000>; - amlogic,clrmask =<3 0x300000>; - amlogic,pins="GPIOZ_14","GPIOZ_15"; - }; - jtag_apao_pins:jtag_apao_pin{ - amlogic,clrmask = <6 0x7fe0000>; - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8","GPIOH_9"; - }; - jtag_apee_pins:jtag_apee_pin{ - amlogic,clrmask = <6 0x3c>; - amlogic,pins = "CARD_0","CARD_1","CARD_2","CARD_3"; - }; - remote_pins:remote_pin{ - amlogic,setmask = ; - amlogic,pins = "GPIOAO_7"; - }; - ao_uart_pins:ao_uart{ - amlogic,setmask=; - amlogic,pins="GPIOAO_0", "GPIOAO_1"; - }; - ao_b_uart_pins:ao_b_uart{ - amlogic,setmask=; - amlogic,pins="GPIOAO_4", "GPIOAO_5"; - }; - a_uart_pins:a_uart{ - amlogic,setmask=<5 0xf0000>; - amlogic,clrmask=<5 0x3c0>; - amlogic,pins="GPIOX_12", "GPIOX_13", "GPIOX_14", "GPIOX_15"; - }; - b_uart_pins:b_uart{ - amlogic,setmask=<2 0x18000>; - amlogic,pins="GPIODV_24", "GPIODV_25"; - }; - c_uart_pins:c_uart{ - amlogic,setmask=<5 0x3000>; - amlogic,pins="GPIOX_8", "GPIOX_9"; - }; - wifi_32k_pins:wifi_32k_pins{ - amlogic,setmask=<5 0x8000>; - amlogic,pins="GPIOX_16"; - }; - sd_clk_cmd_pins:sd_clk_cmd_pins{ - amlogic,setmask=<6 0x0000000c>, - ; - amlogic,pins = "CARD_2","CARD_3"; /* CARD_2:CLK, CARD_3:CMD */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_all_pins:sd_all_pins{ - amlogic,setmask=<6 0x0000003f>, - ; - amlogic,clrmask=<6 0x00000fc0>; - amlogic,pins="CARD_0","CARD_1","CARD_2","CARD_3","CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_1bit_pins:sd_1bit_pins{ - amlogic,setmask=<6 0x0000001c>, - ; - amlogic,clrmask=<6 0x00000cc3>; - amlogic,pins = "CARD_1","CARD_2","CARD_3"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_clk_cmd_uart_pins:sd_clk_cmd_uart_pins{ - amlogic,setmask=<6 0x0000030c>; - amlogic,clrmask=<6 0x00000cc3>, - ; - amlogic,pins = "CARD_2","CARD_3"; /* CARD_2:CLK, CARD_3:CMD */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_1bit_uart_pins:sd_1bit_uart_pins{ - amlogic,setmask=<6 0x0000031c>; - amlogic,clrmask=<6 0x00000cc3>, - ; - amlogic,pins = "CARD_1","CARD_2","CARD_3"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_to_ao_uart_pins:sd_to_ao_uart_pins{ - amlogic,setmask=; - amlogic,clrmask=<6 0x00000300>; - amlogic,pins = "GPIOAO_0","GPIOAO_1"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - ao_to_sd_uart_pins:ao_to_sd_uart_pins{ - amlogic,setmask=<6 0x00000300>; - amlogic,clrmask=, - <6 0x00000cc3>; - amlogic,pins = "CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - ao_to_sd_jtag_pins:ao_to_sd_jtag_pins{ - amlogic,setmask=<6 0x00000300>; - amlogic,clrmask=<6 0x00000cff>, - ; - amlogic,pins = "CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_to_ao_jtag_pins:sd_to_ao_jtag_pins{ - amlogic,setmask=; - amlogic,clrmask=<6 0x00000fc0>; - amlogic,pins = "GPIOAO_0","GPIOAO_1"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - - emmc_clk_cmd_pins:emmc_clk_cmd_pins{ - amlogic,setmask=<7 0x60000000>; - amlogic,clrmask=<7 0x000000e0>; - amlogic,pins = "BOOT_8","BOOT_10"; /** BOOT_10:CMD, BOOT_8:CLK */ - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - emmc_conf_pull_up:emmc_conf_pull_up{ - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_10"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - emmc_conf_pull_done:emmc_conf_pull_done{ - amlogic,pins = "BOOT_15"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - - emmc_all_pins:emmc_all_pins{ - amlogic,setmask=<7 0xf0000000>; /*sdhc c*/ - amlogic,clrmask=<7 0x000000e0>; - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_10","BOOT_15"; - amlogic,enable-output=<1>; /** 0:output, 1:input */ - }; - sdio_clk_cmd_pins:sdio_clk_cmd_pins{ - amlogic,setmask=<5 0x0c000000>; - amlogic,pins = "GPIOX_4","GPIOX_5"; /** GPIOX_5:CMD, GPIOX_4:CLK */ - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sdio_all_pins:sdio_all_pins{ - amlogic,setmask=<5 0xfc000000>; - amlogic,pins = "GPIOX_0","GPIOX_1","GPIOX_2","GPIOX_3","GPIOX_4","GPIOX_5"; - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - /*cam_gpio_b: cam_gpio_b{ - amlogic,setmask=<5 0xf0>; - amlogic,clrmask=<4 0x300 - 5 0xc000000 - 6 0x1ff3>; - amlogic,pins = "GPIOZ_0","GPIOZ_1","GPIOZ_3","GPIOZ_4","GPIOZ_5","GPIOZ_6","GPIOZ_7","GPIOZ_8","GPIOZ_9","GPIOZ_10","GPIOZ_11"; - }; - */ - conf_nand_pulldown: conf_nand_pulldown{ - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_15"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - conf_nand_pullup: conf_nand_pullup{ - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - all_nand_pins: all_nand_pins{ - amlogic,setmask=<7 0x800000ff>; - amlogic,clrmask=<7 0x70ffbc00>; - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_9", - "BOOT_10","BOOT_11","BOOT_12","BOOT_13", - "BOOT_14","BOOT_15"; - amlogic,enable-output=<1>; - }; - nand_cs_pins: nand_cs{ - amlogic,setmask=<7 0xc0>; - amlogic,clrmask=<7 0x40040000>; - amlogic,pins = "BOOT_8","BOOT_9"; - }; - hdmitx_hpd: hdmitx_hpd { - amlogic,setmask=<6 0x80000000>; - amlogic,pins="GPIOH_0"; - }; - hdmitx_ddc: hdmitx_ddc { - amlogic,setmask=<6 0x30000000>; - amlogic,pins="GPIOH_1", "GPIOH_2"; - }; - hdmitx_aocec: hdmitx_aocec { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_8"; - }; - hdmitx_eecec: hdmitx_eecec { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_8"; - }; - - /*I2C-AO*/ - ao_i2c_master:ao_i2c{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_4","GPIOAO_5"; - }; - a_i2c_master:a_i2c{ - amlogic,setmask=<1 0xc000>; - amlogic,clrmask=<3 0x18 2 0x18000 2 0xc0 1 0x600000>; - amlogic,pins="GPIODV_24","GPIODV_25"; - }; - b_i2c_master:b_i2c{ - amlogic,setmask=<1 0x3000>; - amlogic,clrmask=<2 0x6000 1 0x1c0000>; - amlogic,pins="GPIODV_26","GPIODV_27"; - }; - c_i2c_master:c_i2c{ - amlogic,setmask=<1 0xc00>; - amlogic,clrmask=<2 0x1800 1 0x200 2 0x20>; - amlogic,pins="GPIODV_28","GPIODV_29"; - }; - c_i2c_master_pin1:c_i2c_pin1{ - amlogic,setmask=<1 0x30000>; - amlogic,clrmask=<1 0x2000000 3 0x20>; - amlogic,pins="GPIODV_18","GPIODV_19"; - }; - d_i2c_master:d_i2c{ - amlogic,setmask=<5 0x30>; - amlogic,clrmask=<5 0x300c03 6 0x3>; - amlogic,pins="GPIOX_10","GPIOX_11"; - }; - - spicc_pins_z11z12z13: spicc_pins_z11z12z13{ - amlogic,setmask=<4 0x1c>; - amlogic,clrmask=<3 0x800 4 0x1c00>; - amlogic,pins="GPIOZ_11","GPIOZ_12","GPIOZ_13"; - }; - spicc_pulldown_z11z12z13: spicc_pulldown_z11z12z13{ - amlogic,pins="GPIOZ_11","GPIOZ_12","GPIOZ_13"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - spicc_pullup_z11z12z13: spicc_pullup_z11z12z13{ - amlogic,pins="GPIOZ_11","GPIOZ_12","GPIOZ_13"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - spicc_pins_x8x9x11: spicc_pins_x8x9x11{ - amlogic,setmask=<5 0xd>; - amlogic,clrmask=<5 0xd03430 6 0xd>; - amlogic,pins="GPIOX_8","GPIOX_9","GPIOX_11"; - }; - spicc_pulldown_x8x9x11: spicc_pulldown_x8x9x11{ - amlogic,pins = "GPIOX_8","GPIOX_9","GPIOX_11"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - spicc_pullup_x8x9x11: spicc_pullup_x8x9x11{ - amlogic,pins = "GPIOX_8","GPIOX_9","GPIOX_11"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - }; - cpu_version{ - reg=<0x0 0xc8100220 0x0 0x4>; - }; - meson_clk_msr{ - compatible = "amlogic, gxl_measure"; - reg = <0x0 0xc110875c 0x0 0x4 - 0x0 0xc1108764 0x0 0x4>; - }; - - i2c_ao: i2c@c8100500{ /*I2C-AO*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-AO"; - status = "disabled"; - reg = <0x0 0xc8100500 0x0 0x1d>; - device_id = <0>; - pinctrl-names="default"; - pinctrl-0=<&ao_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_a: i2c@c1108500{ /*I2C-A*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-A"; - status = "disabled"; - reg = <0x0 0xc1108500 0x0 0x20>; - device_id = <1>; - pinctrl-names="default"; - pinctrl-0=<&a_i2c_master>;/*p200 i2c-A multiplex with usb PWR*/ - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_b: i2c@c11087c0{ /*I2C-B*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-B"; - status = "disabled"; - reg = <0x0 0xc11087c0 0x0 0x20>; - device_id = <2>; - pinctrl-names="default"; - pinctrl-0=<&b_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_c: i2c@c11087e0{ /*I2C-C*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-C"; - status = "disabled"; - reg = <0x0 0xc11087e0 0x0 0x20>; - device_id = <3>; - pinctrl-names="default"; - pinctrl-0=<&c_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_d: i2c@c1108d20{ /*I2C-D*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-D"; - status = "disabled"; - reg = <0x0 0xc1108d20 0x0 0x20>; - device_id = <4>; - pinctrl-names="default"; - pinctrl-0=<&d_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - efuse: efuse{ - compatible = "amlogic, efuse"; - read_cmd = <0x82000030>; - write_cmd = <0x82000031>; - get_max_cmd = <0x82000033>; - key = <&efusekey>; - resets = <&clock GCLK_IDX_EFUSE>; - reset-names = "efuse_clk"; - status = "disabled"; - }; - efusekey:efusekey{ - keynum = <4>; - key0 = <&key_0>; - key1 = <&key_1>; - key2 = <&key_2>; - key3 = <&key_3>; - key_0:key_0{ - keyname = "mac"; - offset = <0>; - size = <6>; - }; - key_1:key_1{ - keyname = "mac_bt"; - offset = <6>; - size = <6>; - }; - key_2:key_2{ - keyname = "mac_wifi"; - offset = <12>; - size = <6>; - }; - key_3:key_3{ - keyname = "usid"; - offset = <18>; - size = <16>; - }; - }; - - mailbox: mhu@c883c400 { - compatible = "amlogic, meson_mhu"; - reg = <0x0 0xc883c400 0x0 0x4c>, /* MHU registers */ - <0x0 0xc8013000 0x0 0x800>; /* Payload area */ - interrupts = <0 209 8>, /* low priority interrupt */ - <0 210 8>; /* high priority interrupt */ - #mbox-cells = <1>; - mbox-names = "cpu_to_scp_low", "cpu_to_scp_high"; - mboxes = <&mailbox 0 &mailbox 1>; - }; - scpi_clocks { - compatible = "arm,scpi-clks"; - - scpi_dvfs: scpi_clocks@0 { - compatible = "arm,scpi-clk-indexed"; - #clock-cells = <1>; - clock-indices = <0>; - clock-output-names = "vcpu"; - }; - - }; - aml_remote:meson-remote { - compatible = "amlogic, aml_remote"; - dev_name = "meson-remote"; - status = "okay"; - remote_ao_offset = <0x580>; /* 0x400 + (0x20 + idx)<<2 -- old ; 0x400 + (0x60 +idx)<<2 --new */ - interrupts = <0 196 1>; - pinctrl-names = "default"; - pinctrl-0 = <&remote_pins>; - }; - meson_ir:meson-ir { - compatible = "amlogic,meson-gxbb-ir"; - status = "disabled"; - reg = <0x0 0xc8100580 0x0 0x40>; - interrupts = <0 196 1>; - pinctrl-names = "default"; - pinctrl-0 = <&remote_pins>; - }; - - rng { - compatible = "amlogic,meson-rng"; - reg = <0x0 0xc8834000 0x0 0x4>; - }; - - audio_data:audio_data { - compatible = "amlogic, audio_data"; - query_licence_cmd = <0x82000050>; - status = "disabled"; - }; - - saradc: saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0 9 1>; - interrupt-names = "saradc_int"; - clocks = <&clock CLK_XTAL>; - clock-names = "saradc_clk"; - resets = <&clock GCLK_IDX_SARADC>; - reg = <0x0 0xc1108680 0x0 0x30 - 0x0 0xc883c3d8 0x0 0x08>; - }; - - defendkey: defendkey { - compatible = "amlogic, defendkey"; - reg = <0x0 0xc8834500 0x0 0x4>; /*RAND64_ADDR0*/ - mem_size = <0x0 0x100000>; - status = "disabled"; - }; - - spicc:spicc{ - compatible = "amlogic, spicc"; - status = "disabled"; - reg = <0x0 0xc1108d80 0x0 0x28>; - resets = <&clock GCLK_IDX_SPICC>; - reset-names = "spicc_clk"; - clocks = <&clock CLK_81>; - clock-names = "clk81"; - interrupts = <0 81 1>; - device_id = <0>; - }; - aml_aes{ - compatible = "amlogic,aes_dma"; - dev_name = "aml_aes_dma"; - interrupts = <0 188 1 - 0 189 1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - aml_tdes{ - compatible = "amlogic,des_dma,tdes_dma"; - dev_name = "aml_tdes_dma"; - interrupts = <0 188 1 - 0 189 1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - aml_sha{ - compatible = "amlogic,sha_dma"; - dev_name = "aml_sha_dma"; - interrupts = <0 188 1 - 0 189 1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - -};/* end of / */ - -&gpu{ -/*gpu max freq is 750M*/ - tbl = <&clk125_cfg &clk285_cfg &clk400_cfg &clk500_cfg &clk666_cfg &clk750_cfg &clk750_cfg>; -}; diff --git a/arch/arm64/boot/dts/amlogic/mesongxm-gpu-t82x.dtsi b/arch/arm64/boot/dts/amlogic/mesongxm-gpu-t82x.dtsi deleted file mode 100644 index 34469fa74ee2c..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesongxm-gpu-t82x.dtsi +++ /dev/null @@ -1,208 +0,0 @@ -/* - * Amlogic GXTVBB Platform gpu - * - * Copyright (c) 2015-2015 Amlogic Ltd - * - * This file is licensed under a dual GPLv2 or BSD license. - * - */ - -/ { - t82x_gpu:t82x@d00c0000{ - compatible = "arm,malit602", "arm,malit60x", "arm,malit6xx", "arm,mali-midgard"; - #cooling-cells = <2>; /* min followed by max */ - reg = <0 0xd00c0000 0 0x100000>, - <0 0xc1104440 0 0x001000>, - <0 0xc8100000 0 0x001000>, - <0 0xc883c000 0 0x001000>, /*hiubus base address for gpu clk cntl*/ - <0 0xc1104440 0 0x001000>; - interrupt-parent = <&gic>; - interrupts = <0 160 4>, <0 161 4>, <0 162 4>; - interrupt-names = "GPU", "MMU", "JOB"; - num_of_pp = <3>; - sc_mpp = <1>;/* number of shader cores used most of time.*/ - /*mali-supply = <&vdd_mali>;*/ - operating-points = < - /* KHz uV */ - 666666 1000000 - 500000 1000000 - 400000 1000000 - 285714 1000000 - 250000 1000000 - 125000 1000000 - >; - - tbl = <&dvfs125_cfg &dvfs285_cfg &dvfs400_cfg &dvfs500_cfg &dvfs666_cfg>; - - /*clocks = <&gpu_clk>; - clock-names = "clk_mali";*/ - clocks = <&clock CLK_FPLL_DIV3>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV5>, - <&clock CLK_FPLL_DIV7>, - <&clock GP0_PLL>, - <&clock CLK_MALI>, - <&clock CLK_MALI_0>, - <&clock CLK_MALI_1>; - clock-names = - "fclk_div3", - "fclk_div4", - "fclk_div5", - "fclk_div7", - "gp0_pll", - "clk_gpu", - "clk_gpu_0", - "clk_gpu_1"; - - dvfs125_cfg:clk125_cfg { - clk_freq = <125000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <30 120>; - }; - - dvfs250_cfg:dvfs250_cfg { - clk_freq = <250000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <80 170>; - }; - - dvfs285_cfg:dvfs285_cfg { - clk_freq = <285714000>; - clk_parent = "fclk_div7"; - clkp_freq = <285714000>; - voltage = <1150>; - keep_count = <5>; - threshold = <100 190>; - }; - - dvfs400_cfg:dvfs400_cfg { - clk_freq = <400000000>; - clk_parent = "fclk_div5"; - clkp_freq = <400000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <152 207>; - }; - - dvfs500_cfg:dvfs500_cfg { - clk_freq = <500000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <180 220>; - }; - - dvfs666_cfg:dvfs666_cfg { - clk_freq = <666000000>; - clk_parent = "fclk_div3"; - clkp_freq = <666000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <210 236>; - }; - - dvfs800_cfg:dvfs800_cfg { - clk_freq = <792000000>; - clk_parent = "gp0_pll"; - clkp_freq = <792000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <230 255>; - }; - }; - - gpu_clk:gpu_clk@c883c00 { - compatible = "meson, gpu-clkgen-1.00.a"; - #clock-cells = <0>; - reg = <0 0xc883c000 0 0x001000>; - clocks = <&clock CLK_FPLL_DIV3>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV5>, - <&clock CLK_FPLL_DIV7>, - <&clock GP0_PLL>, - <&clock CLK_GPU>, - <&clock CLK_GPU_0>, - <&clock CLK_GPU_1>; - clock-names = - "fclk_div3", - "fclk_div4", - "fclk_div5", - "fclk_div7", - "gp0_pll", - "clk_gpu", - "clk_gpu_0", - "clk_gpu_1"; - clock-output-names = "clk_mali"; - tbl = <&t82x_clk125_cfg &t82x_clk250_cfg &t82x_clk285_cfg &t82x_clk400_cfg &t82x_clk500_cfg &t82x_clk666_cfg>; - t82x_clk125_cfg:clk125_cfg { - clk_freq = <125000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <30 120>; - }; - - t82x_clk250_cfg:clk250_cfg { - clk_freq = <250000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <80 170>; - }; - - t82x_clk285_cfg:clk285_cfg { - clk_freq = <285714000>; - clk_parent = "fclk_div7"; - clkp_freq = <285714000>; - voltage = <1150>; - keep_count = <5>; - threshold = <100 190>; - }; - - t82x_clk400_cfg:clk400_cfg { - clk_freq = <400000000>; - clk_parent = "fclk_div5"; - clkp_freq = <400000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <152 207>; - }; - - t82x_clk500_cfg:clk500_cfg { - clk_freq = <500000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <180 220>; - }; - - t82x_clk666_cfg:clk666_cfg { - clk_freq = <666666000>; - clk_parent = "fclk_div3"; - clkp_freq = <666666000>; - voltage = <1150>; - keep_count = <5>; - threshold = <210 236>; - }; - - t82x_clk720_cfg:clk720_cfg { - clk_freq = <720000000>; - clk_parent = "gp0_pll"; - clkp_freq = <720000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <230 255>; - }; - }; - -};/* end of / */ diff --git a/arch/arm64/boot/dts/amlogic/mesongxm.dtsi b/arch/arm64/boot/dts/amlogic/mesongxm.dtsi deleted file mode 100644 index c0a83c41ebc5c..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesongxm.dtsi +++ /dev/null @@ -1,842 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/mesongxm.dtsi - * - * Copyright (C) 2015 Amlogic, Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * -*/ - -#include -#include -#include -#include -#include -#include -#include "mesongxm-gpu-t82x.dtsi" -/ { - cpus:cpus { - #address-cells = <2>; - #size-cells = <0>; - - cpu-map { - cluster0:cluster0 { - #cooling-cells = <2>; /* min followed by max */ - core0 { - cpu = <&CPU0>; - }; - core1 { - cpu = <&CPU1>; - }; - core2 { - cpu = <&CPU2>; - }; - core3 { - cpu = <&CPU3>; - }; - }; - cluster1:cluster1 { - #cooling-cells = <2>; /* min followed by max */ - core0 { - cpu = <&CPU4>; - }; - core1 { - cpu = <&CPU5>; - }; - core2 { - cpu = <&CPU6>; - }; - core3 { - cpu = <&CPU7>; - }; - }; - }; - CPU0:cpu@0 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x0>; - enable-method = "psci"; - clocks = <&scpi_dvfs 0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - }; - - CPU1:cpu@1 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x1>; - enable-method = "psci"; - clocks = <&scpi_dvfs 0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - }; - CPU2:cpu@2 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x2>; - enable-method = "psci"; - clocks = <&scpi_dvfs 0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - }; - - CPU3:cpu@3 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x3>; - enable-method = "psci"; - clocks = <&scpi_dvfs 0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - }; - - CPU4:cpu@100 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x100>; - enable-method = "psci"; - clocks = <&scpi_dvfs 1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - }; - - CPU5:cpu@101 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x101>; - enable-method = "psci"; - clocks = <&scpi_dvfs 1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - }; - CPU6:cpu@102 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x102>; - enable-method = "psci"; - clocks = <&scpi_dvfs 1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - }; - - CPU7:cpu@103 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x103>; - enable-method = "psci"; - clocks = <&scpi_dvfs 1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; - }; - - idle-states { - entry-method = "arm,psci"; - - CPU_SLEEP_0: cpu-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x0010000>; - local-timer-stop; - entry-latency-us = <8000>; - exit-latency-us = <8000>; - min-residency-us = <20000>; - }; - - CLUSTER_SLEEP_0: cluster-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x1010000>; - local-timer-stop; - entry-latency-us = <8000>; - exit-latency-us = <8000>; - min-residency-us = <25000>; - }; - }; - }; - - timer { - compatible = "arm,armv8-timer"; - interrupts = , - , - , - ; - }; - timer_bc { - compatible = "arm, meson-bc-timer"; - reg= <0x0 0xc1109990 0x0 0x4 0x0 0xc1109994 0x0 0x4>; - timer_name = "Meson TimerF"; - clockevent-rating=<300>; - clockevent-shift=<20>; - clockevent-features=<0x23>; - interrupts = <0 60 1>; - bit_enable=<16>; - 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>; - }; - meson_suspend:pm{ - compatible = "amlogic, pm"; - device_name = "aml_pm"; - gxbaby-suspend; - reg = <0x0 0xc81000a8 0x0 0x4 - 0x0 0xc810023c 0x0 0x4>; - }; - - gic: interrupt-controller@2c001000 { - compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; - #interrupt-cells = <3>; - #address-cells = <0>; - interrupt-controller; - reg = <0x0 0xc4301000 0 0x1000>, - <0x0 0xc4302000 0 0x0100>; - interrupts = ; - }; - - aml_restart{ - compatible = "aml, restart"; - sys_reset = <0x84000009>; - sys_poweroff = <0x84000008>; - }; - - - - psci { - compatible = "arm,psci"; - method = "smc"; - cpu_suspend = <0xC4000001>; - cpu_off = <0x84000002>; - cpu_on = <0xC4000003>; - migrate = <0xC4000005>; - }; - secmon { - compatible = "amlogic, secmon"; - memory-region = <&secmon_reserved>; - in_base_func = <0x82000020>; - out_base_func = <0x82000021>; - }; - securitykey { - compatible = "aml, securitykey"; - storage_query = <0x82000060>; - storage_read = <0x82000061>; - storage_write = <0x82000062>; - storage_tell = <0x82000063>; - storage_verify = <0x82000064>; - storage_status = <0x82000065>; - storage_list = <0x82000067>; - storage_remove = <0x82000068>; - storage_in_func = <0x82000023>; - storage_out_func = <0x82000024>; - storage_block_func = <0x82000025>; - storage_size_func = <0x82000027>; - storage_set_enctype = <0x8200006A>; - storage_get_enctype = <0x8200006B>; - storage_version = <0x8200006C>; - }; - cpu_iomap{ - compatible = "amlogic, iomap"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - io_apb_base{ - reg = <0x0 0xd0000000 0x0 0x200000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - }; - - cpufreq { - compatible = "arm, scpi-cpufreq"; - }; - - amlogic-watchdog{ - compatible = "amlogic, gx-wdt"; - status = "disable"; - default_timeout=<10>; - reset_watchdog_method=<1>;//0:sysfs,1:kernel - reset_watchdog_time=<2>; - shutdown_timeout=<10>; - firmware_timeout=<6>; - suspend_timeout=<6>; - reg = <0x0 0xc11098d0 0x0 0x10>; - clocks = <&clock CLK_XTAL>; - }; - amlogic-jtag { - compatible = "amlogic, jtag"; - status = "okay"; - pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; - pinctrl-0 = <&jtag_apao_pins>; - pinctrl-1 = <&jtag_apee_pins>; - }; - clock: meson_clock { - compatible = "amlogic, gxl-clock"; - reg = <0x0 0xc883c000 0x0 0x1000>, /* HIU BUS*/ - <0x0 0xc8100000 0x0 0x1000>; //AOBUS - #clock-cells = <1>; - #reset-cells = <1>; - sys_max = <1536000000>; - }; - cpu_info{ - compatible = "amlogic, cpuinfo"; - cpuinfo_cmd = <0x82000044>; - }; - pinmux: pinmux{ - compatible = "amlogic, pinmux-gxl"; - dev_name = "pinmux"; - #pinmux-cells=<2>; - #address-cells = <2>; - #size-cells = <2>; - reg = <0x0 0xc1109880 0x0 0x10>; - ranges; - gpio: banks@c11080b0 { - reg = <0x0 0xc88344b0 0x0 0x28>, - <0x0 0xc88344e8 0x0 0x14>, - <0x0 0xc8834520 0x0 0x14>, - <0x0 0xc8834430 0x0 0x40>; - reg-names = "mux", "pull", "pull-enable", "gpio"; - gpio-controller; - #gpio-cells = <2>; - }; - gpio_ao: ao-bank@c1108030 { - reg = <0x0 0xc8100014 0x0 0x8>, - <0x0 0xc810002c 0x0 0x4>, - <0x0 0xc8100024 0x0 0x8>; - reg-names = "mux", "pull", "gpio"; - gpio-controller; - #gpio-cells = <2>; - }; - external_eth_pins:external_eth_pins{ - amlogic,setmask =<4 0xfffc00>; - amlogic,clrmask =<4 0x3fc>, - <3 0xffcff800>; - amlogic,pins="GPIOZ_0","GPIOZ_1","GPIOZ_2","GPIOZ_3", - "GPIOZ_4","GPIOZ_5","GPIOZ_6","GPIOZ_7", - "GPIOZ_8","GPIOZ_9","GPIOZ_10","GPIOZ_11", - "GPIOZ_12","GPIOZ_13"; - }; - internal_eth_pins:internal_eth_pins{ - amlogic,setmask =<4 0x3000000>; - amlogic,clrmask =<3 0x300000>; - amlogic,pins="GPIOZ_14","GPIOZ_15"; - }; - jtag_apao_pins:jtag_apao_pin{ - amlogic,clrmask = <6 0x7fe0000>; - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8","GPIOH_9"; - }; - jtag_apee_pins:jtag_apee_pin{ - amlogic,clrmask = <6 0x3c>; - amlogic,pins = "CARD_0","CARD_1","CARD_2","CARD_3"; - }; - remote_pins:remote_pin{ - amlogic,setmask = ; - amlogic,pins = "GPIOAO_7"; - }; - ao_uart_pins:ao_uart{ - amlogic,setmask=; - amlogic,pins="GPIOAO_0", "GPIOAO_1"; - }; - ao_b_uart_pins:ao_b_uart{ - amlogic,setmask=; - amlogic,pins="GPIOAO_4", "GPIOAO_5"; - }; - a_uart_pins:a_uart{ - amlogic,setmask=<5 0xf0000>; - amlogic,clrmask=<5 0x3c0>; - amlogic,pins="GPIOX_12", "GPIOX_13", "GPIOX_14", "GPIOX_15"; - }; - b_uart_pins:b_uart{ - amlogic,setmask=<2 0x18000>; - amlogic,pins="GPIODV_24", "GPIODV_25"; - }; - c_uart_pins:c_uart{ - amlogic,setmask=<5 0x3000>; - amlogic,pins="GPIOX_8", "GPIOX_9"; - }; - wifi_32k_pins:wifi_32k_pins{ - amlogic,setmask=<5 0x8000>; - amlogic,pins="GPIOX_16"; - }; - sd_clk_cmd_pins:sd_clk_cmd_pins{ - amlogic,setmask=<6 0x0000000c>, - ; - amlogic,pins = "CARD_2","CARD_3"; /* CARD_2:CLK, CARD_3:CMD */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_all_pins:sd_all_pins{ - amlogic,setmask=<6 0x0000003f>, - ; - amlogic,clrmask=<6 0x00000fc0>; - amlogic,pins="CARD_0","CARD_1","CARD_2","CARD_3","CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_1bit_pins:sd_1bit_pins{ - amlogic,setmask=<6 0x0000001c>, - ; - amlogic,clrmask=<6 0x00000cc3>; - amlogic,pins = "CARD_1","CARD_2","CARD_3"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_clk_cmd_uart_pins:sd_clk_cmd_uart_pins{ - amlogic,setmask=<6 0x0000030c>; - amlogic,clrmask=<6 0x00000cc3>, - ; - amlogic,pins = "CARD_2","CARD_3"; /* CARD_2:CLK, CARD_3:CMD */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_1bit_uart_pins:sd_1bit_uart_pins{ - amlogic,setmask=<6 0x0000031c>; - amlogic,clrmask=<6 0x00000cc3>, - ; - amlogic,pins = "CARD_1","CARD_2","CARD_3"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_to_ao_uart_pins:sd_to_ao_uart_pins{ - amlogic,setmask=; - amlogic,clrmask=<6 0x00000300>; - amlogic,pins = "GPIOAO_0","GPIOAO_1"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - ao_to_sd_uart_pins:ao_to_sd_uart_pins{ - amlogic,setmask=<6 0x00000300>; - amlogic,clrmask=, - <6 0x00000cc3>; - amlogic,pins = "CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - ao_to_sd_jtag_pins:ao_to_sd_jtag_pins{ - amlogic,setmask=<6 0x00000300>; - amlogic,clrmask=<6 0x00000cff>, - ; - amlogic,pins = "CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_to_ao_jtag_pins:sd_to_ao_jtag_pins{ - amlogic,setmask=; - amlogic,clrmask=<6 0x00000fc0>; - amlogic,pins = "GPIOAO_0","GPIOAO_1"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - - emmc_clk_cmd_pins:emmc_clk_cmd_pins{ - amlogic,setmask=<7 0x60000000>; - amlogic,clrmask=<7 0x000000e0>; - amlogic,pins = "BOOT_8","BOOT_10"; /** BOOT_10:CMD, BOOT_8:CLK */ - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - emmc_conf_pull_up:emmc_conf_pull_up{ - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_10"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - emmc_conf_pull_done:emmc_conf_pull_done{ - amlogic,pins = "BOOT_15"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - - emmc_all_pins:emmc_all_pins{ - amlogic,setmask=<7 0xf0000000>; /*sdhc c*/ - amlogic,clrmask=<7 0x000000e0>; - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_10","BOOT_15"; - amlogic,enable-output=<1>; /** 0:output, 1:input */ - }; - sdio_clk_cmd_pins:sdio_clk_cmd_pins{ - amlogic,setmask=<5 0x0c000000>; - amlogic,pins = "GPIOX_4","GPIOX_5"; /** GPIOX_5:CMD, GPIOX_4:CLK */ - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sdio_all_pins:sdio_all_pins{ - amlogic,setmask=<5 0xfc000000>; - amlogic,pins = "GPIOX_0","GPIOX_1","GPIOX_2","GPIOX_3","GPIOX_4","GPIOX_5"; - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - /*cam_gpio_b: cam_gpio_b{ - amlogic,setmask=<5 0xf0>; - amlogic,clrmask=<4 0x300 - 5 0xc000000 - 6 0x1ff3>; - amlogic,pins = "GPIOZ_0","GPIOZ_1","GPIOZ_3","GPIOZ_4","GPIOZ_5","GPIOZ_6","GPIOZ_7","GPIOZ_8","GPIOZ_9","GPIOZ_10","GPIOZ_11"; - }; - */ - conf_nand_pulldown: conf_nand_pulldown{ - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_15"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - conf_nand_pullup: conf_nand_pullup{ - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - all_nand_pins: all_nand_pins{ - amlogic,setmask=<7 0x800000ff>; - amlogic,clrmask=<7 0x70ffbc00>; - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_9", - "BOOT_10","BOOT_11","BOOT_12","BOOT_13", - "BOOT_14","BOOT_15"; - amlogic,enable-output=<1>; - }; - nand_cs_pins: nand_cs{ - amlogic,setmask=<7 0xc0>; - amlogic,clrmask=<7 0x40040000>; - amlogic,pins = "BOOT_8","BOOT_9"; - }; - hdmitx_hpd: hdmitx_hpd { - amlogic,setmask=<6 0x80000000>; - amlogic,pins="GPIOH_0"; - }; - hdmitx_ddc: hdmitx_ddc { - amlogic,setmask=<6 0x30000000>; - amlogic,pins="GPIOH_1", "GPIOH_2"; - }; - hdmitx_aocec: hdmitx_aocec { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_8"; - }; - hdmitx_eecec: hdmitx_eecec { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_8"; - }; - - ao_i2c_master:ao_i2c{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_4","GPIOAO_5"; - }; - a_i2c_master:a_i2c{ - amlogic,setmask=<1 0xc000>; - amlogic,clrmask=<3 0x18 2 0x18000 2 0xc0 1 0x600000>; - amlogic,pins="GPIODV_24","GPIODV_25"; - }; - b_i2c_master:b_i2c{ - amlogic,setmask=<1 0x3000>; - amlogic,clrmask=<2 0x6000 1 0x1c0000>; - amlogic,pins="GPIODV_26","GPIODV_27"; - }; - c_i2c_master:c_i2c{ - amlogic,setmask=<1 0xc00>; - amlogic,clrmask=<2 0x1800 1 0x200 2 0x20>; - amlogic,pins="GPIODV_28","GPIODV_29"; - }; - c_i2c_master_pin1:c_i2c_pin1{ - amlogic,setmask=<1 0x30000>; - amlogic,clrmask=<1 0x2000000 3 0x20>; - amlogic,pins="GPIODV_18","GPIODV_19"; - }; - d_i2c_master:d_i2c{ - amlogic,setmask=<5 0x30>; - amlogic,clrmask=<5 0x300c03 6 0x3>; - amlogic,pins="GPIOX_10","GPIOX_11"; - }; - - spicc_pins_z11z12z13: spicc_pins_z11z12z13{ - amlogic,setmask=<4 0x1c>; - amlogic,clrmask=<3 0x800 4 0x1c00>; - amlogic,pins="GPIOZ_11","GPIOZ_12","GPIOZ_13"; - }; - spicc_pulldown_z11z12z13: spicc_pulldown_z11z12z13{ - amlogic,pins="GPIOZ_11","GPIOZ_12","GPIOZ_13"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - spicc_pullup_z11z12z13: spicc_pullup_z11z12z13{ - amlogic,pins="GPIOZ_11","GPIOZ_12","GPIOZ_13"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - spicc_pins_x8x9x11: spicc_pins_x8x9x11{ - amlogic,setmask=<5 0xd>; - amlogic,clrmask=<5 0xd03430 6 0xd>; - amlogic,pins="GPIOX_8","GPIOX_9","GPIOX_11"; - }; - spicc_pulldown_x8x9x11: spicc_pulldown_x8x9x11{ - amlogic,pins = "GPIOX_8","GPIOX_9","GPIOX_11"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - spicc_pullup_x8x9x11: spicc_pullup_x8x9x11{ - amlogic,pins = "GPIOX_8","GPIOX_9","GPIOX_11"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - }; - cpu_version{ - reg=<0x0 0xc8100220 0x0 0x4>; - }; - meson_clk_msr{ - compatible = "amlogic, gxl_measure"; - reg = <0x0 0xc110875c 0x0 0x4 - 0x0 0xc1108764 0x0 0x4>; - }; - - i2c_ao: i2c@c8100500{ /*I2C-AO*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-AO"; - status = "disabled"; - reg = <0x0 0xc8100500 0x0 0x1d>; - device_id = <0>; - pinctrl-names="default"; - pinctrl-0=<&ao_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_a: i2c@c1108500{ /*I2C-A*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-A"; - status = "disabled"; - reg = <0x0 0xc1108500 0x0 0x20>; - device_id = <1>; - pinctrl-names="default"; - pinctrl-0=<&a_i2c_master>;/*p200 i2c-A multiplex with usb PWR*/ - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_b: i2c@c11087c0{ /*I2C-B*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-B"; - status = "disabled"; - reg = <0x0 0xc11087c0 0x0 0x20>; - device_id = <2>; - pinctrl-names="default"; - pinctrl-0=<&b_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_c: i2c@c11087e0{ /*I2C-C*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-C"; - status = "disabled"; - reg = <0x0 0xc11087e0 0x0 0x20>; - device_id = <3>; - pinctrl-names="default"; - pinctrl-0=<&c_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_d: i2c@c1108d20{ /*I2C-D*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-D"; - status = "disabled"; - reg = <0x0 0xc1108d20 0x0 0x20>; - device_id = <4>; - pinctrl-names="default"; - pinctrl-0=<&d_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - efuse: efuse{ - compatible = "amlogic, efuse"; - read_cmd = <0x82000030>; - write_cmd = <0x82000031>; - get_max_cmd = <0x82000033>; - key = <&efusekey>; - resets = <&clock GCLK_IDX_EFUSE>; - reset-names = "efuse_clk"; - status = "disabled"; - }; - efusekey:efusekey{ - keynum = <4>; - key0 = <&key_0>; - key1 = <&key_1>; - key2 = <&key_2>; - key3 = <&key_3>; - key_0:key_0{ - keyname = "mac"; - offset = <0>; - size = <6>; - }; - key_1:key_1{ - keyname = "mac_bt"; - offset = <6>; - size = <6>; - }; - key_2:key_2{ - keyname = "mac_wifi"; - offset = <12>; - size = <6>; - }; - key_3:key_3{ - keyname = "usid"; - offset = <18>; - size = <16>; - }; - }; - - mailbox: mhu@c883c400 { - compatible = "amlogic, meson_mhu"; - reg = <0x0 0xc883c400 0x0 0x4c>, /* MHU registers */ - <0x0 0xc8013000 0x0 0x800>; /* Payload area */ - interrupts = <0 209 8>, /* low priority interrupt */ - <0 210 8>; /* high priority interrupt */ - #mbox-cells = <1>; - mbox-names = "cpu_to_scp_low", "cpu_to_scp_high"; - mboxes = <&mailbox 0 &mailbox 1>; - }; - scpi_clocks { - compatible = "arm,scpi-clks"; - - scpi_dvfs: scpi_clocks@0 { - compatible = "arm,scpi-clk-indexed"; - #clock-cells = <1>; - clock-indices = <0 1>; - clock-output-names = "vbig", "vlittle"; - }; - - }; - aml_remote:meson-remote { - compatible = "amlogic, aml_remote"; - dev_name = "meson-remote"; - status = "okay"; - remote_ao_offset = <0x580>; /* 0x400 + (0x20 + idx)<<2 -- old ; 0x400 + (0x60 +idx)<<2 --new */ - interrupts = <0 196 1>; - pinctrl-names = "default"; - pinctrl-0 = <&remote_pins>; - }; - meson_ir:meson-ir { - compatible = "amlogic,meson-gxbb-ir"; - status = "disabled"; - reg = <0x0 0xc8100580 0x0 0x40>; - interrupts = <0 196 1>; - pinctrl-names = "default"; - pinctrl-0 = <&remote_pins>; - }; - - rng { - compatible = "amlogic,meson-rng"; - reg = <0x0 0xc8834000 0x0 0x4>; - }; - - audio_data:audio_data { - compatible = "amlogic, audio_data"; - query_licence_cmd = <0x82000050>; - status = "disabled"; - }; - - saradc: saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0 9 1>; - interrupt-names = "saradc_int"; - clocks = <&clock CLK_XTAL>; - clock-names = "saradc_clk"; - resets = <&clock GCLK_IDX_SARADC>; - reg = <0x0 0xc1108680 0x0 0x30 - 0x0 0xc883c3d8 0x0 0x08>; - }; - - defendkey: defendkey { - compatible = "amlogic, defendkey"; - reg = <0x0 0xc8834500 0x0 0x4>; /*RAND64_ADDR0*/ - mem_size = <0x0 0x100000>; - status = "disabled"; - }; - - spicc:spicc{ - compatible = "amlogic, spicc"; - status = "disabled"; - reg = <0x0 0xc1108d80 0x0 0x28>; - resets = <&clock GCLK_IDX_SPICC>; - reset-names = "spicc_clk"; - clocks = <&clock CLK_81>; - clock-names = "clk81"; - interrupts = <0 81 1>; - device_id = <0>; - }; - aml_aes{ - compatible = "amlogic,aes_dma"; - dev_name = "aml_aes_dma"; - interrupts = <0 188 1 - 0 189 1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - aml_tdes{ - compatible = "amlogic,des_dma,tdes_dma"; - dev_name = "aml_tdes_dma"; - interrupts = <0 188 1 - 0 189 1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - aml_sha{ - compatible = "amlogic,sha_dma"; - dev_name = "aml_sha_dma"; - interrupts = <0 188 1 - 0 189 1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - -};/* end of / */ diff --git a/arch/arm64/boot/dts/amlogic/mesongxtvbb-gpu-t83x.dtsi b/arch/arm64/boot/dts/amlogic/mesongxtvbb-gpu-t83x.dtsi deleted file mode 100644 index 9efee6babcf84..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesongxtvbb-gpu-t83x.dtsi +++ /dev/null @@ -1,208 +0,0 @@ -/* - * Amlogic GXTVBB Platform gpu - * - * Copyright (c) 2015-2015 Amlogic Ltd - * - * This file is licensed under a dual GPLv2 or BSD license. - * - */ - -/ { - t83x_gpu:t83x@d00c0000{ - compatible = "arm,malit602", "arm,malit60x", "arm,malit6xx", "arm,mali-midgard"; - #cooling-cells = <2>; /* min followed by max */ - reg = <0 0xd00c0000 0 0x100000>, - <0 0xc1104440 0 0x001000>, - <0 0xc8100000 0 0x001000>, - <0 0xc883c000 0 0x001000>, /*hiubus base address for gpu clk cntl*/ - <0 0xc1104440 0 0x001000>; - interrupt-parent = <&gic>; - interrupts = <0 160 4>, <0 161 4>, <0 162 4>; - interrupt-names = "GPU", "MMU", "JOB"; - num_of_pp = <2>; - sc_mpp = <1>;/* number of pp used most of time.*/ - /*mali-supply = <&vdd_mali>;*/ - operating-points = < - /* KHz uV */ - 666666 1000000 - 500000 1000000 - 400000 1000000 - 285714 1000000 - 250000 1000000 - 125000 1000000 - >; - - tbl = <&dvfs125_cfg &dvfs285_cfg &dvfs400_cfg &dvfs500_cfg &dvfs666_cfg>; - - /*clocks = <&gpu_clk>; - clock-names = "clk_mali";*/ - clocks = <&clock CLK_FPLL_DIV3>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV5>, - <&clock CLK_FPLL_DIV7>, - <&clock GP0_PLL>, - <&clock CLK_MALI>, - <&clock CLK_MALI_0>, - <&clock CLK_MALI_1>; - clock-names = - "fclk_div3", - "fclk_div4", - "fclk_div5", - "fclk_div7", - "gp0_pll", - "clk_gpu", - "clk_gpu_0", - "clk_gpu_1"; - - dvfs125_cfg:clk125_cfg { - clk_freq = <125000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <30 120>; - }; - - dvfs250_cfg:dvfs250_cfg { - clk_freq = <250000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <80 170>; - }; - - dvfs285_cfg:dvfs285_cfg { - clk_freq = <285714000>; - clk_parent = "fclk_div7"; - clkp_freq = <285714000>; - voltage = <1150>; - keep_count = <5>; - threshold = <100 190>; - }; - - dvfs400_cfg:dvfs400_cfg { - clk_freq = <400000000>; - clk_parent = "fclk_div5"; - clkp_freq = <400000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <152 207>; - }; - - dvfs500_cfg:dvfs500_cfg { - clk_freq = <500000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <180 220>; - }; - - dvfs666_cfg:dvfs666_cfg { - clk_freq = <666000000>; - clk_parent = "fclk_div3"; - clkp_freq = <666000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <210 236>; - }; - - dvfs800_cfg:dvfs800_cfg { - clk_freq = <792000000>; - clk_parent = "gp0_pll"; - clkp_freq = <792000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <230 255>; - }; - }; - - gpu_clk:gpu_clk@c883c00 { - compatible = "meson, gpu-clkgen-1.00.a"; - #clock-cells = <0>; - reg = <0 0xc883c000 0 0x001000>; - clocks = <&clock CLK_FPLL_DIV3>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV5>, - <&clock CLK_FPLL_DIV7>, - <&clock GP0_PLL>, - <&clock CLK_GPU>, - <&clock CLK_GPU_0>, - <&clock CLK_GPU_1>; - clock-names = - "fclk_div3", - "fclk_div4", - "fclk_div5", - "fclk_div7", - "gp0_pll", - "clk_gpu", - "clk_gpu_0", - "clk_gpu_1"; - clock-output-names = "clk_mali"; - tbl = <&t83x_clk125_cfg &t83x_clk250_cfg &t83x_clk285_cfg &t83x_clk400_cfg &t83x_clk500_cfg &t83x_clk666_cfg>; - t83x_clk125_cfg:clk125_cfg { - clk_freq = <125000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <30 120>; - }; - - t83x_clk250_cfg:clk250_cfg { - clk_freq = <250000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <80 170>; - }; - - t83x_clk285_cfg:clk285_cfg { - clk_freq = <285714000>; - clk_parent = "fclk_div7"; - clkp_freq = <285714000>; - voltage = <1150>; - keep_count = <5>; - threshold = <100 190>; - }; - - t83x_clk400_cfg:clk400_cfg { - clk_freq = <400000000>; - clk_parent = "fclk_div5"; - clkp_freq = <400000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <152 207>; - }; - - t83x_clk500_cfg:clk500_cfg { - clk_freq = <500000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <180 220>; - }; - - t83x_clk666_cfg:clk666_cfg { - clk_freq = <666666000>; - clk_parent = "fclk_div3"; - clkp_freq = <666666000>; - voltage = <1150>; - keep_count = <5>; - threshold = <210 236>; - }; - - t83x_clk720_cfg:clk720_cfg { - clk_freq = <720000000>; - clk_parent = "gp0_pll"; - clkp_freq = <720000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <230 255>; - }; - }; - -};/* end of / */ diff --git a/arch/arm64/boot/dts/amlogic/mesongxtvbb.dtsi b/arch/arm64/boot/dts/amlogic/mesongxtvbb.dtsi deleted file mode 100644 index 54a0164f7ef19..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesongxtvbb.dtsi +++ /dev/null @@ -1,773 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include "mesongxtvbb-gpu-t83x.dtsi" -/ { - cpus:cpus { - #address-cells = <2>; - #size-cells = <0>; - #cooling-cells = <2>; /* min followed by max */ - - cpu@0 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x0>; - enable-method = "psci"; - }; - - cpu@1 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x1>; - enable-method = "psci"; - }; - cpu@2 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x2>; - enable-method = "psci"; - }; - - cpu@3 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x3>; - enable-method = "psci"; - }; - - - }; - - timer { - compatible = "arm,armv8-timer"; - interrupts = , - , - , - ; - }; - - timer_bc { - compatible = "arm, meson-bc-timer"; - reg= <0x0 0xc1109990 0x0 0x4 0x0 0xc1109994 0x0 0x4>; - timer_name = "Meson TimerF"; - clockevent-rating=<300>; - clockevent-shift=<20>; - clockevent-features=<0x03>; - interrupts = <0 60 1>; - bit_enable=<16>; - 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>; - }; - meson_suspend:pm{ - compatible = "amlogic, pm"; - device_name = "aml_pm"; - gxbaby-suspend; - reg = <0x0 0xc81000a8 0x0 0x4 - 0x0 0xc810023c 0x0 0x4>; - }; - - gic: interrupt-controller@2c001000 { - compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; - #interrupt-cells = <3>; - #address-cells = <0>; - interrupt-controller; - reg = <0x0 0xc4301000 0 0x1000>, - <0x0 0xc4302000 0 0x0100>; - interrupts = ; - }; - - aml_restart{ - compatible = "aml, restart"; - sys_reset = <0x84000009>; - sys_poweroff = <0x84000008>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - - psci { - compatible = "arm,psci"; - method = "smc"; - cpu_suspend = <0xC4000001>; - cpu_off = <0x84000002>; - cpu_on = <0xC4000003>; - migrate = <0xC4000005>; - }; - secmon { - compatible = "amlogic, secmon"; - memory-region = <&secmon_reserved>; - in_base_func = <0x82000020>; - out_base_func = <0x82000021>; - }; - securitykey { - compatible = "aml, securitykey"; - storage_query = <0x82000060>; - storage_read = <0x82000061>; - storage_write = <0x82000062>; - storage_tell = <0x82000063>; - storage_verify = <0x82000064>; - storage_status = <0x82000065>; - storage_list = <0x82000067>; - storage_remove = <0x82000068>; - storage_in_func = <0x82000023>; - storage_out_func = <0x82000024>; - storage_block_func = <0x82000025>; - storage_size_func = <0x82000027>; - storage_set_enctype = <0x8200006A>; - storage_get_enctype = <0x8200006B>; - storage_version = <0x8200006C>; - }; - cpu_iomap{ - compatible = "amlogic, iomap"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - io_apb_base{ - reg = <0x0 0xd0000000 0x0 0x200000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - }; - cpufreq-meson { - compatible = "amlogic, cpufreq-scpi"; - status = "okay"; - clocks = <&scpi_dvfs 0>; - clock-names = "cpu_clk"; - }; - - amlogic-watchdog{ - compatible = "amlogic, gx-wdt"; - status = "disable"; - default_timeout=<10>; - reset_watchdog_method=<1>;//0:sysfs,1:kernel - reset_watchdog_time=<2>; - shutdown_timeout=<10>; - firmware_timeout=<6>; - suspend_timeout=<6>; - reg = <0x0 0xc11098d0 0x0 0x10>; - clocks = <&clock CLK_XTAL>; - }; - amlogic-jtag { - compatible = "amlogic, jtag"; - status = "okay"; - pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; - pinctrl-0 = <&jtag_apao_pins>; - pinctrl-1 = <&jtag_apee_pins>; - }; - clock: meson_clock { - compatible = "amlogic, gxtvbb-clock"; - reg = <0x0 0xc883c000 0x0 0x1000>, /* HIU BUS*/ - <0x0 0xc8100000 0x0 0x1000>; //AOBUS - #clock-cells = <1>; - #reset-cells = <1>; - sys_max = <1536000000>; - }; - - cpu_info { - compatible = "amlogic, cpuinfo"; - cpuinfo_cmd = <0x82000044>; - }; - pinmux: pinmux{ - compatible = "amlogic, pinmux-gxtvbb"; - dev_name = "pinmux"; - #pinmux-cells=<2>; - #address-cells = <2>; - #size-cells = <2>; - reg = <0x0 0xc1109880 0x0 0x10>; - ranges; - - gpio: banks@c11080b0 { - reg = <0x0 0xc88344b0 0x0 0x2c>, - <0x0 0xc88344e8 0x0 0x14>, - <0x0 0xc8834520 0x0 0x14>, - <0x0 0xc8834430 0x0 0x3c>; - reg-names = "mux", "pull", "pull-enable", "gpio"; - gpio-controller; - #gpio-cells = <2>; - }; - - gpio_ao: ao-bank@c1108030 { - reg = <0x0 0xc8100014 0x0 0x8>, - <0x0 0xc810002c 0x0 0x4>, - <0x0 0xc8100024 0x0 0x8>; - reg-names = "mux", "pull", "gpio"; - gpio-controller; - #gpio-cells = <2>; - }; - jtag_apao_pins:jtag_apao_pin{ - amlogic,clrmask = ; - amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11"; - }; - jtag_apee_pins:jtag_apee_pin{ - amlogic,clrmask = <5 0x9e 10 0x3c0>; - amlogic,pins = "CARD_0","CARD_1","CARD_2","CARD_3"; - }; - remote_pins:remote_pin{ - amlogic,setmask = ; - amlogic,pins = "GPIOAO_7"; - }; - ao_a_uart_pins:ao_a_uart{ - amlogic,setmask=; - amlogic,pins="GPIOAO_0", "GPIOAO_1"; - }; - - ao_b_uart_pins:ao_b_uart{ - amlogic,setmask=; - amlogic,pins="GPIOAO_4", "GPIOAO_5"; - }; - - a_uart_pins:a_uart{ - amlogic,setmask=<2 0xf000000>; - amlogic,pins="GPIOX_12", "GPIOX_13", "GPIOX_14", "GPIOX_15"; - }; - - b_uart_pins:b_uart{ - amlogic,setmask=<7 0x6>; - amlogic,pins="GPIOH_1", "GPIOH_2"; - }; - - b_uart_pins_y:b_uart_y{ - amlogic,setmask=<10 0x3000>; - amlogic,clrmask=<10 0x1e0c000>; - amlogic,pins="GPIOY_12", "GPIOY_13"; - }; - - wifi_32k_pins:wifi_32k_pins{ - amlogic,setmask=<7 0x8000000>; - amlogic,clrmask=<7 0x12020000>; - amlogic,pins="GPIOH_7"; - }; - sd_clk_cmd_pins:sd_clk_cmd_pins{ - amlogic,setmask=<5 0x00000018>; - amlogic,clrmask=<5 0x00000080 10 0x400>; - amlogic,pins = "CARD_2","CARD_3"; /* CARD_2:CLK, CARD_3:CMD */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - sd_all_pins:sd_all_pins{ - amlogic,setmask=<5 0x0000007e>; - amlogic,clrmask=<5 0x00000f80 10 0x400>; - amlogic,pins="CARD_0","CARD_1","CARD_2","CARD_3","CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - sd_1bit_pins:sd_1bit_pins{ - amlogic,setmask=<5 0x0000001c>; - amlogic,clrmask=<5 0x00000080 10 0x400>; - amlogic,pins = "CARD_1","CARD_2","CARD_3"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - sd_clk_cmd_uart_pins:sd_clk_cmd_uart_pins{ - amlogic,setmask=<2 0x00000c00>, - <8 0x00000600>; - amlogic,pins = "CARD_2","CARD_3"; /* CARD_2:CLK, CARD_3:CMD */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - sd_1bit_uart_pins:sd_1bit_uart_pins{ - amlogic,setmask=<2 0x00008c00>, - <8 0x00000600>; - amlogic,pins = "CARD_1","CARD_2","CARD_3"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - sd_to_ao_uart_pins:sd_to_ao_uart_pins{ - amlogic,setmask=; - amlogic,clrmask=<8 0x00000600>; - amlogic,pins = "GPIOAO_0","GPIOAO_1"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - ao_to_sd_uart_pins:ao_to_sd_uart_pins{ - amlogic,setmask=<8 0x00000600>; - amlogic,clrmask=, - <2 0x00003000>; - amlogic,pins = "CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - - emmc_clk_cmd_pins:emmc_clk_cmd_pins{ - amlogic,setmask=<5 0x0000f000>; - amlogic,pins = "BOOT_8","BOOT_10"; /** BOOT_10:CMD, BOOT_8:CLK */ - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - emmc_all_pins:emmc_all_pins{ - amlogic,setmask=<5 0x0000f000>; /*sdhc c*/ - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_10"; - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - sdio_clk_cmd_pins:sdio_clk_cmd_pins{ - amlogic,setmask=<0 0x00000300>; - amlogic,clrmask=<0 0x8c0300 1 0x804 2 0x40200>; - amlogic,pins = "GPIOX_8","GPIOX_9"; /** GPIOX_5:CMD, GPIOX_4:CLK */ - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - sdio_all_pins:sdio_all_pins{ - amlogic,setmask=<0 0x000003ff>; - amlogic,clrmask=<0 0x8ffc00 1 0x3ffc0c07 2 0x403ff>; - amlogic,pins = "GPIOX_0","GPIOX_1","GPIOX_2","GPIOX_3","GPIOX_4","GPIOX_5", - "GPIOX_6","GPIOX_7","GPIOX_8","GPIOX_9"; - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - /*aml_cam_gpio_pins: aml_cam_gpio_pins{ - amlogic,setmask=<2 0x3f0000>; - amlogic,clrmask=<1 0x7030ff 3 0x37>; - amlogic,pins = "GPIOY_0","GPIOY_1","GPIOY_2","GPIOY_3","GPIOY_4", - "GPIOY_5","GPIOY_6","GPIOY_7","GPIOY_8", - "GPIOY_9","GPIOY_10","GPIOY_15","GPIOY_16"; - };*/ - - conf_nand_pulldown: conf_nand_pulldown{ - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_15"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - - conf_nand_pullup: conf_nand_pullup{ - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - all_nand_pins: all_nand_pins{ - amlogic,setmask=<4 0x7ff00000>; - amlogic,clrmask=<0 0x80000 - 4 0x800c0000 - 5 0xf>; - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_9", - "BOOT_10","BOOT_11","BOOT_12","BOOT_13", - "BOOT_14","BOOT_15","BOOT_16","BOOT_17"; - amlogic,enable-output=<1>; - }; - - nand_cs_pins: nand_cs{ - amlogic,setmask=<4 0xc000000>; - amlogic,clrmask=<4 0x40000>; - amlogic,pins = "BOOT_8","BOOT_9"; - }; - - hdmitx_hpd: hdmitx_hpd { - amlogic,setmask=<1 0x04000000>; - amlogic,pins="GPIOH_5"; - }; - hdmitx_ddc: hdmitx_ddc { - amlogic,setmask=<1 0x03000000>; - amlogic,pins="GPIOH_3", "GPIOH_4"; - }; - hdmitx_aocec: hdmitx_aocec { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_9"; - }; - hdmitx_eecec: hdmitx_eecec { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_9"; - }; - lcd_vbyone_pins:lcd_vbyone_pin { - amlogic,setmask = <7 0x00001800>; - amlogic,clrmask = <7 0x00000606>; - amlogic,pins = "GPIOH_1","GPIOH_2"; - }; - lcd_ttl_rgb_6bit_pins_on:lcd_ttl_rgb_6bit_on{ - amlogic,setmask=<1 0x0000002a>; - amlogic,clrmask=<0 0xf0b3f0fc 1 0x003c0000 2 0x1fb8fcfc 3 0x2016ffcf>; - amlogic,pins = "GPIOX_2","GPIOX_3","GPIOX_4","GPIOX_5","GPIOX_6","GPIOX_7", /* R2~R7 */ - "GPIOX_10","GPIOX_11","GPIOX_12","GPIOX_13","GPIOX_14","GPIOX_15", /* G2~G7 */ - "GPIOX_18","GPIOX_19","GPIOX_20","GPIOX_21","GPIOX_22","GPIOX_23"; /* B2~B7 */ - }; - - lcd_ttl_rgb_6bit_pins_off:lcd_ttl_rgb_6bit_off{ - amlogic,clrmask=<0 0xf0b3f0fc 1 0x003c002a 2 0x1fb8fcfc 3 0x2016ffcf>; - amlogic,pins = "GPIOX_2","GPIOX_3","GPIOX_4","GPIOX_5","GPIOX_6","GPIOX_7", /* R2~R7 */ - "GPIOX_10","GPIOX_11","GPIOX_12","GPIOX_13","GPIOX_14","GPIOX_15", /* G2~G7 */ - "GPIOX_18","GPIOX_19","GPIOX_20","GPIOX_21","GPIOX_22","GPIOX_23"; /* B2~B7 */ - amlogic,enable-output=<1>; - }; - lcd_ttl_rgb_8bit_pins_on:lcd_ttl_rgb_8bit_on{ - amlogic,setmask=<1 0x0000003f>; - amlogic,clrmask=<0 0xf0bfffff 1 0x00fc1c00 2 0x1fbfffff 3 0x2016ffff>; - amlogic,pins = "GPIOX_0","GPIOX_1","GPIOX_2","GPIOX_3","GPIOX_4","GPIOX_5","GPIOX_6","GPIOX_7", /* R0~R7 */ - "GPIOX_8","GPIOX_9","GPIOX_10","GPIOX_11","GPIOX_12","GPIOX_13","GPIOX_14","GPIOX_15", /* G0~G7 */ - "GPIOX_16","GPIOX_17","GPIOX_18","GPIOX_19","GPIOX_20","GPIOX_21","GPIOX_22","GPIOX_23"; /* B0~B7 */ - }; - - lcd_ttl_rgb_8bit_pins_off:lcd_ttl_rgb_8bit_off{ - amlogic,clrmask=<0 0xf0bfffff 1 0x00fc1c3f 2 0x1fbfffff 3 0x2016ffff>; - amlogic,pins = "GPIOX_0","GPIOX_1","GPIOX_2","GPIOX_3","GPIOX_4","GPIOX_5","GPIOX_6","GPIOX_7", /* R0~R7 */ - "GPIOX_8","GPIOX_9","GPIOX_10","GPIOX_11","GPIOX_12","GPIOX_13","GPIOX_14","GPIOX_15", /* G0~G7 */ - "GPIOX_16","GPIOX_17","GPIOX_18","GPIOX_19","GPIOX_20","GPIOX_21","GPIOX_22","GPIOX_23"; /* B0~B7 */ - amlogic,enable-output=<1>; - }; - lcd_ttl_de_on_pins:lcd_ttl_de_on_pin{ /* DE + clk */ - amlogic,setmask=<1 0x00018000>; - amlogic,clrmask=<0 0x0c000000 1 0x00020000 3 0xdf000000>; - amlogic,pins = "GPIOX_26","GPIOX_27"; - }; - - lcd_ttl_de_off_pins:lcd_ttl_de_off_pin{ /* DE + clk */ - amlogic,clrmask=<0 0x0c000000 1 0x00038000 3 0xdf000000>; - amlogic,pins = "GPIOX_26","GPIOX_27"; - amlogic,enable-output=<1>; - }; - - lcd_ttl_hvsync_on_pins:lcd_ttl_hvsync_on_pin{ /* hvsync + clk */ - amlogic,setmask=<1 0x0000e000>; - amlogic,clrmask=<0 0x07000000 1 0x000000c0 3 0x6fc90000>; - amlogic,pins = "GPIOX_24","GPIOX_25","GPIOX_26"; - }; - - lcd_ttl_hvsync_off_pins:lcd_ttl_hvsync_off_pin{ /* hvsync + clk */ - amlogic,clrmask=<0 0x07000000 1 0x0000e0c0 3 0x6fc90000>; - amlogic,pins = "GPIOX_24","GPIOX_25","GPIOX_26"; - amlogic,enable-output=<1>; - }; - - lcd_ttl_de_hvsync_on_pins:lcd_ttl_de_hvsync_on_pin{ /* DE + hvsync + clk */ - amlogic,setmask=<1 0x0001e000>; - amlogic,clrmask=<0 0x0f000000 1 0x000200c0 3 0xffc90000>; - amlogic,pins = "GPIOX_24","GPIOX_25","GPIOX_26","GPIOX_27"; - }; - - lcd_ttl_de_hvsync_off_pins:lcd_ttl_de_hvsync_off_pin{ /* DE + hvsync + clk */ - amlogic,clrmask=<0 0x0f000000 1 0x0003e0c0 3 0xffc90000>; - amlogic,pins = "GPIOX_24","GPIOX_25","GPIOX_26","GPIOX_27"; - amlogic,enable-output=<1>; - }; - - atvdemod_agc: atvdemod_agc { - amlogic,setmask=<5 0x01000000>; - amlogic,clrmask=<5 0x0e000000>; - amlogic,pins="GPIOW_2"; - }; - - /*gxtvbb i2c multiplex */ - /*I2C-AO*/ - ao_i2c_master:ao_i2c{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_4","GPIOAO_5"; - }; - /*I2C-A*/ - a_i2c_master:a_i2c{ - amlogic,setmask=<5 0xc00000>; - amlogic,clrmask=<5 0x300000>; - amlogic,pins="GPIOW_0","GPIOW_1"; - }; - a_i2c_master_pin1:a_i2c_pin1{ - amlogic,setmask=<9 0x180>; - amlogic,clrmask=<8 0x6000000 9 0x30000678 10 0x1>; - amlogic,pins="GPIOZ_17","GPIOZ_18"; - }; - /*I2C-B*/ - b_i2c_master:b_i2c{ - amlogic,setmask=<10 0xc000>; - amlogic,clrmask=<10 0x1e03000>; - amlogic,pins="GPIOY_12","GPIOY_13"; - }; - b_i2c_master_pin1:b_i2c_pin1{ - amlogic,setmask=<7 0xc0>; - amlogic,clrmask=<7 0x180000>; - amlogic,pins="GPIOH_3","GPIOH_4"; - }; - /*I2C-C*/ - c_i2c_master:c_i2c{ - amlogic,setmask=<1 0xc00000>; - amlogic,clrmask=<0 0x800c03 1 0x300401 2 0x3>; - amlogic,pins="GPIOX_0","GPIOX_1"; - }; - c_i2c_master_pin1:c_i2c_pin1{ - amlogic,setmask=<4 0x30000000>; - amlogic,clrmask=<4 0xd801808 10 0x70000>; - amlogic,pins="GPIOY_7","GPIOY_8"; - }; - /*I2C-D*/ - d_i2c_master:d_i2c{ - amlogic,setmask=<10 0xc00>; - amlogic,clrmask=<4 0xc000c008>; - amlogic,pins="GPIOY_10","GPIOY_11"; - }; - d_i2c_master_pin1:d_i2c_pin1{ - amlogic,setmask=<7 0x1800000>; - amlogic,clrmask=<7 0x610028>; - amlogic,pins="GPIOH_5","GPIOH_6"; - }; - spicc_pins_h6h7h8: spicc_pins_h6h7h8{ - amlogic,setmask=<7 0x70000>; - amlogic,clrmask=<7 0x7f400028>; - amlogic,pins="GPIOH_6","GPIOH_7","GPIOH_8"; - }; - spicc_pulldown_h6h7h8: spicc_pulldown_h6h7h8{ - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - spicc_pullup_h6h7h8: spicc_pullup_h6h7h8{ - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - spicc_pins_y4y5y6: spicc_pins_y4y5y6{ - amlogic,setmask=<4 0x700000>; - amlogic,clrmask=<4 0x708>; - amlogic,pins="GPIOY_4","GPIOY_5","GPIOY_6"; - }; - spicc_pulldown_y4y5y6: spicc_pulldown_y4y5y6{ - amlogic,pins="GPIOY_4","GPIOY_5","GPIOY_6"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - spicc_pullup_y4y5y6: spicc_pullup_y4y5y6{ - amlogic,pins="GPIOY_4","GPIOY_5","GPIOY_6"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - }; - cpu_version{ - reg=<0x0 0xc8100220 0x0 0x4>; - }; - meson_clk_msr{ - compatible = "amlogic, gxtvbb_measure"; - reg = <0x0 0xc110875c 0x0 0x4 - 0x0 0xc1108764 0x0 0x4 - 0x0 0xc883c15c 0x0 0x4>; - }; - - i2c_ao: i2c@c8100500{ /*I2C-AO*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-AO"; - status = "disabled"; - reg = <0x0 0xc8100500 0x0 0x1d>; - device_id = <0>; - pinctrl-names="default"; - pinctrl-0=<&ao_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_a: i2c@c1108500{ /*I2C-A*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-A"; - status = "disabled"; - reg = <0x0 0xc1108500 0x0 0x20>; - device_id = <1>; - pinctrl-names="default"; - pinctrl-0=<&a_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_b: i2c@c11087c0{ /*I2C-B*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-B"; - status = "disabled"; - reg = <0x0 0xc11087c0 0x0 0x20>; - device_id = <2>; - pinctrl-names="default"; - pinctrl-0=<&b_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_c: i2c@c11087e0{ /*I2C-C*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-C"; - status = "disabled"; - reg = <0x0 0xc11087e0 0x0 0x20>; - device_id = <3>; - pinctrl-names="default"; - pinctrl-0=<&c_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_d: i2c@c1108d20{ /*I2C-D*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-D"; - status = "disabled"; - reg = <0x0 0xc1108d20 0x0 0x20>; - device_id = <4>; - pinctrl-names="default"; - pinctrl-0=<&d_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - - efuse: efuse{ - compatible = "amlogic, efuse"; - read_cmd = <0x82000030>; - write_cmd = <0x82000031>; - get_max_cmd = <0x82000033>; - key = <&efusekey>; - status = "disabled"; - }; - efusekey:efusekey{ - keynum = <4>; - key0 = <&key_0>; - key1 = <&key_1>; - key2 = <&key_2>; - key3 = <&key_3>; - key_0:key_0{ - keyname = "mac"; - offset = <0>; - size = <6>; - }; - key_1:key_1{ - keyname = "mac_bt"; - offset = <6>; - size = <6>; - }; - key_2:key_2{ - keyname = "mac_wifi"; - offset = <12>; - size = <6>; - }; - key_3:key_3{ - keyname = "usid"; - offset = <18>; - size = <16>; - }; - }; - - mailbox: mhu@c883c400 { - compatible = "amlogic, meson_mhu"; - status = "ok"; - reg = <0x0 0xc883c400 0x0 0x4c>, /* MHU registers */ - <0x0 0xc8013000 0x0 0x800>; /* Payload area */ - interrupts = <0 209 IRQ_TYPE_EDGE_RISING>, /* low priority interrupt */ - <0 210 IRQ_TYPE_EDGE_RISING>; /* high priority interrupt */ - #mbox-cells = <1>; - mbox-names = "cpu_to_scp_low", "cpu_to_scp_high"; - mboxes = <&mailbox 0 &mailbox 1>; - }; - scpi_clocks { - compatible = "arm,scpi-clks"; - - scpi_dvfs: scpi_clocks@0 { - compatible = "arm,scpi-clk-indexed"; - #clock-cells = <1>; - clock-indices = <0>; - clock-output-names = "vcpu"; - }; - - }; - - meson-remote { - compatible = "amlogic, aml_remote"; - dev_name = "meson-remote"; - status = "ok"; - remote_ao_offset = <0x580>; /* 0x400 + (0x20 + idx)<<2 -- old ; 0x400 + (0x60 +idx)<<2 --new */ - interrupts = <0 196 1>; - pinctrl-names = "default"; - pinctrl-0 = <&remote_pins>; - }; - - rng { - compatible = "amlogic,meson-rng"; - reg = <0x0 0xc8834000 0x0 0x4>; - }; - - audio_data:audio_data { - compatible = "amlogic, audio_data"; - query_licence_cmd = <0x82000050>; - status = "disabled"; - }; - - saradc: saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0 9 1>; - interrupt-names = "saradc_int"; - clocks = <&clock CLK_XTAL>; - clock-names = "saradc_clk"; - resets = <&clock GCLK_IDX_SARADC>; - reg = <0x0 0xc8100600 0x0 0x30 - 0x0 0xc8100090 0x0 0x08>; - }; - - spicc:spicc{ - compatible = "amlogic, spicc"; - status = "disabled"; - reg = <0x0 0xc1108d80 0x0 0x28>; - resets = <&clock GCLK_IDX_SPICC>; - reset-names = "spicc_clk"; - clocks = <&clock CLK_81>; - clock-names = "clk81"; - interrupts = <0 81 1>; - device_id = <0>; - }; - -};/* end of / */ diff --git a/arch/arm64/boot/dts/amlogic/mesontxl-panel.dtsi b/arch/arm64/boot/dts/amlogic/mesontxl-panel.dtsi deleted file mode 100644 index 745fac8d2c173..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesontxl-panel.dtsi +++ /dev/null @@ -1,279 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/mesontxl-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"; - dev_name = "lcd"; - mode = "tv"; - status = "okay"; - key_valid = <0>; - resets = <&clock GCLK_IDX_VCLK2_ENCL &clock GCLK_IDX_VCLK2_VENCL>; - reset-names = "encl","vencl"; - interrupts = <0 78 1 0 3 1>; - interrupt-names = "vbyone","vbyone_vsync"; - pinctrl-names = "vbyone"; - pinctrl-0 = <&lcd_vbyone_pins>; - - /* power type:(0=cpu_gpio, 1=pmu_gpio, 2=signal, 3=extern, 0xff=ending) */ - /* power index:(point gpios_index, or extern_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - lcd_cpu-gpios = <&gpio GPIOH_3 1 &gpio GPIOH_4 1>; - lcd_cpu_gpio_names = "GPIOH_3","GPIOH_4"; - - lvds_0{ - model_name = "1080p-vfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - lvds_1{ - model_name = "1080p-pclk"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <0 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - lvds_2{ - model_name = "1080p-hfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <1 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_0{ - model_name = "public"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <0 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 50 /* panel power on */ - 2 0 0 200 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_1{ - model_name = "LG_RDL550WY"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 50 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_2{ - model_name = "INL_V580DJ2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 1 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 50 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_3{ - model_name = "BOE_HV550QU2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - lcd_timing = <33 477 1 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 0 1 0 10 /* 3d_enable=0 */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 30 /* signal disable */ - 0 1 2 0 /* 3d_enable pin reset to input */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - }; /* end of lcd */ - - lcd_extern{ - compatible = "amlogic, lcd_extern"; - dev_name = "lcd_extern"; - status = "okay"; - key_valid = <0>; - - extern_0{ - index = <0>; - extern_name = "ext_default"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_second_address = <0xff>; /* 7bit i2c address, 0xff for none */ - i2c_bus = "i2c_bus_d"; - cmd_size = <9>; - /* init on/off: (type, value..., delay), must match cmd_size for every group */ - /* type: 0x00=cmd(bit[3:0]=1 for second_addr), 0x10=gpio, 0xff=ending*/ - /* value: i2c or spi cmd, or gpio index & level, fill 0x0 for no use */ - /* delay: unit ms */ - init_on = <0x00 0x20 0x01 0x02 0x00 0x40 0xFF 0x00 0x00 - 0x00 0x80 0x02 0x00 0x40 0x62 0x51 0x73 0x00 - 0x00 0x61 0x06 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0xC1 0x05 0x0F 0x00 0x08 0x70 0x00 0x00 - 0x00 0x13 0x01 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0x3D 0x02 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0xED 0x0D 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0x23 0x02 0x00 0x00 0x00 0x00 0x00 0x0A - 0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - init_off = <0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - }; - extern_1{ - index = <1>; - extern_name = "i2c_T5800Q"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_bus = "i2c_bus_d"; - }; - }; - - backlight { - compatible = "amlogic, backlight"; - dev_name = "backlight"; - status = "disable"; - key_valid = <0>; - pinctrl-names = "pwm_on","pwm_vs_on", - "pwm_combo_0_1_on", - "pwm_combo_0_vs_1_on", - "pwm_combo_0_1_vs_on", - "pwm_combo_0_on","pwm_combo_0_vs_on", - "pwm_combo_1_on","pwm_combo_1_vs_on"; - pinctrl-0 = <&bl_pwm_on_pins>; - pinctrl-1 = <&bl_pwm_vs_on_pins>; - pinctrl-2 = <&bl_pwm_combo_0_on_pins &bl_pwm_combo_1_on_pins>; - pinctrl-3 = <&bl_pwm_combo_0_vs_on_pins &bl_pwm_combo_1_on_pins>; - pinctrl-4 = <&bl_pwm_combo_0_on_pins &bl_pwm_combo_1_vs_on_pins>; - pinctrl-5 = <&bl_pwm_combo_0_on_pins>; - pinctrl-6 = <&bl_pwm_combo_0_vs_on_pins>; - pinctrl-7 = <&bl_pwm_combo_1_on_pins>; - pinctrl-8 = <&bl_pwm_combo_1_vs_on_pins>; - - /* power index:(point gpios_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - bl-gpios = <&gpio_ao GPIOAO_4 1 &gpio GPIOZ_6 1 &gpio GPIOZ_4 1>; - bl_gpio_names = "GPIOAO_4","GPIOZ_6","GPIOZ_4"; - - backlight_0{ - index = <0>; - bl_name = "backlight_pwm"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 1=pwm, 2=pwm_combo, 4=extern */ - bl_power_attr = <0 0 1 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_B"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <0 180 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - backlight_1{ - index = <1>; - bl_name = "backlight_pwm_vs"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 1=pwm, 2=pwm_combo, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_VS"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <1 2 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_off_value, pwm_on_delay, pwm_off_delay */ - }; - backlight_2{ - index = <2>; - bl_name = "backlight_pwm_combo"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <2>; /* 1=pwm, 2=pwm_combo, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_combo_level_mapping = <255 100 100 10>; /* level_max, level_min */ - bl_pwm_combo_port = "PWM_B","PWM_D"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_combo_attr = <1 180 100 25 - 1 18000 100 20>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_combo_power = <1 0 2 0 10 10>; /* pwm0_gpio_index, pwm0_gpio_off, pwm1_gpio_index, pwm1_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - }; /* end of backlight */ - -};/* end of / */ - diff --git a/arch/arm64/boot/dts/amlogic/mesontxl.dtsi b/arch/arm64/boot/dts/amlogic/mesontxl.dtsi deleted file mode 100644 index e1634ac8045fa..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesontxl.dtsi +++ /dev/null @@ -1,671 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/mesontxl.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. - * -*/ - -#include -#include -#include -#include -#include -#include - -#include "mesongxbb-gpu-mali450.dtsi" - -/ { - cpus:cpus { - #address-cells = <2>; - #size-cells = <0>; - #cooling-cells = <2>; /* min followed by max */ - - cpu0:cpu@0 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x0>; - enable-method = "psci"; - }; - - cpu1:cpu@1 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x1>; - enable-method = "psci"; - }; - cpu2:cpu@2 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x2>; - enable-method = "psci"; - }; - - cpu3:cpu@3 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x3>; - enable-method = "psci"; - }; - - }; - - timer { - compatible = "arm,armv8-timer"; - interrupts = , - , - , - ; - }; - timer_bc { - compatible = "arm, meson-bc-timer"; - reg= <0x0 0xc1109990 0x0 0x4 0x0 0xc1109994 0x0 0x4>; - timer_name = "Meson TimerF"; - clockevent-rating=<300>; - clockevent-shift=<20>; - clockevent-features=<0x23>; - interrupts = <0 60 1>; - bit_enable=<16>; - 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>; - }; - - meson_suspend:pm { - compatible = "amlogic, pm"; - device_name = "aml_pm"; - gxbaby-suspend; - reg = <0x0 0xc81000a8 0x0 0x4 - 0x0 0xc810023c 0x0 0x4>; - }; - - gic: interrupt-controller@2c001000 { - compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; - #interrupt-cells = <3>; - #address-cells = <0>; - interrupt-controller; - reg = <0x0 0xc4301000 0 0x1000>, - <0x0 0xc4302000 0 0x0100>; - interrupts = ; - }; - - aml_restart { - compatible = "aml, restart"; - sys_reset = <0x84000009>; - sys_poweroff = <0x84000008>; - }; - - psci { - compatible = "arm,psci"; - method = "smc"; - cpu_suspend = <0xC4000001>; - cpu_off = <0x84000002>; - cpu_on = <0xC4000003>; - migrate = <0xC4000005>; - }; - - secmon { - compatible = "amlogic, secmon"; - memory-region = <&secmon_reserved>; - in_base_func = <0x82000020>; - out_base_func = <0x82000021>; - }; - - securitykey { - compatible = "aml, securitykey"; - storage_query = <0x82000060>; - storage_read = <0x82000061>; - storage_write = <0x82000062>; - storage_tell = <0x82000063>; - storage_verify = <0x82000064>; - storage_status = <0x82000065>; - storage_list = <0x82000067>; - storage_remove = <0x82000068>; - storage_in_func = <0x82000023>; - storage_out_func = <0x82000024>; - storage_block_func = <0x82000025>; - storage_size_func = <0x82000027>; - storage_set_enctype = <0x8200006A>; - storage_get_enctype = <0x8200006B>; - storage_version = <0x8200006C>; - }; - - cpu_iomap { - compatible = "amlogic, iomap"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - io_apb_base { - reg = <0x0 0xd0000000 0x0 0x200000>; - }; - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - }; - - cpufreq-meson { - compatible = "amlogic, cpufreq-scpi"; - status = "okay"; - clocks = <&scpi_dvfs 0>; - clock-names = "cpu_clk"; - }; - - amlogic-watchdog { - compatible = "amlogic, gx-wdt"; - status = "disable"; - default_timeout=<10>; - reset_watchdog_method=<1>;//0:sysfs,1:kernel - reset_watchdog_time=<2>; - shutdown_timeout=<10>; - firmware_timeout=<6>; - suspend_timeout=<6>; - reg = <0x0 0xc11098d0 0x0 0x10>; - clocks = <&clock CLK_XTAL>; - }; - - amlogic-jtag { - compatible = "amlogic, jtag"; - status = "okay"; - pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; - pinctrl-0 = <&jtag_apao_pins>; - pinctrl-1 = <&jtag_apee_pins>; - }; - - clock: meson_clock { - compatible = "amlogic, txl-clock"; - reg = <0x0 0xc883c000 0x0 0x1000>, /* HIU BUS */ - <0x0 0xc8100000 0x0 0x1000>; /* AOBUS */ - #clock-cells = <1>; - #reset-cells = <1>; - sys_max = <1536000000>; - }; - - cpu_info { - compatible = "amlogic, cpuinfo"; - cpuinfo_cmd = <0x82000044>; - }; - - pinmux: pinmux { - compatible = "amlogic, pinmux-txl"; - dev_name = "pinmux"; - #pinmux-cells=<2>; - #address-cells = <2>; - #size-cells = <2>; - reg = <0x0 0xc1109880 0x0 0x10>; - ranges; - gpio: banks@c11080b0 { - reg = <0x0 0xc88344b0 0x0 0x28>, - <0x0 0xc88344e8 0x0 0x14>, - <0x0 0xc8834520 0x0 0x14>, - <0x0 0xc8834430 0x0 0x40>; - reg-names = "mux", "pull", "pull-enable", "gpio"; - gpio-controller; - #gpio-cells = <2>; - }; - gpio_ao: ao-bank@c1108030 { - reg = <0x0 0xc8100014 0x0 0x8>, - <0x0 0xc810002c 0x0 0x4>, - <0x0 0xc8100024 0x0 0x8>; - reg-names = "mux", "pull", "gpio"; - gpio-controller; - #gpio-cells = <2>; - }; - jtag_apao_pins:jtag_apao_pin{ - amlogic,clrmask = ; - amlogic,pins = "GPIOAO_3","GPIOAO_4","GPIOAO_5","GPIOAO_7"; - }; - jtag_apee_pins:jtag_apee_pin{ - amlogic,clrmask = <6 0xF000F03C>; - amlogic,pins = "CARD_0","CARD_1","CARD_2","CARD_3"; - }; - hdmitx_aocec: hdmitx_aocec { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_7"; - }; - hdmitx_eecec: hdmitx_eecec { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_7"; - }; - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <5 0xffff0000>; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_6","GPIOW_8", - "GPIOW_10","GPIOW_12", - "GPIOW_14","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - remote_pins:remote_pin{ - amlogic,setmask = ; - amlogic,clrmask = ; - amlogic,pins = "GPIOAO_6"; - }; - uart_ao_a_pins:uart_ao_a{ - amlogic,setmask = ; - amlogic,clrmask = ; - amlogic,pins="GPIOAO_0", "GPIOAO_1"; - }; - uart_ao_a_2_pins:uart_ao_a_2{ - amlogic,setmask = <6 0x300>; - amlogic,clrmask = <6 0x0C000C03>; - amlogic,pins="CARD_4", "CARD_5"; - }; - uart_ao_a_3_pins:uart_ao_a_3{ - amlogic,setmask = <6 0xC00>; - amlogic,clrmask = <6 0x0C000303>; - amlogic,pins="CARD_4", "CARD_5"; - }; - uart_ao_b_pins:uart_ao_b{ - amlogic,setmask = ; - amlogic,clrmask = ; - amlogic,pins="GPIOAO_0", "GPIOAO_1"; - }; - uart_ao_b_2_pins:uart_ao_b_2{ - amlogic,setmask = ; - amlogic,clrmask = ; - amlogic,pins="GPIOAO_4", "GPIOAO_5"; - }; - uart_a_pins:uart_a{ - amlogic,setmask=<2 0x7800>; - amlogic,clrmask=<2 0x3C00066E>; - amlogic,pins="GPIODV_8", "GPIODV_9", "GPIODV_10", "GPIODV_11"; - }; - uart_b_pins:uart_b{ - amlogic,setmask=<3 0x3000000>; - amlogic,clrmask = <4 0x60>, - <3 0x80200000>; - amlogic,pins="GPIOZ_15", "GPIOZ_16"; - }; - uart_c_pins:uart_c{ - amlogic,setmask=<4 0x3000000>; - amlogic,clrmask=<4 0xC0000000>, - <3 0x218000>; - amlogic,pins="GPIOZ_0", "GPIOZ_1"; - }; - sd_clk_cmd_pins:sd_clk_cmd_pins{ - amlogic,setmask=<6 0x0000000c>; - amlogic,pins = "CARD_2","CARD_3"; /* CARD_2:CLK, CARD_3:CMD */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_all_pins:sd_all_pins{ - amlogic,setmask=<6 0x0000003f>; - amlogic,clrmask=<6 0xFC00FF00>; - amlogic,pins="CARD_0","CARD_1","CARD_2","CARD_3","CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_1bit_pins:sd_1bit_pins{ - amlogic,setmask=<6 0x0000001c>; - amlogic,clrmask=<6 0x70007F03>; - amlogic,pins = "CARD_1","CARD_2","CARD_3"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_clk_cmd_uart_pins:sd_clk_cmd_uart_pins{ - amlogic,setmask=<6 0x0000030c>; - amlogic,clrmask=<6 0x3C003C03>; - amlogic,pins = "CARD_2","CARD_3"; /* CARD_2:CLK, CARD_3:CMD */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_1bit_uart_pins:sd_1bit_uart_pins{ - amlogic,setmask=<6 0x0000031c>; - amlogic,clrmask=<6 0x7C007C03>; - amlogic,pins = "CARD_1","CARD_2","CARD_3"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - /* fixme, begin; yyh */ - ao_to_sd_uart_pins:ao_to_sd_uart_pins{ - amlogic,setmask=<6 0x300>; - amlogic,clrmask=<6 0xc000c03>; - amlogic,pins = "CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - /* switch jtag pins to card from apao */ - ao_to_sd_jtag_pins:ao_to_sd_jtag_pins{ - amlogic,setmask=<6 0x300>; /*set for uart-ee, fixme? */ - amlogic,clrmask=<6 0xf000f03f>; /* clear for jtag */ /* clear for uart-ee, fixme? */ - amlogic,pins = "CARD_4","CARD_5"; /* should be CARD_0/1/2/3 */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - /* switch jtag pins to apao from card */ - /* fixme, end; yyh */ - - emmc_clk_cmd_pins:emmc_clk_cmd_pins{ - amlogic,setmask=<7 0x60000000>; - amlogic,pins = "BOOT_8","BOOT_10"; /** BOOT_10:CMD, BOOT_8:CLK */ - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - emmc_conf_pull_up:emmc_conf_pull_up{ - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_10"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - emmc_conf_pull_done:emmc_conf_pull_done{ - amlogic,pins = "BOOT_11"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - emmc_all_pins:emmc_all_pins{ - amlogic,setmask=<7 0xf0000000>; /*sdhc c*/ - amlogic,clrmask=<7 0x00F83C00>; - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_10","BOOT_11"; - amlogic,enable-output=<1>; /** 0:output, 1:input */ - }; - atvdemod_agc: atvdemod_agc { - amlogic,setmask=<2 0x800000>; - amlogic,clrmask=<2 0x500000>; - amlogic,pins="GPIODV_2"; - }; - dtvdemod_agc: dtvdemod_agc { - amlogic,setmask=<2 0x400000>; - amlogic,clrmask=<2 0x980000>; - amlogic,pins="GPIODV_2"; - }; - ao_i2c_master:ao_i2c{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_4","GPIOAO_5"; - }; - i2c_a_master:i2c_a{ - amlogic,setmask=<4 0x1800>; - amlogic,clrmask=<3 0x200000>; - amlogic,pins="GPIOZ_8","GPIOZ_9"; - }; - i2c_b_master:i2c_b{ - amlogic,setmask=<2 0x03000000>; - amlogic,clrmask=<2 0x80000000>; - amlogic,pins="GPIODV_0","GPIODV_1"; - }; - i2c_c_master:i2c_c{ - amlogic,setmask=<0 0x30000000>; - amlogic,pins="GPIOH_2","GPIOH_3"; - }; - i2c_d_master:i2c_d{ - amlogic,setmask=<4 0x00300000>; - amlogic,clrmask=<4 0x30c00000 3 0x00206000>; - amlogic,pins="GPIOZ_2","GPIOZ_3"; - }; - lcd_vbyone_pins:lcd_vbyone_pin { - amlogic,setmask = <0 0xC0000000>; - amlogic,pins = "GPIOH_0","GPIOH_1"; - }; - spicc_pins: spicc_pins{ - amlogic,setmask=<4 0xF0000000>; - amlogic,clrmask=<4 0x3F00000 3 0x21E000>; - amlogic,pins="GPIOZ_0","GPIOZ_1","GPIOZ_2", "GPIOZ_3"; - }; - }; /* end of pinmux */ - - cpu_version { - reg=<0x0 0xc8100220 0x0 0x4>; - }; - - meson_clk_msr { - compatible = "amlogic, txl_measure"; - reg = <0x0 0xc110875c 0x0 0x4 - 0x0 0xc1108764 0x0 0x4>; - }; - - i2c_ao: i2c@c8100500{ /*I2C-AO*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-AO"; - status = "disabled"; - reg = <0x0 0xc8100500 0x0 0x1d>; - device_id = <0>; - pinctrl-names="default"; - pinctrl-0=<&ao_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_a: i2c@c1108500 { /*I2C-A*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-A"; - status = "disabled"; - reg = <0x0 0xc1108500 0x0 0x20>; - device_id = <1>; - pinctrl-names="default"; - pinctrl-0=<&i2c_a_master>;/*p200 i2c-A multiplex with usb PWR*/ - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - - i2c_b: i2c@c11087c0 { /*I2C-B*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-B"; - status = "disabled"; - reg = <0x0 0xc11087c0 0x0 0x20>; - device_id = <2>; - pinctrl-names="default"; - pinctrl-0=<&i2c_b_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - - i2c_c: i2c@c11087e0 { /*I2C-C*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-C"; - status = "disabled"; - reg = <0x0 0xc11087e0 0x0 0x20>; - device_id = <3>; - pinctrl-names="default"; - pinctrl-0=<&i2c_c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - - i2c_d: i2c@c1108d20 { /*I2C-D*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-D"; - status = "disabled"; - reg = <0x0 0xc1108d20 0x0 0x20>; - device_id = <4>; - pinctrl-names="default"; - pinctrl-0=<&i2c_d_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - - efuse: efuse { - compatible = "amlogic, efuse"; - read_cmd = <0x82000030>; - write_cmd = <0x82000031>; - get_max_cmd = <0x82000033>; - key = <&efusekey>; - resets = <&clock GCLK_IDX_EFUSE>; - reset-names = "efuse_clk"; - status = "disabled"; - }; - - efusekey:efusekey { - keynum = <4>; - key0 = <&key_0>; - key1 = <&key_1>; - key2 = <&key_2>; - key3 = <&key_3>; - key_0:key_0{ - keyname = "mac"; - offset = <0>; - size = <6>; - }; - key_1:key_1{ - keyname = "mac_bt"; - offset = <6>; - size = <6>; - }; - key_2:key_2{ - keyname = "mac_wifi"; - offset = <12>; - size = <6>; - }; - key_3:key_3{ - keyname = "usid"; - offset = <18>; - size = <16>; - }; - }; - - mailbox: mhu@c883c400 { - compatible = "amlogic, meson_mhu"; - reg = <0x0 0xc883c400 0x0 0x4c>, /* MHU registers */ - <0x0 0xc8013000 0x0 0x800>; /* Payload area */ - interrupts = <0 209 IRQ_TYPE_EDGE_RISING>, /* low priority interrupt */ - <0 210 IRQ_TYPE_EDGE_RISING>; /* high priority interrupt */ - #mbox-cells = <1>; - mbox-names = "cpu_to_scp_low", "cpu_to_scp_high"; - mboxes = <&mailbox 0 &mailbox 1>; - }; - - scpi_clocks { - compatible = "arm,scpi-clks"; - - scpi_dvfs: scpi_clocks@0 { - compatible = "arm,scpi-clk-indexed"; - #clock-cells = <1>; - clock-indices = <0>; - clock-output-names = "vcpu"; - }; - - }; - - meson-remote { - compatible = "amlogic, aml_remote"; - dev_name = "meson-remote"; - status = "okay"; - remote_ao_offset = <0x580>; /* 0x400 + (0x20 + idx)<<2 -- old ; 0x400 + (0x60 +idx)<<2 --new */ - interrupts = <0 196 1>; - pinctrl-names = "default"; - pinctrl-0 = <&remote_pins>; - }; - - rng { - compatible = "amlogic,meson-rng"; - reg = <0x0 0xc8834000 0x0 0x4>; - }; - - audio_data:audio_data { - compatible = "amlogic, audio_data"; - query_licence_cmd = <0x82000050>; - status = "disabled"; - }; - - saradc: saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0 9 1>; - interrupt-names = "saradc_int"; - clocks = <&clock CLK_XTAL>; - clock-names = "saradc_clk"; - resets = <&clock GCLK_IDX_SARADC>; - reg = <0x0 0xc8100600 0x0 0x30 - 0x0 0xc883c3d8 0x0 0x08>; - }; - - defendkey: defendkey { - compatible = "amlogic, defendkey"; - reg = <0x0 0xc8834500 0x0 0x4>; /*RAND64_ADDR0*/ - mem_size = <0x0 0x100000>; - status = "disabled"; - }; - - spicc:spicc { - compatible = "amlogic, spicc"; - status = "disabled"; - reg = <0x0 0xc1108d80 0x0 0x3c>; - resets = <&clock GCLK_IDX_SPICC>; - reset-names = "spicc_clk"; - clocks = <&clock CLK_81>; - clock-names = "clk81"; - interrupts = <0 81 1>; - device_id = <0>; - enhance = <1>; - }; - - aml_aes { - compatible = "amlogic,aes_dma"; - dev_name = "aml_aes_dma"; - interrupts = <0 188 1 - 0 189 1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - aml_tdes { - compatible = "amlogic,des_dma,tdes_dma"; - dev_name = "aml_tdes_dma"; - interrupts = <0 188 1 - 0 189 1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aml_sha { - compatible = "amlogic,sha_dma"; - dev_name = "aml_sha_dma"; - interrupts = <0 188 1 - 0 189 1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - -};/* end of / */ - -&gpu{ -/*gpu max freq is 750M*/ - tbl = <&clk125_cfg &clk285_cfg &clk400_cfg &clk500_cfg &clk666_cfg &clk750_cfg>; -}; diff --git a/arch/arm64/boot/dts/amlogic/mesontxl_p320-panel.dtsi b/arch/arm64/boot/dts/amlogic/mesontxl_p320-panel.dtsi deleted file mode 100644 index 8529620a0152b..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesontxl_p320-panel.dtsi +++ /dev/null @@ -1,308 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/mesontxl_p320-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"; - dev_name = "lcd"; - mode = "tv"; - status = "okay"; - fr_auto_policy = <1>; /* 0=disable, 1=60/50hz, 2=60/50/48hz */ - key_valid = <0>; - resets = <&clock GCLK_IDX_VCLK2_ENCL &clock GCLK_IDX_VCLK2_VENCL>; - reset-names = "encl","vencl"; - interrupts = <0 78 1 0 3 1>; - interrupt-names = "vbyone","vbyone_vsync"; - pinctrl-names = "vbyone"; - pinctrl-0 = <&lcd_vbyone_pins>; - - /* power type:(0=cpu_gpio, 1=pmu_gpio, 2=signal, 3=extern, 0xff=ending) */ - /* power index:(point gpios_index, or extern_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - lcd_cpu-gpios = <&gpio GPIOH_7 1 &gpio GPIOH_6 1 - &gpio GPIOH_4 1 &gpio GPIOH_5 1>; - lcd_cpu_gpio_names = "GPIOH_7","GPIOH_6","GPIOH_4","GPIOH_5"; - - lvds_0{ - model_name = "1080p-vfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2060 2650 1100 1480 120000000 160000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap, lane_reverse */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - lvds_1{ - model_name = "1080p-hfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2080 2720 1100 1380 133940000 156000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <1 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap, lane_reverse */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_0{ - model_name = "public_2region"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 480000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_1{ - model_name = "INL_V580DJ2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2790 552000000 632000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 1 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_2{ - model_name = "public_2region"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 480000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <1 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_3{ - model_name = "BOE_HV550QU2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 560000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 1 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 0 1 0 10 /* 3d_disable */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 1 2 0 /* 3d_disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_4{ - model_name = "INNOLUX_V580D"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 560000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 1 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 1 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 0 1 0 10 /* 3d_disable */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 1 2 0 /* 3d_disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - }; /* end of lcd */ - - lcd_extern{ - compatible = "amlogic, lcd_extern"; - dev_name = "lcd_extern"; - status = "okay"; - key_valid = <0>; - - extern_0{ - index = <0>; - extern_name = "ext_default"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_second_address = <0xff>; /* 7bit i2c address, 0xff for none */ - i2c_bus = "i2c_bus_d"; - cmd_size = <9>; - /* init on/off: (type, value..., delay), must match cmd_size for every group */ - /* type: 0x00=cmd(bit[3:0]=1 for second_addr), 0x10=gpio, 0xff=ending*/ - /* value: i2c or spi cmd, or gpio index & level, fill 0x0 for no use */ - /* delay: unit ms */ - init_on = <0x00 0x20 0x01 0x02 0x00 0x40 0xFF 0x00 0x00 - 0x00 0x80 0x02 0x00 0x40 0x62 0x51 0x73 0x00 - 0x00 0x61 0x06 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0xC1 0x05 0x0F 0x00 0x08 0x70 0x00 0x00 - 0x00 0x13 0x01 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0x3D 0x02 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0xED 0x0D 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0x23 0x02 0x00 0x00 0x00 0x00 0x00 0x0A - 0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - init_off = <0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - }; - extern_1{ - index = <1>; - extern_name = "i2c_T5800Q"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_bus = "i2c_bus_d"; - }; - }; - - backlight{ - compatible = "amlogic, backlight"; - dev_name = "backlight"; - status = "okay"; - key_valid = <0>; - pinctrl-names = "pwm_on","pwm_vs_on", - "pwm_combo_0_1_on", - "pwm_combo_0_vs_1_on", - "pwm_combo_0_1_vs_on", - "pwm_combo_0_on","pwm_combo_0_vs_on", - "pwm_combo_1_on","pwm_combo_1_vs_on"; - pinctrl-0 = <&bl_pwm_on_pins>; - pinctrl-1 = <&bl_pwm_vs_on_pins>; - pinctrl-2 = <&bl_pwm_combo_0_on_pins &bl_pwm_combo_1_on_pins>; - pinctrl-3 = <&bl_pwm_combo_0_vs_on_pins &bl_pwm_combo_1_on_pins>; - pinctrl-4 = <&bl_pwm_combo_0_on_pins &bl_pwm_combo_1_vs_on_pins>; - pinctrl-5 = <&bl_pwm_combo_0_on_pins>; - pinctrl-6 = <&bl_pwm_combo_0_vs_on_pins>; - pinctrl-7 = <&bl_pwm_combo_1_on_pins>; - pinctrl-8 = <&bl_pwm_combo_1_vs_on_pins>; - /* power index:(point gpios_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - bl-gpios = <&gpio GPIOZ_2 1 &gpio GPIOZ_6 1 &gpio GPIOZ_7 1>; - bl_gpio_names = "GPIOZ_2","GPIOZ_6","GPIOZ_7"; - - backlight_0{ - index = <0>; - bl_name = "backlight_pwm"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 0 1 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_B"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <0 180 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - backlight_1{ - index = <1>; - bl_name = "backlight_pwm_vs"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_VS"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <1 2 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_off_value, pwm_on_delay, pwm_off_delay */ - }; - backlight_2{ - index = <2>; - bl_name = "backlight_pwm_combo"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <2>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_combo_level_mapping = <255 100 100 10>; /* level_max, level_min */ - bl_pwm_combo_port = "PWM_B","PWM_C"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_combo_attr = <1 180 100 25 - 1 18000 100 20>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_combo_power = <1 0 2 0 10 10>; /* pwm0_gpio_index, pwm0_gpio_off, pwm1_gpio_index, pwm1_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - backlight_3{ - index = <3>; - bl_name = "backlight_pwm_combo"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <2>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 1 0 410 110>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_combo_level_mapping = <255 10 0 0>; /* level_max, level_min */ - bl_pwm_combo_port = "PWM_B","PWM_C"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_combo_attr = <1 180 100 25 - 1 18000 90 90>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_combo_power = <1 0 2 0 10 10>; /* pwm0_gpio_index, pwm0_gpio_off, pwm1_gpio_index, pwm1_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - }; -};/* end of / */ - diff --git a/arch/arm64/boot/dts/amlogic/mesontxl_p321-panel.dtsi b/arch/arm64/boot/dts/amlogic/mesontxl_p321-panel.dtsi deleted file mode 100644 index 83cd44fd8b106..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesontxl_p321-panel.dtsi +++ /dev/null @@ -1,309 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/mesontxl_p321-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"; - dev_name = "lcd"; - mode = "tv"; - status = "okay"; - fr_auto_policy = <1>; /* 0=disable, 1=60/50hz, 2=60/50/48hz */ - key_valid = <0>; - resets = <&clock GCLK_IDX_VCLK2_ENCL &clock GCLK_IDX_VCLK2_VENCL>; - reset-names = "encl","vencl"; - interrupts = <0 78 1 0 3 1>; - interrupt-names = "vbyone","vbyone_vsync"; - pinctrl-names = "vbyone"; - pinctrl-0 = <&lcd_vbyone_pins>; - - /* power type:(0=cpu_gpio, 1=pmu_gpio, 2=signal, 3=extern, 0xff=ending) */ - /* power index:(point gpios_index, or extern_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - lcd_cpu-gpios = <&gpio GPIOH_7 1 &gpio GPIOH_6 1 - &gpio GPIOH_4 1 &gpio GPIOH_5 1>; - lcd_cpu_gpio_names = "GPIOH_7","GPIOH_6","GPIOH_4","GPIOH_5"; - - lvds_0{ - model_name = "1080p-vfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2060 2650 1100 1480 120000000 160000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap, lane_reverse */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - lvds_1{ - model_name = "1080p-hfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2080 2720 1100 1380 133940000 156000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <1 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap, lane_reverse */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_0{ - model_name = "public_2region"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 480000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_1{ - model_name = "INL_V580DJ2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2790 552000000 632000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 1 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_2{ - model_name = "public_2region"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 480000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <1 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_3{ - model_name = "BOE_HV550QU2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 560000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 1 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 0 1 0 10 /* 3d_disable */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 1 2 0 /* 3d_disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_4{ - model_name = "INNOLUX_V580D"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 560000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 1 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 1 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 0 1 0 10 /* 3d_disable */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 1 2 0 /* 3d_disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - }; /* end of lcd */ - - lcd_extern{ - compatible = "amlogic, lcd_extern"; - dev_name = "lcd_extern"; - status = "okay"; - key_valid = <0>; - - extern_0{ - index = <0>; - extern_name = "ext_default"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_second_address = <0xff>; /* 7bit i2c address, 0xff for none */ - i2c_bus = "i2c_bus_d"; - cmd_size = <9>; - /* init on/off: (type, value..., delay), must match cmd_size for every group */ - /* type: 0x00=cmd(bit[3:0]=1 for second_addr), 0x10=gpio, 0xff=ending*/ - /* value: i2c or spi cmd, or gpio index & level, fill 0x0 for no use */ - /* delay: unit ms */ - init_on = <0x00 0x20 0x01 0x02 0x00 0x40 0xFF 0x00 0x00 - 0x00 0x80 0x02 0x00 0x40 0x62 0x51 0x73 0x00 - 0x00 0x61 0x06 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0xC1 0x05 0x0F 0x00 0x08 0x70 0x00 0x00 - 0x00 0x13 0x01 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0x3D 0x02 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0xED 0x0D 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0x23 0x02 0x00 0x00 0x00 0x00 0x00 0x0A - 0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - init_off = <0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - }; - extern_1{ - index = <1>; - extern_name = "i2c_T5800Q"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_bus = "i2c_bus_d"; - }; - }; - - backlight{ - compatible = "amlogic, backlight"; - dev_name = "backlight"; - status = "okay"; - key_valid = <0>; - pinctrl-names = "pwm_on","pwm_vs_on", - "pwm_combo_0_1_on", - "pwm_combo_0_vs_1_on", - "pwm_combo_0_1_vs_on", - "pwm_combo_0_on","pwm_combo_0_vs_on", - "pwm_combo_1_on","pwm_combo_1_vs_on"; - pinctrl-0 = <&bl_pwm_on_pins>; - pinctrl-1 = <&bl_pwm_vs_on_pins>; - pinctrl-2 = <&bl_pwm_combo_0_on_pins &bl_pwm_combo_1_on_pins>; - pinctrl-3 = <&bl_pwm_combo_0_vs_on_pins &bl_pwm_combo_1_on_pins>; - pinctrl-4 = <&bl_pwm_combo_0_on_pins &bl_pwm_combo_1_vs_on_pins>; - pinctrl-5 = <&bl_pwm_combo_0_on_pins>; - pinctrl-6 = <&bl_pwm_combo_0_vs_on_pins>; - pinctrl-7 = <&bl_pwm_combo_1_on_pins>; - pinctrl-8 = <&bl_pwm_combo_1_vs_on_pins>; - - /* power index:(point gpios_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - bl-gpios = <&gpio GPIOZ_2 1 &gpio GPIOZ_6 1 &gpio GPIOZ_7 1>; - bl_gpio_names = "GPIOZ_2","GPIOZ_6","GPIOZ_7"; - - backlight_0{ - index = <0>; - bl_name = "backlight_pwm"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 0 1 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_B"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <0 180 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - backlight_1{ - index = <1>; - bl_name = "backlight_pwm_vs"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_VS"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <1 2 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_off_value, pwm_on_delay, pwm_off_delay */ - }; - backlight_2{ - index = <2>; - bl_name = "backlight_pwm_combo"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <2>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_combo_level_mapping = <255 100 100 10>; /* level_max, level_min */ - bl_pwm_combo_port = "PWM_B","PWM_C"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_combo_attr = <1 180 100 25 - 1 18000 100 20>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_combo_power = <1 0 2 0 10 10>; /* pwm0_gpio_index, pwm0_gpio_off, pwm1_gpio_index, pwm1_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - backlight_3{ - index = <3>; - bl_name = "backlight_pwm_combo"; - bl_level_default_uboot_kernel = <31 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <2>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 1 0 410 110>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_combo_level_mapping = <255 10 0 0>; /* level_max, level_min */ - bl_pwm_combo_port = "PWM_B","PWM_C"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_combo_attr = <1 180 100 25 - 1 18000 80 80>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_combo_power = <1 0 2 0 10 10>; /* pwm0_gpio_index, pwm0_gpio_off, pwm1_gpio_index, pwm1_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - }; -};/* end of / */ - diff --git a/arch/arm64/boot/dts/amlogic/mesontxl_p341-panel.dtsi b/arch/arm64/boot/dts/amlogic/mesontxl_p341-panel.dtsi deleted file mode 100644 index e8f42663131d4..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesontxl_p341-panel.dtsi +++ /dev/null @@ -1,309 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/mesontxl_p321-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"; - dev_name = "lcd"; - mode = "tv"; - status = "okay"; - fr_auto_policy = <1>; /* 0=disable, 1=60/50hz, 2=60/50/48hz */ - key_valid = <0>; - resets = <&clock GCLK_IDX_VCLK2_ENCL &clock GCLK_IDX_VCLK2_VENCL>; - reset-names = "encl","vencl"; - interrupts = <0 78 1 0 3 1>; - interrupt-names = "vbyone","vbyone_vsync"; - pinctrl-names = "vbyone"; - pinctrl-0 = <&lcd_vbyone_pins>; - - /* power type:(0=cpu_gpio, 1=pmu_gpio, 2=signal, 3=extern, 0xff=ending) */ - /* power index:(point gpios_index, or extern_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - lcd_cpu-gpios = <&gpio GPIOH_7 1 &gpio GPIOH_6 1 - &gpio GPIOH_4 1 &gpio GPIOH_5 1>; - lcd_cpu_gpio_names = "GPIOH_7","GPIOH_6","GPIOH_4","GPIOH_5"; - - lvds_0{ - model_name = "1080p-vfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2060 2650 1100 1480 120000000 160000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap, lane_reverse */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - lvds_1{ - model_name = "1080p-hfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2080 2720 1100 1380 133940000 156000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <1 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap, lane_reverse */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_0{ - model_name = "public_2region"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 480000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_1{ - model_name = "INL_V580DJ2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2790 552000000 632000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 1 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_2{ - model_name = "public_2region"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 480000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <1 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_3{ - model_name = "BOE_HV550QU2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 560000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 1 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 0 1 0 10 /* 3d_disable */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 1 2 0 /* 3d_disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_4{ - model_name = "INNOLUX_V580D"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 560000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 1 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 1 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 0 1 0 10 /* 3d_disable */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 1 2 0 /* 3d_disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - }; /* end of lcd */ - - lcd_extern{ - compatible = "amlogic, lcd_extern"; - dev_name = "lcd_extern"; - status = "okay"; - key_valid = <0>; - - extern_0{ - index = <0>; - extern_name = "ext_default"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_second_address = <0xff>; /* 7bit i2c address, 0xff for none */ - i2c_bus = "i2c_bus_d"; - cmd_size = <9>; - /* init on/off: (type, value..., delay), must match cmd_size for every group */ - /* type: 0x00=cmd(bit[3:0]=1 for second_addr), 0x10=gpio, 0xff=ending*/ - /* value: i2c or spi cmd, or gpio index & level, fill 0x0 for no use */ - /* delay: unit ms */ - init_on = <0x00 0x20 0x01 0x02 0x00 0x40 0xFF 0x00 0x00 - 0x00 0x80 0x02 0x00 0x40 0x62 0x51 0x73 0x00 - 0x00 0x61 0x06 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0xC1 0x05 0x0F 0x00 0x08 0x70 0x00 0x00 - 0x00 0x13 0x01 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0x3D 0x02 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0xED 0x0D 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0x23 0x02 0x00 0x00 0x00 0x00 0x00 0x0A - 0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - init_off = <0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - }; - extern_1{ - index = <1>; - extern_name = "i2c_T5800Q"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_bus = "i2c_bus_d"; - }; - }; - - backlight{ - compatible = "amlogic, backlight"; - dev_name = "backlight"; - status = "okay"; - key_valid = <0>; - pinctrl-names = "pwm_on","pwm_vs_on", - "pwm_combo_0_1_on", - "pwm_combo_0_vs_1_on", - "pwm_combo_0_1_vs_on", - "pwm_combo_0_on","pwm_combo_0_vs_on", - "pwm_combo_1_on","pwm_combo_1_vs_on"; - pinctrl-0 = <&bl_pwm_on_pins>; - pinctrl-1 = <&bl_pwm_vs_on_pins>; - pinctrl-2 = <&bl_pwm_combo_0_on_pins &bl_pwm_combo_1_on_pins>; - pinctrl-3 = <&bl_pwm_combo_0_vs_on_pins &bl_pwm_combo_1_on_pins>; - pinctrl-4 = <&bl_pwm_combo_0_on_pins &bl_pwm_combo_1_vs_on_pins>; - pinctrl-5 = <&bl_pwm_combo_0_on_pins>; - pinctrl-6 = <&bl_pwm_combo_0_vs_on_pins>; - pinctrl-7 = <&bl_pwm_combo_1_on_pins>; - pinctrl-8 = <&bl_pwm_combo_1_vs_on_pins>; - - /* power index:(point gpios_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - bl-gpios = <&gpio GPIOZ_2 1 &gpio GPIOZ_6 1 &gpio GPIOZ_7 1>; - bl_gpio_names = "GPIOZ_2","GPIOZ_6","GPIOZ_7"; - - backlight_0{ - index = <0>; - bl_name = "backlight_pwm"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 0 1 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_B"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <0 180 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - backlight_1{ - index = <1>; - bl_name = "backlight_pwm_vs"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_VS"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <1 2 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_off_value, pwm_on_delay, pwm_off_delay */ - }; - backlight_2{ - index = <2>; - bl_name = "backlight_pwm_combo"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <2>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_combo_level_mapping = <255 100 100 10>; /* level_max, level_min */ - bl_pwm_combo_port = "PWM_B","PWM_C"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_combo_attr = <1 180 100 25 - 1 18000 100 20>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_combo_power = <1 0 2 0 10 10>; /* pwm0_gpio_index, pwm0_gpio_off, pwm1_gpio_index, pwm1_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - backlight_3{ - index = <3>; - bl_name = "backlight_pwm_combo"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <2>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 1 0 410 110>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_combo_level_mapping = <255 10 0 0>; /* level_max, level_min */ - bl_pwm_combo_port = "PWM_B","PWM_C"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_combo_attr = <1 180 100 25 - 1 18000 90 90>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_combo_power = <1 0 2 0 10 10>; /* pwm0_gpio_index, pwm0_gpio_off, pwm1_gpio_index, pwm1_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - }; -};/* end of / */ - diff --git a/arch/arm64/boot/dts/amlogic/mesontxl_pxp-panel.dtsi b/arch/arm64/boot/dts/amlogic/mesontxl_pxp-panel.dtsi deleted file mode 100644 index ca6dcf5b57ff7..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesontxl_pxp-panel.dtsi +++ /dev/null @@ -1,74 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/mesontxl_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"; - dev_name = "lcd"; - mode = "tv"; - status = "okay"; - fr_auto_policy = <1>; /* 0=disable, 1=60/50hz, 2=60/50/48hz */ - key_valid = <0>; - resets = <&clock GCLK_IDX_VCLK2_ENCL &clock GCLK_IDX_VCLK2_VENCL>; - reset-names = "encl","vencl"; - interrupts = <0 78 1 0 3 1>; - interrupt-names = "vbyone","vbyone_vsync"; - pinctrl-names = "vbyone"; - pinctrl-0 = <&lcd_vbyone_pins>; - - /* power type:(0=cpu_gpio, 1=pmu_gpio, 2=signal, 3=extern, 0xff=ending) */ - /* power index:(point gpios_index, or extern_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - lcd_cpu-gpios = <&gpio GPIOH_3 1 &gpio GPIOH_4 1>; - lcd_cpu_gpio_names = "GPIOH_3","GPIOH_4"; - - lvds_0{ - model_name = "1080p-vfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2060 2650 1100 1480 120000000 160000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0xff>; - }; - - vbyone_0{ - model_name = "public"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 480000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0xff>; - }; - }; /* end of lcd */ - -};/* end of / */ - diff --git a/arch/arm64/boot/dts/amlogic/mesontxl_skt-panel.dtsi b/arch/arm64/boot/dts/amlogic/mesontxl_skt-panel.dtsi deleted file mode 100644 index ed01d60bcc5cf..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesontxl_skt-panel.dtsi +++ /dev/null @@ -1,74 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/mesontxl_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"; - dev_name = "lcd"; - mode = "tv"; - status = "okay"; - fr_auto_policy = <1>; /* 0=disable, 1=60/50hz, 2=60/50/48hz */ - key_valid = <0>; - resets = <&clock GCLK_IDX_VCLK2_ENCL &clock GCLK_IDX_VCLK2_VENCL>; - reset-names = "encl","vencl"; - interrupts = <0 78 1 0 3 1>; - interrupt-names = "vbyone","vbyone_vsync"; - pinctrl-names = "vbyone"; - pinctrl-0 = <&lcd_vbyone_pins>; - - /* power type:(0=cpu_gpio, 1=pmu_gpio, 2=signal, 3=extern, 0xff=ending) */ - /* power index:(point gpios_index, or extern_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - lcd_cpu-gpios = <&gpio GPIOH_4 1 &gpio GPIOH_5 1>; - lcd_cpu_gpio_names = "GPIOH_4","GPIOH_5"; - - lvds_0{ - model_name = "1080p-vfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2060 2650 1100 1480 120000000 160000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0xff>; - }; - - vbyone_0{ - model_name = "public"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 480000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0xff>; - }; - }; /* end of lcd */ - -};/* end of / */ - diff --git a/arch/arm64/boot/dts/amlogic/mesontxl_t960_p346-panel.dtsi b/arch/arm64/boot/dts/amlogic/mesontxl_t960_p346-panel.dtsi deleted file mode 100644 index 2109487ea91de..0000000000000 --- a/arch/arm64/boot/dts/amlogic/mesontxl_t960_p346-panel.dtsi +++ /dev/null @@ -1,301 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/mesontxl_p321-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"; - dev_name = "lcd"; - mode = "tv"; - status = "okay"; - fr_auto_policy = <1>; /* 0=disable, 1=60/50hz, 2=60/50/48hz */ - key_valid = <0>; - resets = <&clock GCLK_IDX_VCLK2_ENCL &clock GCLK_IDX_VCLK2_VENCL>; - reset-names = "encl","vencl"; - interrupts = <0 78 1 0 3 1>; - interrupt-names = "vbyone","vbyone_vsync"; - pinctrl-names = "vbyone"; - pinctrl-0 = <&lcd_vbyone_pins>; - - /* power type:(0=cpu_gpio, 1=pmu_gpio, 2=signal, 3=extern, 0xff=ending) */ - /* power index:(point gpios_index, or extern_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - lcd_cpu-gpios = <&gpio GPIOH_7 1 &gpio GPIOH_6 1 - &gpio GPIOH_4 1 &gpio GPIOH_5 1>; - lcd_cpu_gpio_names = "GPIOH_7","GPIOH_6","GPIOH_4","GPIOH_5"; - - lvds_0{ - model_name = "1080p-vfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2060 2650 1100 1480 120000000 160000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap, lane_reverse */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - lvds_1{ - model_name = "1080p-hfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <2080 2720 1100 1380 133940000 156000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <1 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap, lane_reverse */ - phy_attr=<3 0 0 0>; /* vswing_level, preemphasis_level, lvds_clk_vswing_level, lvds_clk_preem_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_0{ - model_name = "public_2region"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 480000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_1{ - model_name = "INL_V580DJ2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2790 552000000 632000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 1 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_2{ - model_name = "public_2region"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 480000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <1 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_3{ - model_name = "BOE_HV550QU2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 560000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 1 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 0 1 0 10 /* 3d_disable */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 1 2 0 /* 3d_disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - vbyone_4{ - model_name = "INNOLUX_V580D"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - range_setting = <4240 4800 2200 2760 560000000 624000000>; /* h_period_min,max, v_period_min,max, pclk_min,max */ - lcd_timing = <33 477 1 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 1 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - vbyone_intr_enable = <1 1>; /* vbyone_intr_enable, vbyone_vsync_intr_enable */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 0 1 0 10 /* 3d_disable */ - 2 0 0 10 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 10 /* signal disable */ - 0 1 2 0 /* 3d_disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <3>; - }; - }; /* end of lcd */ - - lcd_extern{ - compatible = "amlogic, lcd_extern"; - dev_name = "lcd_extern"; - status = "okay"; - key_valid = <0>; - - extern_0{ - index = <0>; - extern_name = "ext_default"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_second_address = <0xff>; /* 7bit i2c address, 0xff for none */ - i2c_bus = "i2c_bus_d"; - cmd_size = <9>; - /* init on/off: (type, value..., delay), must match cmd_size for every group */ - /* type: 0x00=cmd(bit[3:0]=1 for second_addr), 0x10=gpio, 0xff=ending*/ - /* value: i2c or spi cmd, or gpio index & level, fill 0x0 for no use */ - /* delay: unit ms */ - init_on = <0x00 0x20 0x01 0x02 0x00 0x40 0xFF 0x00 0x00 - 0x00 0x80 0x02 0x00 0x40 0x62 0x51 0x73 0x00 - 0x00 0x61 0x06 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0xC1 0x05 0x0F 0x00 0x08 0x70 0x00 0x00 - 0x00 0x13 0x01 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0x3D 0x02 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0xED 0x0D 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0x23 0x02 0x00 0x00 0x00 0x00 0x00 0x0A - 0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - init_off = <0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - }; - extern_1{ - index = <1>; - extern_name = "i2c_T5800Q"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_bus = "i2c_bus_d"; - }; - }; - - backlight{ - compatible = "amlogic, backlight"; - dev_name = "backlight"; - status = "okay"; - key_valid = <0>; - pinctrl-names = "pwm_on","pwm_vs_on","pwm_combo_on", - "pwm_combo_0_on","pwm_combo_1_on"; - pinctrl-0 = <&bl_pwm_on_pins>; - pinctrl-1 = <&bl_pwm_vs_on_pins>; - pinctrl-2 = <&bl_pwm_combo_0_on_pins &bl_pwm_combo_1_on_pins>; - pinctrl-3 = <&bl_pwm_combo_0_on_pins>; - pinctrl-4 = <&bl_pwm_combo_1_on_pins>; - - /* power index:(point gpios_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - bl-gpios = <&gpio GPIOZ_2 1 &gpio GPIOZ_6 1 &gpio GPIOZ_7 1>; - bl_gpio_names = "GPIOZ_2","GPIOZ_6","GPIOZ_7"; - - backlight_0{ - index = <0>; - bl_name = "backlight_pwm"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 0 1 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_B"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <0 180 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - backlight_1{ - index = <1>; - bl_name = "backlight_pwm_vs"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_VS"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <1 2 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_off_value, pwm_on_delay, pwm_off_delay */ - }; - backlight_2{ - index = <2>; - bl_name = "backlight_pwm_combo"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <2>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_combo_level_mapping = <255 100 100 10>; /* level_max, level_min */ - bl_pwm_combo_port = "PWM_B","PWM_C"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_combo_attr = <1 180 100 25 - 1 18000 100 20>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_combo_power = <1 0 2 0 10 10>; /* pwm0_gpio_index, pwm0_gpio_off, pwm1_gpio_index, pwm1_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - backlight_3{ - index = <3>; - bl_name = "backlight_pwm_combo"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <2>; /* 1=pwm, 2=pwm_combo */ - bl_power_attr = <0 1 0 410 110>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_combo_level_mapping = <255 10 0 0>; /* level_max, level_min */ - bl_pwm_combo_port = "PWM_B","PWM_C"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_combo_attr = <1 180 100 25 - 1 18000 90 90>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_combo_power = <1 0 2 0 10 10>; /* pwm0_gpio_index, pwm0_gpio_off, pwm1_gpio_index, pwm1_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - }; -};/* end of / */ - diff --git a/arch/arm64/boot/dts/amlogic/odroidc2.dts b/arch/arm64/boot/dts/amlogic/odroidc2.dts deleted file mode 100644 index f8fd3d1348be6..0000000000000 --- a/arch/arm64/boot/dts/amlogic/odroidc2.dts +++ /dev/null @@ -1,899 +0,0 @@ -/* - * AMLogic's S905 based ODROID-C2 board device tree source - * - * Copyright (c) 2015 Hardkernel Co., Ltd. - * http://www.hardkernel.com - * - * Device tree source file for Hardkernel's ODROID-C2 board based on AMLogic's - * S905 SoC. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include "amlogic/mesongxbb.dtsi" -/ { - model = "ODROID-C2"; - amlogic-dt-id = "odroidc2_2g"; - compatible = "amlogic, Gxbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - }; - - gpu_dvfs_tbl:gpu_dvfs_tbl { - sc_mpp = <3>;/* number of pp used most of time.*/ - tbl = <&clk285_cfg &clk400_cfg &clk500_cfg &clk666_cfg &clk800_cfg>; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x1000000 0x0 0x7f000000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x1900000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - size = <0x0 0x1e00000>; //10x1920x1088x3/2=30M - //no-map; - multi-use; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - multi-use; - }; - - /* POST PROCESS MANAGER */ - //ppmgr_reserved:linux,ppmgr { - // compatible = "amlogic, ppmgr_memory"; - // size = <0x0 0x2000000>; - //}; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - status = "disabled"; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000{ - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8>; - interrupts = <0 8 1>; - phy-mode= "rgmii"; - pinctrl-names = "eth_pins"; - pinctrl-0 = <ð_pins>; - rst_pin-gpios = <&gpio GPIOZ_14 0>; - mc_val = <0x1621>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - }; - - pwm { - compatible = "amlogic, odroid-pwm"; - dev_name = "meson_pwm"; - status = "okay"; - pinctrl-names = "odroid_pwm0","odroid_pwm1"; - pinctrl-0 = <&odroid_pwm0>; - pinctrl-1 = <&odroid_pwm1>; - }; - - pwm-ctrl { - compatible = "amlogic, pwm-ctrl"; - dev_name = "pwm-ctrl"; - status = "okay"; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ion_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - buffer-size = <3133440>; //1920x1088x3/2 - hw-version = <2>; - }; - - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - /*if card have no switch gpio, remove all relative to vol_switch */ - vol_switch = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_LOW>; - vol_switch_18 = <1>; /* 1 = high, 0 = low */ - vol_switch_delay = <150>; /* Uint: ms*/ - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_all_pins>; - emmc{ - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200_1_8V_SDR", - "MMC_CAP2_HS400_1_8V", - "MMC_CAP2_BROKEN_VOLTAGE", - "MMC_CAP2_BOOTPART_NOACC"; - f_min = <400000>; - f_max = <100000000>; - tx_phase = <0>; - max_req_size = <0x20000>; /**256KB*/ -// gpio_dat3 = "BOOT_3" - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - ranges; - #address-cells = <2>; - #size-cells = <2>; - }; - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - status = "okay"; - vendor_name = "Hardkernel"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "ODROID-C2"; /* Max Chars: 16 */ - cec_osd_string = "ODROID-C2"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x14>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x14>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc2_b { - compatible = "amlogic,dwc2"; - device_name = "dwc2_b"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "okay"; - pl-periph-id = <1>; /** lm name */ - clock-src = "usb1"; /** clock src */ - port-id = <1>; /** ref to mach/usb.h */ - port-type = <1>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, 1: high, 2: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <1>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - gpio-hub-rst = "GPIOAO_4"; - gpios = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_HIGH>; - phy-reg = <0xc0000020>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - host-only-core = <1>; - pmu-apply-power = <1>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - odroid_sysfs { - compatible = "odroid-sysfs"; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9000000 0x0 0x40000>; - interrupts = <0 30 4>; - status = "okay"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <0>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - gpio-vbus-power = "GPIOAO_5"; - gpios = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>; - gpio-work-mask = <1>; /**0: work on pulldown,1:work on pullup*/ - phy-reg = <0xc0000000>; - phy-reg-size = <0x20>; - usb-fifo = <1024>; - cpu-type = "gxbaby"; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB0_TO_DDR - &clock GCLK_IDX_USB0>; - reset-names = "usb_general", - "usb0", - "usb0_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - device_name = "dummy-spdif-dit.0"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_3 0>; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&dummy_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>; /*"GPIOAO_3";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - - adc_keypad{ - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "menu", "vol-","vol+", "esc", "home"; - key_num = <5>; - key_code = <139 114 115 1 102>; - key_chan = <0 0 0 0 0>; - key_val = <0 143 271 393 510>; //voltage=0/252/478/692/824mV, val=voltage/1800mV*1023 - key_tolerance = <40 40 40 40 40>; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - - saradc: saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0 9 1>; - interrupt-names = "saradc_int"; - clocks = <&clock CLK_XTAL>; - clock-names = "saradc_clk"; - reg = <0x0 0xc1108680 0x0 0x30 - 0x0 0xc883c3d8 0x0 0x08>; - }; - - leds: gpio_leds { - compatible = "gpio-leds"; - - pinctrl-names = "led_pins"; - pinctrl-0 = <&led_pins>; - - /* Blue LED */ - heartbeat { - label = "blue:heartbeat"; - gpios = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_LOW>; - linux,default-trigger = "heartbeat"; - }; - }; - - spi-gpio { - compatible = "spi-gpio"; - #address-cells = <1>; - #size-cells = <0>; - status = "ok"; - id = <0>; - gpio-sck = <&gpio GPIOX_2 0>; - gpio-miso = <&gpio GPIOX_4 0>; - gpio-mosi = <&gpio GPIOX_7 0>; - cs-gpios = <&gpio GPIOX_1 0 - &gpio GPIOY_14 0>; - num-chipselects = <2>; - - /* clients */ - spidev0: spi-gpio@0 { - compatible = "spidev"; - reg = <0>; - spi-max-frequency = <500000>; - }; - }; -}; -&i2c_a { - status = "okay"; - - /* Hardkernel I2C RTC */ - pcf8563: pcf8563@51 { - status = "disabled"; - compatible = "nxp,pcf8563"; - reg = <0x51>; - #clock-cells = <0>; - }; -}; -/* -&i2c_b { - status = "okay"; -}; -*/ - -&i2c_slave { - status = "disabled"; -}; -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=; /*spdif_out*/ - amlogic,clrmask=; /*spdif_out*/ - amlogic,pins ="GPIOAO_6"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<3 0x78000000>; - amlogic,clrmask=<3 0x803280 - 4 0xc0>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; - - led_pins: led_pin { - amlogic,setmask = ; - amlogic,clrmask = ; - amlogic,pins = "GPIOAO_13"; - }; - - odroid_pwm0: odroid_pwm0 { - amlogic,setmask=<3 0x00020000>; - amlogic,clrmask=<3 0x00000200>; - amlogic,pins="GPIOX_6"; - }; - odroid_pwm1: odroid_pwm1 { - amlogic,setmask=<3 0x00020000 - 3 0x00060000>; - amlogic,clrmask=<3 0x00000300 - 8 0x00000800>; - amlogic,pins="GPIOX_6","GPIOX_7"; - }; -}; - -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; -&aml_remote { - status = "disabled"; -}; -&meson_ir { - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/txl_p320.dts b/arch/arm64/boot/dts/amlogic/txl_p320.dts deleted file mode 100644 index f3edce95678d2..0000000000000 --- a/arch/arm64/boot/dts/amlogic/txl_p320.dts +++ /dev/null @@ -1,1476 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/txl_320.dts - * - * 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. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include - -#include "mesontxl.dtsi" -#include "mesontxl_p320-panel.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, txl"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x100000 0x0 0x7ff00000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x2700000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x02800000>; - //alignment = <0x0 0x400000>; - //}; - demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x0>; - multi-use; - }; - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xbc00000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - - pwm:meson-pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - #pwm-cells = <2>; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x20>, - <0x0 0xc810041c 0x0 0x4>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "disabled"; - led_gpio = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_LOW>; - }; - - pwmled { - compatible = "amlogic, pwmled"; - dev_name = "pwmled"; - status = "okay"; - pwms = <&pwm PWM_AO_A 5555555>;/*180HZ */ - polarity = <0>; /* 0-normal 1-inversed */ - max_brightness = <255>; - pinctrl-names = "pwm_ao_a_pins"; - pinctrl-0 = <&pwm_ao_a_pins>; - /* led timer data */ - expires = <400>; /* ms */ - expires_count = <8>; - }; - - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <2>; - interrupts = <0 65 1 - 0 66 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIODV_8 GPIO_ACTIVE_HIGH>, - <&gpio GPIODV_10 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - pxp_mode = <0>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x7d851000"; - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc - 0x0 0xc1104484 0x0 0x4>; - interrupts = <0 8 1 - 0 9 1>; - phy-mode= "rmii"; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq", - "phyirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <0>;/*0:use reserved;1:use cma*/ - memory-region = <&di_reserved>; - //memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <4074560>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <1>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <96>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <21>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <1>;/*1:enabel ;0:disable*/ - wb_en = <1>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - pinctrl-names="atvdemod_agc"; - pinctrl-0=<&atvdemod_agc>; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - }; - - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - rx_port_maps = <0x3120>; - repeat = <0>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda846000>; - hdmirx_data_port = <0xda846004>; - hdmirx_ctrl_port = <0xda846008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - en_4k_2_2k = <0>; - }; - - amvenc_avc { - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "disabled"; - //gpio_reset = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "disabled"; - //interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - //interrupts = < 0 68 4>; - //irq_trigger_type = "GPIO_IRQ_HIGH"; - power_on_pin = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ;/*change it actually*/ - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc { - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - tx_phase = <3>; - max_req_size = <0x20000>; /* 256KB */ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins", "sd_clk_cmd_uart_pins", "sd_1bit_uart_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - partitions: partitions { - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <16>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11 = <&keysn_11>; - unifykey-index-12 = <&keysn_12>; - unifykey-index-13 = <&keysn_13>; - unifykey-index-14 = <&keysn_14>; - unifykey-index-15 = <&keysn_15>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "hdcp22_rx_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "hdcp22_rx_fw"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "hdcp14_rx"; - key-device = "normal"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_14:key_14{ - key-name = "prpubkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_15:key_15{ - key-name = "prprivkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - - aocec: aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "TXL"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x2>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "disable"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_a_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_b_pins>; - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "disabled"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_a_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_b_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - resets = <&clock GCLK_IDX_UART2>; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - /* disable pcm pin mux temporary, enable it if necessary */ - /*pinctrl-0 = <&audio_btpcm_pins>;*/ - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015S{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015S"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - mute_gpio-gpios = <&gpio GPIODV_11 GPIO_ACTIVE_HIGH>; - sleep_time = <20>; - aux_dev = "tas5707"; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - aml_EQ_DRC { - eq_table = /bits/ 32 < - /*channel 1*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - /*channel 2*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - - >; - drc_table = /bits/ 32 < - 0x0000111c 0x0380111c /*drc_ae && drc_ae_1m*/ - 0x00081bfc 0x03881bfc /*drc_aa && drc_aa_1m*/ - 0x00001571 0x03801571 /*drc_ad && drc_ad_1m*/ - >; - drc_tko_table = /bits/ 32 < - 0x00000000 0xc4000000 0x00060000 /*offset, thd, k*/ - 0x00000000 0xf6000000 0x00028000 /*offset, thd, k*/ - >; - }; - tas5707 { - compatible = "amlogic, aml_tas5707_codec"; - codec_name = "tas5707"; - status = "okay"; - i2c_addr = <0x1B>; - i2c_bus = "i2c_bus_a"; - master_vol = <150>; - reset_pin = <&gpio GPIOZ_13 GPIO_ACTIVE_LOW>; - input_mux_reg_buf = /bits/ 8 <0x00 0x01 0x77 0x72>;/*AD mode*/ - eq_enable = <0>; - drc_enable = <0>; - table_0 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - wall_0 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - table_1 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - wall_1 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - drc1_tko_table_0 = /bits/ 8 < - 0xFD 0xA2 0x14 0x90 /*0x40---drc1_t*/ - 0x03 0x84 0x21 0x09 /*0x41---drc1_k*/ - 0x00 0x08 0x42 0x10 /*0x42---drc1_o*/ - >; - drc1_table_0 = /bits/ 8 < - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3A---drc1_ae*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3B---drc1_aa*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3C---drc1_ad*/ - >; - drc1_tko_table_1 = /bits/ 8 < - 0xFD 0xA2 0x14 0x90 /*0x40---drc1_t*/ - 0x03 0x84 0x21 0x09 /*0x41---drc1_k*/ - 0x00 0x08 0x42 0x10 /*0x42---drc1_o*/ - >; - drc1_table_1 = /bits/ 8 < - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3A---drc1_ae*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3B---drc1_aa*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3C---drc1_ad*/ - >; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - dtv_demod0_spectrum = <1>; - memory-region = <&demod_reserved>; - tuner0 = "si2151_tuner"; - tuner0_i2c_adap_id = <2>; - tuner0_i2c_addr = <0x60>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - -}; /* end of / */ - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_a_master>; - }; - &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_b_master>; - }; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<4 0x00000740>; - amlogic,clrmask=<4 0x0000000c - 3 0x021c0000>; - amlogic,pins = "GPIOZ_10","GPIOZ_11","GPIOZ_12","GPIOZ_15"; - }; - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<3 0x40000000>; /*spdif_out*/ - amlogic,clrmask=<3 0x00200000>; - amlogic,pins ="GPIOZ_17"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<4 0x1e000>; - amlogic,clrmask=<4 0xf3f00000>; - amlogic,pins ="GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3"; - }; - - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <5 0xffff0000>; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_6","GPIOW_8", - "GPIOW_10","GPIOW_12", - "GPIOW_14","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - hu_det_none: hu_det_none { - amlogic,setmask = <5 0xffff0000>, - ; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_4"; - }; - - /* pwm_ao_a */ - pwm_ao_a_pins:pwm_ao_a_pins { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_3"; - }; - - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins = "GPIODV_8","GPIODV_10"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; -}; - -&pinmux { - bl_pwm_on_pins:bl_pwm_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_vs_on_pins:bl_pwm_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_0_on_pins:bl_pwm_combo_0_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_on_pins:bl_pwm_combo_1_on_pin { - amlogic,setmask = <4 0x00004000>; - amlogic,clrmask = <4 0x00002000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; - bl_pwm_combo_0_vs_on_pins:bl_pwm_combo_0_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_vs_on_pins:bl_pwm_combo_1_vs_on_pin { - amlogic,setmask = <4 0x00002000>; - amlogic,clrmask = <4 0x00004000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; -}; - -&audio_data{ - status = "okay"; -}; - -&spicc{ - status = "disabled"; - pinctrl-names= "default"; - pinctrl-0=<&spicc_pins>; - num_chipselect = <1>; - //cs-gpios = <&gpio GPIOZ_3 GPIO_ACTIVE_HIGH>; - dma_en = <0>; - dma_tx_threshold = <3>; - dma_rx_threshold = <3>; - dma_num_per_read_burst = <3>; - dma_num_per_write_burst = <3>; - delay_control = <0x15>; - ssctl = <0>; - cs_delay = <10>; -}; diff --git a/arch/arm64/boot/dts/amlogic/txl_p321.dts b/arch/arm64/boot/dts/amlogic/txl_p321.dts deleted file mode 100644 index 22115338eab38..0000000000000 --- a/arch/arm64/boot/dts/amlogic/txl_p321.dts +++ /dev/null @@ -1,1449 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/txl_321.dts - * - * 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. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include - -#include "mesontxl.dtsi" -#include "mesontxl_p321-panel.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, txl"; - amlogic-dt-id = "txl_p321_v1"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x0100000 0x0 0x3ff00000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x2700000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x02800000>; - //alignment = <0x0 0x400000>; - //}; - demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x0>; - multi-use; - }; - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xbc00000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - /*vbi reserved mem*/ - vbi_reserved:linux,vbi { - compatible = "amlogic, vbi-mem"; - size = <0x0 0x100000>; - }; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "disable"; - //led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>; - }; - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <1>; - interrupts = <0 65 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIODV_8 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - pxp_mode = <0>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x3d851000"; - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc - 0x0 0xc1104484 0x0 0x4>; - interrupts = <0 8 1 - 0 9 1>; - phy-mode= "rmii"; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq", - "phyirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <0>;/*0:use reserved;1:use cma*/ - memory-region = <&di_reserved>; - //memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <4074560>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <1>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <96>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <21>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - vbi { - compatible = "amlogic, vbi"; - memory-region = <&vbi_reserved>; - dev_name = "vbi"; - status = "ok"; - interrupts = <0 83 1>; - reserve-iomap = "true"; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <1>;/*1:enabel ;0:disable*/ - wb_en = <1>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - pinctrl-names="atvdemod_agc"; - pinctrl-0=<&atvdemod_agc>; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - }; - - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - rx_port_maps = <0x3120>; - repeat = <0>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda846000>; - hdmirx_data_port = <0xda846004>; - hdmirx_ctrl_port = <0xda846008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - en_4k_2_2k = <0>; - }; - - amvenc_avc { - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "disabled"; - //gpio_reset = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "disabled"; - //interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - //interrupts = < 0 68 4>; - //irq_trigger_type = "GPIO_IRQ_HIGH"; - power_on_pin = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ;/*change it actually*/ - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc { - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - tx_phase = <3>; - max_req_size = <0x20000>; /* 256KB */ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&ao_to_sd_uart_pins>; - pinctrl-6 = <&ao_to_sd_jtag_pins>; - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - partitions: partitions { - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <16>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11 = <&keysn_11>; - unifykey-index-12 = <&keysn_12>; - unifykey-index-13 = <&keysn_13>; - unifykey-index-14 = <&keysn_14>; - unifykey-index-15 = <&keysn_15>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "hdcp22_rx_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "hdcp22_rx_fw"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "hdcp14_rx"; - key-device = "normal"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_14:key_14{ - key-name = "prpubkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_15:key_15{ - key-name = "prprivkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - - aocec: aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "TXL"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x2>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "disable"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_a_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_b_pins>; - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "disabled"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_a_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_b_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - resets = <&clock GCLK_IDX_UART2>; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - /* disable pcm pin mux temporary, enable it if necessary */ - /*pinctrl-0 = <&audio_btpcm_pins>;*/ - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015S{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015S"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - mute_gpio-gpios = <&gpio GPIODV_11 GPIO_ACTIVE_HIGH>; - sleep_time = <20>; - aux_dev = "tas5707"; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - aml_EQ_DRC { - eq_table = /bits/ 32 < - /*channel 1*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - /*channel 2*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - >; - drc_table = /bits/ 32 < - 0x0000111c 0x0380111c /*drc_ae && drc_ae_1m*/ - 0x00081bfc 0x03881bfc /*drc_aa && drc_aa_1m*/ - 0x00001571 0x03801571 /*drc_ad && drc_ad_1m*/ - >; - drc_tko_table = /bits/ 32 < - 0x00000000 0xc4000000 0x00060000 /*offset, thd, k*/ - 0x00000000 0xf6000000 0x00028000 /*offset, thd, k*/ - >; - }; - tas5707 { - compatible = "amlogic, aml_tas5707_codec"; - codec_name = "tas5707"; - status = "okay"; - i2c_addr = <0x1B>; - i2c_bus = "i2c_bus_a"; - master_vol = <150>; - reset_pin = <&gpio GPIOZ_13 GPIO_ACTIVE_LOW>; - input_mux_reg_buf = /bits/ 8 <0x00 0x01 0x77 0x72>;/*AD mode*/ - eq_enable = <0>; - drc_enable = <0>; - table_0 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - wall_0 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - table_1 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - wall_1 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - drc1_tko_table_0 = /bits/ 8 < - 0xFD 0xA2 0x14 0x90 /*0x40---drc1_t*/ - 0x03 0x84 0x21 0x09 /*0x41---drc1_k*/ - 0x00 0x08 0x42 0x10 /*0x42---drc1_o*/ - >; - drc1_table_0 = /bits/ 8 < - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3A---drc1_ae*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3B---drc1_aa*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3C---drc1_ad*/ - >; - drc1_tko_table_1 = /bits/ 8 < - 0xFD 0xA2 0x14 0x90 /*0x40---drc1_t*/ - 0x03 0x84 0x21 0x09 /*0x41---drc1_k*/ - 0x00 0x08 0x42 0x10 /*0x42---drc1_o*/ - >; - drc1_table_1 = /bits/ 8 < - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3A---drc1_ae*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3B---drc1_aa*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3C---drc1_ad*/ - >; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - dtv_demod0_spectrum = <1>; - memory-region = <&demod_reserved>; - tuner0 = "r842_tuner"; - tuner0_i2c_adap_id = <2>; - tuner0_i2c_addr = <0xf6>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - -}; /* end of / */ - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_a_master>; - }; - &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_b_master>; - }; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<4 0x00000780>; - amlogic,clrmask=<4 0x0000000e - 3 0x001c0000>; - amlogic,pins = "GPIOZ_10","GPIOZ_11","GPIOZ_12","GPIOZ_14"; - }; - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<3 0x40000000>; /*spdif_out*/ - amlogic,clrmask=<3 0x00200000>; - amlogic,pins ="GPIOZ_17"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<4 0x1e000>; - amlogic,clrmask=<4 0xf3f00000>; - amlogic,pins ="GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3"; - }; - - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <5 0xffff0000>; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_6","GPIOW_8", - "GPIOW_10","GPIOW_12", - "GPIOW_14","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - hu_det_none: hu_det_none { - amlogic,setmask = <5 0xffff0000>, - ; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_4"; - }; - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins = "GPIODV_8"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; -}; - -&pinmux { - bl_pwm_on_pins:bl_pwm_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_vs_on_pins:bl_pwm_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_0_on_pins:bl_pwm_combo_0_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_on_pins:bl_pwm_combo_1_on_pin { - amlogic,setmask = <4 0x00004000>; - amlogic,clrmask = <4 0x00002000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; - bl_pwm_combo_0_vs_on_pins:bl_pwm_combo_0_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_vs_on_pins:bl_pwm_combo_1_vs_on_pin { - amlogic,setmask = <4 0x00002000>; - amlogic,clrmask = <4 0x00004000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; -}; - -&audio_data{ - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/txl_p321_512m.dts b/arch/arm64/boot/dts/amlogic/txl_p321_512m.dts deleted file mode 100644 index 79009e14e688c..0000000000000 --- a/arch/arm64/boot/dts/amlogic/txl_p321_512m.dts +++ /dev/null @@ -1,1431 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/txl_321.dts - * - * 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. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include - -#include "mesontxl.dtsi" -#include "mesontxl_p321-panel.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, txl"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x0100000 0x0 0x1ff00000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x900000>; - no-map; - }; - /*di reserved mem*/ - //di_reserved:linux,di { - //compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x2200000>; - //no-map; - //}; - /*di CMA pool */ - di_cma_reserved:linux,di_cma { - compatible = "shared-dma-pool"; - reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x02400000>; - alignment = <0x0 0x400000>; - }; - /* demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - };*/ - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x1000>; - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x0>; - multi-use; - }; - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x4400000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x0>; - alignment = <0x0 0x100000>; - //no-map; - }; - demod_cma_reserved:linux,demod_cma { - compatible = "shared-dma-pool"; - reusable; - /* 5M */ - size = <0x0 0x0800000>; - alignment = <0x0 0x400000>; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x1000000>;//1920x1080x2x4=16M - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "disable"; - //led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>; - }; - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <1>; - interrupts = <0 65 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIODV_8 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x0800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1280 720 1280 1440 32>; //1280*720*4*2 = 8MB - pxp_mode = <0>; /** 0:normal mode 1:pxp mode */ - ddr_urgent = <0>; /* osd ddr urgent */ - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc - 0x0 0xc1104484 0x0 0x4>; - interrupts = <0 8 1 - 0 9 1>; - phy-mode= "rmii"; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq", - "phyirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - -/* amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - };*/ - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <1>;/*0:use reserved;1:use cma*/ - //memory-region = <&di_reserved>; - memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <3552320>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <0>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <96>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <1>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <1>;/*1:enabel ;0:disable*/ - wb_en = <1>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - pinctrl-names="atvdemod_agc"; - pinctrl-0=<&atvdemod_agc>; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - }; - - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - rx_port_maps = <0x3120>; - repeat = <0>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda846000>; - hdmirx_data_port = <0xda846004>; - hdmirx_ctrl_port = <0xda846008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - en_4k_2_2k = <0>; - }; - -/* amvenc_avc { - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "disabled"; - //gpio_reset = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "disabled"; - //interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - //interrupts = < 0 68 4>; - //irq_trigger_type = "GPIO_IRQ_HIGH"; - power_on_pin = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ;/*change it actually*/ - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc { - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - tx_phase = <3>; - max_req_size = <0x20000>; /* 256KB */ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&ao_to_sd_uart_pins>; - pinctrl-6 = <&ao_to_sd_jtag_pins>; - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - partitions: partitions { - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11 = <&keysn_11>; - unifykey-index-12 = <&keysn_12>; - unifykey-index-13 = <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "hdcp22_rx_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "hdcp22_rx_fw"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "hdcp14_rx"; - key-device = "normal"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - };//End unifykey - - aocec: aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "TXL"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x2>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "disable"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_a_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_b_pins>; - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "disabled"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_a_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_b_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - resets = <&clock GCLK_IDX_UART2>; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - /* disable pcm pin mux temporary, enable it if necessary */ - /*pinctrl-0 = <&audio_btpcm_pins>;*/ - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015S{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015S"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - mute_gpio-gpios = <&gpio GPIODV_11 GPIO_ACTIVE_HIGH>; - sleep_time = <20>; - aux_dev = "tas5707"; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - aml_EQ_DRC { - eq_table = /bits/ 32 < - /*channel 1*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - /*channel 2*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - >; - drc_table = /bits/ 32 < - 0x0000111c 0x0380111c /*drc_ae && drc_ae_1m*/ - 0x00081bfc 0x03881bfc /*drc_aa && drc_aa_1m*/ - 0x00001571 0x03801571 /*drc_ad && drc_ad_1m*/ - >; - drc_tko_table = /bits/ 32 < - 0x00000000 0xc4000000 0x00060000 /*offset, thd, k*/ - 0x00000000 0xf6000000 0x00028000 /*offset, thd, k*/ - >; - }; - tas5707 { - compatible = "amlogic, aml_tas5707_codec"; - codec_name = "tas5707"; - status = "okay"; - i2c_addr = <0x1B>; - i2c_bus = "i2c_bus_a"; - master_vol = <150>; - reset_pin = <&gpio GPIOZ_13 GPIO_ACTIVE_LOW>; - input_mux_reg_buf = /bits/ 8 <0x00 0x01 0x77 0x72>;/*AD mode*/ - eq_enable = <0>; - drc_enable = <0>; - table_0 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - wall_0 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - table_1 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - wall_1 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - drc1_tko_table_0 = /bits/ 8 < - 0xFD 0xA2 0x14 0x90 /*0x40---drc1_t*/ - 0x03 0x84 0x21 0x09 /*0x41---drc1_k*/ - 0x00 0x08 0x42 0x10 /*0x42---drc1_o*/ - >; - drc1_table_0 = /bits/ 8 < - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3A---drc1_ae*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3B---drc1_aa*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3C---drc1_ad*/ - >; - drc1_tko_table_1 = /bits/ 8 < - 0xFD 0xA2 0x14 0x90 /*0x40---drc1_t*/ - 0x03 0x84 0x21 0x09 /*0x41---drc1_k*/ - 0x00 0x08 0x42 0x10 /*0x42---drc1_o*/ - >; - drc1_table_1 = /bits/ 8 < - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3A---drc1_ae*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3B---drc1_aa*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3C---drc1_ad*/ - >; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - dtv_demod0_spectrum = <1>; - dtv_demod0_cma_flag = <1>; - dtv_demod0_cma_mem_size = <8>; - memory-region = <&demod_cma_reserved>;//<&demod_reserved>; - tuner0 = "r842_tuner"; - tuner0_i2c_adap_id = <2>; - tuner0_i2c_addr = <0xf6>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - -}; /* end of / */ - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_a_master>; - }; - &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_b_master>; - }; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<4 0x00000740>; - amlogic,clrmask=<4 0x0000000c - 3 0x021c0000>; - amlogic,pins = "GPIOZ_10","GPIOZ_11","GPIOZ_12","GPIOZ_15"; - }; - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<3 0x40000000>; /*spdif_out*/ - amlogic,clrmask=<3 0x00200000>; - amlogic,pins ="GPIOZ_17"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<4 0x1e000>; - amlogic,clrmask=<4 0xf3f00000>; - amlogic,pins ="GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3"; - }; - - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <5 0xffff0000>; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_6","GPIOW_8", - "GPIOW_10","GPIOW_12", - "GPIOW_14","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - hu_det_none: hu_det_none { - amlogic,setmask = <5 0xffff0000>, - ; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_4"; - }; - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins = "GPIODV_8"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; -}; - -&pinmux { - bl_pwm_on_pins:bl_pwm_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_vs_on_pins:bl_pwm_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_0_on_pins:bl_pwm_combo_0_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_on_pins:bl_pwm_combo_1_on_pin { - amlogic,setmask = <4 0x00004000>; - amlogic,clrmask = <4 0x00002000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; - bl_pwm_combo_0_vs_on_pins:bl_pwm_combo_0_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_vs_on_pins:bl_pwm_combo_1_vs_on_pin { - amlogic,setmask = <4 0x00002000>; - amlogic,clrmask = <4 0x00004000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; -}; - -&audio_data{ - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/txl_p321_v2.dts b/arch/arm64/boot/dts/amlogic/txl_p321_v2.dts deleted file mode 100644 index 368955525d4b1..0000000000000 --- a/arch/arm64/boot/dts/amlogic/txl_p321_v2.dts +++ /dev/null @@ -1,1436 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/txl_321.dts - * - * 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. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include - -#include "mesontxl.dtsi" -#include "mesontxl_p321-panel.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, txl"; - amlogic-dt-id = "txl_p321_v2"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x0100000 0x0 0x3ff00000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x2700000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x02800000>; - //alignment = <0x0 0x400000>; - //}; - demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x0>; - multi-use; - }; - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xbc00000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "disable"; - //led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>; - }; - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <1>; - interrupts = <0 65 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIODV_8 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - pxp_mode = <0>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x3d851000"; - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc - 0x0 0xc1104484 0x0 0x4>; - interrupts = <0 8 1 - 0 9 1>; - phy-mode= "rmii"; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq", - "phyirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <0>;/*0:use reserved;1:use cma*/ - memory-region = <&di_reserved>; - //memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <4074560>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <1>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <96>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <21>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <1>;/*1:enabel ;0:disable*/ - wb_en = <1>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - pinctrl-names="atvdemod_agc"; - pinctrl-0=<&atvdemod_agc>; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - }; - - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - rx_port_maps = <0x3120>; - repeat = <0>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda846000>; - hdmirx_data_port = <0xda846004>; - hdmirx_ctrl_port = <0xda846008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - en_4k_2_2k = <0>; - }; - - amvenc_avc { - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "disabled"; - //gpio_reset = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "disabled"; - //interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - //interrupts = < 0 68 4>; - //irq_trigger_type = "GPIO_IRQ_HIGH"; - power_on_pin = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ;/*change it actually*/ - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc { - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - tx_phase = <3>; - max_req_size = <0x20000>; /* 256KB */ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&ao_to_sd_uart_pins>; - pinctrl-6 = <&ao_to_sd_jtag_pins>; - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - partitions: partitions { - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <16>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11 = <&keysn_11>; - unifykey-index-12 = <&keysn_12>; - unifykey-index-13 = <&keysn_13>; - unifykey-index-14 = <&keysn_14>; - unifykey-index-15 = <&keysn_15>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "hdcp22_rx_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "hdcp22_rx_fw"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "hdcp14_rx"; - key-device = "normal"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_14:key_14{ - key-name = "prpubkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_15:key_15{ - key-name = "prprivkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - - aocec: aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "TXL"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x2>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "disable"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_a_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_b_pins>; - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "disabled"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_a_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_b_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - resets = <&clock GCLK_IDX_UART2>; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - /* disable pcm pin mux temporary, enable it if necessary */ - /*pinctrl-0 = <&audio_btpcm_pins>;*/ - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015S{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015S"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - mute_gpio-gpios = <&gpio GPIODV_11 GPIO_ACTIVE_HIGH>; - sleep_time = <20>; - aux_dev = "tas5707"; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - aml_EQ_DRC { - eq_table = /bits/ 32 < - /*channel 1*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - /*channel 2*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - >; - drc_table = /bits/ 32 < - 0x0000111c 0x0380111c /*drc_ae && drc_ae_1m*/ - 0x00081bfc 0x03881bfc /*drc_aa && drc_aa_1m*/ - 0x00001571 0x03801571 /*drc_ad && drc_ad_1m*/ - >; - drc_tko_table = /bits/ 32 < - 0x00000000 0xc4000000 0x00060000 /*offset, thd, k*/ - 0x00000000 0xf6000000 0x00028000 /*offset, thd, k*/ - >; - }; - tas5707 { - compatible = "amlogic, aml_tas5707_codec"; - codec_name = "tas5707"; - status = "okay"; - i2c_addr = <0x1B>; - i2c_bus = "i2c_bus_a"; - master_vol = <150>; - reset_pin = <&gpio GPIOZ_13 GPIO_ACTIVE_LOW>; - input_mux_reg_buf = /bits/ 8 <0x00 0x01 0x77 0x72>;/*AD mode*/ - eq_enable = <0>; - drc_enable = <0>; - table_0 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - wall_0 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - table_1 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - wall_1 = /bits/ 8 < - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x29---ch1_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2A---ch1_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2B---ch1_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2C---ch1_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2D---ch1_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2E---ch1_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x2F---ch1_bq[6]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x30---ch2_bq[0]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x31---ch2_bq[1]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x32---ch2_bq[2]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x33---ch2_bq[3]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x34---ch2_bq[4]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x35---ch2_bq[5]*/ - 0x00 0x80 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 /*0x36---ch2_bq[6]*/ - >; - drc1_tko_table_0 = /bits/ 8 < - 0xFD 0xA2 0x14 0x90 /*0x40---drc1_t*/ - 0x03 0x84 0x21 0x09 /*0x41---drc1_k*/ - 0x00 0x08 0x42 0x10 /*0x42---drc1_o*/ - >; - drc1_table_0 = /bits/ 8 < - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3A---drc1_ae*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3B---drc1_aa*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3C---drc1_ad*/ - >; - drc1_tko_table_1 = /bits/ 8 < - 0xFD 0xA2 0x14 0x90 /*0x40---drc1_t*/ - 0x03 0x84 0x21 0x09 /*0x41---drc1_k*/ - 0x00 0x08 0x42 0x10 /*0x42---drc1_o*/ - >; - drc1_table_1 = /bits/ 8 < - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3A---drc1_ae*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3B---drc1_aa*/ - 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 /*0x3C---drc1_ad*/ - >; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - dtv_demod0_spectrum = <1>; - memory-region = <&demod_reserved>; - tuner0 = "r842_tuner"; - tuner0_i2c_adap_id = <2>; - tuner0_i2c_addr = <0xf6>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - -}; /* end of / */ - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_a_master>; - }; - &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_b_master>; - }; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<4 0x00000740>; - amlogic,clrmask=<4 0x0000000c - 3 0x021c0000>; - amlogic,pins = "GPIOZ_10","GPIOZ_11","GPIOZ_12","GPIOZ_15"; - }; - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<3 0x40000000>; /*spdif_out*/ - amlogic,clrmask=<3 0x00200000>; - amlogic,pins ="GPIOZ_17"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<4 0x1e000>; - amlogic,clrmask=<4 0xf3f00000>; - amlogic,pins ="GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3"; - }; - - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <5 0xffff0000>; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_6","GPIOW_8", - "GPIOW_10","GPIOW_12", - "GPIOW_14","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - hu_det_none: hu_det_none { - amlogic,setmask = <5 0xffff0000>, - ; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_4"; - }; - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins = "GPIODV_8"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; -}; - -&pinmux { - bl_pwm_on_pins:bl_pwm_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_vs_on_pins:bl_pwm_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_0_on_pins:bl_pwm_combo_0_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_on_pins:bl_pwm_combo_1_on_pin { - amlogic,setmask = <4 0x00004000>; - amlogic,clrmask = <4 0x00002000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; - bl_pwm_combo_0_vs_on_pins:bl_pwm_combo_0_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_vs_on_pins:bl_pwm_combo_1_vs_on_pin { - amlogic,setmask = <4 0x00002000>; - amlogic,clrmask = <4 0x00004000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; -}; - -&audio_data{ - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/txl_p341.dts b/arch/arm64/boot/dts/amlogic/txl_p341.dts deleted file mode 100644 index 98b46103339d8..0000000000000 --- a/arch/arm64/boot/dts/amlogic/txl_p341.dts +++ /dev/null @@ -1,1346 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/txl_341.dts - * - * 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. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include - -#include "mesontxl.dtsi" -#include "mesontxl_p341-panel.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, txl"; - amlogic-dt-id = "txl_p341_v1"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x0100000 0x0 0x1ff00000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x900000>; - no-map; - }; - /*di reserved mem*/ - //di_reserved:linux,di { - //compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x2200000>; - //no-map; - //}; - /*di CMA pool */ - di_cma_reserved:linux,di_cma { - compatible = "shared-dma-pool"; - reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x02400000>; - alignment = <0x0 0x400000>; - }; - /* demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - };*/ - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x1000>; - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x0>; - multi-use; - }; - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x4400000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x0>; - alignment = <0x0 0x100000>; - //no-map; - }; - demod_cma_reserved:linux,demod_cma { - compatible = "shared-dma-pool"; - reusable; - /* 5M */ - size = <0x0 0x0800000>; - alignment = <0x0 0x400000>; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x1000000>;//1920x1080x2x4=16M - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - adc_keypad{ - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "menu","down", "up","source","left","right","enter"; - key_num = <7>; - key_code = <139 108 103 466 105 106 28>; - key_chan = <2 2 2 2 2 2 2>; - key_val = <152 283 421 557 718 852 0>; //voltage=0/252/478/692/824mV, val=voltage/1800mV*1023 - key_tolerance = <40 40 40 40 40 40 40>; - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "disable"; - //led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>; - }; - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <2>; - interrupts = <0 65 1 - 0 66 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIODV_8 GPIO_ACTIVE_HIGH>, - <&gpio GPIODV_6 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x0800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1280 720 1280 1440 32>; //1280*720*4*2 = 8MB - pxp_mode = <0>; /** 0:normal mode 1:pxp mode */ - ddr_urgent = <0>; /* osd ddr urgent */ - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc - 0x0 0xc1104484 0x0 0x4>; - interrupts = <0 8 1 - 0 9 1>; - phy-mode= "rmii"; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq", - "phyirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - -/* amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - };*/ - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <1>;/*0:use reserved;1:use cma*/ - //memory-region = <&di_reserved>; - memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <3552320>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <0>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <64>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <1>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <1>;/*1:enabel ;0:disable*/ - wb_en = <1>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - pinctrl-names="atvdemod_agc"; - pinctrl-0=<&atvdemod_agc>; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - }; - - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - rx_port_maps = <0x3120>; - repeat = <0>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda846000>; - hdmirx_data_port = <0xda846004>; - hdmirx_ctrl_port = <0xda846008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - en_4k_2_2k = <1>; - }; - -/* amvenc_avc { - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "disabled"; - //gpio_reset = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - power_on_pin = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ;/*change it actually*/ - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc { - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - tx_phase = <3>; - max_req_size = <0x20000>; /* 256KB */ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - - - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 4>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_CAP_SDIO_IRQ"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - partitions: partitions { - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11 = <&keysn_11>; - unifykey-index-12 = <&keysn_12>; - unifykey-index-13 = <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "hdcp22_rx_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "hdcp22_rx_fw"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "hdcp14_rx"; - key-device = "normal"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - };//End unifykey - - aocec: aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "TXL"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x2>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "disable"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_a_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_b_pins>; - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "disabled"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_a_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_b_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - resets = <&clock GCLK_IDX_UART2>; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015S{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015S"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - /*avout mute gpio, if av_mute_inv = 1, invert gpio*/ - mute_gpio-gpios = <&gpio GPIODV_11 GPIO_ACTIVE_LOW>; - av_mute_inv = <0>; - /*after sleep time, unmute avout*/ - sleep_time = <0>; - /*analog amp mute pinmux*/ - amp_mute_gpio-gpios = <&gpio GPIOZ_13 GPIO_ACTIVE_LOW>; - amp_mute_inv = <0>; - /* if 1, enable switch AV / HS Detect */ - av_hs_switch = <1>; - hp_det-gpios = <&gpio GPIODV_10 GPIO_ACTIVE_HIGH>; - hp_det_inv = <0>; - /*audio soc*/ - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - aml_EQ_DRC { - EQ_enable = <1>; - eq_table = /bits/ 32 < - /*channel 1*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - /*channel 2*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - >; - DRC_enable = <1>; - drc_table = /bits/ 32 < - 0x0000111c 0x0380111c /*drc_ae && drc_ae_1m*/ - 0x00081bfc 0x03881bfc /*drc_aa && drc_aa_1m*/ - 0x00001571 0x03801571 /*drc_ad && drc_ad_1m*/ - >; - drc_tko_table = /bits/ 32 < - 0x00000000 0xcb000000 0x000a0000 /*offset, thd, k*/ - 0x00000000 0x00000000 0x00040000 /*offset, thd, k*/ - >; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - dtv_demod0_spectrum = <1>; - dtv_demod0_cma_flag = <1>; - dtv_demod0_cma_mem_size = <8>; - memory-region = <&demod_cma_reserved>;//<&demod_reserved>; - tuner0 = "r842_tuner"; - tuner0_i2c_adap_id = <2>; - tuner0_i2c_addr = <0xf6>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - -}; /* end of / */ - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_a_master>; - }; - &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_b_master>; - }; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<4 0x00000780>; - amlogic,clrmask=<4 0x0000000e - 3 0x001c0000>; - amlogic,pins = "GPIOZ_10","GPIOZ_11","GPIOZ_12","GPIOZ_14"; - }; - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<3 0x40000000>; /*spdif_out*/ - amlogic,clrmask=<3 0x00200000>; - amlogic,pins ="GPIOZ_17"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<4 0x1e000>; - amlogic,clrmask=<4 0xf3f00000>; - amlogic,pins ="GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3"; - }; - - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <5 0xffff0000>; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_6","GPIOW_8", - "GPIOW_10","GPIOW_12", - "GPIOW_14","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - hu_det_none: hu_det_none { - amlogic,setmask = <5 0xffff0000>, - ; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_4"; - }; - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins = "GPIODV_8","GPIODV_6"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; -}; - -&pinmux { - bl_pwm_on_pins:bl_pwm_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_vs_on_pins:bl_pwm_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_0_on_pins:bl_pwm_combo_0_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_on_pins:bl_pwm_combo_1_on_pin { - amlogic,setmask = <4 0x00004000>; - amlogic,clrmask = <4 0x00002000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; - bl_pwm_combo_0_vs_on_pins:bl_pwm_combo_0_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_vs_on_pins:bl_pwm_combo_1_vs_on_pin { - amlogic,setmask = <4 0x00002000>; - amlogic,clrmask = <4 0x00004000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; -}; - -&audio_data{ - status = "okay"; -}; - diff --git a/arch/arm64/boot/dts/amlogic/txl_pxp.dts b/arch/arm64/boot/dts/amlogic/txl_pxp.dts deleted file mode 100644 index 360c2d465cd10..0000000000000 --- a/arch/arm64/boot/dts/amlogic/txl_pxp.dts +++ /dev/null @@ -1,1098 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/txl_pxp.dts - * - * 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. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include - -#include "mesontxl.dtsi" -#include "mesontxl_pxp-panel.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, txl"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x100000 0x0 0x7ff00000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x2700000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x02800000>; - //alignment = <0x0 0x400000>; - //}; - demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x0>; - multi-use; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xbc00000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "disable"; - //led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - pxp_mode = <1>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x7d851000"; - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <0>;/*0:use reserved;1:use cma*/ - memory-region = <&di_reserved>; - //memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <4074560>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <1>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <96>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <21>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "disable"; - gamma_en = <1>;/*1:enabel ;0:disable*/ - wb_en = <1>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - amvenc_avc { - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "disabled"; - //gpio_reset = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "disabled"; - //interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_HIGH"; - //power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ;/*change it actually*/ - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc { - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - /*caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400";*/ - f_min = <300000>; - f_max = <50000000>; - max_req_size = <0x20000>; /* 256KB */ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED","MMC_CAP_NONREMOVABLE"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - //irq_in = <3>; - //irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - partitions: partitions { - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <11>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - - aocec: aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "disabled"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "disable"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_a_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_b_pins>; - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "disabled"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_a_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_b_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - resets = <&clock GCLK_IDX_UART2>; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, gxl-dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - status = "disable"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, aml-gxl-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - status = "disable"; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, aml-gxl-usb3"; - portnum = <1>; - reg = <0x0 0xd0078080 0x0 0x20>; - interrupts = <0 16 4>; - status = "disable"; - }; - - dwc2_a { - compatible = "amlogic, gxl_dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - interrupts = <0 31 4>; - status = "disable"; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <512>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - /* disable pcm pin mux temporary, enable it if necessary */ - /*pinctrl-0 = <&audio_btpcm_pins>;*/ - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015S{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015S"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - mute_gpio-gpios = <&gpio GPIODV_11 GPIO_ACTIVE_HIGH>; - aux_dev = "tas5707"; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - -}; /* end of / */ - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<4 0x00000780>; - amlogic,clrmask=<4 0x0000000e - 3 0x001c0000>; - amlogic,pins = "GPIOZ_10","GPIOZ_11","GPIOZ_12","GPIOZ_14"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<3 0x40000000>; /*spdif_out*/ - amlogic,clrmask=<3 0x00200000>; - amlogic,pins ="GPIOZ_17"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<4 0x1e000>; - amlogic,clrmask=<4 0xf3f00000>; - amlogic,pins ="GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3"; - }; -}; - -&audio_data{ - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/txl_skt.dts b/arch/arm64/boot/dts/amlogic/txl_skt.dts deleted file mode 100644 index cb530a8ef5513..0000000000000 --- a/arch/arm64/boot/dts/amlogic/txl_skt.dts +++ /dev/null @@ -1,1215 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/txl_skt.dts - * - * 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. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include - -#include "mesontxl.dtsi" -#include "mesontxl_skt-panel.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, txl"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x100000 0x0 0x3ff00000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x2700000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x02800000>; - //alignment = <0x0 0x400000>; - //}; - demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x0>; - multi-use; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xbc00000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "disable"; - //led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - pxp_mode = <0>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x3d851000"; - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1>; - phy-mode= "rmii"; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <0>;/*0:use reserved;1:use cma*/ - memory-region = <&di_reserved>; - //memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <4074560>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <1>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <96>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <21>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <1>;/*1:enabel ;0:disable*/ - wb_en = <1>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - rx_port_maps = <0x3120>; - repeat = <0>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda846000>; - hdmirx_data_port = <0xda846004>; - hdmirx_ctrl_port = <0xda846008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - en_4k_2_2k = <0>; - }; - - amvenc_avc { - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "disabled"; - //gpio_reset = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "disabled"; - //interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_HIGH"; - //power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ;/*change it actually*/ - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc { - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - tx_phase = <3>; - max_req_size = <0x20000>; /* 256KB */ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins", "sd_clk_cmd_uart_pins", "sd_1bit_uart_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - partitions: partitions { - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11 = <&keysn_11>; - unifykey-index-12 = <&keysn_12>; - unifykey-index-13 = <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "hdcp22_rx_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "hdcp22_rx_fw"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "hdcp14_rx"; - key-device = "normal"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - };//End unifykey - - aocec: aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "TXL"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x2>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "disable"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_a_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_b_pins>; - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "disabled"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_a_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_b_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - resets = <&clock GCLK_IDX_UART2>; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - /* disable pcm pin mux temporary, enable it if necessary */ - /*pinctrl-0 = <&audio_btpcm_pins>;*/ - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015S{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015S"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - mute_gpio-gpios = <&gpio GPIODV_11 GPIO_ACTIVE_HIGH>; - aux_dev = "tas5707"; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - dtv_demod0_spectrum = <1>; - memory-region = <&demod_reserved>; - tuner0 = "mxl661_tuner"; - tuner0_i2c_adap_id = <2>; - tuner0_i2c_addr = <0x60>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - -}; /* end of / */ - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<4 0x00000780>; - amlogic,clrmask=<4 0x0000000e - 3 0x001c0000>; - amlogic,pins = "GPIOZ_10","GPIOZ_11","GPIOZ_12","GPIOZ_14"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<3 0x40000000>; /*spdif_out*/ - amlogic,clrmask=<3 0x00200000>; - amlogic,pins ="GPIOZ_17"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<4 0x1e000>; - amlogic,clrmask=<4 0xf3f00000>; - amlogic,pins ="GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3"; - }; - - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <5 0xffff0000>; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_6","GPIOW_8", - "GPIOW_10","GPIOW_12", - "GPIOW_14","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - hu_det_none: hu_det_none { - amlogic,setmask = <5 0xffff0000>, - ; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_4"; - }; - -}; - -&audio_data{ - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/txl_t950_skt.dts b/arch/arm64/boot/dts/amlogic/txl_t950_skt.dts deleted file mode 100644 index 729699656db47..0000000000000 --- a/arch/arm64/boot/dts/amlogic/txl_t950_skt.dts +++ /dev/null @@ -1,1372 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/txl_t950_skt.dts - * - * 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. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include -#include - -#include "mesontxl.dtsi" -#include "mesontxl_p341-panel.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, txl"; - amlogic-dt-id = "txl_t950_skt"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x0100000 0x0 0x1ff00000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x800000>; - no-map; - }; - /*di reserved mem*/ - //di_reserved:linux,di { - //compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x2200000>; - //no-map; - //}; - /*di CMA pool */ - di_cma_reserved:linux,di_cma { - compatible = "shared-dma-pool"; - reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x02400000>; - alignment = <0x0 0x400000>; - }; - /* demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - };*/ - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x0>; - multi-use; - }; - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x4400000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x0>; - alignment = <0x0 0x100000>; - //no-map; - }; - demod_cma_reserved:linux,demod_cma { - compatible = "shared-dma-pool"; - reusable; - /* 5M */ - size = <0x0 0x0800000>; - alignment = <0x0 0x400000>; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x1000000>;//1920x1080x2x4=16M - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1>; - phy-mode= "rmii"; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "disable"; - //led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>; - }; - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <2>; - interrupts = <0 65 1 - 0 66 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIODV_8 GPIO_ACTIVE_HIGH>, - <&gpio GPIODV_6 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x0800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1280 720 1280 1440 32>; //1280*720*4*2 = 8MB - pxp_mode = <0>; /** 0:normal mode 1:pxp mode */ - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1>; - phy-mode= "rmii"; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - -/* amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - };*/ - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <1>;/*0:use reserved;1:use cma*/ - //memory-region = <&di_reserved>; - memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <3552320>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <0>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <96>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <1>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <1>;/*1:enabel ;0:disable*/ - wb_en = <1>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - pinctrl-names="atvdemod_agc"; - pinctrl-0=<&atvdemod_agc>; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - }; - - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none", - "hu_det_uart0","hu_det_uart1","hu_det_uart2"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - pinctrl-2 = <&hdmirx_pins &cha_uart_in>; - pinctrl-3 = <&hdmirx_pins &chb_uart_in>; - pinctrl-4 = <&hdmirx_pins &chc_uart_in>; - rx_port_maps = <0x3120>; - hdmiuart_share_cfg = <0>; - repeat = <0>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda846000>; - hdmirx_data_port = <0xda846004>; - hdmirx_ctrl_port = <0xda846008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - en_4k_2_2k = <1>; - uart_scl_a_pin = <&gpio GPIOW_7 GPIO_ACTIVE_HIGH>; - uart_scl_b_pin = <&gpio GPIOW_15 GPIO_ACTIVE_HIGH>; - uart_scl_c_pin = <&gpio GPIOW_11 GPIO_ACTIVE_HIGH>; - }; - -/* amvenc_avc { - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "disabled"; - //gpio_reset = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "disabled"; - //interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_HIGH"; - //power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ;/*change it actually*/ - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc { - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - tx_phase = <3>; - max_req_size = <0x20000>; /* 256KB */ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins", "sd_clk_cmd_uart_pins", "sd_1bit_uart_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - partitions: partitions { - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11 = <&keysn_11>; - unifykey-index-12 = <&keysn_12>; - unifykey-index-13 = <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "hdcp22_rx_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "hdcp22_rx_fw"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "hdcp14_rx"; - key-device = "normal"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - };//End unifykey - - aocec: aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "TXL"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x2>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "disable"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_a_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_b_pins>; - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "disabled"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_a_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_b_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - resets = <&clock GCLK_IDX_UART2>; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015S{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015S"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - mute_gpio-gpios = <&gpio GPIOZ_13 GPIO_ACTIVE_HIGH>; - sleep_time = <20>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - aml_EQ_DRC { - eq_table = /bits/ 32 < - /*channel 1*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - /*channel 2*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - >; - drc_table = /bits/ 32 < - 0x0000111c 0x0380111c /*drc_ae && drc_ae_1m*/ - 0x00081bfc 0x03881bfc /*drc_aa && drc_aa_1m*/ - 0x00001571 0x03801571 /*drc_ad && drc_ad_1m*/ - >; - drc_tko_table = /bits/ 32 < - 0x00000000 0xc4000000 0x00060000 /*offset, thd, k*/ - 0x00000000 0xf6000000 0x00028000 /*offset, thd, k*/ - >; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - dtv_demod0_spectrum = <1>; - dtv_demod0_cma_flag = <1>; - dtv_demod0_cma_mem_size = <8>; - memory-region = <&demod_cma_reserved>;//<&demod_reserved>; - tuner0 = "r842_tuner"; - tuner0_i2c_adap_id = <2>; - tuner0_i2c_addr = <0xf6>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - -}; /* end of / */ - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_a_master>; - }; - &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_b_master>; - }; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<4 0x00000780>; - amlogic,clrmask=<4 0x0000000e - 3 0x001c0000>; - amlogic,pins = "GPIOZ_10","GPIOZ_11","GPIOZ_12","GPIOZ_14"; - }; - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<3 0x40000000>; /*spdif_out*/ - amlogic,clrmask=<3 0x00200000>; - amlogic,pins ="GPIOZ_17"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<4 0x1e000>; - amlogic,clrmask=<4 0xf3f00000>; - amlogic,pins ="GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3"; - }; - - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <5 0xffff0000>; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_6","GPIOW_8", - "GPIOW_10","GPIOW_12", - "GPIOW_14","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - hu_det_none: hu_det_none { - amlogic,setmask = <5 0xffff0000>, - ; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_4"; - }; - cha_uart_in: cha_uart_in { - amlogic,setmask = <5 0x00003000>; - amlogic,clrmask = <5 0x03000000>, - ; - amlogic,pins = "GPIOW_6"; - }; - chb_uart_in: chb_uart_in { - amlogic,setmask = <5 0x00000300>; - amlogic,clrmask = <5 0x00030000>, - ; - amlogic,pins = "GPIOW_14"; - }; - chc_uart_in: chc_uart_in { - amlogic,setmask = <5 0x00000c00>; - amlogic,clrmask = <5 0x00300000>, - ; - amlogic,pins = "GPIOW_10"; - }; - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins = "GPIODV_8","GPIODV_6"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; -}; - -&pinmux { - bl_pwm_on_pins:bl_pwm_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_vs_on_pins:bl_pwm_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_0_on_pins:bl_pwm_combo_0_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_on_pins:bl_pwm_combo_1_on_pin { - amlogic,setmask = <4 0x00004000>; - amlogic,clrmask = <4 0x00002000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; - bl_pwm_combo_0_vs_on_pins:bl_pwm_combo_0_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_vs_on_pins:bl_pwm_combo_1_vs_on_pin { - amlogic,setmask = <4 0x00002000>; - amlogic,clrmask = <4 0x00004000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; -}; - -&audio_data{ - status = "okay"; -}; - diff --git a/arch/arm64/boot/dts/amlogic/txl_t960_p346.dts b/arch/arm64/boot/dts/amlogic/txl_t960_p346.dts deleted file mode 100644 index d61bf0ff559c4..0000000000000 --- a/arch/arm64/boot/dts/amlogic/txl_t960_p346.dts +++ /dev/null @@ -1,1339 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/txl_t960_p346.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 -#include -#include -#include -#include -#include -#include - -#include "mesontxl.dtsi" -#include "mesontxl_t960_p346-panel.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, txl"; - amlogic-dt-id = "txl_p346_v1"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x0100000 0x0 0x3ff00000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - size = <0x0 0x2700000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3552320(yuv422 8bit) | 44596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - /** 10x3552320=34M(0x22) support 8bit **/ - /** 10x44596800=44M(0x2c) support 12bit **/ - /** 10x4074560=39M(0x27) support 10bit **/ - //size = <0x0 0x02800000>; - //alignment = <0x0 0x400000>; - //}; - demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x0>; - multi-use; - }; - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xbc00000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "disable"; - //led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>; - }; - - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <2>; - interrupts = <0 65 1 - 0 66 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIODV_8 GPIO_ACTIVE_HIGH>, - <&gpio GPIODV_6 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - pxp_mode = <0>; /** 0:normal mode 1:pxp mode */ - logo_addr = "0x3d851000"; - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc - 0x0 0xc1104484 0x0 0x4>; - interrupts = <0 8 1 - 0 9 1>; - phy-mode= "rmii"; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq", - "phyirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <0>;/*0:use reserved;1:use cma*/ - memory-region = <&di_reserved>; - //memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 1920*544/2 */ - /* count_size(byte) = 1920*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3552320(yuv422 8bit) | 4596800(yuv422 10bit) | 4074560(yuv422 10bit full pack mode) */ - buffer-size = <4074560>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <1>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <96>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <21>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <1>;/*1:enabel ;0:disable*/ - wb_en = <1>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - pinctrl-names="atvdemod_agc"; - pinctrl-0=<&atvdemod_agc>; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - }; - - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - rx_port_maps = <0x3120>; - repeat = <0>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda846000>; - hdmirx_data_port = <0xda846004>; - hdmirx_ctrl_port = <0xda846008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - en_4k_2_2k = <0>; - }; - - amvenc_avc { - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "disabled"; - //gpio_reset = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "disabled"; - //interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - //interrupts = < 0 68 4>; - //irq_trigger_type = "GPIO_IRQ_HIGH"; - power_on_pin = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ;/*change it actually*/ - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc { - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - tx_phase = <3>; - max_req_size = <0x20000>; /* 256KB */ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&ao_to_sd_uart_pins>; - pinctrl-6 = <&ao_to_sd_jtag_pins>; - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - partitions: partitions { - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11 = <&keysn_11>; - unifykey-index-12 = <&keysn_12>; - unifykey-index-13 = <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "hdcp22_rx_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "hdcp22_rx_fw"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "hdcp14_rx"; - key-device = "normal"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - };//End unifykey - - aocec: aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "TXL"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x2>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "disable"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_a_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_b_pins>; - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "disabled"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_a_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_b_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - resets = <&clock GCLK_IDX_UART2>; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015S{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015S"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - /*avout mute gpio, if av_mute_inv = 1, invert gpio*/ - mute_gpio-gpios = <&gpio GPIODV_11 GPIO_ACTIVE_LOW>; - av_mute_inv = <0>; - /*after sleep time, unmute avout*/ - sleep_time = <0>; - /*analog amp mute pinmux*/ - amp_mute_gpio-gpios = <&gpio GPIOZ_13 GPIO_ACTIVE_LOW>; - amp_mute_inv = <0>; - /* if 1, enable switch AV / HS Detect */ - av_hs_switch = <1>; - hp_det-gpios = <&gpio GPIODV_10 GPIO_ACTIVE_HIGH>; - hp_det_inv = <0>; - /*audio soc*/ - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - aml_EQ_DRC { - eq_table = /bits/ 32 < - /*channel 1*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - /*channel 2*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - >; - drc_table = /bits/ 32 < - 0x0000111c 0x0380111c /*drc_ae && drc_ae_1m*/ - 0x00081bfc 0x03881bfc /*drc_aa && drc_aa_1m*/ - 0x00001571 0x03801571 /*drc_ad && drc_ad_1m*/ - >; - drc_tko_table = /bits/ 32 < - 0x00000000 0xc4000000 0x00060000 /*offset, thd, k*/ - 0x00000000 0xf6000000 0x00028000 /*offset, thd, k*/ - >; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - dtv_demod0_spectrum = <1>; - memory-region = <&demod_reserved>; - tuner0 = "r842_tuner"; - tuner0_i2c_adap_id = <2>; - tuner0_i2c_addr = <0xf6>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - -}; /* end of / */ - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_a_master>; - }; - &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_b_master>; - }; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<4 0x00000740>; - amlogic,clrmask=<4 0x0000000c - 3 0x021c0000>; - amlogic,pins = "GPIOZ_10","GPIOZ_11","GPIOZ_12","GPIOZ_15"; - }; - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<3 0x40000000>; /*spdif_out*/ - amlogic,clrmask=<3 0x00200000>; - amlogic,pins ="GPIOZ_17"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<4 0x1e000>; - amlogic,clrmask=<4 0xf3f00000>; - amlogic,pins ="GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3"; - }; - - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <5 0xffff0000>; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_6","GPIOW_8", - "GPIOW_10","GPIOW_12", - "GPIOW_14","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - hu_det_none: hu_det_none { - amlogic,setmask = <5 0xffff0000>, - ; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_4"; - }; - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins = "GPIODV_8","GPIODV_6"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; -}; - -&pinmux { - bl_pwm_on_pins:bl_pwm_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_vs_on_pins:bl_pwm_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_0_on_pins:bl_pwm_combo_0_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_on_pins:bl_pwm_combo_1_on_pin { - amlogic,setmask = <4 0x00004000>; - amlogic,clrmask = <4 0x00002000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; - bl_pwm_combo_0_vs_on_pins:bl_pwm_combo_0_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_vs_on_pins:bl_pwm_combo_1_vs_on_pin { - amlogic,setmask = <4 0x00002000>; - amlogic,clrmask = <4 0x00004000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; -}; - -&audio_data{ - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/txl_t960_skt.dts b/arch/arm64/boot/dts/amlogic/txl_t960_skt.dts deleted file mode 100644 index b2e0c27f975db..0000000000000 --- a/arch/arm64/boot/dts/amlogic/txl_t960_skt.dts +++ /dev/null @@ -1,1336 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/txl_t960_p346.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 -#include -#include -#include -#include -#include -#include - -#include "mesontxl.dtsi" -#include "mesontxl_t960_p346-panel.dtsi" - -/ { - model = "Amlogic"; - compatible = "amlogic, txl"; - amlogic-dt-id = "txl_p346_v1"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x0100000 0x0 0x3ff00000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - /*di reserved mem*/ - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - /* buffer_size = 3621952(yuv422 8bit) | 4736064(yuv422 10bit) | 4179008(yuv422 10bit full pack mode) */ - /** 10x3621952=34.6M(0x23) support 8bit **/ - /** 10x4736064=45.2M(0x2e) support 12bit **/ - /** 10x4179008=40M(0x28) support 10bit **/ - size = <0x0 0x2800000>; - //no-map; - }; - /*di CMA pool */ - //di_cma_reserved:linux,di_cma { - //compatible = "shared-dma-pool"; - //reusable; - /* buffer_size = 3621952(yuv422 8bit) | 4736064(yuv422 10bit) | 4179008(yuv422 10bit full pack mode) */ - /** 10x3621952=34.6M(0x23) support 8bit **/ - /** 10x4736064=45.2M(0x2e) support 12bit **/ - /** 10x4179008=40M(0x28) support 10bit **/ - //size = <0x0 0x02800000>; - //alignment = <0x0 0x400000>; - //}; - demod_reserved:linux,demod { - compatible = "amlogic, demod-mem"; - size = <0x0 0x600000>; //20m - multi-use; - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; - }; - - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "amlogic, ppmgr_memory"; - size = <0x0 0x0>; - multi-use; - }; - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xbc00000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /* vdin0 CMA pool */ - //vdin0_cma_reserved:linux,vdin0_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <4>; - // reusable; - /* 3840x2160x2x4 =64+4 M */ - // size = <0x0 0x04400000>; - // alignment = <0x0 0x400000>; - //}; - /* vdin1 CMA pool */ - vdin1_cma_reserved:linux,vdin1_cma { - compatible = "shared-dma-pool"; - linux,phandle = <5>; - reusable; - /* 1920x1080x2x4 =16+4 M */ - size = <0x0 0x01400000>; - alignment = <0x0 0x400000>; - }; - /* tvafe CMA pool */ - //tvafe_cma_reserved:linux,tvafe_cma { - // compatible = "shared-dma-pool"; - // linux,phandle = <6>; - // reusable; - /* 5 M */ - // size = <0x0 0x00800000>; - // alignment = <0x0 0x400000>; - //}; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = ,,,, - ,,,; - pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; - reg = <0x0 0xc1108550 0x0 0x30>, - <0x0 0xc8100550 0x0 0x10>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_PLL>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV3>; - clock-names = "xtal", - "vid_pll_clk", - "fclk_div4", - "fclk_div3"; - clock-select = ,,,, - ,,,; - clock-select-new = ,,,, - ,,,, - ,,,, - ,,,; - /*all channels use the default clock source XTAL_CLK*/ - /*and you can shoose it in file dt-bindings/pwm/meson.h*/ - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "disable"; - //led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>; - }; - - avin_detect { - compatible = "amlogic, avin_detect"; - status = "okay"; - avin_device_num = <1>; - interrupts = <0 65 1>; - pinctrl-names = "avin_gpio_disable_pullup"; - pinctrl-0 = <&avin_gpio_disable_pull>; - avin_det_pin = <&gpio GPIODV_8 GPIO_ACTIVE_HIGH>; - detect_interval_length = <100>; - set_detect_times = <5>; - set_fault_tolerance = <1>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - pxp_mode = <0>; /** 0:normal mode 1:pxp mode */ - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc - 0x0 0xc1104484 0x0 0x4>; - interrupts = <0 8 1 - 0 9 1>; - phy-mode= "rmii"; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq", - "phyirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - wol=<0>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - flag_cma = <0>;/*0:use reserved;1:use cma*/ - memory-region = <&di_reserved>; - //memory-region = <&di_cma_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 2944*544*2*8(yuv422 10bit) | 2432*544*2(yuv422 10bit full pack mode) */ - /* mtn_size(byte) = 2048*544/2 */ - /* count_size(byte) = 2048*544/2 */ - /* mv_size(byte) = 1920*544*2/5 */ - /* mc_size(byte) = 544*2 */ - /* buffer_size = nr_size + mtn_size + count_size + mv_size + mc_size */ - /* buffer_size = 3621952(yuv422 8bit) | 4736064(yuv422 10bit) | 4179008(yuv422 10bit full pack mode) */ - buffer-size = <4179008>; - hw-version = <2>; - /* reserve-iomap = "true"; */ - /* if enable nr10bit, set nr10bit-surpport to 1 */ - nr10bit-surpport = <1>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - /*memory-region = <&vdin0_cma_reserved>;*/ - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ - /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) - *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M - *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M - *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M - *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ - cma_size = <96>; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0>; - /*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 = <21>; - }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_cma_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_FPLL_DIV5>, - <&clock CLK_VDIN_MEAS_CLK>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <1>; - /*vdin write mem color depth support: - *bit0:support 8bit - *bit1:support 9bit - *bit2:support 10bit - *bit3:support 12bit*/ - tv_bit_mode = <1>; - }; - tvafe { - compatible = "amlogic, tvafe"; - /*memory-region = <&tvafe_cma_reserved>;*/ - dev_name = "tvafe"; - status = "ok"; - flag_cma = <1>;/*1:share with codec_mm;0:cma alone*/ - cma_size = <5>;/*MByte*/ - reg = <0x0 0xc8842000 0x0 0x2000>; - reserve-iomap = "true"; - tvafe_id = <0>; - pinctrl-names = "default"; - tvafe_pin_mux = < /*!!particular sequence, no more and no less!!!*/ - 3 /*// TVAFE_CVBS_IN2, //CVBS_IN0 = 0,*/ - 1 /*// TVAFE_CVBS_IN0, //CVBS_IN1,*/ - 2 /*// TVAFE_CVBS_IN1, //CVBS_IN2*/ - 4 /*// TVAFE_CVBS_IN3, //CVBS_IN3,*/ - >; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <1>;/*1:enabel ;0:disable*/ - wb_en = <1>;/*1:enabel ;0:disable*/ - cm_en = <1>;/*1:enabel ;0:disable*/ - }; - - aml_atv_demod { - compatible = "amlogic, aml_atv_demod"; - dev_name = "aml_atv_demod"; - status = "okay"; - pinctrl-names="atvdemod_agc"; - pinctrl-0=<&atvdemod_agc>; - reg = <0x0 0xc8840000 0x0 0x2000>; - reg_23cf = <0x88188832>;/*default:0x88188832;r840 on haier:0x48188832*/ - }; - - hdmirx { - compatible = "amlogic, hdmirx"; - dev_name = "hdmirx"; - status = "ok"; - pinctrl-names = "hdmirx_pins","hu_det_none"; - pinctrl-0 = <&hdmirx_pins>; - pinctrl-1 = <&hu_det_none>; - rx_port_maps = <0x3120>; - repeat = <0>; - interrupts = <0 56 1>; - hdmirx_addr_port = <0xda846000>; - hdmirx_data_port = <0xda846004>; - hdmirx_ctrl_port = <0xda846008>; - clocks = <&clock CLK_HDMIRX_MODET_CLK>, - <&clock CLK_HDMIRX_CFG_CLK>, - <&clock CLK_HDMIRX_ACR_REF_CLK>, - <&clock CLK_HDMIRX_AUDMEAS_CLK>, - <&clock CLK_XTAL>, - <&clock CLK_FPLL_DIV5>; - clock-names = "hdmirx_modet_clk", - "hdmirx_cfg_clk", - "hdmirx_acr_ref_clk", - "hdmirx_audmeas_clk", - "xtal", - "fclk_div5"; - hdmirx_id = <0>; - en_4k_2_2k = <0>; - }; - - amvenc_avc { - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "disabled"; - //gpio_reset = <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "disabled"; - //interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - //interrupts = < 0 68 4>; - //irq_trigger_type = "GPIO_IRQ_HIGH"; - power_on_pin = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>; - pwm_config = <&wifi_pwm_conf>; - }; - wifi_pwm_conf:wifi_pwm_conf{ - pwm_channel1 = ;/*change it actually*/ - pwm_channel2 = ; - pwm_channel1_conf = <30541 15270 6>; - pwm_channel2_conf = <30518 15259 9>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc { - status = "okay"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - tx_phase = <3>; - max_req_size = <0x20000>; /* 256KB */ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&ao_to_sd_uart_pins>; - pinctrl-6 = <&ao_to_sd_jtag_pins>; - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - - partitions: partitions { - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <¶m>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&cri_data>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - param:param{ - pname = "param"; - size = <0x0 0x8000000>; - mask = <2>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - cri_data:cri_data - { - pname = "cri_data"; - size = <0x0 0x1000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11 = <&keysn_11>; - unifykey-index-12 = <&keysn_12>; - unifykey-index-13 = <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "hdcp22_rx_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "hdcp22_rx_fw"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "hdcp14_rx"; - key-device = "normal"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - };//End unifykey - - aocec: aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "TXL"; /* Max Chars: 16 */ - cec_osd_string = "AML_TV"; /* Max Chars: 14 */ - port_num = <3>; - ee_cec; - arc_port_mask = <0x2>; - interrupts = <0 56 1>; - interrupt-names = "hdmi_eecec"; - pinctrl-names = "hdmitx_eecec"; - pinctrl-0=<&hdmitx_eecec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200 - 0x0 0xda83e000 0x0 0x10 - 0x0 0xc883c000 0x0 0x400>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "disable"; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_a_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_ao_b_pins>; - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "disabled"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_a_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&uart_b_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - resets = <&clock GCLK_IDX_UART2>; - }; - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <4>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015S{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015S"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_g9tv_snd { - compatible = "aml, aml_snd_g9tv"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-G9TVAUDIO"; - pinctrl-names = "aml_snd_g9tv"; - pinctrl-0 = <&audio_pins>; - /*avout mute gpio, if av_mute_inv = 1, invert gpio*/ - mute_gpio-gpios = <&gpio GPIODV_11 GPIO_ACTIVE_LOW>; - av_mute_inv = <0>; - /*after sleep time, unmute avout*/ - sleep_time = <0>; - /*analog amp mute pinmux*/ - amp_mute_gpio-gpios = <&gpio GPIOZ_13 GPIO_ACTIVE_LOW>; - amp_mute_inv = <0>; - /* if 1, enable switch AV / HS Detect */ - av_hs_switch = <1>; - hp_det-gpios = <&gpio GPIODV_10 GPIO_ACTIVE_HIGH>; - hp_det_inv = <0>; - /*audio soc*/ - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - aml_EQ_DRC { - eq_table = /bits/ 32 < - /*channel 1*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - /*channel 2*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef0*/ - 0x0080372b 0x0301afb6 0x007e1eb3 0x0301afb6 0x007e55de /*eq_coef1*/ - 0x007f9c8d 0x0301d300 0x007e9cfe 0x0301d300 0x007e398c /*eq_coef2*/ - 0x0083d5aa 0x031dee0a 0x005e8bb8 0x031dee0a 0x00626163 /*eq_coef3*/ - 0x007e0fc8 0x0308897c 0x007a2aa0 0x0308897c 0x00783a68 /*eq_coef4*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef5*/ - 0x0078eb9b 0x0333b014 0x0066ba2a 0x0333b014 0x005fa5c5 /*eq_coef6*/ - 0x009712e4 0x037db296 0x0034b3cd 0x037db296 0x004bc6b0 /*eq_coef7*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef8*/ - 0x00800000 0x00000000 0x00000000 0x00000000 0x00000000 /*eq_coef9*/ - >; - drc_table = /bits/ 32 < - 0x0000111c 0x0380111c /*drc_ae && drc_ae_1m*/ - 0x00081bfc 0x03881bfc /*drc_aa && drc_aa_1m*/ - 0x00001571 0x03801571 /*drc_ad && drc_ad_1m*/ - >; - drc_tko_table = /bits/ 32 < - 0x00000000 0xc4000000 0x00060000 /*offset, thd, k*/ - 0x00000000 0xf6000000 0x00028000 /*offset, thd, k*/ - >; - }; - }; - amaudio2 { - compatible = "amlogic, aml_amaudio2"; - status = "okay"; - interrupts = <0 48 1>; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - - dvb { - compatible = "amlogic, dvb"; - dev_name = "dvb"; - status = "okay"; - /*"parallel","serial","disable"*/ - ts2 = "parallel"; - ts2_control = <0>; - ts2_invert = <0>; - resets = <&clock GCLK_IDX_DEMUX - &clock GCLK_IDX_ASYNC_FIFO - &clock GCLK_IDX_AHB_ARB0 - &clock GCLK_IDX_HIU_PARSER_TOP>; - reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; - }; - dvbfe { - compatible = "amlogic, dvbfe"; - dev_name = "dvbfe"; - status = "okay"; - dtv_demod0 = "AMLDEMOD"; - fe0_dtv_demod = <0>; - fe0_ts = <2>; - fe0_dev = <0>; - dtv_demod0_mem = <0>; - dtv_demod0_spectrum = <1>; - memory-region = <&demod_reserved>; - tuner0 = "r842_tuner"; - tuner0_i2c_adap_id = <2>; - tuner0_i2c_addr = <0xf6>; - //tuner0_reset_value = <0>; - //tuner0_reset_gpio = "GPIOY_10" ; /*GPIOX_8 76*/ - fe0_tuner = <0>; - atv_demod0 = "aml_atv_demod"; - fe0_atv_demod = <0>; - }; - - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; - -}; /* end of / */ - - &i2c_a { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_a_master>; - }; - &i2c_b { - status = "okay"; - pinctrl-names="default"; - pinctrl-0=<&i2c_b_master>; - }; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<4 0x00000780>; - amlogic,clrmask=<4 0x0000000e - 3 0x001c0000>; - amlogic,pins = "GPIOZ_10","GPIOZ_11","GPIOZ_12","GPIOZ_14"; - }; - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<3 0x40000000>; /*spdif_out*/ - amlogic,clrmask=<3 0x00200000>; - amlogic,pins ="GPIOZ_17"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<4 0x1e000>; - amlogic,clrmask=<4 0xf3f00000>; - amlogic,pins ="GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3"; - }; - - hdmirx_pins: hdmirx_pins { - amlogic,setmask = <5 0xffff0000>; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_6","GPIOW_8", - "GPIOW_10","GPIOW_12", - "GPIOW_14","GPIOW_16", - "GPIOW_17","GPIOW_18","GPIOW_19","GPIOW_20"; - }; - hu_det_none: hu_det_none { - amlogic,setmask = <5 0xffff0000>, - ; - amlogic,clrmask = <5 0x0000ff00>; - amlogic,pins = "GPIOW_4"; - }; - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins = "GPIODV_8"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; -}; - -&pinmux { - bl_pwm_on_pins:bl_pwm_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_vs_on_pins:bl_pwm_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_0_on_pins:bl_pwm_combo_0_on_pin { - amlogic,setmask = <4 0x00010000>; - amlogic,clrmask = <4 0x00008000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_on_pins:bl_pwm_combo_1_on_pin { - amlogic,setmask = <4 0x00004000>; - amlogic,clrmask = <4 0x00002000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; - bl_pwm_combo_0_vs_on_pins:bl_pwm_combo_0_vs_on_pin { - amlogic,setmask = <4 0x00008000>; - amlogic,clrmask = <4 0x00010000 3 0x00200000>; - amlogic,pins = "GPIOZ_6"; - }; - bl_pwm_combo_1_vs_on_pins:bl_pwm_combo_1_vs_on_pin { - amlogic,setmask = <4 0x00002000>; - amlogic,clrmask = <4 0x00004000 3 0x00200000>; - amlogic,pins = "GPIOZ_7"; - }; -}; - -&audio_data{ - status = "okay"; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxl_p212_2g.dts b/arch/arm64/boot/dts/gxl_p212_2g.dts similarity index 96% rename from arch/arm64/boot/dts/amlogic/gxl_p212_2g.dts rename to arch/arm64/boot/dts/gxl_p212_2g.dts index 87fd2eee84f25..014fa5f5ca5c6 100644 --- a/arch/arm64/boot/dts/amlogic/gxl_p212_2g.dts +++ b/arch/arm64/boot/dts/gxl_p212_2g.dts @@ -564,80 +564,6 @@ status = "okay"; }; };*/ - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&instaboot>; - part-7 = <&boot>; - part-8 = <&system>; - part-9 = <&cache>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - instaboot:instaboot{ - pname = "instaboot"; - size = <0x0 0x20000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; unifykey{ compatible = "amlogic, unifykey"; status = "ok"; @@ -1218,3 +1144,6 @@ &defendkey { status = "okay"; }; +/ { + le-dt-id = "gxl_p212_2g"; +}; diff --git a/arch/arm64/boot/dts/amlogic/gxm_q200_2g.dts b/arch/arm64/boot/dts/gxm_q200_2g.dts similarity index 96% rename from arch/arm64/boot/dts/amlogic/gxm_q200_2g.dts rename to arch/arm64/boot/dts/gxm_q200_2g.dts index 4a46647f3ac8b..a184246c3012d 100644 --- a/arch/arm64/boot/dts/amlogic/gxm_q200_2g.dts +++ b/arch/arm64/boot/dts/gxm_q200_2g.dts @@ -601,80 +601,6 @@ status = "okay"; }; };*/ - partitions: partitions{ - parts = <11>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&instaboot>; - part-7 = <&boot>; - part-8 = <&system>; - part-9 = <&cache>; - part-10 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - instaboot:instaboot{ - pname = "instaboot"; - size = <0x0 0x20000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; unifykey{ compatible = "amlogic, unifykey"; status = "ok"; @@ -1289,3 +1215,6 @@ &t82x_gpu { tbl = <&dvfs285_cfg &dvfs400_cfg &dvfs500_cfg &dvfs666_cfg &dvfs666_cfg>; }; +/ { + le-dt-id = "gxm_q200_2g"; +}; diff --git a/arch/arm64/boot/dts/kvim2_android.dts b/arch/arm64/boot/dts/kvim2_android.dts new file mode 100644 index 0000000000000..e165113a8f380 --- /dev/null +++ b/arch/arm64/boot/dts/kvim2_android.dts @@ -0,0 +1,129 @@ +#include "gxm_q200_2g.dts" +#include "partitions-android.dtsi" + +/{ + le-dt-id = "gxm_kvim2"; + compatible = "kvim"; + amlogic-dt-id = "kvim"; + + memory@00000000 { + /delete-property/ linux,usable-memory; + linux,usable-memory-2g = <0x0 0x00100000 0x0 0x7ff00000>; + linux,usable-memory-3g = <0x0 0x00100000 0x0 0xbff00000>; + }; + + sysled { + led_gpio = <&gpio_ao GPIOAO_9 GPIO_ACTIVE_HIGH>; + }; + + fan { + compatible = "fanctl"; + fan_ctl0 = <&gpio GPIODV_14 GPIO_ACTIVE_HIGH>; + fan_ctl1 = <&gpio GPIODV_15 GPIO_ACTIVE_HIGH>; + trig_temp_level0 = <50>; + trig_temp_level1 = <60>; + trig_temp_level2 = <70>; + }; + + meson-fb { + /delete-property/ logo_addr; + logo_addr_2g = "0x7d851000"; + logo_addr_3g = "0xbd851000"; /*ion base + fb0 memory size for uboot logo osd1*/ + }; + + uart_AO_B: serial@c81004e0 { + status = "okay"; + }; + + dwc2_a { + controller-type = <2>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ + }; + adc_keypad{ + compatible = "amlogic, adc_keypad"; + status = "okay"; + key_name = "home"; + key_num = <1>; + key_code = <102>; + key_chan = <0>; + key_val = <10>; + key_tolerance = <40>; + }; + + dvb { + compatible = "amlogic,dvb"; + dev_name = "dvb"; + ts0 = "parallel"; + ts0_control = <0x0>; + ts0_invert = <0x0>; + fec_reset_gpio-gpios = <&gpio GPIODV_13 GPIO_ACTIVE_HIGH>; + power_ctrl_gpio-gpios = <&gpio GPIODV_11 GPIO_ACTIVE_LOW>; + pinctrl-names = "p_ts0", "s_ts0", "s_ts1"; + pinctrl-0 = <&dvb_p_ts0_pins>; + pinctrl-1 = <&dvb_s_ts0_pins>; + pinctrl-2 = <&dvb_s_ts1_pins>; + resets = <&clock GCLK_IDX_DEMUX &clock GCLK_IDX_ASYNC_FIFO &clock GCLK_IDX_AHB_ARB0 &clock GCLK_IDX_HIU_PARSER_TOP>; + reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; + }; + + dvbfe { + compatible = "amlogic,dvbfe"; + //dev_name = "dvbfe"; + status = "okay"; + dtv_demod0 = "Avl6211"; + dtv_demod0_i2c_adap_id = <2>; + dtv_demod0_i2c_addr = <0x60>; + dtv_demod0_reset_value = <0>; + dtv_demod0_reset_gpio-gpios = <&gpio GPIODV_13 GPIO_ACTIVE_LOW>; + dtv_demod0_power_gpio-gpios = <&gpio GPIODV_14 GPIO_ACTIVE_LOW>; + fe0_dtv_demod = <0>; + fe0_ts = <0>; + fe0_dev = <0>; + }; +}; + +&i2c_a { + status = "okay"; +}; + +&i2c_b { + status = "okay"; + rtc_hym8563{ + compatible = "amlogic, rtc_hym8563"; + dev_name = "rtc_hym8563"; + status = "okay"; + reg = <0x51>; + }; +}; + +&i2c_c { + status = "okay"; +}; + +&i2c_d { + status = "okay"; +}; + +&pinmux { + dvb_p_ts0_pins:dvb_p_ts0_pins { + amlogic,setmask = <0x2 0x1f>; + amlogic,clrmask = <0x3 0x787 0x2 0xff000400>; + amlogic,pins = "GPIODV_0", "GPIODV_1", "GPIODV_2", "GPIODV_3", "GPIODV_4", "GPIODV_5", "GPIODV_6", "GPIODV_7", "GPIODV_8", "GPIODV_9", "GPIODV_10"; + }; + + dvb_s_ts0_pins:dvb_s_ts0_pins { + amlogic,setmask = <0x2 0x17>; + amlogic,clrmask = <0x3 0x584 0x2 0x7000000 0x1 0x100>; + amlogic,pins = "GPIODV_0", "GPIODV_8", "GPIODV_9", "GPIODV_10"; + }; + + dvb_s_ts1_pins:dvb_s_ts1_pins { + amlogic,setmask = <0x3 0x17>; + amlogic,clrmask = <0x2 0xf0000 0x1 0x7>; + amlogic,pins = "GPIODV_0", "GPIODV_8", "GPIODV_9", "GPIODV_10"; + }; + + dtv_params_pin:dtv_params_pin { + amlogic,clrmask = <0x1 0x38000000 0x3 0x80>; + amlogic,pins = "GPIODV_13", "GPIODV_14", "GPIODV_15"; + }; +}; \ No newline at end of file diff --git a/arch/arm64/boot/dts/kvim2_dualos.dts b/arch/arm64/boot/dts/kvim2_dualos.dts deleted file mode 100644 index ad60988c2e8be..0000000000000 --- a/arch/arm64/boot/dts/kvim2_dualos.dts +++ /dev/null @@ -1,2470 +0,0 @@ -/dts-v1/; - -/ { - model = "Amlogic"; - compatible = "kvim"; - amlogic-dt-id = "kvim"; - interrupt-parent = <0x1>; - #address-cells = <0x2>; - #size-cells = <0x2>; - - t82x { - compatible = "arm,malit602", "arm,malit60x", "arm,malit6xx", "arm,mali-midgard"; - #cooling-cells = <0x2>; - reg = <0x0 0xd00c0000 0x0 0x100000 0x0 0xc1104440 0x0 0x1000 0x0 0xc8100000 0x0 0x1000 0x0 0xc883c000 0x0 0x1000 0x0 0xc1104440 0x0 0x1000>; - interrupt-parent = <0x1>; - interrupts = <0x0 0xa0 0x4 0x0 0xa1 0x4 0x0 0xa2 0x4>; - interrupt-names = "GPU", "MMU", "JOB"; - num_of_pp = <0x3>; - sc_mpp = <0x1>; - operating-points = <0xa2c2a 0xf4240 0x7a120 0xf4240 0x61a80 0xf4240 0x45c12 0xf4240 0x3d090 0xf4240 0x1e848 0xf4240>; - tbl = <0x2 0x3 0x4 0x5 0x5>; - clocks = <0x6 0x8 0x6 0x9 0x6 0x11 0x6 0x12 0x6 0x1e 0x6 0x15 0x6 0x13 0x6 0x14>; - clock-names = "fclk_div3", "fclk_div4", "fclk_div5", "fclk_div7", "gp0_pll", "clk_gpu", "clk_gpu_0", "clk_gpu_1"; - linux,phandle = <0x85>; - phandle = <0x85>; - - clk125_cfg { - clk_freq = <0x7735940>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x1e 0x78>; - }; - - dvfs250_cfg { - clk_freq = <0xee6b280>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x50 0xaa>; - }; - - dvfs285_cfg { - clk_freq = <0x1107a650>; - clk_parent = "fclk_div7"; - clkp_freq = <0x1107a650>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x64 0xbe>; - linux,phandle = <0x2>; - phandle = <0x2>; - }; - - dvfs400_cfg { - clk_freq = <0x17d78400>; - clk_parent = "fclk_div5"; - clkp_freq = <0x17d78400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x98 0xcf>; - linux,phandle = <0x3>; - phandle = <0x3>; - }; - - dvfs500_cfg { - clk_freq = <0x1dcd6500>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xb4 0xdc>; - linux,phandle = <0x4>; - phandle = <0x4>; - }; - - dvfs666_cfg { - clk_freq = <0x27b25a80>; - clk_parent = "fclk_div3"; - clkp_freq = <0x27b25a80>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xd2 0xec>; - linux,phandle = <0x5>; - phandle = <0x5>; - }; - - dvfs800_cfg { - clk_freq = <0x2f34f600>; - clk_parent = "gp0_pll"; - clkp_freq = <0x2f34f600>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xe6 0xff>; - }; - }; - - gpu_clk@c883c00 { - compatible = "meson, gpu-clkgen-1.00.a"; - #clock-cells = <0x0>; - reg = <0x0 0xc883c000 0x0 0x1000>; - clocks = <0x6 0x8 0x6 0x9 0x6 0x11 0x6 0x12 0x6 0x1e 0x6 0x15 0x6 0x13 0x6 0x14>; - clock-names = "fclk_div3", "fclk_div4", "fclk_div5", "fclk_div7", "gp0_pll", "clk_gpu", "clk_gpu_0", "clk_gpu_1"; - clock-output-names = "clk_mali"; - tbl = <0x7 0x8 0x9 0xa 0xb 0xc>; - - clk125_cfg { - clk_freq = <0x7735940>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x1e 0x78>; - linux,phandle = <0x7>; - phandle = <0x7>; - }; - - clk250_cfg { - clk_freq = <0xee6b280>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x50 0xaa>; - linux,phandle = <0x8>; - phandle = <0x8>; - }; - - clk285_cfg { - clk_freq = <0x1107a650>; - clk_parent = "fclk_div7"; - clkp_freq = <0x1107a650>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x64 0xbe>; - linux,phandle = <0x9>; - phandle = <0x9>; - }; - - clk400_cfg { - clk_freq = <0x17d78400>; - clk_parent = "fclk_div5"; - clkp_freq = <0x17d78400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x98 0xcf>; - linux,phandle = <0xa>; - phandle = <0xa>; - }; - - clk500_cfg { - clk_freq = <0x1dcd6500>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xb4 0xdc>; - linux,phandle = <0xb>; - phandle = <0xb>; - }; - - clk666_cfg { - clk_freq = <0x27bc8410>; - clk_parent = "fclk_div3"; - clkp_freq = <0x27bc8410>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xd2 0xec>; - linux,phandle = <0xc>; - phandle = <0xc>; - }; - - clk720_cfg { - clk_freq = <0x2aea5400>; - clk_parent = "gp0_pll"; - clkp_freq = <0x2aea5400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xe6 0xff>; - }; - }; - - cpus { - #address-cells = <0x2>; - #size-cells = <0x0>; - - cpu-map { - - cluster0 { - #cooling-cells = <0x2>; - linux,phandle = <0x81>; - phandle = <0x81>; - - core0 { - cpu = <0xd>; - }; - - core1 { - cpu = <0xe>; - }; - - core2 { - cpu = <0xf>; - }; - - core3 { - cpu = <0x10>; - }; - }; - - cluster1 { - #cooling-cells = <0x2>; - linux,phandle = <0x82>; - phandle = <0x82>; - - core0 { - cpu = <0x11>; - }; - - core1 { - cpu = <0x12>; - }; - - core2 { - cpu = <0x13>; - }; - - core3 { - cpu = <0x14>; - }; - }; - }; - - cpu@0 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x0>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xd>; - phandle = <0xd>; - }; - - cpu@1 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x1>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xe>; - phandle = <0xe>; - }; - - cpu@2 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x2>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xf>; - phandle = <0xf>; - }; - - cpu@3 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x3>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x10>; - phandle = <0x10>; - }; - - cpu@100 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x100>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x11>; - phandle = <0x11>; - }; - - cpu@101 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x101>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x12>; - phandle = <0x12>; - }; - - cpu@102 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x102>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x13>; - phandle = <0x13>; - }; - - cpu@103 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x103>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x14>; - phandle = <0x14>; - }; - - idle-states { - entry-method = "arm,psci"; - - cpu-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x10000>; - local-timer-stop; - entry-latency-us = <0x1f40>; - exit-latency-us = <0x1f40>; - min-residency-us = <0x4e20>; - linux,phandle = <0x16>; - phandle = <0x16>; - }; - - cluster-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x1010000>; - local-timer-stop; - entry-latency-us = <0x1f40>; - exit-latency-us = <0x1f40>; - min-residency-us = <0x61a8>; - linux,phandle = <0x17>; - phandle = <0x17>; - }; - }; - }; - - timer { - compatible = "arm,armv8-timer"; - interrupts = <0x1 0xd 0xff01 0x1 0xe 0xff01 0x1 0xb 0xff01 0x1 0xa 0xff01>; - }; - - timer_bc { - compatible = "arm, meson-bc-timer"; - reg = <0x0 0xc1109990 0x0 0x4 0x0 0xc1109994 0x0 0x4>; - timer_name = "Meson TimerF"; - clockevent-rating = <0x12c>; - clockevent-shift = <0x14>; - clockevent-features = <0x23>; - interrupts = <0x0 0x3c 0x1>; - bit_enable = <0x10>; - bit_mode = <0xc>; - bit_resolution = <0x0>; - }; - - arm_pmu { - compatible = "arm,armv8-pmuv3"; - interrupts = <0x0 0x89 0x4 0x0 0x8a 0x4 0x0 0x99 0x4 0x0 0x9a 0x4>; - }; - - pm { - compatible = "amlogic, pm"; - device_name = "aml_pm"; - gxbaby-suspend; - reg = <0x0 0xc81000a8 0x0 0x4 0x0 0xc810023c 0x0 0x4>; - }; - - interrupt-controller@2c001000 { - compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; - #interrupt-cells = <0x3>; - #address-cells = <0x0>; - interrupt-controller; - reg = <0x0 0xc4301000 0x0 0x1000 0x0 0xc4302000 0x0 0x100>; - interrupts = <0x1 0x9 0xf04>; - linux,phandle = <0x1>; - phandle = <0x1>; - }; - - aml_restart { - compatible = "aml, restart"; - sys_reset = <0x84000009>; - sys_poweroff = <0x84000008>; - }; - - psci { - compatible = "arm,psci"; - method = "smc"; - cpu_suspend = <0xc4000001>; - cpu_off = <0x84000002>; - cpu_on = <0xc4000003>; - migrate = <0xc4000005>; - }; - - secmon { - compatible = "amlogic, secmon"; - memory-region = <0x18>; - in_base_func = <0x82000020>; - out_base_func = <0x82000021>; - }; - - securitykey { - compatible = "aml, securitykey"; - storage_query = <0x82000060>; - storage_read = <0x82000061>; - storage_write = <0x82000062>; - storage_tell = <0x82000063>; - storage_verify = <0x82000064>; - storage_status = <0x82000065>; - storage_list = <0x82000067>; - storage_remove = <0x82000068>; - storage_in_func = <0x82000023>; - storage_out_func = <0x82000024>; - storage_block_func = <0x82000025>; - storage_size_func = <0x82000027>; - storage_set_enctype = <0x8200006a>; - storage_get_enctype = <0x8200006b>; - storage_version = <0x8200006c>; - }; - - cpu_iomap { - compatible = "amlogic, iomap"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - - io_apb_base { - reg = <0x0 0xd0000000 0x0 0x200000>; - }; - - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - }; - - cpufreq { - compatible = "arm, scpi-cpufreq"; - }; - - amlogic-watchdog { - compatible = "amlogic, gx-wdt"; - status = "disable"; - default_timeout = <0xa>; - reset_watchdog_method = <0x1>; - reset_watchdog_time = <0x2>; - shutdown_timeout = <0xa>; - firmware_timeout = <0x6>; - suspend_timeout = <0x6>; - reg = <0x0 0xc11098d0 0x0 0x10>; - clocks = <0x6 0x2>; - }; - - amlogic-jtag { - compatible = "amlogic, jtag"; - status = "okay"; - pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; - pinctrl-0 = <0x19>; - pinctrl-1 = <0x1a>; - }; - - meson_clock { - compatible = "amlogic, gxl-clock"; - reg = <0x0 0xc883c000 0x0 0x1000 0x0 0xc8100000 0x0 0x1000>; - #clock-cells = <0x1>; - #reset-cells = <0x1>; - sys_max = <0x5b8d8000>; - linux,phandle = <0x6>; - phandle = <0x6>; - }; - - cpu_info { - compatible = "amlogic, cpuinfo"; - cpuinfo_cmd = <0x82000044>; - }; - - pinmux { - compatible = "amlogic, pinmux-gxl"; - dev_name = "pinmux"; - #pinmux-cells = <0x2>; - #address-cells = <0x2>; - #size-cells = <0x2>; - reg = <0x0 0xc1109880 0x0 0x10>; - ranges; - - banks@c11080b0 { - reg = <0x0 0xc88344b0 0x0 0x28 0x0 0xc88344e8 0x0 0x14 0x0 0xc8834520 0x0 0x14 0x0 0xc8834430 0x0 0x40>; - reg-names = "mux", "pull", "pull-enable", "gpio"; - gpio-controller; - #gpio-cells = <0x2>; - linux,phandle = <0x38>; - phandle = <0x38>; - }; - - ao-bank@c1108030 { - reg = <0x0 0xc8100014 0x0 0x8 0x0 0xc810002c 0x0 0x4 0x0 0xc8100024 0x0 0x8>; - reg-names = "mux", "pull", "gpio"; - gpio-controller; - #gpio-cells = <0x2>; - linux,phandle = <0x37>; - phandle = <0x37>; - }; - - external_eth_pins { - amlogic,setmask = <0x4 0xfffc00>; - amlogic,clrmask = <0x4 0x3fc 0x3 0xffcff800>; - amlogic,pins = "GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3", "GPIOZ_4", "GPIOZ_5", "GPIOZ_6", "GPIOZ_7", "GPIOZ_8", "GPIOZ_9", "GPIOZ_10", "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - linux,phandle = <0x3b>; - phandle = <0x3b>; - }; - - internal_eth_pins { - amlogic,setmask = <0x4 0x3000000>; - amlogic,clrmask = <0x3 0x300000>; - amlogic,pins = "GPIOZ_14", "GPIOZ_15"; - }; - - jtag_apao_pin { - amlogic,clrmask = <0x6 0x7fe0000>; - amlogic,pins = "GPIOH_6", "GPIOH_7", "GPIOH_8", "GPIOH_9"; - linux,phandle = <0x19>; - phandle = <0x19>; - }; - - jtag_apee_pin { - amlogic,clrmask = <0x6 0x3c>; - amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3"; - linux,phandle = <0x1a>; - phandle = <0x1a>; - }; - - remote_pin { - amlogic,setmask = <0x10 0x1>; - amlogic,pins = "GPIOAO_7"; - linux,phandle = <0x26>; - phandle = <0x26>; - }; - - ao_uart { - amlogic,setmask = <0x10 0x1800>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - }; - - ao_b_uart { - amlogic,setmask = <0x10 0x1800000>; - amlogic,pins = "GPIOAO_4", "GPIOAO_5"; - linux,phandle = <0x6b>; - phandle = <0x6b>; - }; - - a_uart { - amlogic,setmask = <0x5 0xf0000>; - amlogic,clrmask = <0x5 0x3c0>; - amlogic,pins = "GPIOX_12", "GPIOX_13", "GPIOX_14", "GPIOX_15"; - linux,phandle = <0x68>; - phandle = <0x68>; - }; - - b_uart { - amlogic,setmask = <0x2 0x18000>; - amlogic,pins = "GPIODV_24", "GPIODV_25"; - linux,phandle = <0x69>; - phandle = <0x69>; - }; - - c_uart { - amlogic,setmask = <0x5 0x3000>; - amlogic,pins = "GPIOX_8", "GPIOX_9"; - linux,phandle = <0x6a>; - phandle = <0x6a>; - }; - - wifi_32k_pins { - amlogic,setmask = <0x5 0x8000>; - amlogic,pins = "GPIOX_16"; - linux,phandle = <0x41>; - phandle = <0x41>; - }; - - sd_clk_cmd_pins { - amlogic,setmask = <0x6 0xc 0x10 0x1800>; - amlogic,pins = "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x47>; - phandle = <0x47>; - }; - - sd_all_pins { - amlogic,setmask = <0x6 0x3f 0x10 0x1800>; - amlogic,clrmask = <0x6 0xfc0>; - amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3", "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x48>; - phandle = <0x48>; - }; - - sd_1bit_pins { - amlogic,setmask = <0x6 0x1c 0x10 0x1800>; - amlogic,clrmask = <0x6 0xcc3>; - amlogic,pins = "CARD_1", "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x49>; - phandle = <0x49>; - }; - - sd_clk_cmd_uart_pins { - amlogic,setmask = <0x6 0x30c>; - amlogic,clrmask = <0x6 0xcc3 0x10 0x1800>; - amlogic,pins = "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4a>; - phandle = <0x4a>; - }; - - sd_1bit_uart_pins { - amlogic,setmask = <0x6 0x31c>; - amlogic,clrmask = <0x6 0xcc3 0x10 0x1800>; - amlogic,pins = "CARD_1", "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4b>; - phandle = <0x4b>; - }; - - sd_to_ao_uart_pins { - amlogic,setmask = <0x10 0x1800>; - amlogic,clrmask = <0x6 0x300>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4c>; - phandle = <0x4c>; - }; - - ao_to_sd_uart_pins { - amlogic,setmask = <0x6 0x300>; - amlogic,clrmask = <0x10 0x1800 0x6 0xcc3>; - amlogic,pins = "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4d>; - phandle = <0x4d>; - }; - - ao_to_sd_jtag_pins { - amlogic,setmask = <0x6 0x300>; - amlogic,clrmask = <0x6 0xcff 0x10 0x1800>; - amlogic,pins = "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4e>; - phandle = <0x4e>; - }; - - sd_to_ao_jtag_pins { - amlogic,setmask = <0x10 0x1800>; - amlogic,clrmask = <0x6 0xfc0>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4f>; - phandle = <0x4f>; - }; - - emmc_clk_cmd_pins { - amlogic,setmask = <0x7 0x60000000>; - amlogic,clrmask = <0x7 0xe0>; - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x43>; - phandle = <0x43>; - }; - - emmc_conf_pull_up { - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_10"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x44>; - phandle = <0x44>; - }; - - emmc_conf_pull_done { - amlogic,pins = "BOOT_15"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x45>; - phandle = <0x45>; - }; - - emmc_all_pins { - amlogic,setmask = <0x7 0xf0000000>; - amlogic,clrmask = <0x7 0xe0>; - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_10", "BOOT_15"; - amlogic,enable-output = <0x1>; - linux,phandle = <0x46>; - phandle = <0x46>; - }; - - sdio_clk_cmd_pins { - amlogic,setmask = <0x5 0xc000000>; - amlogic,pins = "GPIOX_4", "GPIOX_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x50>; - phandle = <0x50>; - }; - - sdio_all_pins { - amlogic,setmask = <0x5 0xfc000000>; - amlogic,pins = "GPIOX_0", "GPIOX_1", "GPIOX_2", "GPIOX_3", "GPIOX_4", "GPIOX_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x51>; - phandle = <0x51>; - }; - - conf_nand_pulldown { - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_15"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x52>; - phandle = <0x52>; - }; - - conf_nand_pullup { - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x53>; - phandle = <0x53>; - }; - - all_nand_pins { - amlogic,setmask = <0x7 0x800000ff>; - amlogic,clrmask = <0x7 0x70ffbc00>; - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_9", "BOOT_10", "BOOT_11", "BOOT_12", "BOOT_13", "BOOT_14", "BOOT_15"; - amlogic,enable-output = <0x1>; - linux,phandle = <0x54>; - phandle = <0x54>; - }; - - nand_cs { - amlogic,setmask = <0x7 0xc0>; - amlogic,clrmask = <0x7 0x40040000>; - amlogic,pins = "BOOT_8", "BOOT_9"; - linux,phandle = <0x55>; - phandle = <0x55>; - }; - - hdmitx_hpd { - amlogic,setmask = <0x6 0x80000000>; - amlogic,pins = "GPIOH_0"; - linux,phandle = <0x65>; - phandle = <0x65>; - }; - - hdmitx_ddc { - amlogic,setmask = <0x6 0x30000000>; - amlogic,pins = "GPIOH_1", "GPIOH_2"; - linux,phandle = <0x66>; - phandle = <0x66>; - }; - - hdmitx_aocec { - amlogic,setmask = <0x10 0x8000>; - amlogic,clrmask = <0x10 0x24000 0x11 0x1>; - amlogic,pins = "GPIOAO_8"; - linux,phandle = <0x67>; - phandle = <0x67>; - }; - - hdmitx_eecec { - amlogic,setmask = <0x10 0x4000>; - amlogic,clrmask = <0x10 0x28000 0x11 0x1>; - amlogic,pins = "GPIOAO_8"; - }; - - ao_i2c { - amlogic,setmask = <0x10 0x60>; - amlogic,clrmask = <0x10 0x1800006>; - amlogic,pins = "GPIOAO_4", "GPIOAO_5"; - linux,phandle = <0x1b>; - phandle = <0x1b>; - }; - - a_i2c { - amlogic,setmask = <0x1 0xc000>; - amlogic,clrmask = <0x3 0x18 0x2 0x18000 0x2 0xc0 0x1 0x600000>; - amlogic,pins = "GPIODV_24", "GPIODV_25"; - linux,phandle = <0x1c>; - phandle = <0x1c>; - }; - - b_i2c { - amlogic,setmask = <0x1 0x3000>; - amlogic,clrmask = <0x2 0x6000 0x1 0x1c0000>; - amlogic,pins = "GPIODV_26", "GPIODV_27"; - linux,phandle = <0x1d>; - phandle = <0x1d>; - }; - - c_i2c { - amlogic,setmask = <0x1 0xc00>; - amlogic,clrmask = <0x2 0x1800 0x1 0x200 0x2 0x20>; - amlogic,pins = "GPIODV_28", "GPIODV_29"; - linux,phandle = <0x1e>; - phandle = <0x1e>; - }; - - c_i2c_pin1 { - amlogic,setmask = <0x1 0x30000>; - amlogic,clrmask = <0x1 0x2000000 0x3 0x20>; - amlogic,pins = "GPIODV_18", "GPIODV_19"; - }; - - d_i2c { - amlogic,setmask = <0x5 0x30>; - amlogic,clrmask = <0x5 0x300c03 0x6 0x3>; - amlogic,pins = "GPIOX_10", "GPIOX_11"; - linux,phandle = <0x1f>; - phandle = <0x1f>; - }; - - spicc_pins_z11z12z13 { - amlogic,setmask = <0x4 0x1c>; - amlogic,clrmask = <0x3 0x800 0x4 0x1c00>; - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - }; - - spicc_pulldown_z11z12z13 { - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - }; - - spicc_pullup_z11z12z13 { - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - }; - - spicc_pins_x8x9x11 { - amlogic,setmask = <0x5 0xd>; - amlogic,clrmask = <0x5 0xd03430 0x6 0xd>; - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - }; - - spicc_pulldown_x8x9x11 { - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - }; - - spicc_pullup_x8x9x11 { - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - }; - - audio_pin { - amlogic,setmask = <0x6 0x7800000>; - amlogic,clrmask = <0x6 0x7e0000>; - amlogic,pins = "GPIOH_6", "GPIOH_7", "GPIOH_8", "GPIOH_9"; - linux,phandle = <0x70>; - phandle = <0x70>; - }; - - audio_pin1 { - amlogic,setmask = <0x6 0x10000000>; - amlogic,clrmask = <0x6 0x8000000>; - amlogic,pins = "GPIOH_4"; - linux,phandle = <0x6f>; - phandle = <0x6f>; - }; - - audio_btpcm_pins { - amlogic,setmask = <0x5 0xf00000>; - amlogic,clrmask = <0x5 0x3c33>; - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - linux,phandle = <0x6e>; - phandle = <0x6e>; - }; - }; - - cpu_version { - reg = <0x0 0xc8100220 0x0 0x4>; - }; - - meson_clk_msr { - compatible = "amlogic, gxl_measure"; - reg = <0x0 0xc110875c 0x0 0x4 0x0 0xc1108764 0x0 0x4>; - }; - - i2c@c8100500 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-AO"; - status = "disabled"; - reg = <0x0 0xc8100500 0x0 0x1d>; - device_id = <0x0>; - pinctrl-names = "default"; - pinctrl-0 = <0x1b>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c1108500 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-A"; - status = "disabled"; - reg = <0x0 0xc1108500 0x0 0x20>; - device_id = <0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x1c>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c11087c0 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-B"; - status = "okay"; - reg = <0x0 0xc11087c0 0x0 0x20>; - device_id = <0x2>; - pinctrl-names = "default"; - pinctrl-0 = <0x1d>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x186a0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - - khadas-hym8563 { - compatible = "khadas-hym8563"; - reg = <0x51>; - }; - }; - - i2c@c11087e0 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-C"; - status = "disabled"; - reg = <0x0 0xc11087e0 0x0 0x20>; - device_id = <0x3>; - pinctrl-names = "default"; - pinctrl-0 = <0x1e>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c1108d20 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-D"; - status = "disabled"; - reg = <0x0 0xc1108d20 0x0 0x20>; - device_id = <0x4>; - pinctrl-names = "default"; - pinctrl-0 = <0x1f>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - efuse { - compatible = "amlogic, efuse"; - read_cmd = <0x82000030>; - write_cmd = <0x82000031>; - get_max_cmd = <0x82000033>; - key = <0x20>; - resets = <0x6 0x3e>; - reset-names = "efuse_clk"; - status = "ok"; - }; - - efusekey { - keynum = <0x4>; - key0 = <0x21>; - key1 = <0x22>; - key2 = <0x23>; - key3 = <0x24>; - linux,phandle = <0x20>; - phandle = <0x20>; - - key_0 { - keyname = "mac"; - offset = <0x0>; - size = <0xc>; - linux,phandle = <0x21>; - phandle = <0x21>; - }; - - key_1 { - keyname = "mac_bt"; - offset = <0xc>; - size = <0xc>; - linux,phandle = <0x22>; - phandle = <0x22>; - }; - - key_2 { - keyname = "mac_wifi"; - offset = <0x18>; - size = <0xc>; - linux,phandle = <0x23>; - phandle = <0x23>; - }; - - key_3 { - keyname = "usid"; - offset = <0x24>; - size = <0xc>; - linux,phandle = <0x24>; - phandle = <0x24>; - }; - }; - - mhu@c883c400 { - compatible = "amlogic, meson_mhu"; - reg = <0x0 0xc883c400 0x0 0x4c 0x0 0xc8013000 0x0 0x800>; - interrupts = <0x0 0xd1 0x8 0x0 0xd2 0x8>; - #mbox-cells = <0x1>; - mbox-names = "cpu_to_scp_low", "cpu_to_scp_high"; - mboxes = <0x25 0x0 0x25 0x1>; - linux,phandle = <0x25>; - phandle = <0x25>; - }; - - scpi_clocks { - compatible = "arm,scpi-clks"; - - scpi_clocks@0 { - compatible = "arm,scpi-clk-indexed"; - #clock-cells = <0x1>; - clock-indices = <0x0 0x1>; - clock-output-names = "vbig", "vlittle"; - linux,phandle = <0x15>; - phandle = <0x15>; - }; - }; - - rc@c8100580 { - compatible = "amlogic, aml_remote"; - dev_name = "meson-remote"; - reg = <0x0 0xc8100580 0x0 0x44 0x0 0xc8100480 0x0 0x20>; - status = "okay"; - protocol = <0x1>; - interrupts = <0x0 0xc4 0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x26>; - map = <0x27>; - max_frame_time = <0xc8>; - }; - - custom_maps { - mapnum = <0x4>; - map0 = <0x28>; - map1 = <0x29>; - map2 = <0x2a>; - map3 = <0x2b>; - linux,phandle = <0x27>; - phandle = <0x27>; - - map_0 { - mapname = "amlogic-remote-1"; - customcode = <0xfb04>; - release_delay = <0x50>; - size = <0x2c>; - keymap = <0x47000b 0x130002 0x100003 0x110004 0xf0005 0xc0006 0xd0007 0xb0008 0x80009 0x9000a 0x5c0061 0x510041 0x49000e 0x60082 0x140083 0x440067 0x1d006c 0x1c0069 0x48006a 0x53007d 0x450068 0x19006d 0x160066 0x520077 0x5007a 0x59007b 0x1b0078 0x40079 0x1a0074 0xa000f 0xe0071 0x15003f 0x1f0066 0x1e0084 0x70085 0x120086 0x540087 0x20088 0x4f001e 0x420030 0x5d002e 0x4c0020 0x580089 0x55008c>; - linux,phandle = <0x28>; - phandle = <0x28>; - }; - - map_1 { - mapname = "amlogic-remote-2"; - customcode = <0xfe01>; - release_delay = <0x50>; - size = <0x35>; - keymap = <0x10002 0x20003 0x30004 0x40005 0x50006 0x60007 0x70008 0x80009 0x9000a 0xa000b 0x1f01d2 0x15008b 0x16000f 0xc0192 0xd0193 0xe0073 0xf0072 0x110066 0x1c006a 0x1b0069 0x190067 0x1a006c 0x1d001c 0x170071 0x4900db 0x43009e 0x1201d5 0x1401d6 0x1801d7 0x590166 0x5a00a6 0x100074 0x4200a5 0x4400a3 0x1e00a8 0x4b00d0 0x5800a4 0x460082 0x400083 0x380046 0x5701d0 0x5b01d1 0x54018e 0x4c018f 0x4e0190 0x550191 0x5300ed 0x5200ee 0x3900d4 0x4100d5 0xb00d6 0xd8 0x1300d9>; - linux,phandle = <0x29>; - phandle = <0x29>; - }; - - map_2 { - mapname = "amlogic-remote-3"; - customcode = <0xbd02>; - release_delay = <0x50>; - size = <0x11>; - keymap = <0xca0067 0xd2006c 0x990069 0xc1006a 0xce0061 0x450074 0xc50085 0x800071 0xd0000f 0xd6007d 0x950066 0xdd0068 0x8c006d 0x890083 0x9c0082 0x9a0078 0xcd0079>; - linux,phandle = <0x2a>; - phandle = <0x2a>; - }; - - map_3 { - mapname = "khadas-ir"; - customcode = <0xff00>; - release_delay = <0x50>; - fn_key_scancode = <0x5c>; - fn_key_scancode_other = <0x5b>; - cursor_left_scancode = <0xe>; - cursor_right_scancode = <0x1a>; - cursor_up_scancode = <0x3>; - cursor_down_scancode = <0x2>; - cursor_ok_scancode = <0x7>; - size = <0xd>; - keymap = <0x140074 0x13008b 0x30067 0x2006c 0xe0069 0x1a006a 0x700e8 0x580072 0x5c003f 0x5b003f 0xb0073 0x1009e 0x480066>; - linux,phandle = <0x2b>; - phandle = <0x2b>; - }; - }; - - rng { - compatible = "amlogic,meson-rng"; - reg = <0x0 0xc8834000 0x0 0x4>; - }; - - audio_data { - compatible = "amlogic, audio_data"; - query_licence_cmd = <0x82000050>; - status = "okay"; - }; - - saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0x0 0x9 0x1>; - interrupt-names = "saradc_int"; - clocks = <0x6 0x2>; - clock-names = "saradc_clk"; - resets = <0x6 0x56>; - reg = <0x0 0xc1108680 0x0 0x30 0x0 0xc883c3d8 0x0 0x8>; - }; - - defendkey { - compatible = "amlogic, defendkey"; - reg = <0x0 0xc8834500 0x0 0x4>; - mem_size = <0x0 0x100000>; - status = "okay"; - }; - - spicc { - compatible = "amlogic, spicc"; - status = "disabled"; - reg = <0x0 0xc1108d80 0x0 0x28>; - resets = <0x6 0x8>; - reset-names = "spicc_clk"; - clocks = <0x6 0xa>; - clock-names = "clk81"; - interrupts = <0x0 0x51 0x1>; - device_id = <0x0>; - }; - - aml_aes { - compatible = "amlogic,aes_dma"; - dev_name = "aml_aes_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aml_tdes { - compatible = "amlogic,des_dma,tdes_dma"; - dev_name = "aml_tdes_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aml_sha { - compatible = "amlogic,sha_dma"; - dev_name = "aml_sha_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - meson-pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - #pwm-cells = <0x2>; - pwm-outputs = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xa 0xb 0xc 0xd 0xe 0xf>; - reg = <0x0 0xc1108550 0x0 0x1c 0x0 0xc1108640 0x0 0x1c 0x0 0xc11086c0 0x0 0x1c 0x0 0xc8100550 0x0 0x1c>; - clocks = <0x6 0x2 0x6 0x5 0x6 0x9 0x6 0x8>; - clock-names = "xtal", "vid_pll_clk", "fclk_div4", "fclk_div3"; - clock-select = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>; - }; - - partitions { - parts = <0xb>; - part-0 = <0x2c>; - part-1 = <0x2d>; - part-2 = <0x2e>; - part-3 = <0x2f>; - part-4 = <0x30>; - part-5 = <0x31>; - part-6 = <0x32>; - part-7 = <0x33>; - part-8 = <0x34>; - part-9 = <0x35>; - part-10 = <0x36>; - - logo { - pname = "logo"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x2c>; - phandle = <0x2c>; - }; - - recovery { - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x2d>; - phandle = <0x2d>; - }; - - rsv { - pname = "rsv"; - size = <0x0 0x800000>; - mask = <0x1>; - linux,phandle = <0x2e>; - phandle = <0x2e>; - }; - - tee { - pname = "tee"; - size = <0x0 0x800000>; - mask = <0x1>; - linux,phandle = <0x2f>; - phandle = <0x2f>; - }; - - crypt { - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x30>; - phandle = <0x30>; - }; - - misc { - pname = "misc"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x31>; - phandle = <0x31>; - }; - - boot { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x32>; - phandle = <0x32>; - }; - - system { - pname = "system"; - size = <0x0 0x80000000>; - mask = <0x1>; - linux,phandle = <0x33>; - phandle = <0x33>; - }; - - cache { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <0x2>; - linux,phandle = <0x34>; - phandle = <0x34>; - }; - - data { - pname = "data"; - size = <0x0 0xffffffff>; - mask = <0x4>; - linux,phandle = <0x35>; - phandle = <0x35>; - }; - - rootfs { - pname = "rootfs"; - size = <0xffffffff 0xffffffff>; - mask = <0x4>; - linux,phandle = <0x36>; - phandle = <0x36>; - }; - }; - - aliases { - serial0 = "/serial@c81004c0"; - serial1 = "/serial@c11084c0"; - serial2 = "/serial@c11084dc"; - serial3 = "/serial@c1108700"; - serial4 = "/serial@c81004e0"; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory-2g = <0x0 0x100000 0x0 0x7ff00000>; - linux,usable-memory-3g = <0x0 0x100000 0x0 0xbff00000>; - }; - - reserved-memory { - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - linux,phandle = <0x18>; - phandle = <0x18>; - }; - - linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x5300000 0x0 0x2000000>; - no-map; - }; - - aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x7300000 0x0 0x100000>; - no-map; - }; - - linux,di { - compatible = "amlogic, di-mem"; - size = <0x0 0x1e00000>; - linux,phandle = <0x3f>; - phandle = <0x3f>; - }; - - linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x4000000>; - linux,phandle = <0x3c>; - phandle = <0x3c>; - }; - - linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x1000000>; - alignment = <0x0 0x400000>; - linux,phandle = <0x40>; - phandle = <0x40>; - }; - - linux,ppmgr { - compatible = "shared-dma-pool"; - size = <0x0 0x0>; - linux,phandle = <0x3e>; - phandle = <0x3e>; - }; - - linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - linux,phandle = <0x39>; - phandle = <0x39>; - }; - - linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - linux,phandle = <0x3d>; - phandle = <0x3d>; - }; - - linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - linux,phandle = <0x3a>; - phandle = <0x3a>; - }; - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <0x37 0x9 0x0>; - led_active_low = <0x1>; - }; - - fan { - compatible = "fanctl"; - fan_ctl0 = <0x38 0x3f 0x0>; - fan_ctl1 = <0x38 0x40 0x0>; - trig_temp_level0 = <0x32>; - trig_temp_level1 = <0x3c>; - trig_temp_level2 = <0x46>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0x0 0x3 0x1 0x0 0x59 0x1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x1851000 0x100000>; - display_mode_default = "1080p60hz"; - scale_mode = <0x1>; - display_size_default = <0x780 0x438 0x780 0xca8 0x20>; - logo_addr_2g = "0x7d851000"; - logo_addr_3g = "0xbd851000"; - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0x0 0x96 0x1>; - interrupt-names = "ge2d"; - clocks = <0x6 0x17 0x6 0x19>; - clock-names = "clk_vapb_0", "clk_ge2d"; - resets = <0x6 0x34>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - - io_dos_base { - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - - io_hiubus_base { - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - - io_vcbus_base { - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - - io_dmc_base { - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <0x39 0x3a>; - dev_name = "codec_mm"; - status = "okay"; - }; - - ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 0x0 0xc8834540 0x0 0x8 0x0 0xc8834558 0x0 0xc>; - interrupts = <0x0 0x8 0x1>; - phy-mode = "rgmii"; - pinctrl-names = "external_eth_pins"; - pinctrl-0 = <0x3b>; - rst_pin-gpios = <0x38 0xe 0x0>; - GPIOZ4_pin-gpios = <0x38 0x4 0x0>; - GPIOZ5_pin-gpios = <0x38 0x5 0x0>; - mc_val = <0x1621>; - cali_val = <0x20000>; - resets = <0x6 0x23>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <0x6 0xa>; - clock-names = "ethclk81"; - internal_phy = <0x0>; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <0x6 0x39 0x6 0x59 0x6 0x24 0x6 0x1>; - reset-names = "parser_top", "vpu_intr", "demux", "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <0x8>; - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <0x3c>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0x0 0x3 0x1 0x0 0x17 0x1 0x0 0x20 0x1 0x0 0x2b 0x1 0x0 0x2c 0x1 0x0 0x2d 0x1>; - interrupt-names = "vsync", "demux", "parser", "mailbox_0", "mailbox_1", "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <0x3d>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr"; - memory-region = <0x3e>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <0x3f>; - interrupts = <0x0 0x2e 0x1 0x0 0x6 0x1>; - interrupt-names = "de_irq", "timerc"; - buffer-size = <0x2fd000>; - hw-version = <0x2>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0x1>; - cma_size = <0x10>; - interrupts = <0x0 0x53 0x1>; - rdma-irq = <0x2>; - clocks = <0x6 0x11 0x6 0x29>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0x0>; - tv_bit_mode = <0x1>; - }; - - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <0x40>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0x0>; - interrupts = <0x0 0x55 0x1>; - rdma-irq = <0x4>; - clocks = <0x6 0x11 0x6 0x29>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0x1>; - tv_bit_mode = <0x1>; - }; - - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <0x6 0x7 0x6 0x26>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0x0>; - }; - - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <0x6 0x7 0x6 0x27>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <0x1>; - }; - - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0x0>; - wb_en = <0x0>; - cm_en = <0x0>; - }; - - amvenc_avc { - compatible = "amlogic, amvenc_avc"; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0x0 0x2d 0x1>; - interrupt-names = "mailbox_2"; - }; - - hevc_enc { - compatible = "cnm, HevcEnc"; - dev_name = "HevcEnc"; - status = "okay"; - interrupts = <0x0 0xbb 0x1>; - interrupt-names = "wave420l_irq"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_reg_base { - reg = <0x0 0xc8810000 0x0 0x4000>; - }; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <0x7>; - }; - - bt-dev { - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "okay"; - gpio_reset = <0x38 0x60 0x0>; - }; - - rtc { - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <0x38 0x56 0x0>; - interrupts = <0x0 0x44 0x4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <0x38 0x55 0x0>; - dhd_static_buf; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <0x41>; - pwm_config = <0x42>; - }; - - wifi_pwm_conf { - pwm_channel1 = <0x4>; - pwm_channel2 = <0xc>; - pwm_channel1_conf = <0x774d 0x3ba6 0x6>; - pwm_channel2_conf = <0x7736 0x3b9b 0x9>; - linux,phandle = <0x42>; - phandle = <0x42>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = <0x0 0xda 0x1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <0x43>; - pinctrl-1 = <0x44 0x45 0x46>; - - emmc { - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_8_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_1_8V_DDR", "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <0x493e0>; - f_max = <0x5f5e100>; - max_req_size = <0x20000>; - gpio_dat3 = <0x38 0x1d 0x0>; - hw_reset = <0x38 0x23 0x0>; - card_type = <0x1>; - }; - }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = <0x0 0xd9 0x1 0x0 0x43 0x1 0x0 0x45 0x1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins", "sd_clk_cmd_uart_pins", "sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins", "ao_to_sd_jtag_pins", "sd_to_ao_jtag_pins"; - pinctrl-0 = <0x47>; - pinctrl-1 = <0x48>; - pinctrl-2 = <0x49>; - pinctrl-3 = <0x4a>; - pinctrl-4 = <0x4b>; - pinctrl-5 = <0x4c>; - pinctrl-6 = <0x4d>; - pinctrl-7 = <0x4e>; - pinctrl-8 = <0x4f>; - - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED"; - f_min = <0x61a80>; - f_max = <0x5f5e100>; - max_req_size = <0x20000>; - gpio_dat3 = <0x38 0x2e 0x0>; - jtag_pin = <0x38 0x2a 0x0>; - gpio_cd = <0x38 0x30 0x0>; - card_in_delay = <0x190>; - irq_in = <0x3>; - irq_out = <0x5>; - card_type = <0x5>; - }; - }; - - sdio { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = <0x0 0xd8 0x1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <0x50>; - pinctrl-1 = <0x51>; - - sdio { - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_UHS_SDR12", "MMC_CAP_UHS_SDR25", "MMC_CAP_UHS_SDR50", "MMC_CAP_UHS_SDR104", "MMC_PM_KEEP_POWER"; - f_min = <0x61a80>; - f_max = <0xbebc200>; - max_req_size = <0x20000>; - card_type = <0x3>; - }; - }; - - nand { - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = <0x0 0x22 0x1>; - pinctrl-names = "nand_rb_mod", "nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <0x52 0x53 0x54>; - pinctrl-1 = <0x52 0x53 0x54>; - pinctrl-2 = <0x55>; - device_id = <0x0>; - plat-names = "nandnormal"; - plat-num = <0x1>; - plat-part-0 = <0x56>; - - normal { - enable_pad = "ce0", "ce1", "ce2", "ce3"; - busy_pad = "rb0"; - linux,phandle = <0x56>; - phandle = <0x56>; - }; - }; - - aml_nftl { - compatible = "amlogic, nftl"; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - unifykey-num = <0xe>; - unifykey-index-0 = <0x57>; - unifykey-index-1 = <0x58>; - unifykey-index-2 = <0x59>; - unifykey-index-3 = <0x5a>; - unifykey-index-4 = <0x5b>; - unifykey-index-5 = <0x5c>; - unifykey-index-6 = <0x5d>; - unifykey-index-7 = <0x5e>; - unifykey-index-8 = <0x5f>; - unifykey-index-9 = <0x60>; - unifykey-index-10 = <0x61>; - unifykey-index-11 = <0x62>; - unifykey-index-12 = <0x63>; - unifykey-index-13 = <0x64>; - - key_0 { - key-name = "usid"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x57>; - phandle = <0x57>; - }; - - key_1 { - key-name = "mac"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x58>; - phandle = <0x58>; - }; - - key_2 { - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read", "write", "del"; - linux,phandle = <0x59>; - phandle = <0x59>; - }; - - key_3 { - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - linux,phandle = <0x5a>; - phandle = <0x5a>; - }; - - key_4 { - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read", "write", "del"; - key-type = "mac"; - linux,phandle = <0x5b>; - phandle = <0x5b>; - }; - - key_5 { - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read", "write", "del"; - key-type = "mac"; - linux,phandle = <0x5c>; - phandle = <0x5c>; - }; - - key_6 { - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5d>; - phandle = <0x5d>; - }; - - key_7 { - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5e>; - phandle = <0x5e>; - }; - - key_8 { - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5f>; - phandle = <0x5f>; - }; - - key_9 { - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x60>; - phandle = <0x60>; - }; - - key_10 { - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x61>; - phandle = <0x61>; - }; - - key_11 { - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x62>; - phandle = <0x62>; - }; - - key_12 { - key-name = "prpubkeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x63>; - phandle = <0x63>; - }; - - key_13 { - key-name = "prprivkeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x64>; - phandle = <0x64>; - }; - }; - - amhdmitx { - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names = "hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0 = <0x65>; - pinctrl-1 = <0x66>; - interrupts = <0x0 0x39 0x1>; - interrupt-names = "hdmitx_hpd"; - clocks = <0x6 0xb 0x6 0xc 0x6 0xd 0x6 0xe 0x6 0xf 0x6 0x16>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - }; - - aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; - vendor_id = <0x0>; - product_desc = "GXBB Mbox"; - cec_osd_string = "MBox"; - port_num = <0x1>; - arc_port_mask = <0x0>; - interrupts = <0x0 0xc7 0x1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0 = <0x67>; - reg = <0x0 0xc810023c 0x0 0x4 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <0xa>; - gpios = <0x38 0x11 0x0 0x38 0x12 0x0>; - #address-cells = <0x2>; - #size-cells = <0x2>; - i2c-gpio,timeout-ms = <0xa>; - - i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0x0 0xc1 0x1>; - status = "okay"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - xtal_tick_en = <0x1>; - fifosize = <0x40>; - pinctrl-names = "default"; - support-sysrq = <0x0>; - }; - - serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0x0 0x1a 0x1>; - status = "okay"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x80>; - pinctrl-names = "default"; - pinctrl-0 = <0x68>; - resets = <0x6 0xd>; - }; - - serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0x0 0x4b 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x69>; - resets = <0x6 0x30>; - }; - - serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0x0 0x5d 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x6a>; - resets = <0x6 0x4f>; - }; - - serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0x0 0xc5 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x6b>; - }; - - canvas { - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma { - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0x0 0x59 0x1>; - interrupt-names = "rdma"; - }; - - dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0x0 0x1e 0x4>; - usb-phy = <0x6c 0x6d>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <0x3>; - reg = <0x0 0xd0078000 0x0 0x80>; - linux,phandle = <0x6c>; - phandle = <0x6c>; - }; - - usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0x0>; - reg = <0x0 0xd0078080 0x0 0x20>; - interrupts = <0x0 0x10 0x4>; - otg = <0x1>; - gpio-vbus-power = "GPIOAO_5"; - gpios = <0x37 0x5 0x0>; - linux,phandle = <0x6d>; - phandle = <0x6d>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0x0 0x1f 0x4>; - pl-periph-id = <0x0>; - clock-src = "usb0"; - port-id = <0x0>; - port-type = <0x2>; - port-speed = <0x0>; - port-config = <0x0>; - port-dma = <0x0>; - port-id-mode = <0x0>; - usb-fifo = <0x2d8>; - cpu-type = "gxl"; - controller-type = <0x2>; - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <0x6 0x3a 0x6 0x48 0x6 0x36>; - reset-names = "usb_general", "usb1", "usb1_to_ddr"; - }; - - I2S { - #sound-dai-cells = <0x0>; - resets = <0x6 0x26 0x6 0x12 0x6 0x28 0x6 0x29 0x6 0x2a 0x6 0x2b 0x6 0x2c 0x6 0x2d 0x6 0x2f 0x6 0x8e 0x6 0x22>; - reset-names = "top_glue", "aud_buf", "i2s_out", "amclk_measure", "aififo2", "aud_mixer", "mixer_reg", "adc", "top_level", "aoclk", "aud_in"; - clocks = <0x6 0x21 0x6 0x22>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - linux,phandle = <0x79>; - phandle = <0x79>; - }; - - SPDIF { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-spdif-dai"; - resets = <0x6 0x27 0x6 0x90>; - reset-names = "iec958", "iec958_amclk"; - clocks = <0x6 0x20 0x6 0x24 0x6 0x22 0x6 0x25 0x6 0xa>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - linux,phandle = <0x7a>; - phandle = <0x7a>; - }; - - PCM { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <0x6e>; - clocks = <0x6 0x1f 0x6 0x2a 0x6 0x2b>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <0x1>; - linux,phandle = <0x7b>; - phandle = <0x7b>; - }; - - i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0x0 0x1d 0x1>; - linux,phandle = <0x77>; - phandle = <0x77>; - }; - - pcm_platform { - compatible = "amlogic, aml-pcm"; - linux,phandle = <0x78>; - phandle = <0x78>; - }; - - spdif_codec { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <0x6f>; - linux,phandle = <0x7d>; - phandle = <0x7d>; - }; - - pcm_codec { - #sound-dai-cells = <0x0>; - compatible = "amlogic, pcm2BT-codec"; - linux,phandle = <0x7e>; - phandle = <0x7e>; - }; - - dummy { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - - t9015 { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - linux,phandle = <0x7c>; - phandle = <0x7c>; - }; - - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = "Ext Spk", "LOUTL", "Ext Spk", "LOUTR"; - mute_gpio-gpios = <0x38 0x15 0x0>; - mute_inv; - hp_disable; - hp_paraments = <0x320 0x12c 0x0 0x5 0x1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <0x70>; - cpu_list = <0x71 0x72 0x73>; - codec_list = <0x74 0x75 0x76>; - plat_list = <0x77 0x77 0x78>; - - cpudai0 { - sound-dai = <0x79>; - linux,phandle = <0x71>; - phandle = <0x71>; - }; - - cpudai1 { - sound-dai = <0x7a>; - linux,phandle = <0x72>; - phandle = <0x72>; - }; - - cpudai2 { - sound-dai = <0x7b>; - linux,phandle = <0x73>; - phandle = <0x73>; - }; - - codec0 { - sound-dai = <0x7c>; - linux,phandle = <0x74>; - phandle = <0x74>; - }; - - codec1 { - sound-dai = <0x7d>; - linux,phandle = <0x75>; - phandle = <0x75>; - }; - - codec2 { - sound-dai = <0x7e>; - linux,phandle = <0x76>; - phandle = <0x76>; - }; - }; - - gpio_keypad { - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <0x14>; - key_num = <0x1>; - key_name = "power"; - key_code = <0x74>; - key_pin = <0x37 0x2 0x0>; - irq_keyup = <0x6>; - irq_keydown = <0x7>; - }; - - adc_keypad { - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "home"; - key_num = <0x1>; - key_code = <0x66>; - key_chan = <0x0>; - key_val = <0xa>; - key_tolerance = <0x28>; - }; - - aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <0x1>; - linux,phandle = <0x7f>; - phandle = <0x7f>; - - cooling_devices { - - cpufreq_cool_cluster0 { - min_state = <0xf4240>; - dyn_coeff = <0x8c>; - cluster_id = <0x0>; - node_name = "cluster0"; - device_type = "cpufreq"; - }; - - cpufreq_cool_cluster1 { - min_state = <0x7a120>; - dyn_coeff = <0x8c>; - cluster_id = <0x1>; - node_name = "cluster1"; - device_type = "cpufreq"; - }; - - cpucore_cool_cluster0 { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - - cpucore_cool_cluster1 { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x1>; - node_name = "cpu_core_cluster1"; - device_type = "cpucore"; - }; - - gpufreq_cool { - min_state = <0x190>; - dyn_coeff = <0x1b5>; - cluster_id = <0x0>; - node_name = "t82x"; - device_type = "gpufreq"; - }; - - gpucore_cool { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - - cpu_core_cluster0 { - #cooling-cells = <0x2>; - linux,phandle = <0x83>; - phandle = <0x83>; - }; - - cpu_core_cluster1 { - #cooling-cells = <0x2>; - linux,phandle = <0x84>; - phandle = <0x84>; - }; - - thermal_gpu_cores { - #cooling-cells = <0x2>; - linux,phandle = <0x86>; - phandle = <0x86>; - }; - }; - - thermal-zones { - - soc_thermal { - polling-delay = <0x3e8>; - polling-delay-passive = <0x64>; - sustainable-power = <0x992>; - thermal-sensors = <0x7f 0x3>; - - trips { - - trip-point@0 { - temperature = <0x11170>; - hysteresis = <0x3e8>; - type = "passive"; - }; - - trip-point@1 { - temperature = <0x13880>; - hysteresis = <0x3e8>; - type = "passive"; - linux,phandle = <0x80>; - phandle = <0x80>; - }; - - trip-point@2 { - temperature = <0x14c08>; - hysteresis = <0x1388>; - type = "hot"; - }; - - trip-point@3 { - temperature = <0x3f7a0>; - hysteresis = <0x3e8>; - type = "critical"; - }; - }; - - cooling-maps { - - cpufreq_cooling_map0 { - trip = <0x80>; - cooling-device = <0x81 0x0 0x4>; - contribution = <0x400>; - }; - - cpufreq_cooling_map1 { - trip = <0x80>; - cooling-device = <0x82 0x0 0x4>; - contribution = <0x400>; - }; - - cpucore_cooling_map0 { - trip = <0x80>; - cooling-device = <0x83 0x0 0x3>; - contribution = <0x400>; - }; - - cpucore_cooling_map1 { - trip = <0x80>; - cooling-device = <0x84 0x0 0x3>; - contribution = <0x400>; - }; - - gpufreq_cooling_map { - trip = <0x80>; - cooling-device = <0x85 0x0 0x4>; - contribution = <0x400>; - }; - - gpucore_cooling_map { - trip = <0x80>; - cooling-device = <0x86 0x0 0x2>; - contribution = <0x400>; - }; - }; - }; - }; -}; diff --git a/arch/arm64/boot/dts/kvim2_libreelec.dts b/arch/arm64/boot/dts/kvim2_libreelec.dts deleted file mode 100644 index 776ec83efe78d..0000000000000 --- a/arch/arm64/boot/dts/kvim2_libreelec.dts +++ /dev/null @@ -1,2415 +0,0 @@ -/dts-v1/; - -/ { - model = "Amlogic"; - compatible = "amlogic, Gxm"; - amlogic-dt-id = "kvim"; - interrupt-parent = <0x1>; - #address-cells = <0x2>; - #size-cells = <0x2>; - - t82x@d00c0000 { - compatible = "arm,malit602", "arm,malit60x", "arm,malit6xx", "arm,mali-midgard"; - #cooling-cells = <0x2>; - reg = <0x0 0xd00c0000 0x0 0x100000 0x0 0xc1104440 0x0 0x1000 0x0 0xc8100000 0x0 0x1000 0x0 0xc883c000 0x0 0x1000 0x0 0xc1104440 0x0 0x1000>; - interrupt-parent = <0x1>; - interrupts = <0x0 0xa0 0x4 0x0 0xa1 0x4 0x0 0xa2 0x4>; - interrupt-names = "GPU", "MMU", "JOB"; - num_of_pp = <0x3>; - sc_mpp = <0x1>; - operating-points = <0xa2c2a 0xf4240 0x7a120 0xf4240 0x61a80 0xf4240 0x45c12 0xf4240 0x3d090 0xf4240 0x1e848 0xf4240>; - tbl = <0x2 0x3 0x4 0x5 0x5>; - clocks = <0x6 0x8 0x6 0x9 0x6 0x11 0x6 0x12 0x6 0x1e 0x6 0x15 0x6 0x13 0x6 0x14>; - clock-names = "fclk_div3", "fclk_div4", "fclk_div5", "fclk_div7", "gp0_pll", "clk_gpu", "clk_gpu_0", "clk_gpu_1"; - linux,phandle = <0x80>; - phandle = <0x80>; - - clk125_cfg { - clk_freq = <0x7735940>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x1e 0x78>; - }; - - dvfs250_cfg { - clk_freq = <0xee6b280>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x50 0xaa>; - }; - - dvfs285_cfg { - clk_freq = <0x1107a650>; - clk_parent = "fclk_div7"; - clkp_freq = <0x1107a650>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x64 0xbe>; - linux,phandle = <0x2>; - phandle = <0x2>; - }; - - dvfs400_cfg { - clk_freq = <0x17d78400>; - clk_parent = "fclk_div5"; - clkp_freq = <0x17d78400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x98 0xcf>; - linux,phandle = <0x3>; - phandle = <0x3>; - }; - - dvfs500_cfg { - clk_freq = <0x1dcd6500>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xb4 0xdc>; - linux,phandle = <0x4>; - phandle = <0x4>; - }; - - dvfs666_cfg { - clk_freq = <0x27b25a80>; - clk_parent = "fclk_div3"; - clkp_freq = <0x27b25a80>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xd2 0xec>; - linux,phandle = <0x5>; - phandle = <0x5>; - }; - - dvfs800_cfg { - clk_freq = <0x2f34f600>; - clk_parent = "gp0_pll"; - clkp_freq = <0x2f34f600>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xe6 0xff>; - }; - }; - - gpu_clk@c883c00 { - compatible = "meson, gpu-clkgen-1.00.a"; - #clock-cells = <0x0>; - reg = <0x0 0xc883c000 0x0 0x1000>; - clocks = <0x6 0x8 0x6 0x9 0x6 0x11 0x6 0x12 0x6 0x1e 0x6 0x15 0x6 0x13 0x6 0x14>; - clock-names = "fclk_div3", "fclk_div4", "fclk_div5", "fclk_div7", "gp0_pll", "clk_gpu", "clk_gpu_0", "clk_gpu_1"; - clock-output-names = "clk_mali"; - tbl = <0x7 0x8 0x9 0xa 0xb 0xc>; - - clk125_cfg { - clk_freq = <0x7735940>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x1e 0x78>; - linux,phandle = <0x7>; - phandle = <0x7>; - }; - - clk250_cfg { - clk_freq = <0xee6b280>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x50 0xaa>; - linux,phandle = <0x8>; - phandle = <0x8>; - }; - - clk285_cfg { - clk_freq = <0x1107a650>; - clk_parent = "fclk_div7"; - clkp_freq = <0x1107a650>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x64 0xbe>; - linux,phandle = <0x9>; - phandle = <0x9>; - }; - - clk400_cfg { - clk_freq = <0x17d78400>; - clk_parent = "fclk_div5"; - clkp_freq = <0x17d78400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x98 0xcf>; - linux,phandle = <0xa>; - phandle = <0xa>; - }; - - clk500_cfg { - clk_freq = <0x1dcd6500>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xb4 0xdc>; - linux,phandle = <0xb>; - phandle = <0xb>; - }; - - clk666_cfg { - clk_freq = <0x27bc8410>; - clk_parent = "fclk_div3"; - clkp_freq = <0x27bc8410>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xd2 0xec>; - linux,phandle = <0xc>; - phandle = <0xc>; - }; - - clk720_cfg { - clk_freq = <0x2aea5400>; - clk_parent = "gp0_pll"; - clkp_freq = <0x2aea5400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xe6 0xff>; - }; - }; - - cpus { - #address-cells = <0x2>; - #size-cells = <0x0>; - - cpu-map { - - cluster0 { - #cooling-cells = <0x2>; - linux,phandle = <0x7c>; - phandle = <0x7c>; - - core0 { - cpu = <0xd>; - }; - - core1 { - cpu = <0xe>; - }; - - core2 { - cpu = <0xf>; - }; - - core3 { - cpu = <0x10>; - }; - }; - - cluster1 { - #cooling-cells = <0x2>; - linux,phandle = <0x7d>; - phandle = <0x7d>; - - core0 { - cpu = <0x11>; - }; - - core1 { - cpu = <0x12>; - }; - - core2 { - cpu = <0x13>; - }; - - core3 { - cpu = <0x14>; - }; - }; - }; - - cpu@0 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x0>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xd>; - phandle = <0xd>; - }; - - cpu@1 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x1>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xe>; - phandle = <0xe>; - }; - - cpu@2 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x2>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xf>; - phandle = <0xf>; - }; - - cpu@3 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x3>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x10>; - phandle = <0x10>; - }; - - cpu@100 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x100>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x11>; - phandle = <0x11>; - }; - - cpu@101 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x101>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x12>; - phandle = <0x12>; - }; - - cpu@102 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x102>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x13>; - phandle = <0x13>; - }; - - cpu@103 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x103>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x14>; - phandle = <0x14>; - }; - - idle-states { - entry-method = "arm,psci"; - - cpu-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x10000>; - local-timer-stop; - entry-latency-us = <0x1f40>; - exit-latency-us = <0x1f40>; - min-residency-us = <0x4e20>; - linux,phandle = <0x16>; - phandle = <0x16>; - }; - - cluster-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x1010000>; - local-timer-stop; - entry-latency-us = <0x1f40>; - exit-latency-us = <0x1f40>; - min-residency-us = <0x61a8>; - linux,phandle = <0x17>; - phandle = <0x17>; - }; - }; - }; - - timer { - compatible = "arm,armv8-timer"; - interrupts = <0x1 0xd 0xff01 0x1 0xe 0xff01 0x1 0xb 0xff01 0x1 0xa 0xff01>; - }; - - timer_bc { - compatible = "arm, meson-bc-timer"; - reg = <0x0 0xc1109990 0x0 0x4 0x0 0xc1109994 0x0 0x4>; - timer_name = "Meson TimerF"; - clockevent-rating = <0x12c>; - clockevent-shift = <0x14>; - clockevent-features = <0x23>; - interrupts = <0x0 0x3c 0x1>; - bit_enable = <0x10>; - bit_mode = <0xc>; - bit_resolution = <0x0>; - }; - - arm_pmu { - compatible = "arm,armv8-pmuv3"; - interrupts = <0x0 0x89 0x4 0x0 0x8a 0x4 0x0 0x99 0x4 0x0 0x9a 0x4>; - }; - - pm { - compatible = "amlogic, pm"; - device_name = "aml_pm"; - gxbaby-suspend; - reg = <0x0 0xc81000a8 0x0 0x4 0x0 0xc810023c 0x0 0x4>; - }; - - interrupt-controller@2c001000 { - compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; - #interrupt-cells = <0x3>; - #address-cells = <0x0>; - interrupt-controller; - reg = <0x0 0xc4301000 0x0 0x1000 0x0 0xc4302000 0x0 0x100>; - interrupts = <0x1 0x9 0xf04>; - linux,phandle = <0x1>; - phandle = <0x1>; - }; - - aml_restart { - compatible = "aml, restart"; - sys_reset = <0x84000009>; - sys_poweroff = <0x84000008>; - }; - - psci { - compatible = "arm,psci"; - method = "smc"; - cpu_suspend = <0xc4000001>; - cpu_off = <0x84000002>; - cpu_on = <0xc4000003>; - migrate = <0xc4000005>; - }; - - secmon { - compatible = "amlogic, secmon"; - memory-region = <0x18>; - in_base_func = <0x82000020>; - out_base_func = <0x82000021>; - }; - - securitykey { - compatible = "aml, securitykey"; - storage_query = <0x82000060>; - storage_read = <0x82000061>; - storage_write = <0x82000062>; - storage_tell = <0x82000063>; - storage_verify = <0x82000064>; - storage_status = <0x82000065>; - storage_list = <0x82000067>; - storage_remove = <0x82000068>; - storage_in_func = <0x82000023>; - storage_out_func = <0x82000024>; - storage_block_func = <0x82000025>; - storage_size_func = <0x82000027>; - storage_set_enctype = <0x8200006a>; - storage_get_enctype = <0x8200006b>; - storage_version = <0x8200006c>; - }; - - cpu_iomap { - compatible = "amlogic, iomap"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - - io_apb_base { - reg = <0x0 0xd0000000 0x0 0x200000>; - }; - - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - }; - - cpufreq { - compatible = "arm, scpi-cpufreq"; - }; - - amlogic-watchdog { - compatible = "amlogic, gx-wdt"; - status = "disable"; - default_timeout = <0xa>; - reset_watchdog_method = <0x1>; - reset_watchdog_time = <0x2>; - shutdown_timeout = <0xa>; - firmware_timeout = <0x6>; - suspend_timeout = <0x6>; - reg = <0x0 0xc11098d0 0x0 0x10>; - clocks = <0x6 0x2>; - }; - - amlogic-jtag { - compatible = "amlogic, jtag"; - status = "okay"; - pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; - pinctrl-0 = <0x19>; - pinctrl-1 = <0x1a>; - }; - - meson_clock { - compatible = "amlogic, gxl-clock"; - reg = <0x0 0xc883c000 0x0 0x1000 0x0 0xc8100000 0x0 0x1000>; - #clock-cells = <0x1>; - #reset-cells = <0x1>; - sys_max = <0x5b8d8000>; - linux,phandle = <0x6>; - phandle = <0x6>; - }; - - cpu_info { - compatible = "amlogic, cpuinfo"; - cpuinfo_cmd = <0x82000044>; - }; - - pinmux { - compatible = "amlogic, pinmux-gxl"; - dev_name = "pinmux"; - #pinmux-cells = <0x2>; - #address-cells = <0x2>; - #size-cells = <0x2>; - reg = <0x0 0xc1109880 0x0 0x10>; - ranges; - - banks@c11080b0 { - reg = <0x0 0xc88344b0 0x0 0x28 0x0 0xc88344e8 0x0 0x14 0x0 0xc8834520 0x0 0x14 0x0 0xc8834430 0x0 0x40>; - reg-names = "mux", "pull", "pull-enable", "gpio"; - gpio-controller; - #gpio-cells = <0x2>; - linux,phandle = <0x28>; - phandle = <0x28>; - }; - - ao-bank@c1108030 { - reg = <0x0 0xc8100014 0x0 0x8 0x0 0xc810002c 0x0 0x4 0x0 0xc8100024 0x0 0x8>; - reg-names = "mux", "pull", "gpio"; - gpio-controller; - #gpio-cells = <0x2>; - linux,phandle = <0x27>; - phandle = <0x27>; - }; - - external_eth_pins { - amlogic,setmask = <0x4 0xfffc00>; - amlogic,clrmask = <0x4 0x3fc 0x3 0xffcff800>; - amlogic,pins = "GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3", "GPIOZ_4", "GPIOZ_5", "GPIOZ_6", "GPIOZ_7", "GPIOZ_8", "GPIOZ_9", "GPIOZ_10", "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - linux,phandle = <0x2b>; - phandle = <0x2b>; - }; - - internal_eth_pins { - amlogic,setmask = <0x4 0x3000000>; - amlogic,clrmask = <0x3 0x300000>; - amlogic,pins = "GPIOZ_14", "GPIOZ_15"; - }; - - jtag_apao_pin { - amlogic,clrmask = <0x6 0x7fe0000>; - amlogic,pins = "GPIOH_6", "GPIOH_7", "GPIOH_8", "GPIOH_9"; - linux,phandle = <0x19>; - phandle = <0x19>; - }; - - jtag_apee_pin { - amlogic,clrmask = <0x6 0x3c>; - amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3"; - linux,phandle = <0x1a>; - phandle = <0x1a>; - }; - - remote_pin { - amlogic,setmask = <0x10 0x1>; - amlogic,pins = "GPIOAO_7"; - linux,phandle = <0x26>; - phandle = <0x26>; - }; - - ao_uart { - amlogic,setmask = <0x10 0x1800>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - }; - - ao_b_uart { - amlogic,setmask = <0x10 0x1800000>; - amlogic,pins = "GPIOAO_4", "GPIOAO_5"; - linux,phandle = <0x66>; - phandle = <0x66>; - }; - - a_uart { - amlogic,setmask = <0x5 0xf0000>; - amlogic,clrmask = <0x5 0x3c0>; - amlogic,pins = "GPIOX_12", "GPIOX_13", "GPIOX_14", "GPIOX_15"; - linux,phandle = <0x63>; - phandle = <0x63>; - }; - - b_uart { - amlogic,setmask = <0x2 0x18000>; - amlogic,pins = "GPIODV_24", "GPIODV_25"; - linux,phandle = <0x64>; - phandle = <0x64>; - }; - - c_uart { - amlogic,setmask = <0x5 0x3000>; - amlogic,pins = "GPIOX_8", "GPIOX_9"; - linux,phandle = <0x65>; - phandle = <0x65>; - }; - - wifi_32k_pins { - amlogic,setmask = <0x5 0x8000>; - amlogic,pins = "GPIOX_16"; - linux,phandle = <0x31>; - phandle = <0x31>; - }; - - sd_clk_cmd_pins { - amlogic,setmask = <0x6 0xc 0x10 0x1800>; - amlogic,pins = "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x37>; - phandle = <0x37>; - }; - - sd_all_pins { - amlogic,setmask = <0x6 0x3f 0x10 0x1800>; - amlogic,clrmask = <0x6 0xfc0>; - amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3", "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x38>; - phandle = <0x38>; - }; - - sd_1bit_pins { - amlogic,setmask = <0x6 0x1c 0x10 0x1800>; - amlogic,clrmask = <0x6 0xcc3>; - amlogic,pins = "CARD_1", "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x39>; - phandle = <0x39>; - }; - - sd_clk_cmd_uart_pins { - amlogic,setmask = <0x6 0x30c>; - amlogic,clrmask = <0x6 0xcc3 0x10 0x1800>; - amlogic,pins = "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x3a>; - phandle = <0x3a>; - }; - - sd_1bit_uart_pins { - amlogic,setmask = <0x6 0x31c>; - amlogic,clrmask = <0x6 0xcc3 0x10 0x1800>; - amlogic,pins = "CARD_1", "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x3b>; - phandle = <0x3b>; - }; - - sd_to_ao_uart_pins { - amlogic,setmask = <0x10 0x1800>; - amlogic,clrmask = <0x6 0x300>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x3c>; - phandle = <0x3c>; - }; - - ao_to_sd_uart_pins { - amlogic,setmask = <0x6 0x300>; - amlogic,clrmask = <0x10 0x1800 0x6 0xcc3>; - amlogic,pins = "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x3d>; - phandle = <0x3d>; - }; - - ao_to_sd_jtag_pins { - amlogic,setmask = <0x6 0x300>; - amlogic,clrmask = <0x6 0xcff 0x10 0x1800>; - amlogic,pins = "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x3e>; - phandle = <0x3e>; - }; - - sd_to_ao_jtag_pins { - amlogic,setmask = <0x10 0x1800>; - amlogic,clrmask = <0x6 0xfc0>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x3f>; - phandle = <0x3f>; - }; - - emmc_clk_cmd_pins { - amlogic,setmask = <0x7 0x60000000>; - amlogic,clrmask = <0x7 0xe0>; - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x33>; - phandle = <0x33>; - }; - - emmc_conf_pull_up { - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_10"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x34>; - phandle = <0x34>; - }; - - emmc_conf_pull_done { - amlogic,pins = "BOOT_15"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x35>; - phandle = <0x35>; - }; - - emmc_all_pins { - amlogic,setmask = <0x7 0xf0000000>; - amlogic,clrmask = <0x7 0xe0>; - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_10", "BOOT_15"; - amlogic,enable-output = <0x1>; - linux,phandle = <0x36>; - phandle = <0x36>; - }; - - sdio_clk_cmd_pins { - amlogic,setmask = <0x5 0xc000000>; - amlogic,pins = "GPIOX_4", "GPIOX_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x40>; - phandle = <0x40>; - }; - - sdio_all_pins { - amlogic,setmask = <0x5 0xfc000000>; - amlogic,pins = "GPIOX_0", "GPIOX_1", "GPIOX_2", "GPIOX_3", "GPIOX_4", "GPIOX_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x41>; - phandle = <0x41>; - }; - - conf_nand_pulldown { - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_15"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x42>; - phandle = <0x42>; - }; - - conf_nand_pullup { - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x43>; - phandle = <0x43>; - }; - - all_nand_pins { - amlogic,setmask = <0x7 0x800000ff>; - amlogic,clrmask = <0x7 0x70ffbc00>; - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_9", "BOOT_10", "BOOT_11", "BOOT_12", "BOOT_13", "BOOT_14", "BOOT_15"; - amlogic,enable-output = <0x1>; - linux,phandle = <0x44>; - phandle = <0x44>; - }; - - nand_cs { - amlogic,setmask = <0x7 0xc0>; - amlogic,clrmask = <0x7 0x40040000>; - amlogic,pins = "BOOT_8", "BOOT_9"; - linux,phandle = <0x45>; - phandle = <0x45>; - }; - - hdmitx_hpd { - amlogic,setmask = <0x6 0x80000000>; - amlogic,pins = "GPIOH_0"; - linux,phandle = <0x60>; - phandle = <0x60>; - }; - - hdmitx_ddc { - amlogic,setmask = <0x6 0x30000000>; - amlogic,pins = "GPIOH_1", "GPIOH_2"; - linux,phandle = <0x61>; - phandle = <0x61>; - }; - - hdmitx_aocec { - amlogic,setmask = <0x10 0x8000>; - amlogic,clrmask = <0x10 0x24000 0x11 0x1>; - amlogic,pins = "GPIOAO_8"; - linux,phandle = <0x62>; - phandle = <0x62>; - }; - - hdmitx_eecec { - amlogic,setmask = <0x10 0x4000>; - amlogic,clrmask = <0x10 0x28000 0x11 0x1>; - amlogic,pins = "GPIOAO_8"; - }; - - ao_i2c { - amlogic,setmask = <0x10 0x60>; - amlogic,clrmask = <0x10 0x1800006>; - amlogic,pins = "GPIOAO_4", "GPIOAO_5"; - linux,phandle = <0x1b>; - phandle = <0x1b>; - }; - - a_i2c { - amlogic,setmask = <0x1 0xc000>; - amlogic,clrmask = <0x3 0x18 0x2 0x18000 0x2 0xc0 0x1 0x600000>; - amlogic,pins = "GPIODV_24", "GPIODV_25"; - linux,phandle = <0x1c>; - phandle = <0x1c>; - }; - - b_i2c { - amlogic,setmask = <0x1 0x3000>; - amlogic,clrmask = <0x2 0x6000 0x1 0x1c0000>; - amlogic,pins = "GPIODV_26", "GPIODV_27"; - linux,phandle = <0x1d>; - phandle = <0x1d>; - }; - - c_i2c { - amlogic,setmask = <0x1 0xc00>; - amlogic,clrmask = <0x2 0x1800 0x1 0x200 0x2 0x20>; - amlogic,pins = "GPIODV_28", "GPIODV_29"; - linux,phandle = <0x1e>; - phandle = <0x1e>; - }; - - c_i2c_pin1 { - amlogic,setmask = <0x1 0x30000>; - amlogic,clrmask = <0x1 0x2000000 0x3 0x20>; - amlogic,pins = "GPIODV_18", "GPIODV_19"; - }; - - d_i2c { - amlogic,setmask = <0x5 0x30>; - amlogic,clrmask = <0x5 0x300c03 0x6 0x3>; - amlogic,pins = "GPIOX_10", "GPIOX_11"; - linux,phandle = <0x1f>; - phandle = <0x1f>; - }; - - spicc_pins_z11z12z13 { - amlogic,setmask = <0x4 0x1c>; - amlogic,clrmask = <0x3 0x800 0x4 0x1c00>; - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - }; - - spicc_pulldown_z11z12z13 { - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - }; - - spicc_pullup_z11z12z13 { - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - }; - - spicc_pins_x8x9x11 { - amlogic,setmask = <0x5 0xd>; - amlogic,clrmask = <0x5 0xd03430 0x6 0xd>; - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - }; - - spicc_pulldown_x8x9x11 { - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - }; - - spicc_pullup_x8x9x11 { - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - }; - - audio_pin { - amlogic,setmask = <0x6 0x7800000>; - amlogic,clrmask = <0x6 0x7e0000>; - amlogic,pins = "GPIOH_6", "GPIOH_7", "GPIOH_8", "GPIOH_9"; - linux,phandle = <0x6b>; - phandle = <0x6b>; - }; - - audio_pin1 { - amlogic,setmask = <0x6 0x10000000>; - amlogic,clrmask = <0x6 0x8000000>; - amlogic,pins = "GPIOH_4"; - linux,phandle = <0x6a>; - phandle = <0x6a>; - }; - - audio_btpcm_pins { - amlogic,setmask = <0x5 0xf00000>; - amlogic,clrmask = <0x5 0x3c33>; - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - linux,phandle = <0x69>; - phandle = <0x69>; - }; - }; - - cpu_version { - reg = <0x0 0xc8100220 0x0 0x4>; - }; - - meson_clk_msr { - compatible = "amlogic, gxl_measure"; - reg = <0x0 0xc110875c 0x0 0x4 0x0 0xc1108764 0x0 0x4>; - }; - - i2c@c8100500 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-AO"; - status = "disabled"; - reg = <0x0 0xc8100500 0x0 0x1d>; - device_id = <0x0>; - pinctrl-names = "default"; - pinctrl-0 = <0x1b>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c1108500 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-A"; - status = "disabled"; - reg = <0x0 0xc1108500 0x0 0x20>; - device_id = <0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x1c>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c11087c0 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-B"; - status = "okay"; - reg = <0x0 0xc11087c0 0x0 0x20>; - device_id = <0x2>; - pinctrl-names = "default"; - pinctrl-0 = <0x1d>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c11087e0 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-C"; - status = "disabled"; - reg = <0x0 0xc11087e0 0x0 0x20>; - device_id = <0x3>; - pinctrl-names = "default"; - pinctrl-0 = <0x1e>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c1108d20 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-D"; - status = "disabled"; - reg = <0x0 0xc1108d20 0x0 0x20>; - device_id = <0x4>; - pinctrl-names = "default"; - pinctrl-0 = <0x1f>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - efuse { - compatible = "amlogic, efuse"; - read_cmd = <0x82000030>; - write_cmd = <0x82000031>; - get_max_cmd = <0x82000033>; - key = <0x20>; - resets = <0x6 0x3e>; - reset-names = "efuse_clk"; - status = "ok"; - }; - - efusekey { - keynum = <0x4>; - key0 = <0x21>; - key1 = <0x22>; - key2 = <0x23>; - key3 = <0x24>; - linux,phandle = <0x20>; - phandle = <0x20>; - - key_0 { - keyname = "mac"; - offset = <0x0>; - size = <0x6>; - linux,phandle = <0x21>; - phandle = <0x21>; - }; - - key_1 { - keyname = "mac_bt"; - offset = <0x6>; - size = <0x6>; - linux,phandle = <0x22>; - phandle = <0x22>; - }; - - key_2 { - keyname = "mac_wifi"; - offset = <0xc>; - size = <0x6>; - linux,phandle = <0x23>; - phandle = <0x23>; - }; - - key_3 { - keyname = "usid"; - offset = <0x12>; - size = <0x10>; - linux,phandle = <0x24>; - phandle = <0x24>; - }; - }; - - mhu@c883c400 { - compatible = "amlogic, meson_mhu"; - reg = <0x0 0xc883c400 0x0 0x4c 0x0 0xc8013000 0x0 0x800>; - interrupts = <0x0 0xd1 0x8 0x0 0xd2 0x8>; - #mbox-cells = <0x1>; - mbox-names = "cpu_to_scp_low", "cpu_to_scp_high"; - mboxes = <0x25 0x0 0x25 0x1>; - linux,phandle = <0x25>; - phandle = <0x25>; - }; - - scpi_clocks { - compatible = "arm,scpi-clks"; - - scpi_clocks@0 { - compatible = "arm,scpi-clk-indexed"; - #clock-cells = <0x1>; - clock-indices = <0x0 0x1>; - clock-output-names = "vbig", "vlittle"; - linux,phandle = <0x15>; - phandle = <0x15>; - }; - }; - - meson-remote { - compatible = "amlogic, aml_remote"; - dev_name = "meson-remote"; - status = "okay"; - remote_ao_offset = <0x580>; - interrupts = <0x0 0xc4 0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x26>; - }; - - meson-ir { - compatible = "amlogic,meson-gxbb-ir"; - status = "disabled"; - reg = <0x0 0xc8100580 0x0 0x40>; - interrupts = <0x0 0xc4 0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x26>; - }; - - rng { - compatible = "amlogic,meson-rng"; - reg = <0x0 0xc8834000 0x0 0x4>; - }; - - audio_data { - compatible = "amlogic, audio_data"; - query_licence_cmd = <0x82000050>; - status = "okay"; - }; - - saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0x0 0x9 0x1>; - interrupt-names = "saradc_int"; - clocks = <0x6 0x2>; - clock-names = "saradc_clk"; - resets = <0x6 0x56>; - reg = <0x0 0xc1108680 0x0 0x30 0x0 0xc883c3d8 0x0 0x8>; - }; - - defendkey { - compatible = "amlogic, defendkey"; - reg = <0x0 0xc8834500 0x0 0x4>; - mem_size = <0x0 0x100000>; - status = "okay"; - }; - - spicc { - compatible = "amlogic, spicc"; - status = "disabled"; - reg = <0x0 0xc1108d80 0x0 0x28>; - resets = <0x6 0x8>; - reset-names = "spicc_clk"; - clocks = <0x6 0xa>; - clock-names = "clk81"; - interrupts = <0x0 0x51 0x1>; - device_id = <0x0>; - }; - - aml_aes { - compatible = "amlogic,aes_dma"; - dev_name = "aml_aes_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aml_tdes { - compatible = "amlogic,des_dma,tdes_dma"; - dev_name = "aml_tdes_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aml_sha { - compatible = "amlogic,sha_dma"; - dev_name = "aml_sha_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aliases { - serial0 = "/serial@c81004c0"; - serial1 = "/serial@c11084c0"; - serial2 = "/serial@c11084dc"; - serial3 = "/serial@c1108700"; - serial4 = "/serial@c81004e0"; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory-2g = <0x0 0x100000 0x0 0x7ff00000>; - linux,usable-memory-3g = <0x0 0x100000 0x0 0xbff00000>; - }; - - reserved-memory { - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - linux,phandle = <0x18>; - phandle = <0x18>; - }; - - linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x5300000 0x0 0x2000000>; - no-map; - }; - - aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x7300000 0x0 0x100000>; - no-map; - }; - - linux,di { - compatible = "amlogic, di-mem"; - size = <0x0 0x1e00000>; - linux,phandle = <0x2f>; - phandle = <0x2f>; - }; - - linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x4000000>; - linux,phandle = <0x2c>; - phandle = <0x2c>; - }; - - linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x1000000>; - alignment = <0x0 0x400000>; - linux,phandle = <0x30>; - phandle = <0x30>; - }; - - linux,ppmgr { - compatible = "shared-dma-pool"; - size = <0x0 0x0>; - linux,phandle = <0x2e>; - phandle = <0x2e>; - }; - - linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - linux,phandle = <0x29>; - phandle = <0x29>; - }; - - linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - linux,phandle = <0x2d>; - phandle = <0x2d>; - }; - - linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - linux,phandle = <0x2a>; - phandle = <0x2a>; - }; - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <0x27 0x9 0x0>; - led_active_low = <0x1>; - }; - - fan { - compatible = "fanctl"; - fan_ctl0 = <0x28 0x3f 0x0>; - fan_ctl1 = <0x28 0x40 0x0>; - trig_temp_level0 = <0x32>; - trig_temp_level1 = <0x3c>; - trig_temp_level2 = <0x46>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0x0 0x3 0x1 0x0 0x59 0x1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x1851000 0x100000>; - display_mode_default = "1080p60hz"; - scale_mode = <0x1>; - display_size_default = <0x780 0x438 0x780 0xca8 0x20>; - logo_addr_2g = "0x7d851000"; - logo_addr_3g = "0xbd851000"; - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0x0 0x96 0x1>; - interrupt-names = "ge2d"; - clocks = <0x6 0x17 0x6 0x19>; - clock-names = "clk_vapb_0", "clk_ge2d"; - resets = <0x6 0x34>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - - io_dos_base { - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - - io_hiubus_base { - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - - io_vcbus_base { - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - - io_dmc_base { - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <0x29 0x2a>; - dev_name = "codec_mm"; - status = "okay"; - }; - - ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 0x0 0xc8834540 0x0 0x8 0x0 0xc8834558 0x0 0xc>; - interrupts = <0x0 0x8 0x1>; - phy-mode = "rgmii"; - pinctrl-names = "external_eth_pins"; - pinctrl-0 = <0x2b>; - rst_pin-gpios = <0x28 0xe 0x0>; - GPIOZ4_pin-gpios = <0x28 0x4 0x0>; - GPIOZ5_pin-gpios = <0x28 0x5 0x0>; - mc_val = <0x1621>; - cali_val = <0x20000>; - resets = <0x6 0x23>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <0x6 0xa>; - clock-names = "ethclk81"; - internal_phy = <0x0>; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <0x6 0x39 0x6 0x59 0x6 0x24 0x6 0x1>; - reset-names = "parser_top", "vpu_intr", "demux", "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <0x8>; - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <0x2c>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0x0 0x3 0x1 0x0 0x17 0x1 0x0 0x20 0x1 0x0 0x2b 0x1 0x0 0x2c 0x1 0x0 0x2d 0x1>; - interrupt-names = "vsync", "demux", "parser", "mailbox_0", "mailbox_1", "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <0x2d>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr"; - memory-region = <0x2e>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <0x2f>; - interrupts = <0x0 0x2e 0x1 0x0 0x6 0x1>; - interrupt-names = "de_irq", "timerc"; - buffer-size = <0x2fd000>; - hw-version = <0x2>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0x1>; - cma_size = <0x10>; - interrupts = <0x0 0x53 0x1>; - rdma-irq = <0x2>; - clocks = <0x6 0x11 0x6 0x29>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0x0>; - tv_bit_mode = <0x1>; - }; - - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <0x30>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0x0>; - interrupts = <0x0 0x55 0x1>; - rdma-irq = <0x4>; - clocks = <0x6 0x11 0x6 0x29>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0x1>; - tv_bit_mode = <0x1>; - }; - - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <0x6 0x7 0x6 0x26>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0x0>; - }; - - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <0x6 0x7 0x6 0x27>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <0x1>; - }; - - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0x0>; - wb_en = <0x0>; - cm_en = <0x0>; - }; - - amvenc_avc { - compatible = "amlogic, amvenc_avc"; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0x0 0x2d 0x1>; - interrupt-names = "mailbox_2"; - }; - - hevc_enc { - compatible = "cnm, HevcEnc"; - dev_name = "HevcEnc"; - status = "okay"; - interrupts = <0x0 0xbb 0x1>; - interrupt-names = "wave420l_irq"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_reg_base { - reg = <0x0 0xc8810000 0x0 0x4000>; - }; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <0x7>; - }; - - bt-dev { - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "okay"; - gpio_reset = <0x28 0x60 0x0>; - }; - - rtc { - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <0x28 0x56 0x0>; - interrupts = <0x0 0x44 0x4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <0x28 0x55 0x0>; - dhd_static_buf; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <0x31>; - pwm_config = <0x32>; - }; - - wifi_pwm_conf { - pwm_channel1 = <0x4>; - pwm_channel2 = <0xc>; - pwm_channel1_conf = <0x774d 0x3ba6 0x6>; - pwm_channel2_conf = <0x7736 0x3b9b 0x9>; - linux,phandle = <0x32>; - phandle = <0x32>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = <0x0 0xda 0x1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <0x33>; - pinctrl-1 = <0x34 0x35 0x36>; - - emmc { - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_8_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_1_8V_DDR", "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <0x493e0>; - f_max = <0x5f5e100>; - max_req_size = <0x20000>; - gpio_dat3 = <0x28 0x1d 0x0>; - hw_reset = <0x28 0x23 0x0>; - card_type = <0x1>; - }; - }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = <0x0 0xd9 0x1 0x0 0x43 0x1 0x0 0x45 0x1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins", "sd_clk_cmd_uart_pins", "sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins", "ao_to_sd_jtag_pins", "sd_to_ao_jtag_pins"; - pinctrl-0 = <0x37>; - pinctrl-1 = <0x38>; - pinctrl-2 = <0x39>; - pinctrl-3 = <0x3a>; - pinctrl-4 = <0x3b>; - pinctrl-5 = <0x3c>; - pinctrl-6 = <0x3d>; - pinctrl-7 = <0x3e>; - pinctrl-8 = <0x3f>; - - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED"; - f_min = <0x61a80>; - f_max = <0x5f5e100>; - max_req_size = <0x20000>; - gpio_dat3 = <0x28 0x2e 0x0>; - jtag_pin = <0x28 0x2a 0x0>; - gpio_cd = <0x28 0x30 0x0>; - card_in_delay = <0x190>; - irq_in = <0x3>; - irq_out = <0x5>; - card_type = <0x5>; - }; - }; - - sdio { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = <0x0 0xd8 0x1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <0x40>; - pinctrl-1 = <0x41>; - - sdio { - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_UHS_SDR12", "MMC_CAP_UHS_SDR25", "MMC_CAP_UHS_SDR50", "MMC_CAP_UHS_SDR104", "MMC_PM_KEEP_POWER"; - f_min = <0x61a80>; - f_max = <0xbebc200>; - max_req_size = <0x20000>; - card_type = <0x3>; - }; - }; - - nand { - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = <0x0 0x22 0x1>; - pinctrl-names = "nand_rb_mod", "nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <0x42 0x43 0x44>; - pinctrl-1 = <0x42 0x43 0x44>; - pinctrl-2 = <0x45>; - device_id = <0x0>; - plat-names = "nandnormal"; - plat-num = <0x1>; - plat-part-0 = <0x46>; - - normal { - enable_pad = "ce0", "ce1", "ce2", "ce3"; - busy_pad = "rb0"; - linux,phandle = <0x46>; - phandle = <0x46>; - }; - }; - - aml_nftl { - compatible = "amlogic, nftl"; - }; - - partitions { - parts = <0xb>; - part-0 = <0x47>; - part-1 = <0x48>; - part-2 = <0x49>; - part-3 = <0x4a>; - part-4 = <0x4b>; - part-5 = <0x4c>; - part-6 = <0x4d>; - part-7 = <0x4e>; - part-8 = <0x4f>; - part-9 = <0x50>; - part-10 = <0x51>; - - logo { - pname = "logo"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x47>; - phandle = <0x47>; - }; - - recovery { - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x48>; - phandle = <0x48>; - }; - - rsv { - pname = "rsv"; - size = <0x0 0x800000>; - mask = <0x1>; - linux,phandle = <0x49>; - phandle = <0x49>; - }; - - tee { - pname = "tee"; - size = <0x0 0x800000>; - mask = <0x1>; - linux,phandle = <0x4a>; - phandle = <0x4a>; - }; - - crypt { - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x4b>; - phandle = <0x4b>; - }; - - misc { - pname = "misc"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x4c>; - phandle = <0x4c>; - }; - - instaboot { - pname = "instaboot"; - size = <0x0 0x20000000>; - mask = <0x1>; - linux,phandle = <0x4d>; - phandle = <0x4d>; - }; - - boot { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x4e>; - phandle = <0x4e>; - }; - - system { - pname = "system"; - size = <0x0 0x40000000>; - mask = <0x1>; - linux,phandle = <0x4f>; - phandle = <0x4f>; - }; - - cache { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <0x2>; - linux,phandle = <0x50>; - phandle = <0x50>; - }; - - data { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <0x4>; - linux,phandle = <0x51>; - phandle = <0x51>; - }; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - unifykey-num = <0xe>; - unifykey-index-0 = <0x52>; - unifykey-index-1 = <0x53>; - unifykey-index-2 = <0x54>; - unifykey-index-3 = <0x55>; - unifykey-index-4 = <0x56>; - unifykey-index-5 = <0x57>; - unifykey-index-6 = <0x58>; - unifykey-index-7 = <0x59>; - unifykey-index-8 = <0x5a>; - unifykey-index-9 = <0x5b>; - unifykey-index-10 = <0x5c>; - unifykey-index-11 = <0x5d>; - unifykey-index-12 = <0x5e>; - unifykey-index-13 = <0x5f>; - - key_0 { - key-name = "usid"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x52>; - phandle = <0x52>; - }; - - key_1 { - key-name = "mac"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x53>; - phandle = <0x53>; - }; - - key_2 { - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read", "write", "del"; - linux,phandle = <0x54>; - phandle = <0x54>; - }; - - key_3 { - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - linux,phandle = <0x55>; - phandle = <0x55>; - }; - - key_4 { - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read", "write", "del"; - key-type = "mac"; - linux,phandle = <0x56>; - phandle = <0x56>; - }; - - key_5 { - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read", "write", "del"; - key-type = "mac"; - linux,phandle = <0x57>; - phandle = <0x57>; - }; - - key_6 { - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x58>; - phandle = <0x58>; - }; - - key_7 { - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x59>; - phandle = <0x59>; - }; - - key_8 { - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5a>; - phandle = <0x5a>; - }; - - key_9 { - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5b>; - phandle = <0x5b>; - }; - - key_10 { - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5c>; - phandle = <0x5c>; - }; - - key_11 { - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5d>; - phandle = <0x5d>; - }; - - key_12 { - key-name = "prpubkeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5e>; - phandle = <0x5e>; - }; - - key_13 { - key-name = "prprivkeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5f>; - phandle = <0x5f>; - }; - }; - - amhdmitx { - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names = "hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0 = <0x60>; - pinctrl-1 = <0x61>; - interrupts = <0x0 0x39 0x1>; - interrupt-names = "hdmitx_hpd"; - clocks = <0x6 0xb 0x6 0xc 0x6 0xd 0x6 0xe 0x6 0xf 0x6 0x16>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - }; - - aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; - vendor_id = <0x0>; - product_desc = "GXBB Mbox"; - cec_osd_string = "MBox"; - port_num = <0x1>; - arc_port_mask = <0x0>; - interrupts = <0x0 0xc7 0x1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0 = <0x62>; - reg = <0x0 0xc810023c 0x0 0x4 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <0xa>; - gpios = <0x28 0x11 0x0 0x28 0x12 0x0>; - #address-cells = <0x2>; - #size-cells = <0x2>; - i2c-gpio,timeout-ms = <0xa>; - - i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0x0 0xc1 0x1>; - status = "okay"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - xtal_tick_en = <0x1>; - fifosize = <0x40>; - pinctrl-names = "default"; - support-sysrq = <0x0>; - }; - - serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0x0 0x1a 0x1>; - status = "okay"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x80>; - pinctrl-names = "default"; - pinctrl-0 = <0x63>; - resets = <0x6 0xd>; - }; - - serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0x0 0x4b 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x64>; - resets = <0x6 0x30>; - }; - - serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0x0 0x5d 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x65>; - resets = <0x6 0x4f>; - }; - - serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0x0 0xc5 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x66>; - }; - - canvas { - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma { - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0x0 0x59 0x1>; - interrupt-names = "rdma"; - }; - - dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0x0 0x1e 0x4>; - usb-phy = <0x67 0x68>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <0x3>; - reg = <0x0 0xd0078000 0x0 0x80>; - linux,phandle = <0x67>; - phandle = <0x67>; - }; - - usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0x0>; - reg = <0x0 0xd0078080 0x0 0x20>; - interrupts = <0x0 0x10 0x4>; - otg = <0x1>; - gpio-vbus-power = "GPIOAO_5"; - gpios = <0x27 0x5 0x0>; - linux,phandle = <0x68>; - phandle = <0x68>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0x0 0x1f 0x4>; - pl-periph-id = <0x0>; - clock-src = "usb0"; - port-id = <0x0>; - port-type = <0x2>; - port-speed = <0x0>; - port-config = <0x0>; - port-dma = <0x0>; - port-id-mode = <0x0>; - usb-fifo = <0x2d8>; - cpu-type = "gxl"; - controller-type = <0x2>; - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <0x6 0x3a 0x6 0x48 0x6 0x36>; - reset-names = "usb_general", "usb1", "usb1_to_ddr"; - }; - - I2S { - #sound-dai-cells = <0x0>; - resets = <0x6 0x26 0x6 0x12 0x6 0x28 0x6 0x29 0x6 0x2a 0x6 0x2b 0x6 0x2c 0x6 0x2d 0x6 0x2f 0x6 0x8e 0x6 0x22>; - reset-names = "top_glue", "aud_buf", "i2s_out", "amclk_measure", "aififo2", "aud_mixer", "mixer_reg", "adc", "top_level", "aoclk", "aud_in"; - clocks = <0x6 0x21 0x6 0x22>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - linux,phandle = <0x74>; - phandle = <0x74>; - }; - - SPDIF { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-spdif-dai"; - resets = <0x6 0x27 0x6 0x90>; - reset-names = "iec958", "iec958_amclk"; - clocks = <0x6 0x20 0x6 0x24 0x6 0x22 0x6 0x25 0x6 0xa>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - linux,phandle = <0x75>; - phandle = <0x75>; - }; - - PCM { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <0x69>; - clocks = <0x6 0x1f 0x6 0x2a 0x6 0x2b>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <0x1>; - linux,phandle = <0x76>; - phandle = <0x76>; - }; - - i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0x0 0x1d 0x1>; - linux,phandle = <0x72>; - phandle = <0x72>; - }; - - pcm_platform { - compatible = "amlogic, aml-pcm"; - linux,phandle = <0x73>; - phandle = <0x73>; - }; - - spdif_codec { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <0x6a>; - linux,phandle = <0x78>; - phandle = <0x78>; - }; - - pcm_codec { - #sound-dai-cells = <0x0>; - compatible = "amlogic, pcm2BT-codec"; - linux,phandle = <0x79>; - phandle = <0x79>; - }; - - dummy { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - - t9015 { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - linux,phandle = <0x77>; - phandle = <0x77>; - }; - - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = "Ext Spk", "LOUTL", "Ext Spk", "LOUTR"; - mute_gpio-gpios = <0x28 0x15 0x0>; - mute_inv; - hp_disable; - hp_paraments = <0x320 0x12c 0x0 0x5 0x1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <0x6b>; - cpu_list = <0x6c 0x6d 0x6e>; - codec_list = <0x6f 0x70 0x71>; - plat_list = <0x72 0x72 0x73>; - - cpudai0 { - sound-dai = <0x74>; - linux,phandle = <0x6c>; - phandle = <0x6c>; - }; - - cpudai1 { - sound-dai = <0x75>; - linux,phandle = <0x6d>; - phandle = <0x6d>; - }; - - cpudai2 { - sound-dai = <0x76>; - linux,phandle = <0x6e>; - phandle = <0x6e>; - }; - - codec0 { - sound-dai = <0x77>; - linux,phandle = <0x6f>; - phandle = <0x6f>; - }; - - codec1 { - sound-dai = <0x78>; - linux,phandle = <0x70>; - phandle = <0x70>; - }; - - codec2 { - sound-dai = <0x79>; - linux,phandle = <0x71>; - phandle = <0x71>; - }; - }; - - pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - pwm-outputs = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7>; - pwm-outputs-new = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xa 0xb 0xc 0xd 0xe 0xf>; - reg = <0x0 0xc1108550 0x0 0x30 0x0 0xc8100550 0x0 0x10>; - clocks = <0x6 0x2 0x6 0x5 0x6 0x9 0x6 0x8>; - clock-names = "xtal", "vid_pll_clk", "fclk_div4", "fclk_div3"; - clock-select = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>; - clock-select-new = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>; - }; - - gpio_keypad { - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <0x14>; - key_num = <0x1>; - key_name = "power"; - key_code = <0x74>; - key_pin = <0x27 0x2 0x0>; - irq_keyup = <0x6>; - irq_keydown = <0x7>; - }; - - adc_keypad { - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "home"; - key_num = <0x1>; - key_code = <0x66>; - key_chan = <0x0>; - key_val = <0xa>; - key_tolerance = <0x28>; - }; - - aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <0x1>; - linux,phandle = <0x7a>; - phandle = <0x7a>; - - cooling_devices { - - cpufreq_cool_cluster0 { - min_state = <0xf4240>; - dyn_coeff = <0x8c>; - cluster_id = <0x0>; - node_name = "cluster0"; - device_type = "cpufreq"; - }; - - cpufreq_cool_cluster1 { - min_state = <0x7a120>; - dyn_coeff = <0x8c>; - cluster_id = <0x1>; - node_name = "cluster1"; - device_type = "cpufreq"; - }; - - cpucore_cool_cluster0 { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - - cpucore_cool_cluster1 { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x1>; - node_name = "cpu_core_cluster1"; - device_type = "cpucore"; - }; - - gpufreq_cool { - min_state = <0x190>; - dyn_coeff = <0x1b5>; - cluster_id = <0x0>; - node_name = "t82x"; - device_type = "gpufreq"; - }; - - gpucore_cool { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - - cpu_core_cluster0 { - #cooling-cells = <0x2>; - linux,phandle = <0x7e>; - phandle = <0x7e>; - }; - - cpu_core_cluster1 { - #cooling-cells = <0x2>; - linux,phandle = <0x7f>; - phandle = <0x7f>; - }; - - thermal_gpu_cores { - #cooling-cells = <0x2>; - linux,phandle = <0x81>; - phandle = <0x81>; - }; - }; - - thermal-zones { - - soc_thermal { - polling-delay = <0x3e8>; - polling-delay-passive = <0x64>; - sustainable-power = <0x992>; - thermal-sensors = <0x7a 0x3>; - - trips { - - trip-point@0 { - temperature = <0x11170>; - hysteresis = <0x3e8>; - type = "passive"; - }; - - trip-point@1 { - temperature = <0x13880>; - hysteresis = <0x3e8>; - type = "passive"; - linux,phandle = <0x7b>; - phandle = <0x7b>; - }; - - trip-point@2 { - temperature = <0x14c08>; - hysteresis = <0x1388>; - type = "hot"; - }; - - trip-point@3 { - temperature = <0x3f7a0>; - hysteresis = <0x3e8>; - type = "critical"; - }; - }; - - cooling-maps { - - cpufreq_cooling_map0 { - trip = <0x7b>; - cooling-device = <0x7c 0x0 0x4>; - contribution = <0x400>; - }; - - cpufreq_cooling_map1 { - trip = <0x7b>; - cooling-device = <0x7d 0x0 0x4>; - contribution = <0x400>; - }; - - cpucore_cooling_map0 { - trip = <0x7b>; - cooling-device = <0x7e 0x0 0x3>; - contribution = <0x400>; - }; - - cpucore_cooling_map1 { - trip = <0x7b>; - cooling-device = <0x7f 0x0 0x3>; - contribution = <0x400>; - }; - - gpufreq_cooling_map { - trip = <0x7b>; - cooling-device = <0x80 0x0 0x4>; - contribution = <0x400>; - }; - - gpucore_cooling_map { - trip = <0x7b>; - cooling-device = <0x81 0x0 0x2>; - contribution = <0x400>; - }; - }; - }; - }; -}; diff --git a/arch/arm64/boot/dts/kvim2_linux.dts b/arch/arm64/boot/dts/kvim2_linux.dts index f541628001381..036fcde8be464 100644 --- a/arch/arm64/boot/dts/kvim2_linux.dts +++ b/arch/arm64/boot/dts/kvim2_linux.dts @@ -1,2381 +1,129 @@ -/dts-v1/; +#include "gxm_q200_2g.dts" +#include "partitions-linux.dtsi" -/ { - model = "Amlogic"; +/{ + le-dt-id = "gxm_kvim2"; compatible = "kvim"; amlogic-dt-id = "kvim"; - interrupt-parent = <0x1>; - #address-cells = <0x2>; - #size-cells = <0x2>; - - t82x { - compatible = "arm,malit602", "arm,malit60x", "arm,malit6xx", "arm,mali-midgard"; - #cooling-cells = <0x2>; - reg = <0x0 0xd00c0000 0x0 0x100000 0x0 0xc1104440 0x0 0x1000 0x0 0xc8100000 0x0 0x1000 0x0 0xc883c000 0x0 0x1000 0x0 0xc1104440 0x0 0x1000>; - interrupt-parent = <0x1>; - interrupts = <0x0 0xa0 0x4 0x0 0xa1 0x4 0x0 0xa2 0x4>; - interrupt-names = "GPU", "MMU", "JOB"; - num_of_pp = <0x3>; - sc_mpp = <0x1>; - operating-points = <0xa2c2a 0xf4240 0x7a120 0xf4240 0x61a80 0xf4240 0x45c12 0xf4240 0x3d090 0xf4240 0x1e848 0xf4240>; - tbl = <0x2 0x3 0x4 0x5 0x5>; - clocks = <0x6 0x8 0x6 0x9 0x6 0x11 0x6 0x12 0x6 0x1e 0x6 0x15 0x6 0x13 0x6 0x14>; - clock-names = "fclk_div3", "fclk_div4", "fclk_div5", "fclk_div7", "gp0_pll", "clk_gpu", "clk_gpu_0", "clk_gpu_1"; - linux,phandle = <0x85>; - phandle = <0x85>; - - clk125_cfg { - clk_freq = <0x7735940>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x1e 0x78>; - }; - - dvfs250_cfg { - clk_freq = <0xee6b280>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x50 0xaa>; - }; - - dvfs285_cfg { - clk_freq = <0x1107a650>; - clk_parent = "fclk_div7"; - clkp_freq = <0x1107a650>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x64 0xbe>; - linux,phandle = <0x2>; - phandle = <0x2>; - }; - - dvfs400_cfg { - clk_freq = <0x17d78400>; - clk_parent = "fclk_div5"; - clkp_freq = <0x17d78400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x98 0xcf>; - linux,phandle = <0x3>; - phandle = <0x3>; - }; - - dvfs500_cfg { - clk_freq = <0x1dcd6500>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xb4 0xdc>; - linux,phandle = <0x4>; - phandle = <0x4>; - }; - - dvfs666_cfg { - clk_freq = <0x27b25a80>; - clk_parent = "fclk_div3"; - clkp_freq = <0x27b25a80>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xd2 0xec>; - linux,phandle = <0x5>; - phandle = <0x5>; - }; - - dvfs800_cfg { - clk_freq = <0x2f34f600>; - clk_parent = "gp0_pll"; - clkp_freq = <0x2f34f600>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xe6 0xff>; - }; - }; - - gpu_clk@c883c00 { - compatible = "meson, gpu-clkgen-1.00.a"; - #clock-cells = <0x0>; - reg = <0x0 0xc883c000 0x0 0x1000>; - clocks = <0x6 0x8 0x6 0x9 0x6 0x11 0x6 0x12 0x6 0x1e 0x6 0x15 0x6 0x13 0x6 0x14>; - clock-names = "fclk_div3", "fclk_div4", "fclk_div5", "fclk_div7", "gp0_pll", "clk_gpu", "clk_gpu_0", "clk_gpu_1"; - clock-output-names = "clk_mali"; - tbl = <0x7 0x8 0x9 0xa 0xb 0xc>; - - clk125_cfg { - clk_freq = <0x7735940>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x1e 0x78>; - linux,phandle = <0x7>; - phandle = <0x7>; - }; - - clk250_cfg { - clk_freq = <0xee6b280>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x50 0xaa>; - linux,phandle = <0x8>; - phandle = <0x8>; - }; - - clk285_cfg { - clk_freq = <0x1107a650>; - clk_parent = "fclk_div7"; - clkp_freq = <0x1107a650>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x64 0xbe>; - linux,phandle = <0x9>; - phandle = <0x9>; - }; - - clk400_cfg { - clk_freq = <0x17d78400>; - clk_parent = "fclk_div5"; - clkp_freq = <0x17d78400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x98 0xcf>; - linux,phandle = <0xa>; - phandle = <0xa>; - }; - - clk500_cfg { - clk_freq = <0x1dcd6500>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xb4 0xdc>; - linux,phandle = <0xb>; - phandle = <0xb>; - }; - - clk666_cfg { - clk_freq = <0x27bc8410>; - clk_parent = "fclk_div3"; - clkp_freq = <0x27bc8410>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xd2 0xec>; - linux,phandle = <0xc>; - phandle = <0xc>; - }; - - clk720_cfg { - clk_freq = <0x2aea5400>; - clk_parent = "gp0_pll"; - clkp_freq = <0x2aea5400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xe6 0xff>; - }; - }; - - cpus { - #address-cells = <0x2>; - #size-cells = <0x0>; - - cpu-map { - - cluster0 { - #cooling-cells = <0x2>; - linux,phandle = <0x81>; - phandle = <0x81>; - - core0 { - cpu = <0xd>; - }; - - core1 { - cpu = <0xe>; - }; - - core2 { - cpu = <0xf>; - }; - - core3 { - cpu = <0x10>; - }; - }; - - cluster1 { - #cooling-cells = <0x2>; - linux,phandle = <0x82>; - phandle = <0x82>; - - core0 { - cpu = <0x11>; - }; - - core1 { - cpu = <0x12>; - }; - - core2 { - cpu = <0x13>; - }; - - core3 { - cpu = <0x14>; - }; - }; - }; - - cpu@0 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x0>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xd>; - phandle = <0xd>; - }; - - cpu@1 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x1>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xe>; - phandle = <0xe>; - }; - - cpu@2 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x2>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xf>; - phandle = <0xf>; - }; - - cpu@3 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x3>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x10>; - phandle = <0x10>; - }; - - cpu@100 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x100>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x11>; - phandle = <0x11>; - }; - - cpu@101 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x101>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x12>; - phandle = <0x12>; - }; - - cpu@102 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x102>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x13>; - phandle = <0x13>; - }; - - cpu@103 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x103>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x14>; - phandle = <0x14>; - }; - - idle-states { - entry-method = "arm,psci"; - - cpu-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x10000>; - local-timer-stop; - entry-latency-us = <0x1f40>; - exit-latency-us = <0x1f40>; - min-residency-us = <0x4e20>; - linux,phandle = <0x16>; - phandle = <0x16>; - }; - - cluster-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x1010000>; - local-timer-stop; - entry-latency-us = <0x1f40>; - exit-latency-us = <0x1f40>; - min-residency-us = <0x61a8>; - linux,phandle = <0x17>; - phandle = <0x17>; - }; - }; - }; - - timer { - compatible = "arm,armv8-timer"; - interrupts = <0x1 0xd 0xff01 0x1 0xe 0xff01 0x1 0xb 0xff01 0x1 0xa 0xff01>; - }; - - timer_bc { - compatible = "arm, meson-bc-timer"; - reg = <0x0 0xc1109990 0x0 0x4 0x0 0xc1109994 0x0 0x4>; - timer_name = "Meson TimerF"; - clockevent-rating = <0x12c>; - clockevent-shift = <0x14>; - clockevent-features = <0x23>; - interrupts = <0x0 0x3c 0x1>; - bit_enable = <0x10>; - bit_mode = <0xc>; - bit_resolution = <0x0>; - }; - - arm_pmu { - compatible = "arm,armv8-pmuv3"; - interrupts = <0x0 0x89 0x4 0x0 0x8a 0x4 0x0 0x99 0x4 0x0 0x9a 0x4>; - }; - - pm { - compatible = "amlogic, pm"; - device_name = "aml_pm"; - gxbaby-suspend; - reg = <0x0 0xc81000a8 0x0 0x4 0x0 0xc810023c 0x0 0x4>; - }; - - interrupt-controller@2c001000 { - compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; - #interrupt-cells = <0x3>; - #address-cells = <0x0>; - interrupt-controller; - reg = <0x0 0xc4301000 0x0 0x1000 0x0 0xc4302000 0x0 0x100>; - interrupts = <0x1 0x9 0xf04>; - linux,phandle = <0x1>; - phandle = <0x1>; - }; - - aml_restart { - compatible = "aml, restart"; - sys_reset = <0x84000009>; - sys_poweroff = <0x84000008>; - }; - - psci { - compatible = "arm,psci"; - method = "smc"; - cpu_suspend = <0xc4000001>; - cpu_off = <0x84000002>; - cpu_on = <0xc4000003>; - migrate = <0xc4000005>; - }; - - secmon { - compatible = "amlogic, secmon"; - memory-region = <0x18>; - in_base_func = <0x82000020>; - out_base_func = <0x82000021>; - }; - - securitykey { - compatible = "aml, securitykey"; - storage_query = <0x82000060>; - storage_read = <0x82000061>; - storage_write = <0x82000062>; - storage_tell = <0x82000063>; - storage_verify = <0x82000064>; - storage_status = <0x82000065>; - storage_list = <0x82000067>; - storage_remove = <0x82000068>; - storage_in_func = <0x82000023>; - storage_out_func = <0x82000024>; - storage_block_func = <0x82000025>; - storage_size_func = <0x82000027>; - storage_set_enctype = <0x8200006a>; - storage_get_enctype = <0x8200006b>; - storage_version = <0x8200006c>; - }; - - cpu_iomap { - compatible = "amlogic, iomap"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - - io_apb_base { - reg = <0x0 0xd0000000 0x0 0x200000>; - }; - - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - }; - - cpufreq { - compatible = "arm, scpi-cpufreq"; - }; - - amlogic-watchdog { - compatible = "amlogic, gx-wdt"; - status = "disable"; - default_timeout = <0xa>; - reset_watchdog_method = <0x1>; - reset_watchdog_time = <0x2>; - shutdown_timeout = <0xa>; - firmware_timeout = <0x6>; - suspend_timeout = <0x6>; - reg = <0x0 0xc11098d0 0x0 0x10>; - clocks = <0x6 0x2>; - }; - - amlogic-jtag { - compatible = "amlogic, jtag"; - status = "okay"; - pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; - pinctrl-0 = <0x19>; - pinctrl-1 = <0x1a>; - }; - - meson_clock { - compatible = "amlogic, gxl-clock"; - reg = <0x0 0xc883c000 0x0 0x1000 0x0 0xc8100000 0x0 0x1000>; - #clock-cells = <0x1>; - #reset-cells = <0x1>; - sys_max = <0x5b8d8000>; - linux,phandle = <0x6>; - phandle = <0x6>; - }; - - cpu_info { - compatible = "amlogic, cpuinfo"; - cpuinfo_cmd = <0x82000044>; - }; - - pinmux { - compatible = "amlogic, pinmux-gxl"; - dev_name = "pinmux"; - #pinmux-cells = <0x2>; - #address-cells = <0x2>; - #size-cells = <0x2>; - reg = <0x0 0xc1109880 0x0 0x10>; - ranges; - - banks@c11080b0 { - reg = <0x0 0xc88344b0 0x0 0x28 0x0 0xc88344e8 0x0 0x14 0x0 0xc8834520 0x0 0x14 0x0 0xc8834430 0x0 0x40>; - reg-names = "mux", "pull", "pull-enable", "gpio"; - gpio-controller; - #gpio-cells = <0x2>; - linux,phandle = <0x38>; - phandle = <0x38>; - }; - - ao-bank@c1108030 { - reg = <0x0 0xc8100014 0x0 0x8 0x0 0xc810002c 0x0 0x4 0x0 0xc8100024 0x0 0x8>; - reg-names = "mux", "pull", "gpio"; - gpio-controller; - #gpio-cells = <0x2>; - linux,phandle = <0x37>; - phandle = <0x37>; - }; - - external_eth_pins { - amlogic,setmask = <0x4 0xfffc00>; - amlogic,clrmask = <0x4 0x3fc 0x3 0xffcff800>; - amlogic,pins = "GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3", "GPIOZ_4", "GPIOZ_5", "GPIOZ_6", "GPIOZ_7", "GPIOZ_8", "GPIOZ_9", "GPIOZ_10", "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - linux,phandle = <0x3b>; - phandle = <0x3b>; - }; - - internal_eth_pins { - amlogic,setmask = <0x4 0x3000000>; - amlogic,clrmask = <0x3 0x300000>; - amlogic,pins = "GPIOZ_14", "GPIOZ_15"; - }; - - jtag_apao_pin { - amlogic,clrmask = <0x6 0x7fe0000>; - amlogic,pins = "GPIOH_6", "GPIOH_7", "GPIOH_8", "GPIOH_9"; - linux,phandle = <0x19>; - phandle = <0x19>; - }; - - jtag_apee_pin { - amlogic,clrmask = <0x6 0x3c>; - amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3"; - linux,phandle = <0x1a>; - phandle = <0x1a>; - }; - - remote_pin { - amlogic,setmask = <0x10 0x1>; - amlogic,pins = "GPIOAO_7"; - linux,phandle = <0x26>; - phandle = <0x26>; - }; - - ao_uart { - amlogic,setmask = <0x10 0x1800>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - }; - - ao_b_uart { - amlogic,setmask = <0x10 0x1800000>; - amlogic,pins = "GPIOAO_4", "GPIOAO_5"; - linux,phandle = <0x6b>; - phandle = <0x6b>; - }; - - a_uart { - amlogic,setmask = <0x5 0xf0000>; - amlogic,clrmask = <0x5 0x3c0>; - amlogic,pins = "GPIOX_12", "GPIOX_13", "GPIOX_14", "GPIOX_15"; - linux,phandle = <0x68>; - phandle = <0x68>; - }; - - b_uart { - amlogic,setmask = <0x2 0x18000>; - amlogic,pins = "GPIODV_24", "GPIODV_25"; - linux,phandle = <0x69>; - phandle = <0x69>; - }; - - c_uart { - amlogic,setmask = <0x5 0x3000>; - amlogic,pins = "GPIOX_8", "GPIOX_9"; - linux,phandle = <0x6a>; - phandle = <0x6a>; - }; - - wifi_32k_pins { - amlogic,setmask = <0x5 0x8000>; - amlogic,pins = "GPIOX_16"; - linux,phandle = <0x41>; - phandle = <0x41>; - }; - - sd_clk_cmd_pins { - amlogic,setmask = <0x6 0xc 0x10 0x1800>; - amlogic,pins = "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x47>; - phandle = <0x47>; - }; - - sd_all_pins { - amlogic,setmask = <0x6 0x3f 0x10 0x1800>; - amlogic,clrmask = <0x6 0xfc0>; - amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3", "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x48>; - phandle = <0x48>; - }; - - sd_1bit_pins { - amlogic,setmask = <0x6 0x1c 0x10 0x1800>; - amlogic,clrmask = <0x6 0xcc3>; - amlogic,pins = "CARD_1", "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x49>; - phandle = <0x49>; - }; - - sd_clk_cmd_uart_pins { - amlogic,setmask = <0x6 0x30c>; - amlogic,clrmask = <0x6 0xcc3 0x10 0x1800>; - amlogic,pins = "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4a>; - phandle = <0x4a>; - }; - - sd_1bit_uart_pins { - amlogic,setmask = <0x6 0x31c>; - amlogic,clrmask = <0x6 0xcc3 0x10 0x1800>; - amlogic,pins = "CARD_1", "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4b>; - phandle = <0x4b>; - }; - - sd_to_ao_uart_pins { - amlogic,setmask = <0x10 0x1800>; - amlogic,clrmask = <0x6 0x300>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4c>; - phandle = <0x4c>; - }; - - ao_to_sd_uart_pins { - amlogic,setmask = <0x6 0x300>; - amlogic,clrmask = <0x10 0x1800 0x6 0xcc3>; - amlogic,pins = "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4d>; - phandle = <0x4d>; - }; - - ao_to_sd_jtag_pins { - amlogic,setmask = <0x6 0x300>; - amlogic,clrmask = <0x6 0xcff 0x10 0x1800>; - amlogic,pins = "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4e>; - phandle = <0x4e>; - }; - - sd_to_ao_jtag_pins { - amlogic,setmask = <0x10 0x1800>; - amlogic,clrmask = <0x6 0xfc0>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4f>; - phandle = <0x4f>; - }; - - emmc_clk_cmd_pins { - amlogic,setmask = <0x7 0x60000000>; - amlogic,clrmask = <0x7 0xe0>; - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x43>; - phandle = <0x43>; - }; - - emmc_conf_pull_up { - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_10"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x44>; - phandle = <0x44>; - }; - - emmc_conf_pull_done { - amlogic,pins = "BOOT_15"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x45>; - phandle = <0x45>; - }; - - emmc_all_pins { - amlogic,setmask = <0x7 0xf0000000>; - amlogic,clrmask = <0x7 0xe0>; - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_10", "BOOT_15"; - amlogic,enable-output = <0x1>; - linux,phandle = <0x46>; - phandle = <0x46>; - }; - - sdio_clk_cmd_pins { - amlogic,setmask = <0x5 0xc000000>; - amlogic,pins = "GPIOX_4", "GPIOX_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x50>; - phandle = <0x50>; - }; - - sdio_all_pins { - amlogic,setmask = <0x5 0xfc000000>; - amlogic,pins = "GPIOX_0", "GPIOX_1", "GPIOX_2", "GPIOX_3", "GPIOX_4", "GPIOX_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x51>; - phandle = <0x51>; - }; - - conf_nand_pulldown { - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_15"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x52>; - phandle = <0x52>; - }; - - conf_nand_pullup { - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x53>; - phandle = <0x53>; - }; - - all_nand_pins { - amlogic,setmask = <0x7 0x800000ff>; - amlogic,clrmask = <0x7 0x70ffbc00>; - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_9", "BOOT_10", "BOOT_11", "BOOT_12", "BOOT_13", "BOOT_14", "BOOT_15"; - amlogic,enable-output = <0x1>; - linux,phandle = <0x54>; - phandle = <0x54>; - }; - - nand_cs { - amlogic,setmask = <0x7 0xc0>; - amlogic,clrmask = <0x7 0x40040000>; - amlogic,pins = "BOOT_8", "BOOT_9"; - linux,phandle = <0x55>; - phandle = <0x55>; - }; - - hdmitx_hpd { - amlogic,setmask = <0x6 0x80000000>; - amlogic,pins = "GPIOH_0"; - linux,phandle = <0x65>; - phandle = <0x65>; - }; - - hdmitx_ddc { - amlogic,setmask = <0x6 0x30000000>; - amlogic,pins = "GPIOH_1", "GPIOH_2"; - linux,phandle = <0x66>; - phandle = <0x66>; - }; - - hdmitx_aocec { - amlogic,setmask = <0x10 0x8000>; - amlogic,clrmask = <0x10 0x24000 0x11 0x1>; - amlogic,pins = "GPIOAO_8"; - linux,phandle = <0x67>; - phandle = <0x67>; - }; - - hdmitx_eecec { - amlogic,setmask = <0x10 0x4000>; - amlogic,clrmask = <0x10 0x28000 0x11 0x1>; - amlogic,pins = "GPIOAO_8"; - }; - - ao_i2c { - amlogic,setmask = <0x10 0x60>; - amlogic,clrmask = <0x10 0x1800006>; - amlogic,pins = "GPIOAO_4", "GPIOAO_5"; - linux,phandle = <0x1b>; - phandle = <0x1b>; - }; - - a_i2c { - amlogic,setmask = <0x1 0xc000>; - amlogic,clrmask = <0x3 0x18 0x2 0x18000 0x2 0xc0 0x1 0x600000>; - amlogic,pins = "GPIODV_24", "GPIODV_25"; - linux,phandle = <0x1c>; - phandle = <0x1c>; - }; - - b_i2c { - amlogic,setmask = <0x1 0x3000>; - amlogic,clrmask = <0x2 0x6000 0x1 0x1c0000>; - amlogic,pins = "GPIODV_26", "GPIODV_27"; - linux,phandle = <0x1d>; - phandle = <0x1d>; - }; - - c_i2c { - amlogic,setmask = <0x1 0xc00>; - amlogic,clrmask = <0x2 0x1800 0x1 0x200 0x2 0x20>; - amlogic,pins = "GPIODV_28", "GPIODV_29"; - linux,phandle = <0x1e>; - phandle = <0x1e>; - }; - - c_i2c_pin1 { - amlogic,setmask = <0x1 0x30000>; - amlogic,clrmask = <0x1 0x2000000 0x3 0x20>; - amlogic,pins = "GPIODV_18", "GPIODV_19"; - }; - - d_i2c { - amlogic,setmask = <0x5 0x30>; - amlogic,clrmask = <0x5 0x300c03 0x6 0x3>; - amlogic,pins = "GPIOX_10", "GPIOX_11"; - linux,phandle = <0x1f>; - phandle = <0x1f>; - }; - - spicc_pins_z11z12z13 { - amlogic,setmask = <0x4 0x1c>; - amlogic,clrmask = <0x3 0x800 0x4 0x1c00>; - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - }; - - spicc_pulldown_z11z12z13 { - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - }; - - spicc_pullup_z11z12z13 { - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - }; - - spicc_pins_x8x9x11 { - amlogic,setmask = <0x5 0xd>; - amlogic,clrmask = <0x5 0xd03430 0x6 0xd>; - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - }; - - spicc_pulldown_x8x9x11 { - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - }; - - spicc_pullup_x8x9x11 { - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - }; - - audio_pin { - amlogic,setmask = <0x6 0x7800000>; - amlogic,clrmask = <0x6 0x7e0000>; - amlogic,pins = "GPIOH_6", "GPIOH_7", "GPIOH_8", "GPIOH_9"; - linux,phandle = <0x70>; - phandle = <0x70>; - }; - - audio_pin1 { - amlogic,setmask = <0x6 0x10000000>; - amlogic,clrmask = <0x6 0x8000000>; - amlogic,pins = "GPIOH_4"; - linux,phandle = <0x6f>; - phandle = <0x6f>; - }; - - audio_btpcm_pins { - amlogic,setmask = <0x5 0xf00000>; - amlogic,clrmask = <0x5 0x3c33>; - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - linux,phandle = <0x6e>; - phandle = <0x6e>; - }; - }; - - cpu_version { - reg = <0x0 0xc8100220 0x0 0x4>; - }; - - meson_clk_msr { - compatible = "amlogic, gxl_measure"; - reg = <0x0 0xc110875c 0x0 0x4 0x0 0xc1108764 0x0 0x4>; - }; - - i2c@c8100500 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-AO"; - status = "disabled"; - reg = <0x0 0xc8100500 0x0 0x1d>; - device_id = <0x0>; - pinctrl-names = "default"; - pinctrl-0 = <0x1b>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c1108500 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-A"; - status = "disabled"; - reg = <0x0 0xc1108500 0x0 0x20>; - device_id = <0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x1c>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c11087c0 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-B"; - status = "okay"; - reg = <0x0 0xc11087c0 0x0 0x20>; - device_id = <0x2>; - pinctrl-names = "default"; - pinctrl-0 = <0x1d>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x186a0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - - khadas-hym8563 { - compatible = "khadas-hym8563"; - reg = <0x51>; - }; - }; - - i2c@c11087e0 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-C"; - status = "disabled"; - reg = <0x0 0xc11087e0 0x0 0x20>; - device_id = <0x3>; - pinctrl-names = "default"; - pinctrl-0 = <0x1e>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c1108d20 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-D"; - status = "disabled"; - reg = <0x0 0xc1108d20 0x0 0x20>; - device_id = <0x4>; - pinctrl-names = "default"; - pinctrl-0 = <0x1f>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - efuse { - compatible = "amlogic, efuse"; - read_cmd = <0x82000030>; - write_cmd = <0x82000031>; - get_max_cmd = <0x82000033>; - key = <0x20>; - resets = <0x6 0x3e>; - reset-names = "efuse_clk"; - status = "ok"; - }; - - efusekey { - keynum = <0x4>; - key0 = <0x21>; - key1 = <0x22>; - key2 = <0x23>; - key3 = <0x24>; - linux,phandle = <0x20>; - phandle = <0x20>; - - key_0 { - keyname = "mac"; - offset = <0x0>; - size = <0xc>; - linux,phandle = <0x21>; - phandle = <0x21>; - }; - - key_1 { - keyname = "mac_bt"; - offset = <0xc>; - size = <0xc>; - linux,phandle = <0x22>; - phandle = <0x22>; - }; - - key_2 { - keyname = "mac_wifi"; - offset = <0x18>; - size = <0xc>; - linux,phandle = <0x23>; - phandle = <0x23>; - }; - - key_3 { - keyname = "usid"; - offset = <0x24>; - size = <0xc>; - linux,phandle = <0x24>; - phandle = <0x24>; - }; - }; - - mhu@c883c400 { - compatible = "amlogic, meson_mhu"; - reg = <0x0 0xc883c400 0x0 0x4c 0x0 0xc8013000 0x0 0x800>; - interrupts = <0x0 0xd1 0x8 0x0 0xd2 0x8>; - #mbox-cells = <0x1>; - mbox-names = "cpu_to_scp_low", "cpu_to_scp_high"; - mboxes = <0x25 0x0 0x25 0x1>; - linux,phandle = <0x25>; - phandle = <0x25>; - }; - - scpi_clocks { - compatible = "arm,scpi-clks"; - - scpi_clocks@0 { - compatible = "arm,scpi-clk-indexed"; - #clock-cells = <0x1>; - clock-indices = <0x0 0x1>; - clock-output-names = "vbig", "vlittle"; - linux,phandle = <0x15>; - phandle = <0x15>; - }; - }; - - rc@c8100580 { - compatible = "amlogic, aml_remote"; - dev_name = "meson-remote"; - reg = <0x0 0xc8100580 0x0 0x44 0x0 0xc8100480 0x0 0x20>; - status = "okay"; - protocol = <0x1>; - interrupts = <0x0 0xc4 0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x26>; - map = <0x27>; - max_frame_time = <0xc8>; - }; - - custom_maps { - mapnum = <0x4>; - map0 = <0x28>; - map1 = <0x29>; - map2 = <0x2a>; - map3 = <0x2b>; - linux,phandle = <0x27>; - phandle = <0x27>; - - map_0 { - mapname = "amlogic-remote-1"; - customcode = <0xfb04>; - release_delay = <0x50>; - size = <0x2c>; - keymap = <0x47000b 0x130002 0x100003 0x110004 0xf0005 0xc0006 0xd0007 0xb0008 0x80009 0x9000a 0x5c0061 0x510041 0x49000e 0x60082 0x140083 0x440067 0x1d006c 0x1c0069 0x48006a 0x53007d 0x450068 0x19006d 0x160066 0x520077 0x5007a 0x59007b 0x1b0078 0x40079 0x1a0074 0xa000f 0xe0071 0x15003f 0x1f0066 0x1e0084 0x70085 0x120086 0x540087 0x20088 0x4f001e 0x420030 0x5d002e 0x4c0020 0x580089 0x55008c>; - linux,phandle = <0x28>; - phandle = <0x28>; - }; - - map_1 { - mapname = "amlogic-remote-2"; - customcode = <0xfe01>; - release_delay = <0x50>; - size = <0x35>; - keymap = <0x10002 0x20003 0x30004 0x40005 0x50006 0x60007 0x70008 0x80009 0x9000a 0xa000b 0x1f01d2 0x15008b 0x16000f 0xc0192 0xd0193 0xe0073 0xf0072 0x110066 0x1c006a 0x1b0069 0x190067 0x1a006c 0x1d001c 0x170071 0x4900db 0x43009e 0x1201d5 0x1401d6 0x1801d7 0x590166 0x5a00a6 0x100074 0x4200a5 0x4400a3 0x1e00a8 0x4b00d0 0x5800a4 0x460082 0x400083 0x380046 0x5701d0 0x5b01d1 0x54018e 0x4c018f 0x4e0190 0x550191 0x5300ed 0x5200ee 0x3900d4 0x4100d5 0xb00d6 0xd8 0x1300d9>; - linux,phandle = <0x29>; - phandle = <0x29>; - }; - - map_2 { - mapname = "amlogic-remote-3"; - customcode = <0xbd02>; - release_delay = <0x50>; - size = <0x11>; - keymap = <0xca0067 0xd2006c 0x990069 0xc1006a 0xce0061 0x450074 0xc50085 0x800071 0xd0000f 0xd6007d 0x950066 0xdd0068 0x8c006d 0x890083 0x9c0082 0x9a0078 0xcd0079>; - linux,phandle = <0x2a>; - phandle = <0x2a>; - }; - - map_3 { - mapname = "khadas-ir"; - customcode = <0xff00>; - release_delay = <0x50>; - fn_key_scancode = <0x5c>; - fn_key_scancode_other = <0x5b>; - cursor_left_scancode = <0xe>; - cursor_right_scancode = <0x1a>; - cursor_up_scancode = <0x3>; - cursor_down_scancode = <0x2>; - cursor_ok_scancode = <0x7>; - size = <0xd>; - keymap = <0x140074 0x13008b 0x30067 0x2006c 0xe0069 0x1a006a 0x700e8 0x580072 0x5c003f 0x5b003f 0xb0073 0x1009e 0x480066>; - linux,phandle = <0x2b>; - phandle = <0x2b>; - }; - }; - - rng { - compatible = "amlogic,meson-rng"; - reg = <0x0 0xc8834000 0x0 0x4>; - }; - - audio_data { - compatible = "amlogic, audio_data"; - query_licence_cmd = <0x82000050>; - status = "okay"; - }; - - saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0x0 0x9 0x1>; - interrupt-names = "saradc_int"; - clocks = <0x6 0x2>; - clock-names = "saradc_clk"; - resets = <0x6 0x56>; - reg = <0x0 0xc1108680 0x0 0x30 0x0 0xc883c3d8 0x0 0x8>; - }; - - defendkey { - compatible = "amlogic, defendkey"; - reg = <0x0 0xc8834500 0x0 0x4>; - mem_size = <0x0 0x100000>; - status = "okay"; - }; - - spicc { - compatible = "amlogic, spicc"; - status = "disabled"; - reg = <0x0 0xc1108d80 0x0 0x28>; - resets = <0x6 0x8>; - reset-names = "spicc_clk"; - clocks = <0x6 0xa>; - clock-names = "clk81"; - interrupts = <0x0 0x51 0x1>; - device_id = <0x0>; - }; - - aml_aes { - compatible = "amlogic,aes_dma"; - dev_name = "aml_aes_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aml_tdes { - compatible = "amlogic,des_dma,tdes_dma"; - dev_name = "aml_tdes_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aml_sha { - compatible = "amlogic,sha_dma"; - dev_name = "aml_sha_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - meson-pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - #pwm-cells = <0x2>; - pwm-outputs = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xa 0xb 0xc 0xd 0xe 0xf>; - reg = <0x0 0xc1108550 0x0 0x1c 0x0 0xc1108640 0x0 0x1c 0x0 0xc11086c0 0x0 0x1c 0x0 0xc8100550 0x0 0x1c>; - clocks = <0x6 0x2 0x6 0x5 0x6 0x9 0x6 0x8>; - clock-names = "xtal", "vid_pll_clk", "fclk_div4", "fclk_div3"; - clock-select = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>; - }; - - partitions { - parts = <0x1>; - part-0 = <0x2c>; - - linux { - pname = "linux"; - size = <0xffffffff 0xffffffff>; - mask = <0x4>; - linux,phandle = <0x2c>; - phandle = <0x2c>; - }; - - }; - - aliases { - serial0 = "/serial@c81004c0"; - serial1 = "/serial@c11084c0"; - serial2 = "/serial@c11084dc"; - serial3 = "/serial@c1108700"; - serial4 = "/serial@c81004e0"; - }; memory@00000000 { - device_type = "memory"; - linux,usable-memory-2g = <0x0 0x100000 0x0 0x7ff00000>; - linux,usable-memory-3g = <0x0 0x100000 0x0 0xbff00000>; - }; - - reserved-memory { - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - linux,phandle = <0x18>; - phandle = <0x18>; - }; - - linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x5300000 0x0 0x2000000>; - no-map; - }; - - aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x7300000 0x0 0x100000>; - no-map; - }; - - linux,di { - compatible = "amlogic, di-mem"; - size = <0x0 0x1e00000>; - linux,phandle = <0x3f>; - phandle = <0x3f>; - }; - - linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x4000000>; - linux,phandle = <0x3c>; - phandle = <0x3c>; - }; - - linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x1000000>; - alignment = <0x0 0x400000>; - linux,phandle = <0x40>; - phandle = <0x40>; - }; - - linux,ppmgr { - compatible = "shared-dma-pool"; - size = <0x0 0x0>; - linux,phandle = <0x3e>; - phandle = <0x3e>; - }; - - linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - linux,phandle = <0x39>; - phandle = <0x39>; - }; - - linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - linux,phandle = <0x3d>; - phandle = <0x3d>; - }; - - linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - linux,phandle = <0x3a>; - phandle = <0x3a>; - }; + /delete-property/ linux,usable-memory; + linux,usable-memory-2g = <0x0 0x00100000 0x0 0x7ff00000>; + linux,usable-memory-3g = <0x0 0x00100000 0x0 0xbff00000>; }; sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <0x37 0x9 0x0>; - led_active_low = <0x1>; + led_gpio = <&gpio_ao GPIOAO_9 GPIO_ACTIVE_HIGH>; }; fan { compatible = "fanctl"; - fan_ctl0 = <0x38 0x3f 0x0>; - fan_ctl1 = <0x38 0x40 0x0>; - trig_temp_level0 = <0x32>; - trig_temp_level1 = <0x3c>; - trig_temp_level2 = <0x46>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; + fan_ctl0 = <&gpio GPIODV_14 GPIO_ACTIVE_HIGH>; + fan_ctl1 = <&gpio GPIODV_15 GPIO_ACTIVE_HIGH>; + trig_temp_level0 = <50>; + trig_temp_level1 = <60>; + trig_temp_level2 = <70>; }; meson-fb { - compatible = "amlogic, meson-fb"; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0x0 0x3 0x1 0x0 0x59 0x1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x1851000 0x100000>; - display_mode_default = "1080p60hz"; - scale_mode = <0x1>; - display_size_default = <0x780 0x438 0x780 0xca8 0x20>; + /delete-property/ logo_addr; logo_addr_2g = "0x7d851000"; - logo_addr_3g = "0xbd851000"; - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0x0 0x96 0x1>; - interrupt-names = "ge2d"; - clocks = <0x6 0x17 0x6 0x19>; - clock-names = "clk_vapb_0", "clk_ge2d"; - resets = <0x6 0x34>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - - io_dos_base { - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - - io_hiubus_base { - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - - io_vcbus_base { - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - - io_dmc_base { - reg = <0x0 0xc8838000 0x0 0x400>; - }; + logo_addr_3g = "0xbd851000"; /*ion base + fb0 memory size for uboot logo osd1*/ }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <0x39 0x3a>; - dev_name = "codec_mm"; + uart_AO_B: serial@c81004e0 { status = "okay"; }; - - ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 0x0 0xc8834540 0x0 0x8 0x0 0xc8834558 0x0 0xc>; - interrupts = <0x0 0x8 0x1>; - phy-mode = "rgmii"; - pinctrl-names = "external_eth_pins"; - pinctrl-0 = <0x3b>; - rst_pin-gpios = <0x38 0xe 0x0>; - GPIOZ4_pin-gpios = <0x38 0x4 0x0>; - GPIOZ5_pin-gpios = <0x38 0x5 0x0>; - mc_val = <0x1621>; - cali_val = <0x20000>; - resets = <0x6 0x23>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <0x6 0xa>; - clock-names = "ethclk81"; - internal_phy = <0x0>; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <0x6 0x39 0x6 0x59 0x6 0x24 0x6 0x1>; - reset-names = "parser_top", "vpu_intr", "demux", "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <0x8>; - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <0x3c>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0x0 0x3 0x1 0x0 0x17 0x1 0x0 0x20 0x1 0x0 0x2b 0x1 0x0 0x2c 0x1 0x0 0x2d 0x1>; - interrupt-names = "vsync", "demux", "parser", "mailbox_0", "mailbox_1", "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <0x3d>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr"; - memory-region = <0x3e>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <0x3f>; - interrupts = <0x0 0x2e 0x1 0x0 0x6 0x1>; - interrupt-names = "de_irq", "timerc"; - buffer-size = <0x2fd000>; - hw-version = <0x2>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0x1>; - cma_size = <0x10>; - interrupts = <0x0 0x53 0x1>; - rdma-irq = <0x2>; - clocks = <0x6 0x11 0x6 0x29>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0x0>; - tv_bit_mode = <0x1>; - }; - - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <0x40>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0x0>; - interrupts = <0x0 0x55 0x1>; - rdma-irq = <0x4>; - clocks = <0x6 0x11 0x6 0x29>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0x1>; - tv_bit_mode = <0x1>; - }; - - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <0x6 0x7 0x6 0x26>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0x0>; - }; - - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <0x6 0x7 0x6 0x27>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <0x1>; - }; - - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0x0>; - wb_en = <0x0>; - cm_en = <0x0>; - }; - - amvenc_avc { - compatible = "amlogic, amvenc_avc"; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0x0 0x2d 0x1>; - interrupt-names = "mailbox_2"; - }; - - hevc_enc { - compatible = "cnm, HevcEnc"; - dev_name = "HevcEnc"; - status = "okay"; - interrupts = <0x0 0xbb 0x1>; - interrupt-names = "wave420l_irq"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_reg_base { - reg = <0x0 0xc8810000 0x0 0x4000>; - }; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <0x7>; - }; - - bt-dev { - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "okay"; - gpio_reset = <0x38 0x60 0x0>; - }; - - rtc { - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <0x38 0x56 0x0>; - interrupts = <0x0 0x44 0x4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <0x38 0x55 0x0>; - dhd_static_buf; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <0x41>; - pwm_config = <0x42>; - }; - - wifi_pwm_conf { - pwm_channel1 = <0x4>; - pwm_channel2 = <0xc>; - pwm_channel1_conf = <0x774d 0x3ba6 0x6>; - pwm_channel2_conf = <0x7736 0x3b9b 0x9>; - linux,phandle = <0x42>; - phandle = <0x42>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = <0x0 0xda 0x1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <0x43>; - pinctrl-1 = <0x44 0x45 0x46>; - - emmc { - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_8_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_1_8V_DDR", "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <0x493e0>; - f_max = <0x5f5e100>; - max_req_size = <0x20000>; - gpio_dat3 = <0x38 0x1d 0x0>; - hw_reset = <0x38 0x23 0x0>; - card_type = <0x1>; - }; + + dwc2_a { + controller-type = <2>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; + adc_keypad{ + compatible = "amlogic, adc_keypad"; status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = <0x0 0xd9 0x1 0x0 0x43 0x1 0x0 0x45 0x1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins", "sd_clk_cmd_uart_pins", "sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins", "ao_to_sd_jtag_pins", "sd_to_ao_jtag_pins"; - pinctrl-0 = <0x47>; - pinctrl-1 = <0x48>; - pinctrl-2 = <0x49>; - pinctrl-3 = <0x4a>; - pinctrl-4 = <0x4b>; - pinctrl-5 = <0x4c>; - pinctrl-6 = <0x4d>; - pinctrl-7 = <0x4e>; - pinctrl-8 = <0x4f>; - - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED"; - f_min = <0x61a80>; - f_max = <0x5f5e100>; - max_req_size = <0x20000>; - gpio_dat3 = <0x38 0x2e 0x0>; - jtag_pin = <0x38 0x2a 0x0>; - gpio_cd = <0x38 0x30 0x0>; - card_in_delay = <0x190>; - irq_in = <0x3>; - irq_out = <0x5>; - card_type = <0x5>; - }; + key_name = "home"; + key_num = <1>; + key_code = <102>; + key_chan = <0>; + key_val = <10>; + key_tolerance = <40>; + }; + + dvb { + compatible = "amlogic,dvb"; + dev_name = "dvb"; + ts0 = "parallel"; + ts0_control = <0x0>; + ts0_invert = <0x0>; + fec_reset_gpio-gpios = <&gpio GPIODV_13 GPIO_ACTIVE_HIGH>; + power_ctrl_gpio-gpios = <&gpio GPIODV_11 GPIO_ACTIVE_LOW>; + pinctrl-names = "p_ts0", "s_ts0", "s_ts1"; + pinctrl-0 = <&dvb_p_ts0_pins>; + pinctrl-1 = <&dvb_s_ts0_pins>; + pinctrl-2 = <&dvb_s_ts1_pins>; + resets = <&clock GCLK_IDX_DEMUX &clock GCLK_IDX_ASYNC_FIFO &clock GCLK_IDX_AHB_ARB0 &clock GCLK_IDX_HIU_PARSER_TOP>; + reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; + }; + + dvbfe { + compatible = "amlogic,dvbfe"; + //dev_name = "dvbfe"; + status = "okay"; + dtv_demod0 = "Avl6211"; + dtv_demod0_i2c_adap_id = <2>; + dtv_demod0_i2c_addr = <0x60>; + dtv_demod0_reset_value = <0>; + dtv_demod0_reset_gpio-gpios = <&gpio GPIODV_13 GPIO_ACTIVE_LOW>; + dtv_demod0_power_gpio-gpios = <&gpio GPIODV_14 GPIO_ACTIVE_LOW>; + fe0_dtv_demod = <0>; + fe0_ts = <0>; + fe0_dev = <0>; }; +}; - sdio { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = <0x0 0xd8 0x1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <0x50>; - pinctrl-1 = <0x51>; +&i2c_a { + status = "okay"; +}; - sdio { +&i2c_b { + status = "okay"; + rtc_hym8563{ + compatible = "amlogic, rtc_hym8563"; + dev_name = "rtc_hym8563"; status = "okay"; - pinname = "sdio"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_UHS_SDR12", "MMC_CAP_UHS_SDR25", "MMC_CAP_UHS_SDR50", "MMC_CAP_UHS_SDR104", "MMC_PM_KEEP_POWER"; - f_min = <0x61a80>; - f_max = <0xbebc200>; - max_req_size = <0x20000>; - card_type = <0x3>; - }; - }; - - nand { - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = <0x0 0x22 0x1>; - pinctrl-names = "nand_rb_mod", "nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <0x52 0x53 0x54>; - pinctrl-1 = <0x52 0x53 0x54>; - pinctrl-2 = <0x55>; - device_id = <0x0>; - plat-names = "nandnormal"; - plat-num = <0x1>; - plat-part-0 = <0x56>; - - normal { - enable_pad = "ce0", "ce1", "ce2", "ce3"; - busy_pad = "rb0"; - linux,phandle = <0x56>; - phandle = <0x56>; - }; - }; - - aml_nftl { - compatible = "amlogic, nftl"; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - unifykey-num = <0xe>; - unifykey-index-0 = <0x57>; - unifykey-index-1 = <0x58>; - unifykey-index-2 = <0x59>; - unifykey-index-3 = <0x5a>; - unifykey-index-4 = <0x5b>; - unifykey-index-5 = <0x5c>; - unifykey-index-6 = <0x5d>; - unifykey-index-7 = <0x5e>; - unifykey-index-8 = <0x5f>; - unifykey-index-9 = <0x60>; - unifykey-index-10 = <0x61>; - unifykey-index-11 = <0x62>; - unifykey-index-12 = <0x63>; - unifykey-index-13 = <0x64>; - - key_0 { - key-name = "usid"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x57>; - phandle = <0x57>; - }; - - key_1 { - key-name = "mac"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x58>; - phandle = <0x58>; - }; - - key_2 { - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read", "write", "del"; - linux,phandle = <0x59>; - phandle = <0x59>; - }; - - key_3 { - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - linux,phandle = <0x5a>; - phandle = <0x5a>; - }; - - key_4 { - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read", "write", "del"; - key-type = "mac"; - linux,phandle = <0x5b>; - phandle = <0x5b>; - }; - - key_5 { - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read", "write", "del"; - key-type = "mac"; - linux,phandle = <0x5c>; - phandle = <0x5c>; - }; - - key_6 { - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5d>; - phandle = <0x5d>; - }; - - key_7 { - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5e>; - phandle = <0x5e>; - }; - - key_8 { - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5f>; - phandle = <0x5f>; - }; - - key_9 { - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x60>; - phandle = <0x60>; - }; - - key_10 { - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x61>; - phandle = <0x61>; - }; - - key_11 { - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x62>; - phandle = <0x62>; - }; - - key_12 { - key-name = "prpubkeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x63>; - phandle = <0x63>; - }; - - key_13 { - key-name = "prprivkeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x64>; - phandle = <0x64>; - }; - }; - - amhdmitx { - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names = "hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0 = <0x65>; - pinctrl-1 = <0x66>; - interrupts = <0x0 0x39 0x1>; - interrupt-names = "hdmitx_hpd"; - clocks = <0x6 0xb 0x6 0xc 0x6 0xd 0x6 0xe 0x6 0xf 0x6 0x16>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - }; - - aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; - vendor_id = <0x0>; - product_desc = "GXBB Mbox"; - cec_osd_string = "MBox"; - port_num = <0x1>; - arc_port_mask = <0x0>; - interrupts = <0x0 0xc7 0x1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0 = <0x67>; - reg = <0x0 0xc810023c 0x0 0x4 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <0xa>; - gpios = <0x38 0x11 0x0 0x38 0x12 0x0>; - #address-cells = <0x2>; - #size-cells = <0x2>; - i2c-gpio,timeout-ms = <0xa>; - - i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0x0 0xc1 0x1>; - status = "okay"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - xtal_tick_en = <0x1>; - fifosize = <0x40>; - pinctrl-names = "default"; - support-sysrq = <0x0>; - }; - - serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0x0 0x1a 0x1>; - status = "okay"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x80>; - pinctrl-names = "default"; - pinctrl-0 = <0x68>; - resets = <0x6 0xd>; - }; - - serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0x0 0x4b 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x69>; - resets = <0x6 0x30>; + reg = <0x51>; }; +}; - serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0x0 0x5d 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x6a>; - resets = <0x6 0x4f>; - }; - - serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0x0 0xc5 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x6b>; - }; - - canvas { - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma { - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0x0 0x59 0x1>; - interrupt-names = "rdma"; - }; - - dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0x0 0x1e 0x4>; - usb-phy = <0x6c 0x6d>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <0x3>; - reg = <0x0 0xd0078000 0x0 0x80>; - linux,phandle = <0x6c>; - phandle = <0x6c>; - }; - - usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0x0>; - reg = <0x0 0xd0078080 0x0 0x20>; - interrupts = <0x0 0x10 0x4>; - otg = <0x1>; - gpio-vbus-power = "GPIOAO_5"; - gpios = <0x37 0x5 0x0>; - linux,phandle = <0x6d>; - phandle = <0x6d>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0x0 0x1f 0x4>; - pl-periph-id = <0x0>; - clock-src = "usb0"; - port-id = <0x0>; - port-type = <0x2>; - port-speed = <0x0>; - port-config = <0x0>; - port-dma = <0x0>; - port-id-mode = <0x0>; - usb-fifo = <0x2d8>; - cpu-type = "gxl"; - controller-type = <0x2>; - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <0x6 0x3a 0x6 0x48 0x6 0x36>; - reset-names = "usb_general", "usb1", "usb1_to_ddr"; - }; - - I2S { - #sound-dai-cells = <0x0>; - resets = <0x6 0x26 0x6 0x12 0x6 0x28 0x6 0x29 0x6 0x2a 0x6 0x2b 0x6 0x2c 0x6 0x2d 0x6 0x2f 0x6 0x8e 0x6 0x22>; - reset-names = "top_glue", "aud_buf", "i2s_out", "amclk_measure", "aififo2", "aud_mixer", "mixer_reg", "adc", "top_level", "aoclk", "aud_in"; - clocks = <0x6 0x21 0x6 0x22>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - linux,phandle = <0x79>; - phandle = <0x79>; - }; - - SPDIF { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-spdif-dai"; - resets = <0x6 0x27 0x6 0x90>; - reset-names = "iec958", "iec958_amclk"; - clocks = <0x6 0x20 0x6 0x24 0x6 0x22 0x6 0x25 0x6 0xa>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - linux,phandle = <0x7a>; - phandle = <0x7a>; - }; - - PCM { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <0x6e>; - clocks = <0x6 0x1f 0x6 0x2a 0x6 0x2b>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <0x1>; - linux,phandle = <0x7b>; - phandle = <0x7b>; - }; - - i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0x0 0x1d 0x1>; - linux,phandle = <0x77>; - phandle = <0x77>; - }; - - pcm_platform { - compatible = "amlogic, aml-pcm"; - linux,phandle = <0x78>; - phandle = <0x78>; - }; - - spdif_codec { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <0x6f>; - linux,phandle = <0x7d>; - phandle = <0x7d>; - }; - - pcm_codec { - #sound-dai-cells = <0x0>; - compatible = "amlogic, pcm2BT-codec"; - linux,phandle = <0x7e>; - phandle = <0x7e>; - }; - - dummy { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - - t9015 { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - linux,phandle = <0x7c>; - phandle = <0x7c>; - }; - - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = "Ext Spk", "LOUTL", "Ext Spk", "LOUTR"; - mute_gpio-gpios = <0x38 0x15 0x0>; - mute_inv; - hp_disable; - hp_paraments = <0x320 0x12c 0x0 0x5 0x1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <0x70>; - cpu_list = <0x71 0x72 0x73>; - codec_list = <0x74 0x75 0x76>; - plat_list = <0x77 0x77 0x78>; - - cpudai0 { - sound-dai = <0x79>; - linux,phandle = <0x71>; - phandle = <0x71>; - }; - - cpudai1 { - sound-dai = <0x7a>; - linux,phandle = <0x72>; - phandle = <0x72>; - }; - - cpudai2 { - sound-dai = <0x7b>; - linux,phandle = <0x73>; - phandle = <0x73>; - }; - - codec0 { - sound-dai = <0x7c>; - linux,phandle = <0x74>; - phandle = <0x74>; - }; - - codec1 { - sound-dai = <0x7d>; - linux,phandle = <0x75>; - phandle = <0x75>; - }; +&i2c_c { + status = "okay"; +}; - codec2 { - sound-dai = <0x7e>; - linux,phandle = <0x76>; - phandle = <0x76>; - }; - }; +&i2c_d { + status = "okay"; +}; - gpio_keypad { - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <0x14>; - key_num = <0x1>; - key_name = "power"; - key_code = <0x74>; - key_pin = <0x37 0x2 0x0>; - irq_keyup = <0x6>; - irq_keydown = <0x7>; +&pinmux { + dvb_p_ts0_pins:dvb_p_ts0_pins { + amlogic,setmask = <0x2 0x1f>; + amlogic,clrmask = <0x3 0x787 0x2 0xff000400>; + amlogic,pins = "GPIODV_0", "GPIODV_1", "GPIODV_2", "GPIODV_3", "GPIODV_4", "GPIODV_5", "GPIODV_6", "GPIODV_7", "GPIODV_8", "GPIODV_9", "GPIODV_10"; }; - adc_keypad { - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "home"; - key_num = <0x1>; - key_code = <0x66>; - key_chan = <0x0>; - key_val = <0xa>; - key_tolerance = <0x28>; + dvb_s_ts0_pins:dvb_s_ts0_pins { + amlogic,setmask = <0x2 0x17>; + amlogic,clrmask = <0x3 0x584 0x2 0x7000000 0x1 0x100>; + amlogic,pins = "GPIODV_0", "GPIODV_8", "GPIODV_9", "GPIODV_10"; }; - aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <0x1>; - linux,phandle = <0x7f>; - phandle = <0x7f>; - - cooling_devices { - - cpufreq_cool_cluster0 { - min_state = <0xf4240>; - dyn_coeff = <0x8c>; - cluster_id = <0x0>; - node_name = "cluster0"; - device_type = "cpufreq"; - }; - - cpufreq_cool_cluster1 { - min_state = <0x7a120>; - dyn_coeff = <0x8c>; - cluster_id = <0x1>; - node_name = "cluster1"; - device_type = "cpufreq"; - }; - - cpucore_cool_cluster0 { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - - cpucore_cool_cluster1 { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x1>; - node_name = "cpu_core_cluster1"; - device_type = "cpucore"; - }; - - gpufreq_cool { - min_state = <0x190>; - dyn_coeff = <0x1b5>; - cluster_id = <0x0>; - node_name = "t82x"; - device_type = "gpufreq"; - }; - - gpucore_cool { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - - cpu_core_cluster0 { - #cooling-cells = <0x2>; - linux,phandle = <0x83>; - phandle = <0x83>; - }; - - cpu_core_cluster1 { - #cooling-cells = <0x2>; - linux,phandle = <0x84>; - phandle = <0x84>; - }; - - thermal_gpu_cores { - #cooling-cells = <0x2>; - linux,phandle = <0x86>; - phandle = <0x86>; - }; + dvb_s_ts1_pins:dvb_s_ts1_pins { + amlogic,setmask = <0x3 0x17>; + amlogic,clrmask = <0x2 0xf0000 0x1 0x7>; + amlogic,pins = "GPIODV_0", "GPIODV_8", "GPIODV_9", "GPIODV_10"; }; - thermal-zones { - - soc_thermal { - polling-delay = <0x3e8>; - polling-delay-passive = <0x64>; - sustainable-power = <0x992>; - thermal-sensors = <0x7f 0x3>; - - trips { - - trip-point@0 { - temperature = <0x11170>; - hysteresis = <0x3e8>; - type = "passive"; - }; - - trip-point@1 { - temperature = <0x13880>; - hysteresis = <0x3e8>; - type = "passive"; - linux,phandle = <0x80>; - phandle = <0x80>; - }; - - trip-point@2 { - temperature = <0x14c08>; - hysteresis = <0x1388>; - type = "hot"; - }; - - trip-point@3 { - temperature = <0x3f7a0>; - hysteresis = <0x3e8>; - type = "critical"; - }; - }; - - cooling-maps { - - cpufreq_cooling_map0 { - trip = <0x80>; - cooling-device = <0x81 0x0 0x4>; - contribution = <0x400>; - }; - - cpufreq_cooling_map1 { - trip = <0x80>; - cooling-device = <0x82 0x0 0x4>; - contribution = <0x400>; - }; - - cpucore_cooling_map0 { - trip = <0x80>; - cooling-device = <0x83 0x0 0x3>; - contribution = <0x400>; - }; - - cpucore_cooling_map1 { - trip = <0x80>; - cooling-device = <0x84 0x0 0x3>; - contribution = <0x400>; - }; - - gpufreq_cooling_map { - trip = <0x80>; - cooling-device = <0x85 0x0 0x4>; - contribution = <0x400>; - }; - - gpucore_cooling_map { - trip = <0x80>; - cooling-device = <0x86 0x0 0x2>; - contribution = <0x400>; - }; - }; - }; + dtv_params_pin:dtv_params_pin { + amlogic,clrmask = <0x1 0x38000000 0x3 0x80>; + amlogic,pins = "GPIODV_13", "GPIODV_14", "GPIODV_15"; }; -}; +}; \ No newline at end of file diff --git a/arch/arm64/boot/dts/kvim2_multiboot.dts b/arch/arm64/boot/dts/kvim2_multiboot.dts deleted file mode 100644 index 40f1c91e5c822..0000000000000 --- a/arch/arm64/boot/dts/kvim2_multiboot.dts +++ /dev/null @@ -1,2461 +0,0 @@ -/dts-v1/; - -/ { - model = "Amlogic"; - compatible = "kvim"; - amlogic-dt-id = "kvim"; - interrupt-parent = <0x1>; - #address-cells = <0x2>; - #size-cells = <0x2>; - - t82x { - compatible = "arm,malit602", "arm,malit60x", "arm,malit6xx", "arm,mali-midgard"; - #cooling-cells = <0x2>; - reg = <0x0 0xd00c0000 0x0 0x100000 0x0 0xc1104440 0x0 0x1000 0x0 0xc8100000 0x0 0x1000 0x0 0xc883c000 0x0 0x1000 0x0 0xc1104440 0x0 0x1000>; - interrupt-parent = <0x1>; - interrupts = <0x0 0xa0 0x4 0x0 0xa1 0x4 0x0 0xa2 0x4>; - interrupt-names = "GPU", "MMU", "JOB"; - num_of_pp = <0x3>; - sc_mpp = <0x1>; - operating-points = <0xa2c2a 0xf4240 0x7a120 0xf4240 0x61a80 0xf4240 0x45c12 0xf4240 0x3d090 0xf4240 0x1e848 0xf4240>; - tbl = <0x2 0x3 0x4 0x5 0x5>; - clocks = <0x6 0x8 0x6 0x9 0x6 0x11 0x6 0x12 0x6 0x1e 0x6 0x15 0x6 0x13 0x6 0x14>; - clock-names = "fclk_div3", "fclk_div4", "fclk_div5", "fclk_div7", "gp0_pll", "clk_gpu", "clk_gpu_0", "clk_gpu_1"; - linux,phandle = <0x85>; - phandle = <0x85>; - - clk125_cfg { - clk_freq = <0x7735940>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x1e 0x78>; - }; - - dvfs250_cfg { - clk_freq = <0xee6b280>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x50 0xaa>; - }; - - dvfs285_cfg { - clk_freq = <0x1107a650>; - clk_parent = "fclk_div7"; - clkp_freq = <0x1107a650>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x64 0xbe>; - linux,phandle = <0x2>; - phandle = <0x2>; - }; - - dvfs400_cfg { - clk_freq = <0x17d78400>; - clk_parent = "fclk_div5"; - clkp_freq = <0x17d78400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x98 0xcf>; - linux,phandle = <0x3>; - phandle = <0x3>; - }; - - dvfs500_cfg { - clk_freq = <0x1dcd6500>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xb4 0xdc>; - linux,phandle = <0x4>; - phandle = <0x4>; - }; - - dvfs666_cfg { - clk_freq = <0x27b25a80>; - clk_parent = "fclk_div3"; - clkp_freq = <0x27b25a80>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xd2 0xec>; - linux,phandle = <0x5>; - phandle = <0x5>; - }; - - dvfs800_cfg { - clk_freq = <0x2f34f600>; - clk_parent = "gp0_pll"; - clkp_freq = <0x2f34f600>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xe6 0xff>; - }; - }; - - gpu_clk@c883c00 { - compatible = "meson, gpu-clkgen-1.00.a"; - #clock-cells = <0x0>; - reg = <0x0 0xc883c000 0x0 0x1000>; - clocks = <0x6 0x8 0x6 0x9 0x6 0x11 0x6 0x12 0x6 0x1e 0x6 0x15 0x6 0x13 0x6 0x14>; - clock-names = "fclk_div3", "fclk_div4", "fclk_div5", "fclk_div7", "gp0_pll", "clk_gpu", "clk_gpu_0", "clk_gpu_1"; - clock-output-names = "clk_mali"; - tbl = <0x7 0x8 0x9 0xa 0xb 0xc>; - - clk125_cfg { - clk_freq = <0x7735940>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x1e 0x78>; - linux,phandle = <0x7>; - phandle = <0x7>; - }; - - clk250_cfg { - clk_freq = <0xee6b280>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x50 0xaa>; - linux,phandle = <0x8>; - phandle = <0x8>; - }; - - clk285_cfg { - clk_freq = <0x1107a650>; - clk_parent = "fclk_div7"; - clkp_freq = <0x1107a650>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x64 0xbe>; - linux,phandle = <0x9>; - phandle = <0x9>; - }; - - clk400_cfg { - clk_freq = <0x17d78400>; - clk_parent = "fclk_div5"; - clkp_freq = <0x17d78400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x98 0xcf>; - linux,phandle = <0xa>; - phandle = <0xa>; - }; - - clk500_cfg { - clk_freq = <0x1dcd6500>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xb4 0xdc>; - linux,phandle = <0xb>; - phandle = <0xb>; - }; - - clk666_cfg { - clk_freq = <0x27bc8410>; - clk_parent = "fclk_div3"; - clkp_freq = <0x27bc8410>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xd2 0xec>; - linux,phandle = <0xc>; - phandle = <0xc>; - }; - - clk720_cfg { - clk_freq = <0x2aea5400>; - clk_parent = "gp0_pll"; - clkp_freq = <0x2aea5400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xe6 0xff>; - }; - }; - - cpus { - #address-cells = <0x2>; - #size-cells = <0x0>; - - cpu-map { - - cluster0 { - #cooling-cells = <0x2>; - linux,phandle = <0x81>; - phandle = <0x81>; - - core0 { - cpu = <0xd>; - }; - - core1 { - cpu = <0xe>; - }; - - core2 { - cpu = <0xf>; - }; - - core3 { - cpu = <0x10>; - }; - }; - - cluster1 { - #cooling-cells = <0x2>; - linux,phandle = <0x82>; - phandle = <0x82>; - - core0 { - cpu = <0x11>; - }; - - core1 { - cpu = <0x12>; - }; - - core2 { - cpu = <0x13>; - }; - - core3 { - cpu = <0x14>; - }; - }; - }; - - cpu@0 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x0>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xd>; - phandle = <0xd>; - }; - - cpu@1 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x1>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xe>; - phandle = <0xe>; - }; - - cpu@2 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x2>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xf>; - phandle = <0xf>; - }; - - cpu@3 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x3>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x10>; - phandle = <0x10>; - }; - - cpu@100 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x100>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x11>; - phandle = <0x11>; - }; - - cpu@101 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x101>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x12>; - phandle = <0x12>; - }; - - cpu@102 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x102>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x13>; - phandle = <0x13>; - }; - - cpu@103 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x103>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x14>; - phandle = <0x14>; - }; - - idle-states { - entry-method = "arm,psci"; - - cpu-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x10000>; - local-timer-stop; - entry-latency-us = <0x1f40>; - exit-latency-us = <0x1f40>; - min-residency-us = <0x4e20>; - linux,phandle = <0x16>; - phandle = <0x16>; - }; - - cluster-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x1010000>; - local-timer-stop; - entry-latency-us = <0x1f40>; - exit-latency-us = <0x1f40>; - min-residency-us = <0x61a8>; - linux,phandle = <0x17>; - phandle = <0x17>; - }; - }; - }; - - timer { - compatible = "arm,armv8-timer"; - interrupts = <0x1 0xd 0xff01 0x1 0xe 0xff01 0x1 0xb 0xff01 0x1 0xa 0xff01>; - }; - - timer_bc { - compatible = "arm, meson-bc-timer"; - reg = <0x0 0xc1109990 0x0 0x4 0x0 0xc1109994 0x0 0x4>; - timer_name = "Meson TimerF"; - clockevent-rating = <0x12c>; - clockevent-shift = <0x14>; - clockevent-features = <0x23>; - interrupts = <0x0 0x3c 0x1>; - bit_enable = <0x10>; - bit_mode = <0xc>; - bit_resolution = <0x0>; - }; - - arm_pmu { - compatible = "arm,armv8-pmuv3"; - interrupts = <0x0 0x89 0x4 0x0 0x8a 0x4 0x0 0x99 0x4 0x0 0x9a 0x4>; - }; - - pm { - compatible = "amlogic, pm"; - device_name = "aml_pm"; - gxbaby-suspend; - reg = <0x0 0xc81000a8 0x0 0x4 0x0 0xc810023c 0x0 0x4>; - }; - - interrupt-controller@2c001000 { - compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; - #interrupt-cells = <0x3>; - #address-cells = <0x0>; - interrupt-controller; - reg = <0x0 0xc4301000 0x0 0x1000 0x0 0xc4302000 0x0 0x100>; - interrupts = <0x1 0x9 0xf04>; - linux,phandle = <0x1>; - phandle = <0x1>; - }; - - aml_restart { - compatible = "aml, restart"; - sys_reset = <0x84000009>; - sys_poweroff = <0x84000008>; - }; - - psci { - compatible = "arm,psci"; - method = "smc"; - cpu_suspend = <0xc4000001>; - cpu_off = <0x84000002>; - cpu_on = <0xc4000003>; - migrate = <0xc4000005>; - }; - - secmon { - compatible = "amlogic, secmon"; - memory-region = <0x18>; - in_base_func = <0x82000020>; - out_base_func = <0x82000021>; - }; - - securitykey { - compatible = "aml, securitykey"; - storage_query = <0x82000060>; - storage_read = <0x82000061>; - storage_write = <0x82000062>; - storage_tell = <0x82000063>; - storage_verify = <0x82000064>; - storage_status = <0x82000065>; - storage_list = <0x82000067>; - storage_remove = <0x82000068>; - storage_in_func = <0x82000023>; - storage_out_func = <0x82000024>; - storage_block_func = <0x82000025>; - storage_size_func = <0x82000027>; - storage_set_enctype = <0x8200006a>; - storage_get_enctype = <0x8200006b>; - storage_version = <0x8200006c>; - }; - - cpu_iomap { - compatible = "amlogic, iomap"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - - io_apb_base { - reg = <0x0 0xd0000000 0x0 0x200000>; - }; - - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - }; - - cpufreq { - compatible = "arm, scpi-cpufreq"; - }; - - amlogic-watchdog { - compatible = "amlogic, gx-wdt"; - status = "disable"; - default_timeout = <0xa>; - reset_watchdog_method = <0x1>; - reset_watchdog_time = <0x2>; - shutdown_timeout = <0xa>; - firmware_timeout = <0x6>; - suspend_timeout = <0x6>; - reg = <0x0 0xc11098d0 0x0 0x10>; - clocks = <0x6 0x2>; - }; - - amlogic-jtag { - compatible = "amlogic, jtag"; - status = "okay"; - pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; - pinctrl-0 = <0x19>; - pinctrl-1 = <0x1a>; - }; - - meson_clock { - compatible = "amlogic, gxl-clock"; - reg = <0x0 0xc883c000 0x0 0x1000 0x0 0xc8100000 0x0 0x1000>; - #clock-cells = <0x1>; - #reset-cells = <0x1>; - sys_max = <0x5b8d8000>; - linux,phandle = <0x6>; - phandle = <0x6>; - }; - - cpu_info { - compatible = "amlogic, cpuinfo"; - cpuinfo_cmd = <0x82000044>; - }; - - pinmux { - compatible = "amlogic, pinmux-gxl"; - dev_name = "pinmux"; - #pinmux-cells = <0x2>; - #address-cells = <0x2>; - #size-cells = <0x2>; - reg = <0x0 0xc1109880 0x0 0x10>; - ranges; - - banks@c11080b0 { - reg = <0x0 0xc88344b0 0x0 0x28 0x0 0xc88344e8 0x0 0x14 0x0 0xc8834520 0x0 0x14 0x0 0xc8834430 0x0 0x40>; - reg-names = "mux", "pull", "pull-enable", "gpio"; - gpio-controller; - #gpio-cells = <0x2>; - linux,phandle = <0x38>; - phandle = <0x38>; - }; - - ao-bank@c1108030 { - reg = <0x0 0xc8100014 0x0 0x8 0x0 0xc810002c 0x0 0x4 0x0 0xc8100024 0x0 0x8>; - reg-names = "mux", "pull", "gpio"; - gpio-controller; - #gpio-cells = <0x2>; - linux,phandle = <0x37>; - phandle = <0x37>; - }; - - external_eth_pins { - amlogic,setmask = <0x4 0xfffc00>; - amlogic,clrmask = <0x4 0x3fc 0x3 0xffcff800>; - amlogic,pins = "GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3", "GPIOZ_4", "GPIOZ_5", "GPIOZ_6", "GPIOZ_7", "GPIOZ_8", "GPIOZ_9", "GPIOZ_10", "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - linux,phandle = <0x3b>; - phandle = <0x3b>; - }; - - internal_eth_pins { - amlogic,setmask = <0x4 0x3000000>; - amlogic,clrmask = <0x3 0x300000>; - amlogic,pins = "GPIOZ_14", "GPIOZ_15"; - }; - - jtag_apao_pin { - amlogic,clrmask = <0x6 0x7fe0000>; - amlogic,pins = "GPIOH_6", "GPIOH_7", "GPIOH_8", "GPIOH_9"; - linux,phandle = <0x19>; - phandle = <0x19>; - }; - - jtag_apee_pin { - amlogic,clrmask = <0x6 0x3c>; - amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3"; - linux,phandle = <0x1a>; - phandle = <0x1a>; - }; - - remote_pin { - amlogic,setmask = <0x10 0x1>; - amlogic,pins = "GPIOAO_7"; - linux,phandle = <0x26>; - phandle = <0x26>; - }; - - ao_uart { - amlogic,setmask = <0x10 0x1800>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - }; - - ao_b_uart { - amlogic,setmask = <0x10 0x1800000>; - amlogic,pins = "GPIOAO_4", "GPIOAO_5"; - linux,phandle = <0x6b>; - phandle = <0x6b>; - }; - - a_uart { - amlogic,setmask = <0x5 0xf0000>; - amlogic,clrmask = <0x5 0x3c0>; - amlogic,pins = "GPIOX_12", "GPIOX_13", "GPIOX_14", "GPIOX_15"; - linux,phandle = <0x68>; - phandle = <0x68>; - }; - - b_uart { - amlogic,setmask = <0x2 0x18000>; - amlogic,pins = "GPIODV_24", "GPIODV_25"; - linux,phandle = <0x69>; - phandle = <0x69>; - }; - - c_uart { - amlogic,setmask = <0x5 0x3000>; - amlogic,pins = "GPIOX_8", "GPIOX_9"; - linux,phandle = <0x6a>; - phandle = <0x6a>; - }; - - wifi_32k_pins { - amlogic,setmask = <0x5 0x8000>; - amlogic,pins = "GPIOX_16"; - linux,phandle = <0x41>; - phandle = <0x41>; - }; - - sd_clk_cmd_pins { - amlogic,setmask = <0x6 0xc 0x10 0x1800>; - amlogic,pins = "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x47>; - phandle = <0x47>; - }; - - sd_all_pins { - amlogic,setmask = <0x6 0x3f 0x10 0x1800>; - amlogic,clrmask = <0x6 0xfc0>; - amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3", "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x48>; - phandle = <0x48>; - }; - - sd_1bit_pins { - amlogic,setmask = <0x6 0x1c 0x10 0x1800>; - amlogic,clrmask = <0x6 0xcc3>; - amlogic,pins = "CARD_1", "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x49>; - phandle = <0x49>; - }; - - sd_clk_cmd_uart_pins { - amlogic,setmask = <0x6 0x30c>; - amlogic,clrmask = <0x6 0xcc3 0x10 0x1800>; - amlogic,pins = "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4a>; - phandle = <0x4a>; - }; - - sd_1bit_uart_pins { - amlogic,setmask = <0x6 0x31c>; - amlogic,clrmask = <0x6 0xcc3 0x10 0x1800>; - amlogic,pins = "CARD_1", "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4b>; - phandle = <0x4b>; - }; - - sd_to_ao_uart_pins { - amlogic,setmask = <0x10 0x1800>; - amlogic,clrmask = <0x6 0x300>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4c>; - phandle = <0x4c>; - }; - - ao_to_sd_uart_pins { - amlogic,setmask = <0x6 0x300>; - amlogic,clrmask = <0x10 0x1800 0x6 0xcc3>; - amlogic,pins = "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4d>; - phandle = <0x4d>; - }; - - ao_to_sd_jtag_pins { - amlogic,setmask = <0x6 0x300>; - amlogic,clrmask = <0x6 0xcff 0x10 0x1800>; - amlogic,pins = "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4e>; - phandle = <0x4e>; - }; - - sd_to_ao_jtag_pins { - amlogic,setmask = <0x10 0x1800>; - amlogic,clrmask = <0x6 0xfc0>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4f>; - phandle = <0x4f>; - }; - - emmc_clk_cmd_pins { - amlogic,setmask = <0x7 0x60000000>; - amlogic,clrmask = <0x7 0xe0>; - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x43>; - phandle = <0x43>; - }; - - emmc_conf_pull_up { - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_10"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x44>; - phandle = <0x44>; - }; - - emmc_conf_pull_done { - amlogic,pins = "BOOT_15"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x45>; - phandle = <0x45>; - }; - - emmc_all_pins { - amlogic,setmask = <0x7 0xf0000000>; - amlogic,clrmask = <0x7 0xe0>; - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_10", "BOOT_15"; - amlogic,enable-output = <0x1>; - linux,phandle = <0x46>; - phandle = <0x46>; - }; - - sdio_clk_cmd_pins { - amlogic,setmask = <0x5 0xc000000>; - amlogic,pins = "GPIOX_4", "GPIOX_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x50>; - phandle = <0x50>; - }; - - sdio_all_pins { - amlogic,setmask = <0x5 0xfc000000>; - amlogic,pins = "GPIOX_0", "GPIOX_1", "GPIOX_2", "GPIOX_3", "GPIOX_4", "GPIOX_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x51>; - phandle = <0x51>; - }; - - conf_nand_pulldown { - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_15"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x52>; - phandle = <0x52>; - }; - - conf_nand_pullup { - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x53>; - phandle = <0x53>; - }; - - all_nand_pins { - amlogic,setmask = <0x7 0x800000ff>; - amlogic,clrmask = <0x7 0x70ffbc00>; - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_9", "BOOT_10", "BOOT_11", "BOOT_12", "BOOT_13", "BOOT_14", "BOOT_15"; - amlogic,enable-output = <0x1>; - linux,phandle = <0x54>; - phandle = <0x54>; - }; - - nand_cs { - amlogic,setmask = <0x7 0xc0>; - amlogic,clrmask = <0x7 0x40040000>; - amlogic,pins = "BOOT_8", "BOOT_9"; - linux,phandle = <0x55>; - phandle = <0x55>; - }; - - hdmitx_hpd { - amlogic,setmask = <0x6 0x80000000>; - amlogic,pins = "GPIOH_0"; - linux,phandle = <0x65>; - phandle = <0x65>; - }; - - hdmitx_ddc { - amlogic,setmask = <0x6 0x30000000>; - amlogic,pins = "GPIOH_1", "GPIOH_2"; - linux,phandle = <0x66>; - phandle = <0x66>; - }; - - hdmitx_aocec { - amlogic,setmask = <0x10 0x8000>; - amlogic,clrmask = <0x10 0x24000 0x11 0x1>; - amlogic,pins = "GPIOAO_8"; - linux,phandle = <0x67>; - phandle = <0x67>; - }; - - hdmitx_eecec { - amlogic,setmask = <0x10 0x4000>; - amlogic,clrmask = <0x10 0x28000 0x11 0x1>; - amlogic,pins = "GPIOAO_8"; - }; - - ao_i2c { - amlogic,setmask = <0x10 0x60>; - amlogic,clrmask = <0x10 0x1800006>; - amlogic,pins = "GPIOAO_4", "GPIOAO_5"; - linux,phandle = <0x1b>; - phandle = <0x1b>; - }; - - a_i2c { - amlogic,setmask = <0x1 0xc000>; - amlogic,clrmask = <0x3 0x18 0x2 0x18000 0x2 0xc0 0x1 0x600000>; - amlogic,pins = "GPIODV_24", "GPIODV_25"; - linux,phandle = <0x1c>; - phandle = <0x1c>; - }; - - b_i2c { - amlogic,setmask = <0x1 0x3000>; - amlogic,clrmask = <0x2 0x6000 0x1 0x1c0000>; - amlogic,pins = "GPIODV_26", "GPIODV_27"; - linux,phandle = <0x1d>; - phandle = <0x1d>; - }; - - c_i2c { - amlogic,setmask = <0x1 0xc00>; - amlogic,clrmask = <0x2 0x1800 0x1 0x200 0x2 0x20>; - amlogic,pins = "GPIODV_28", "GPIODV_29"; - linux,phandle = <0x1e>; - phandle = <0x1e>; - }; - - c_i2c_pin1 { - amlogic,setmask = <0x1 0x30000>; - amlogic,clrmask = <0x1 0x2000000 0x3 0x20>; - amlogic,pins = "GPIODV_18", "GPIODV_19"; - }; - - d_i2c { - amlogic,setmask = <0x5 0x30>; - amlogic,clrmask = <0x5 0x300c03 0x6 0x3>; - amlogic,pins = "GPIOX_10", "GPIOX_11"; - linux,phandle = <0x1f>; - phandle = <0x1f>; - }; - - spicc_pins_z11z12z13 { - amlogic,setmask = <0x4 0x1c>; - amlogic,clrmask = <0x3 0x800 0x4 0x1c00>; - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - }; - - spicc_pulldown_z11z12z13 { - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - }; - - spicc_pullup_z11z12z13 { - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - }; - - spicc_pins_x8x9x11 { - amlogic,setmask = <0x5 0xd>; - amlogic,clrmask = <0x5 0xd03430 0x6 0xd>; - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - }; - - spicc_pulldown_x8x9x11 { - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - }; - - spicc_pullup_x8x9x11 { - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - }; - - audio_pin { - amlogic,setmask = <0x6 0x7800000>; - amlogic,clrmask = <0x6 0x7e0000>; - amlogic,pins = "GPIOH_6", "GPIOH_7", "GPIOH_8", "GPIOH_9"; - linux,phandle = <0x70>; - phandle = <0x70>; - }; - - audio_pin1 { - amlogic,setmask = <0x6 0x10000000>; - amlogic,clrmask = <0x6 0x8000000>; - amlogic,pins = "GPIOH_4"; - linux,phandle = <0x6f>; - phandle = <0x6f>; - }; - - audio_btpcm_pins { - amlogic,setmask = <0x5 0xf00000>; - amlogic,clrmask = <0x5 0x3c33>; - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - linux,phandle = <0x6e>; - phandle = <0x6e>; - }; - }; - - cpu_version { - reg = <0x0 0xc8100220 0x0 0x4>; - }; - - meson_clk_msr { - compatible = "amlogic, gxl_measure"; - reg = <0x0 0xc110875c 0x0 0x4 0x0 0xc1108764 0x0 0x4>; - }; - - i2c@c8100500 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-AO"; - status = "disabled"; - reg = <0x0 0xc8100500 0x0 0x1d>; - device_id = <0x0>; - pinctrl-names = "default"; - pinctrl-0 = <0x1b>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c1108500 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-A"; - status = "disabled"; - reg = <0x0 0xc1108500 0x0 0x20>; - device_id = <0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x1c>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c11087c0 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-B"; - status = "okay"; - reg = <0x0 0xc11087c0 0x0 0x20>; - device_id = <0x2>; - pinctrl-names = "default"; - pinctrl-0 = <0x1d>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x186a0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - - khadas-hym8563 { - compatible = "khadas-hym8563"; - reg = <0x51>; - }; - }; - - i2c@c11087e0 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-C"; - status = "disabled"; - reg = <0x0 0xc11087e0 0x0 0x20>; - device_id = <0x3>; - pinctrl-names = "default"; - pinctrl-0 = <0x1e>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c1108d20 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-D"; - status = "disabled"; - reg = <0x0 0xc1108d20 0x0 0x20>; - device_id = <0x4>; - pinctrl-names = "default"; - pinctrl-0 = <0x1f>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - efuse { - compatible = "amlogic, efuse"; - read_cmd = <0x82000030>; - write_cmd = <0x82000031>; - get_max_cmd = <0x82000033>; - key = <0x20>; - resets = <0x6 0x3e>; - reset-names = "efuse_clk"; - status = "ok"; - }; - - efusekey { - keynum = <0x4>; - key0 = <0x21>; - key1 = <0x22>; - key2 = <0x23>; - key3 = <0x24>; - linux,phandle = <0x20>; - phandle = <0x20>; - - key_0 { - keyname = "mac"; - offset = <0x0>; - size = <0xc>; - linux,phandle = <0x21>; - phandle = <0x21>; - }; - - key_1 { - keyname = "mac_bt"; - offset = <0xc>; - size = <0xc>; - linux,phandle = <0x22>; - phandle = <0x22>; - }; - - key_2 { - keyname = "mac_wifi"; - offset = <0x18>; - size = <0xc>; - linux,phandle = <0x23>; - phandle = <0x23>; - }; - - key_3 { - keyname = "usid"; - offset = <0x24>; - size = <0xc>; - linux,phandle = <0x24>; - phandle = <0x24>; - }; - }; - - mhu@c883c400 { - compatible = "amlogic, meson_mhu"; - reg = <0x0 0xc883c400 0x0 0x4c 0x0 0xc8013000 0x0 0x800>; - interrupts = <0x0 0xd1 0x8 0x0 0xd2 0x8>; - #mbox-cells = <0x1>; - mbox-names = "cpu_to_scp_low", "cpu_to_scp_high"; - mboxes = <0x25 0x0 0x25 0x1>; - linux,phandle = <0x25>; - phandle = <0x25>; - }; - - scpi_clocks { - compatible = "arm,scpi-clks"; - - scpi_clocks@0 { - compatible = "arm,scpi-clk-indexed"; - #clock-cells = <0x1>; - clock-indices = <0x0 0x1>; - clock-output-names = "vbig", "vlittle"; - linux,phandle = <0x15>; - phandle = <0x15>; - }; - }; - - rc@c8100580 { - compatible = "amlogic, aml_remote"; - dev_name = "meson-remote"; - reg = <0x0 0xc8100580 0x0 0x44 0x0 0xc8100480 0x0 0x20>; - status = "okay"; - protocol = <0x1>; - interrupts = <0x0 0xc4 0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x26>; - map = <0x27>; - max_frame_time = <0xc8>; - }; - - custom_maps { - mapnum = <0x4>; - map0 = <0x28>; - map1 = <0x29>; - map2 = <0x2a>; - map3 = <0x2b>; - linux,phandle = <0x27>; - phandle = <0x27>; - - map_0 { - mapname = "amlogic-remote-1"; - customcode = <0xfb04>; - release_delay = <0x50>; - size = <0x2c>; - keymap = <0x47000b 0x130002 0x100003 0x110004 0xf0005 0xc0006 0xd0007 0xb0008 0x80009 0x9000a 0x5c0061 0x510041 0x49000e 0x60082 0x140083 0x440067 0x1d006c 0x1c0069 0x48006a 0x53007d 0x450068 0x19006d 0x160066 0x520077 0x5007a 0x59007b 0x1b0078 0x40079 0x1a0074 0xa000f 0xe0071 0x15003f 0x1f0066 0x1e0084 0x70085 0x120086 0x540087 0x20088 0x4f001e 0x420030 0x5d002e 0x4c0020 0x580089 0x55008c>; - linux,phandle = <0x28>; - phandle = <0x28>; - }; - - map_1 { - mapname = "amlogic-remote-2"; - customcode = <0xfe01>; - release_delay = <0x50>; - size = <0x35>; - keymap = <0x10002 0x20003 0x30004 0x40005 0x50006 0x60007 0x70008 0x80009 0x9000a 0xa000b 0x1f01d2 0x15008b 0x16000f 0xc0192 0xd0193 0xe0073 0xf0072 0x110066 0x1c006a 0x1b0069 0x190067 0x1a006c 0x1d001c 0x170071 0x4900db 0x43009e 0x1201d5 0x1401d6 0x1801d7 0x590166 0x5a00a6 0x100074 0x4200a5 0x4400a3 0x1e00a8 0x4b00d0 0x5800a4 0x460082 0x400083 0x380046 0x5701d0 0x5b01d1 0x54018e 0x4c018f 0x4e0190 0x550191 0x5300ed 0x5200ee 0x3900d4 0x4100d5 0xb00d6 0xd8 0x1300d9>; - linux,phandle = <0x29>; - phandle = <0x29>; - }; - - map_2 { - mapname = "amlogic-remote-3"; - customcode = <0xbd02>; - release_delay = <0x50>; - size = <0x11>; - keymap = <0xca0067 0xd2006c 0x990069 0xc1006a 0xce0061 0x450074 0xc50085 0x800071 0xd0000f 0xd6007d 0x950066 0xdd0068 0x8c006d 0x890083 0x9c0082 0x9a0078 0xcd0079>; - linux,phandle = <0x2a>; - phandle = <0x2a>; - }; - - map_3 { - mapname = "khadas-ir"; - customcode = <0xff00>; - release_delay = <0x50>; - fn_key_scancode = <0x5c>; - fn_key_scancode_other = <0x5b>; - cursor_left_scancode = <0xe>; - cursor_right_scancode = <0x1a>; - cursor_up_scancode = <0x3>; - cursor_down_scancode = <0x2>; - cursor_ok_scancode = <0x7>; - size = <0xd>; - keymap = <0x140074 0x13008b 0x30067 0x2006c 0xe0069 0x1a006a 0x700e8 0x580072 0x5c003f 0x5b003f 0xb0073 0x1009e 0x480066>; - linux,phandle = <0x2b>; - phandle = <0x2b>; - }; - }; - - rng { - compatible = "amlogic,meson-rng"; - reg = <0x0 0xc8834000 0x0 0x4>; - }; - - audio_data { - compatible = "amlogic, audio_data"; - query_licence_cmd = <0x82000050>; - status = "okay"; - }; - - saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0x0 0x9 0x1>; - interrupt-names = "saradc_int"; - clocks = <0x6 0x2>; - clock-names = "saradc_clk"; - resets = <0x6 0x56>; - reg = <0x0 0xc1108680 0x0 0x30 0x0 0xc883c3d8 0x0 0x8>; - }; - - defendkey { - compatible = "amlogic, defendkey"; - reg = <0x0 0xc8834500 0x0 0x4>; - mem_size = <0x0 0x100000>; - status = "okay"; - }; - - spicc { - compatible = "amlogic, spicc"; - status = "disabled"; - reg = <0x0 0xc1108d80 0x0 0x28>; - resets = <0x6 0x8>; - reset-names = "spicc_clk"; - clocks = <0x6 0xa>; - clock-names = "clk81"; - interrupts = <0x0 0x51 0x1>; - device_id = <0x0>; - }; - - aml_aes { - compatible = "amlogic,aes_dma"; - dev_name = "aml_aes_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aml_tdes { - compatible = "amlogic,des_dma,tdes_dma"; - dev_name = "aml_tdes_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aml_sha { - compatible = "amlogic,sha_dma"; - dev_name = "aml_sha_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - meson-pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - #pwm-cells = <0x2>; - pwm-outputs = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xa 0xb 0xc 0xd 0xe 0xf>; - reg = <0x0 0xc1108550 0x0 0x1c 0x0 0xc1108640 0x0 0x1c 0x0 0xc11086c0 0x0 0x1c 0x0 0xc8100550 0x0 0x1c>; - clocks = <0x6 0x2 0x6 0x5 0x6 0x9 0x6 0x8>; - clock-names = "xtal", "vid_pll_clk", "fclk_div4", "fclk_div3"; - clock-select = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>; - }; - - partitions { - parts = <0xa>; - part-0 = <0x2c>; - part-1 = <0x2d>; - part-2 = <0x2e>; - part-3 = <0x2f>; - part-4 = <0x30>; - part-5 = <0x31>; - part-6 = <0x32>; - part-7 = <0x33>; - part-8 = <0x34>; - part-9 = <0x35>; - - logo { - pname = "logo"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x2c>; - phandle = <0x2c>; - }; - - recovery { - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x2d>; - phandle = <0x2d>; - }; - - rsv { - pname = "rsv"; - size = <0x0 0x800000>; - mask = <0x1>; - linux,phandle = <0x2e>; - phandle = <0x2e>; - }; - - tee { - pname = "tee"; - size = <0x0 0x800000>; - mask = <0x1>; - linux,phandle = <0x2f>; - phandle = <0x2f>; - }; - - crypt { - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x30>; - phandle = <0x30>; - }; - - misc { - pname = "misc"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x31>; - phandle = <0x31>; - }; - - boot { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x32>; - phandle = <0x32>; - }; - - system { - pname = "system"; - size = <0x0 0x80000000>; - mask = <0x1>; - linux,phandle = <0x33>; - phandle = <0x33>; - }; - - cache { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <0x2>; - linux,phandle = <0x34>; - phandle = <0x34>; - }; - - data { - pname = "data"; - size = <0x0 0x80000000>; - mask = <0x4>; - linux,phandle = <0x35>; - phandle = <0x35>; - }; - }; - - aliases { - serial0 = "/serial@c81004c0"; - serial1 = "/serial@c11084c0"; - serial2 = "/serial@c11084dc"; - serial3 = "/serial@c1108700"; - serial4 = "/serial@c81004e0"; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory-2g = <0x0 0x100000 0x0 0x7ff00000>; - linux,usable-memory-3g = <0x0 0x100000 0x0 0xbff00000>; - }; - - reserved-memory { - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - linux,phandle = <0x18>; - phandle = <0x18>; - }; - - linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x5300000 0x0 0x2000000>; - no-map; - }; - - aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x7300000 0x0 0x100000>; - no-map; - }; - - linux,di { - compatible = "amlogic, di-mem"; - size = <0x0 0x1e00000>; - linux,phandle = <0x3f>; - phandle = <0x3f>; - }; - - linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x4000000>; - linux,phandle = <0x3c>; - phandle = <0x3c>; - }; - - linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x1000000>; - alignment = <0x0 0x400000>; - linux,phandle = <0x40>; - phandle = <0x40>; - }; - - linux,ppmgr { - compatible = "shared-dma-pool"; - size = <0x0 0x0>; - linux,phandle = <0x3e>; - phandle = <0x3e>; - }; - - linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - linux,phandle = <0x39>; - phandle = <0x39>; - }; - - linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - linux,phandle = <0x3d>; - phandle = <0x3d>; - }; - - linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - linux,phandle = <0x3a>; - phandle = <0x3a>; - }; - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <0x37 0x9 0x0>; - led_active_low = <0x1>; - }; - - fan { - compatible = "fanctl"; - fan_ctl0 = <0x38 0x3f 0x0>; - fan_ctl1 = <0x38 0x40 0x0>; - trig_temp_level0 = <0x32>; - trig_temp_level1 = <0x3c>; - trig_temp_level2 = <0x46>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0x0 0x3 0x1 0x0 0x59 0x1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x1851000 0x100000>; - display_mode_default = "1080p60hz"; - scale_mode = <0x1>; - display_size_default = <0x780 0x438 0x780 0xca8 0x20>; - logo_addr_2g = "0x7d851000"; - logo_addr_3g = "0xbd851000"; - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0x0 0x96 0x1>; - interrupt-names = "ge2d"; - clocks = <0x6 0x17 0x6 0x19>; - clock-names = "clk_vapb_0", "clk_ge2d"; - resets = <0x6 0x34>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - - io_dos_base { - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - - io_hiubus_base { - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - - io_vcbus_base { - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - - io_dmc_base { - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <0x39 0x3a>; - dev_name = "codec_mm"; - status = "okay"; - }; - - ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 0x0 0xc8834540 0x0 0x8 0x0 0xc8834558 0x0 0xc>; - interrupts = <0x0 0x8 0x1>; - phy-mode = "rgmii"; - pinctrl-names = "external_eth_pins"; - pinctrl-0 = <0x3b>; - rst_pin-gpios = <0x38 0xe 0x0>; - GPIOZ4_pin-gpios = <0x38 0x4 0x0>; - GPIOZ5_pin-gpios = <0x38 0x5 0x0>; - mc_val = <0x1621>; - cali_val = <0x20000>; - resets = <0x6 0x23>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <0x6 0xa>; - clock-names = "ethclk81"; - internal_phy = <0x0>; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <0x6 0x39 0x6 0x59 0x6 0x24 0x6 0x1>; - reset-names = "parser_top", "vpu_intr", "demux", "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <0x8>; - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <0x3c>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0x0 0x3 0x1 0x0 0x17 0x1 0x0 0x20 0x1 0x0 0x2b 0x1 0x0 0x2c 0x1 0x0 0x2d 0x1>; - interrupt-names = "vsync", "demux", "parser", "mailbox_0", "mailbox_1", "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <0x3d>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr"; - memory-region = <0x3e>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <0x3f>; - interrupts = <0x0 0x2e 0x1 0x0 0x6 0x1>; - interrupt-names = "de_irq", "timerc"; - buffer-size = <0x2fd000>; - hw-version = <0x2>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0x1>; - cma_size = <0x10>; - interrupts = <0x0 0x53 0x1>; - rdma-irq = <0x2>; - clocks = <0x6 0x11 0x6 0x29>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0x0>; - tv_bit_mode = <0x1>; - }; - - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <0x40>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0x0>; - interrupts = <0x0 0x55 0x1>; - rdma-irq = <0x4>; - clocks = <0x6 0x11 0x6 0x29>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0x1>; - tv_bit_mode = <0x1>; - }; - - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <0x6 0x7 0x6 0x26>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0x0>; - }; - - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <0x6 0x7 0x6 0x27>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <0x1>; - }; - - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0x0>; - wb_en = <0x0>; - cm_en = <0x0>; - }; - - amvenc_avc { - compatible = "amlogic, amvenc_avc"; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0x0 0x2d 0x1>; - interrupt-names = "mailbox_2"; - }; - - hevc_enc { - compatible = "cnm, HevcEnc"; - dev_name = "HevcEnc"; - status = "okay"; - interrupts = <0x0 0xbb 0x1>; - interrupt-names = "wave420l_irq"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_reg_base { - reg = <0x0 0xc8810000 0x0 0x4000>; - }; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <0x7>; - }; - - bt-dev { - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "okay"; - gpio_reset = <0x38 0x60 0x0>; - }; - - rtc { - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <0x38 0x56 0x0>; - interrupts = <0x0 0x44 0x4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <0x38 0x55 0x0>; - dhd_static_buf; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <0x41>; - pwm_config = <0x42>; - }; - - wifi_pwm_conf { - pwm_channel1 = <0x4>; - pwm_channel2 = <0xc>; - pwm_channel1_conf = <0x774d 0x3ba6 0x6>; - pwm_channel2_conf = <0x7736 0x3b9b 0x9>; - linux,phandle = <0x42>; - phandle = <0x42>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = <0x0 0xda 0x1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <0x43>; - pinctrl-1 = <0x44 0x45 0x46>; - - emmc { - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_8_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_1_8V_DDR", "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <0x493e0>; - f_max = <0x5f5e100>; - max_req_size = <0x20000>; - gpio_dat3 = <0x38 0x1d 0x0>; - hw_reset = <0x38 0x23 0x0>; - card_type = <0x1>; - }; - }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = <0x0 0xd9 0x1 0x0 0x43 0x1 0x0 0x45 0x1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins", "sd_clk_cmd_uart_pins", "sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins", "ao_to_sd_jtag_pins", "sd_to_ao_jtag_pins"; - pinctrl-0 = <0x47>; - pinctrl-1 = <0x48>; - pinctrl-2 = <0x49>; - pinctrl-3 = <0x4a>; - pinctrl-4 = <0x4b>; - pinctrl-5 = <0x4c>; - pinctrl-6 = <0x4d>; - pinctrl-7 = <0x4e>; - pinctrl-8 = <0x4f>; - - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED"; - f_min = <0x61a80>; - f_max = <0x5f5e100>; - max_req_size = <0x20000>; - gpio_dat3 = <0x38 0x2e 0x0>; - jtag_pin = <0x38 0x2a 0x0>; - gpio_cd = <0x38 0x30 0x0>; - card_in_delay = <0x190>; - irq_in = <0x3>; - irq_out = <0x5>; - card_type = <0x5>; - }; - }; - - sdio { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = <0x0 0xd8 0x1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <0x50>; - pinctrl-1 = <0x51>; - - sdio { - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_UHS_SDR12", "MMC_CAP_UHS_SDR25", "MMC_CAP_UHS_SDR50", "MMC_CAP_UHS_SDR104", "MMC_PM_KEEP_POWER"; - f_min = <0x61a80>; - f_max = <0xbebc200>; - max_req_size = <0x20000>; - card_type = <0x3>; - }; - }; - - nand { - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = <0x0 0x22 0x1>; - pinctrl-names = "nand_rb_mod", "nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <0x52 0x53 0x54>; - pinctrl-1 = <0x52 0x53 0x54>; - pinctrl-2 = <0x55>; - device_id = <0x0>; - plat-names = "nandnormal"; - plat-num = <0x1>; - plat-part-0 = <0x56>; - - normal { - enable_pad = "ce0", "ce1", "ce2", "ce3"; - busy_pad = "rb0"; - linux,phandle = <0x56>; - phandle = <0x56>; - }; - }; - - aml_nftl { - compatible = "amlogic, nftl"; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - unifykey-num = <0xe>; - unifykey-index-0 = <0x57>; - unifykey-index-1 = <0x58>; - unifykey-index-2 = <0x59>; - unifykey-index-3 = <0x5a>; - unifykey-index-4 = <0x5b>; - unifykey-index-5 = <0x5c>; - unifykey-index-6 = <0x5d>; - unifykey-index-7 = <0x5e>; - unifykey-index-8 = <0x5f>; - unifykey-index-9 = <0x60>; - unifykey-index-10 = <0x61>; - unifykey-index-11 = <0x62>; - unifykey-index-12 = <0x63>; - unifykey-index-13 = <0x64>; - - key_0 { - key-name = "usid"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x57>; - phandle = <0x57>; - }; - - key_1 { - key-name = "mac"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x58>; - phandle = <0x58>; - }; - - key_2 { - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read", "write", "del"; - linux,phandle = <0x59>; - phandle = <0x59>; - }; - - key_3 { - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - linux,phandle = <0x5a>; - phandle = <0x5a>; - }; - - key_4 { - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read", "write", "del"; - key-type = "mac"; - linux,phandle = <0x5b>; - phandle = <0x5b>; - }; - - key_5 { - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read", "write", "del"; - key-type = "mac"; - linux,phandle = <0x5c>; - phandle = <0x5c>; - }; - - key_6 { - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5d>; - phandle = <0x5d>; - }; - - key_7 { - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5e>; - phandle = <0x5e>; - }; - - key_8 { - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5f>; - phandle = <0x5f>; - }; - - key_9 { - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x60>; - phandle = <0x60>; - }; - - key_10 { - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x61>; - phandle = <0x61>; - }; - - key_11 { - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x62>; - phandle = <0x62>; - }; - - key_12 { - key-name = "prpubkeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x63>; - phandle = <0x63>; - }; - - key_13 { - key-name = "prprivkeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x64>; - phandle = <0x64>; - }; - }; - - amhdmitx { - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names = "hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0 = <0x65>; - pinctrl-1 = <0x66>; - interrupts = <0x0 0x39 0x1>; - interrupt-names = "hdmitx_hpd"; - clocks = <0x6 0xb 0x6 0xc 0x6 0xd 0x6 0xe 0x6 0xf 0x6 0x16>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - }; - - aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; - vendor_id = <0x0>; - product_desc = "GXBB Mbox"; - cec_osd_string = "MBox"; - port_num = <0x1>; - arc_port_mask = <0x0>; - interrupts = <0x0 0xc7 0x1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0 = <0x67>; - reg = <0x0 0xc810023c 0x0 0x4 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <0xa>; - gpios = <0x38 0x11 0x0 0x38 0x12 0x0>; - #address-cells = <0x2>; - #size-cells = <0x2>; - i2c-gpio,timeout-ms = <0xa>; - - i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0x0 0xc1 0x1>; - status = "okay"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - xtal_tick_en = <0x1>; - fifosize = <0x40>; - pinctrl-names = "default"; - support-sysrq = <0x0>; - }; - - serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0x0 0x1a 0x1>; - status = "okay"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x80>; - pinctrl-names = "default"; - pinctrl-0 = <0x68>; - resets = <0x6 0xd>; - }; - - serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0x0 0x4b 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x69>; - resets = <0x6 0x30>; - }; - - serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0x0 0x5d 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x6a>; - resets = <0x6 0x4f>; - }; - - serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0x0 0xc5 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x6b>; - }; - - canvas { - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma { - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0x0 0x59 0x1>; - interrupt-names = "rdma"; - }; - - dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0x0 0x1e 0x4>; - usb-phy = <0x6c 0x6d>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <0x3>; - reg = <0x0 0xd0078000 0x0 0x80>; - linux,phandle = <0x6c>; - phandle = <0x6c>; - }; - - usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0x0>; - reg = <0x0 0xd0078080 0x0 0x20>; - interrupts = <0x0 0x10 0x4>; - otg = <0x1>; - gpio-vbus-power = "GPIOAO_5"; - gpios = <0x37 0x5 0x0>; - linux,phandle = <0x6d>; - phandle = <0x6d>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0x0 0x1f 0x4>; - pl-periph-id = <0x0>; - clock-src = "usb0"; - port-id = <0x0>; - port-type = <0x2>; - port-speed = <0x0>; - port-config = <0x0>; - port-dma = <0x0>; - port-id-mode = <0x0>; - usb-fifo = <0x2d8>; - cpu-type = "gxl"; - controller-type = <0x2>; - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <0x6 0x3a 0x6 0x48 0x6 0x36>; - reset-names = "usb_general", "usb1", "usb1_to_ddr"; - }; - - I2S { - #sound-dai-cells = <0x0>; - resets = <0x6 0x26 0x6 0x12 0x6 0x28 0x6 0x29 0x6 0x2a 0x6 0x2b 0x6 0x2c 0x6 0x2d 0x6 0x2f 0x6 0x8e 0x6 0x22>; - reset-names = "top_glue", "aud_buf", "i2s_out", "amclk_measure", "aififo2", "aud_mixer", "mixer_reg", "adc", "top_level", "aoclk", "aud_in"; - clocks = <0x6 0x21 0x6 0x22>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - linux,phandle = <0x79>; - phandle = <0x79>; - }; - - SPDIF { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-spdif-dai"; - resets = <0x6 0x27 0x6 0x90>; - reset-names = "iec958", "iec958_amclk"; - clocks = <0x6 0x20 0x6 0x24 0x6 0x22 0x6 0x25 0x6 0xa>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - linux,phandle = <0x7a>; - phandle = <0x7a>; - }; - - PCM { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <0x6e>; - clocks = <0x6 0x1f 0x6 0x2a 0x6 0x2b>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <0x1>; - linux,phandle = <0x7b>; - phandle = <0x7b>; - }; - - i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0x0 0x1d 0x1>; - linux,phandle = <0x77>; - phandle = <0x77>; - }; - - pcm_platform { - compatible = "amlogic, aml-pcm"; - linux,phandle = <0x78>; - phandle = <0x78>; - }; - - spdif_codec { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <0x6f>; - linux,phandle = <0x7d>; - phandle = <0x7d>; - }; - - pcm_codec { - #sound-dai-cells = <0x0>; - compatible = "amlogic, pcm2BT-codec"; - linux,phandle = <0x7e>; - phandle = <0x7e>; - }; - - dummy { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - - t9015 { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - linux,phandle = <0x7c>; - phandle = <0x7c>; - }; - - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = "Ext Spk", "LOUTL", "Ext Spk", "LOUTR"; - mute_gpio-gpios = <0x38 0x15 0x0>; - mute_inv; - hp_disable; - hp_paraments = <0x320 0x12c 0x0 0x5 0x1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <0x70>; - cpu_list = <0x71 0x72 0x73>; - codec_list = <0x74 0x75 0x76>; - plat_list = <0x77 0x77 0x78>; - - cpudai0 { - sound-dai = <0x79>; - linux,phandle = <0x71>; - phandle = <0x71>; - }; - - cpudai1 { - sound-dai = <0x7a>; - linux,phandle = <0x72>; - phandle = <0x72>; - }; - - cpudai2 { - sound-dai = <0x7b>; - linux,phandle = <0x73>; - phandle = <0x73>; - }; - - codec0 { - sound-dai = <0x7c>; - linux,phandle = <0x74>; - phandle = <0x74>; - }; - - codec1 { - sound-dai = <0x7d>; - linux,phandle = <0x75>; - phandle = <0x75>; - }; - - codec2 { - sound-dai = <0x7e>; - linux,phandle = <0x76>; - phandle = <0x76>; - }; - }; - - gpio_keypad { - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <0x14>; - key_num = <0x1>; - key_name = "power"; - key_code = <0x74>; - key_pin = <0x37 0x2 0x0>; - irq_keyup = <0x6>; - irq_keydown = <0x7>; - }; - - adc_keypad { - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "home"; - key_num = <0x1>; - key_code = <0x66>; - key_chan = <0x0>; - key_val = <0xa>; - key_tolerance = <0x28>; - }; - - aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <0x1>; - linux,phandle = <0x7f>; - phandle = <0x7f>; - - cooling_devices { - - cpufreq_cool_cluster0 { - min_state = <0xf4240>; - dyn_coeff = <0x8c>; - cluster_id = <0x0>; - node_name = "cluster0"; - device_type = "cpufreq"; - }; - - cpufreq_cool_cluster1 { - min_state = <0x7a120>; - dyn_coeff = <0x8c>; - cluster_id = <0x1>; - node_name = "cluster1"; - device_type = "cpufreq"; - }; - - cpucore_cool_cluster0 { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - - cpucore_cool_cluster1 { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x1>; - node_name = "cpu_core_cluster1"; - device_type = "cpucore"; - }; - - gpufreq_cool { - min_state = <0x190>; - dyn_coeff = <0x1b5>; - cluster_id = <0x0>; - node_name = "t82x"; - device_type = "gpufreq"; - }; - - gpucore_cool { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - - cpu_core_cluster0 { - #cooling-cells = <0x2>; - linux,phandle = <0x83>; - phandle = <0x83>; - }; - - cpu_core_cluster1 { - #cooling-cells = <0x2>; - linux,phandle = <0x84>; - phandle = <0x84>; - }; - - thermal_gpu_cores { - #cooling-cells = <0x2>; - linux,phandle = <0x86>; - phandle = <0x86>; - }; - }; - - thermal-zones { - - soc_thermal { - polling-delay = <0x3e8>; - polling-delay-passive = <0x64>; - sustainable-power = <0x992>; - thermal-sensors = <0x7f 0x3>; - - trips { - - trip-point@0 { - temperature = <0x11170>; - hysteresis = <0x3e8>; - type = "passive"; - }; - - trip-point@1 { - temperature = <0x13880>; - hysteresis = <0x3e8>; - type = "passive"; - linux,phandle = <0x80>; - phandle = <0x80>; - }; - - trip-point@2 { - temperature = <0x14c08>; - hysteresis = <0x1388>; - type = "hot"; - }; - - trip-point@3 { - temperature = <0x3f7a0>; - hysteresis = <0x3e8>; - type = "critical"; - }; - }; - - cooling-maps { - - cpufreq_cooling_map0 { - trip = <0x80>; - cooling-device = <0x81 0x0 0x4>; - contribution = <0x400>; - }; - - cpufreq_cooling_map1 { - trip = <0x80>; - cooling-device = <0x82 0x0 0x4>; - contribution = <0x400>; - }; - - cpucore_cooling_map0 { - trip = <0x80>; - cooling-device = <0x83 0x0 0x3>; - contribution = <0x400>; - }; - - cpucore_cooling_map1 { - trip = <0x80>; - cooling-device = <0x84 0x0 0x3>; - contribution = <0x400>; - }; - - gpufreq_cooling_map { - trip = <0x80>; - cooling-device = <0x85 0x0 0x4>; - contribution = <0x400>; - }; - - gpucore_cooling_map { - trip = <0x80>; - cooling-device = <0x86 0x0 0x2>; - contribution = <0x400>; - }; - }; - }; - }; -}; diff --git a/arch/arm64/boot/dts/kvim2_multios.dts b/arch/arm64/boot/dts/kvim2_multios.dts index cb763fa375695..ed265c09ff890 100644 --- a/arch/arm64/boot/dts/kvim2_multios.dts +++ b/arch/arm64/boot/dts/kvim2_multios.dts @@ -1,2471 +1,129 @@ -/dts-v1/; +#include "gxm_q200_2g.dts" +#include "partitions-multios.dtsi" -/ { - model = "Amlogic"; +/{ + le-dt-id = "gxm_kvim2"; compatible = "kvim"; amlogic-dt-id = "kvim"; - interrupt-parent = <0x1>; - #address-cells = <0x2>; - #size-cells = <0x2>; - - t82x { - compatible = "arm,malit602", "arm,malit60x", "arm,malit6xx", "arm,mali-midgard"; - #cooling-cells = <0x2>; - reg = <0x0 0xd00c0000 0x0 0x100000 0x0 0xc1104440 0x0 0x1000 0x0 0xc8100000 0x0 0x1000 0x0 0xc883c000 0x0 0x1000 0x0 0xc1104440 0x0 0x1000>; - interrupt-parent = <0x1>; - interrupts = <0x0 0xa0 0x4 0x0 0xa1 0x4 0x0 0xa2 0x4>; - interrupt-names = "GPU", "MMU", "JOB"; - num_of_pp = <0x3>; - sc_mpp = <0x1>; - operating-points = <0xa2c2a 0xf4240 0x7a120 0xf4240 0x61a80 0xf4240 0x45c12 0xf4240 0x3d090 0xf4240 0x1e848 0xf4240>; - tbl = <0x2 0x3 0x4 0x5 0x5>; - clocks = <0x6 0x8 0x6 0x9 0x6 0x11 0x6 0x12 0x6 0x1e 0x6 0x15 0x6 0x13 0x6 0x14>; - clock-names = "fclk_div3", "fclk_div4", "fclk_div5", "fclk_div7", "gp0_pll", "clk_gpu", "clk_gpu_0", "clk_gpu_1"; - linux,phandle = <0x85>; - phandle = <0x85>; - - clk125_cfg { - clk_freq = <0x7735940>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x1e 0x78>; - }; - - dvfs250_cfg { - clk_freq = <0xee6b280>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x50 0xaa>; - }; - - dvfs285_cfg { - clk_freq = <0x1107a650>; - clk_parent = "fclk_div7"; - clkp_freq = <0x1107a650>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x64 0xbe>; - linux,phandle = <0x2>; - phandle = <0x2>; - }; - - dvfs400_cfg { - clk_freq = <0x17d78400>; - clk_parent = "fclk_div5"; - clkp_freq = <0x17d78400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x98 0xcf>; - linux,phandle = <0x3>; - phandle = <0x3>; - }; - - dvfs500_cfg { - clk_freq = <0x1dcd6500>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xb4 0xdc>; - linux,phandle = <0x4>; - phandle = <0x4>; - }; - - dvfs666_cfg { - clk_freq = <0x27b25a80>; - clk_parent = "fclk_div3"; - clkp_freq = <0x27b25a80>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xd2 0xec>; - linux,phandle = <0x5>; - phandle = <0x5>; - }; - - dvfs800_cfg { - clk_freq = <0x2f34f600>; - clk_parent = "gp0_pll"; - clkp_freq = <0x2f34f600>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xe6 0xff>; - }; - }; - - gpu_clk@c883c00 { - compatible = "meson, gpu-clkgen-1.00.a"; - #clock-cells = <0x0>; - reg = <0x0 0xc883c000 0x0 0x1000>; - clocks = <0x6 0x8 0x6 0x9 0x6 0x11 0x6 0x12 0x6 0x1e 0x6 0x15 0x6 0x13 0x6 0x14>; - clock-names = "fclk_div3", "fclk_div4", "fclk_div5", "fclk_div7", "gp0_pll", "clk_gpu", "clk_gpu_0", "clk_gpu_1"; - clock-output-names = "clk_mali"; - tbl = <0x7 0x8 0x9 0xa 0xb 0xc>; - - clk125_cfg { - clk_freq = <0x7735940>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x1e 0x78>; - linux,phandle = <0x7>; - phandle = <0x7>; - }; - - clk250_cfg { - clk_freq = <0xee6b280>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x50 0xaa>; - linux,phandle = <0x8>; - phandle = <0x8>; - }; - - clk285_cfg { - clk_freq = <0x1107a650>; - clk_parent = "fclk_div7"; - clkp_freq = <0x1107a650>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x64 0xbe>; - linux,phandle = <0x9>; - phandle = <0x9>; - }; - - clk400_cfg { - clk_freq = <0x17d78400>; - clk_parent = "fclk_div5"; - clkp_freq = <0x17d78400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x98 0xcf>; - linux,phandle = <0xa>; - phandle = <0xa>; - }; - - clk500_cfg { - clk_freq = <0x1dcd6500>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xb4 0xdc>; - linux,phandle = <0xb>; - phandle = <0xb>; - }; - - clk666_cfg { - clk_freq = <0x27bc8410>; - clk_parent = "fclk_div3"; - clkp_freq = <0x27bc8410>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xd2 0xec>; - linux,phandle = <0xc>; - phandle = <0xc>; - }; - - clk720_cfg { - clk_freq = <0x2aea5400>; - clk_parent = "gp0_pll"; - clkp_freq = <0x2aea5400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xe6 0xff>; - }; - }; - - cpus { - #address-cells = <0x2>; - #size-cells = <0x0>; - - cpu-map { - - cluster0 { - #cooling-cells = <0x2>; - linux,phandle = <0x81>; - phandle = <0x81>; - - core0 { - cpu = <0xd>; - }; - - core1 { - cpu = <0xe>; - }; - - core2 { - cpu = <0xf>; - }; - - core3 { - cpu = <0x10>; - }; - }; - - cluster1 { - #cooling-cells = <0x2>; - linux,phandle = <0x82>; - phandle = <0x82>; - - core0 { - cpu = <0x11>; - }; - - core1 { - cpu = <0x12>; - }; - - core2 { - cpu = <0x13>; - }; - - core3 { - cpu = <0x14>; - }; - }; - }; - - cpu@0 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x0>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xd>; - phandle = <0xd>; - }; - - cpu@1 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x1>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xe>; - phandle = <0xe>; - }; - - cpu@2 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x2>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xf>; - phandle = <0xf>; - }; - - cpu@3 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x3>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x10>; - phandle = <0x10>; - }; - - cpu@100 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x100>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x11>; - phandle = <0x11>; - }; - - cpu@101 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x101>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x12>; - phandle = <0x12>; - }; - - cpu@102 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x102>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x13>; - phandle = <0x13>; - }; - - cpu@103 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x103>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x14>; - phandle = <0x14>; - }; - - idle-states { - entry-method = "arm,psci"; - - cpu-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x10000>; - local-timer-stop; - entry-latency-us = <0x1f40>; - exit-latency-us = <0x1f40>; - min-residency-us = <0x4e20>; - linux,phandle = <0x16>; - phandle = <0x16>; - }; - - cluster-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x1010000>; - local-timer-stop; - entry-latency-us = <0x1f40>; - exit-latency-us = <0x1f40>; - min-residency-us = <0x61a8>; - linux,phandle = <0x17>; - phandle = <0x17>; - }; - }; - }; - - timer { - compatible = "arm,armv8-timer"; - interrupts = <0x1 0xd 0xff01 0x1 0xe 0xff01 0x1 0xb 0xff01 0x1 0xa 0xff01>; - }; - - timer_bc { - compatible = "arm, meson-bc-timer"; - reg = <0x0 0xc1109990 0x0 0x4 0x0 0xc1109994 0x0 0x4>; - timer_name = "Meson TimerF"; - clockevent-rating = <0x12c>; - clockevent-shift = <0x14>; - clockevent-features = <0x23>; - interrupts = <0x0 0x3c 0x1>; - bit_enable = <0x10>; - bit_mode = <0xc>; - bit_resolution = <0x0>; - }; - - arm_pmu { - compatible = "arm,armv8-pmuv3"; - interrupts = <0x0 0x89 0x4 0x0 0x8a 0x4 0x0 0x99 0x4 0x0 0x9a 0x4>; - }; - - pm { - compatible = "amlogic, pm"; - device_name = "aml_pm"; - gxbaby-suspend; - reg = <0x0 0xc81000a8 0x0 0x4 0x0 0xc810023c 0x0 0x4>; - }; - - interrupt-controller@2c001000 { - compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; - #interrupt-cells = <0x3>; - #address-cells = <0x0>; - interrupt-controller; - reg = <0x0 0xc4301000 0x0 0x1000 0x0 0xc4302000 0x0 0x100>; - interrupts = <0x1 0x9 0xf04>; - linux,phandle = <0x1>; - phandle = <0x1>; - }; - - aml_restart { - compatible = "aml, restart"; - sys_reset = <0x84000009>; - sys_poweroff = <0x84000008>; - }; - - psci { - compatible = "arm,psci"; - method = "smc"; - cpu_suspend = <0xc4000001>; - cpu_off = <0x84000002>; - cpu_on = <0xc4000003>; - migrate = <0xc4000005>; - }; - - secmon { - compatible = "amlogic, secmon"; - memory-region = <0x18>; - in_base_func = <0x82000020>; - out_base_func = <0x82000021>; - }; - - securitykey { - compatible = "aml, securitykey"; - storage_query = <0x82000060>; - storage_read = <0x82000061>; - storage_write = <0x82000062>; - storage_tell = <0x82000063>; - storage_verify = <0x82000064>; - storage_status = <0x82000065>; - storage_list = <0x82000067>; - storage_remove = <0x82000068>; - storage_in_func = <0x82000023>; - storage_out_func = <0x82000024>; - storage_block_func = <0x82000025>; - storage_size_func = <0x82000027>; - storage_set_enctype = <0x8200006a>; - storage_get_enctype = <0x8200006b>; - storage_version = <0x8200006c>; - }; - - cpu_iomap { - compatible = "amlogic, iomap"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - - io_apb_base { - reg = <0x0 0xd0000000 0x0 0x200000>; - }; - - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - }; - - cpufreq { - compatible = "arm, scpi-cpufreq"; - }; - - amlogic-watchdog { - compatible = "amlogic, gx-wdt"; - status = "disable"; - default_timeout = <0xa>; - reset_watchdog_method = <0x1>; - reset_watchdog_time = <0x2>; - shutdown_timeout = <0xa>; - firmware_timeout = <0x6>; - suspend_timeout = <0x6>; - reg = <0x0 0xc11098d0 0x0 0x10>; - clocks = <0x6 0x2>; - }; - - amlogic-jtag { - compatible = "amlogic, jtag"; - status = "okay"; - pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; - pinctrl-0 = <0x19>; - pinctrl-1 = <0x1a>; - }; - - meson_clock { - compatible = "amlogic, gxl-clock"; - reg = <0x0 0xc883c000 0x0 0x1000 0x0 0xc8100000 0x0 0x1000>; - #clock-cells = <0x1>; - #reset-cells = <0x1>; - sys_max = <0x5b8d8000>; - linux,phandle = <0x6>; - phandle = <0x6>; - }; - - cpu_info { - compatible = "amlogic, cpuinfo"; - cpuinfo_cmd = <0x82000044>; - }; - - pinmux { - compatible = "amlogic, pinmux-gxl"; - dev_name = "pinmux"; - #pinmux-cells = <0x2>; - #address-cells = <0x2>; - #size-cells = <0x2>; - reg = <0x0 0xc1109880 0x0 0x10>; - ranges; - - banks@c11080b0 { - reg = <0x0 0xc88344b0 0x0 0x28 0x0 0xc88344e8 0x0 0x14 0x0 0xc8834520 0x0 0x14 0x0 0xc8834430 0x0 0x40>; - reg-names = "mux", "pull", "pull-enable", "gpio"; - gpio-controller; - #gpio-cells = <0x2>; - linux,phandle = <0x38>; - phandle = <0x38>; - }; - - ao-bank@c1108030 { - reg = <0x0 0xc8100014 0x0 0x8 0x0 0xc810002c 0x0 0x4 0x0 0xc8100024 0x0 0x8>; - reg-names = "mux", "pull", "gpio"; - gpio-controller; - #gpio-cells = <0x2>; - linux,phandle = <0x37>; - phandle = <0x37>; - }; - - external_eth_pins { - amlogic,setmask = <0x4 0xfffc00>; - amlogic,clrmask = <0x4 0x3fc 0x3 0xffcff800>; - amlogic,pins = "GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3", "GPIOZ_4", "GPIOZ_5", "GPIOZ_6", "GPIOZ_7", "GPIOZ_8", "GPIOZ_9", "GPIOZ_10", "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - linux,phandle = <0x3b>; - phandle = <0x3b>; - }; - - internal_eth_pins { - amlogic,setmask = <0x4 0x3000000>; - amlogic,clrmask = <0x3 0x300000>; - amlogic,pins = "GPIOZ_14", "GPIOZ_15"; - }; - - jtag_apao_pin { - amlogic,clrmask = <0x6 0x7fe0000>; - amlogic,pins = "GPIOH_6", "GPIOH_7", "GPIOH_8", "GPIOH_9"; - linux,phandle = <0x19>; - phandle = <0x19>; - }; - - jtag_apee_pin { - amlogic,clrmask = <0x6 0x3c>; - amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3"; - linux,phandle = <0x1a>; - phandle = <0x1a>; - }; - - remote_pin { - amlogic,setmask = <0x10 0x1>; - amlogic,pins = "GPIOAO_7"; - linux,phandle = <0x26>; - phandle = <0x26>; - }; - - ao_uart { - amlogic,setmask = <0x10 0x1800>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - }; - - ao_b_uart { - amlogic,setmask = <0x10 0x1800000>; - amlogic,pins = "GPIOAO_4", "GPIOAO_5"; - linux,phandle = <0x6b>; - phandle = <0x6b>; - }; - - a_uart { - amlogic,setmask = <0x5 0xf0000>; - amlogic,clrmask = <0x5 0x3c0>; - amlogic,pins = "GPIOX_12", "GPIOX_13", "GPIOX_14", "GPIOX_15"; - linux,phandle = <0x68>; - phandle = <0x68>; - }; - - b_uart { - amlogic,setmask = <0x2 0x18000>; - amlogic,pins = "GPIODV_24", "GPIODV_25"; - linux,phandle = <0x69>; - phandle = <0x69>; - }; - - c_uart { - amlogic,setmask = <0x5 0x3000>; - amlogic,pins = "GPIOX_8", "GPIOX_9"; - linux,phandle = <0x6a>; - phandle = <0x6a>; - }; - - wifi_32k_pins { - amlogic,setmask = <0x5 0x8000>; - amlogic,pins = "GPIOX_16"; - linux,phandle = <0x41>; - phandle = <0x41>; - }; - - sd_clk_cmd_pins { - amlogic,setmask = <0x6 0xc 0x10 0x1800>; - amlogic,pins = "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x47>; - phandle = <0x47>; - }; - - sd_all_pins { - amlogic,setmask = <0x6 0x3f 0x10 0x1800>; - amlogic,clrmask = <0x6 0xfc0>; - amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3", "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x48>; - phandle = <0x48>; - }; - - sd_1bit_pins { - amlogic,setmask = <0x6 0x1c 0x10 0x1800>; - amlogic,clrmask = <0x6 0xcc3>; - amlogic,pins = "CARD_1", "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x49>; - phandle = <0x49>; - }; - - sd_clk_cmd_uart_pins { - amlogic,setmask = <0x6 0x30c>; - amlogic,clrmask = <0x6 0xcc3 0x10 0x1800>; - amlogic,pins = "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4a>; - phandle = <0x4a>; - }; - - sd_1bit_uart_pins { - amlogic,setmask = <0x6 0x31c>; - amlogic,clrmask = <0x6 0xcc3 0x10 0x1800>; - amlogic,pins = "CARD_1", "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4b>; - phandle = <0x4b>; - }; - - sd_to_ao_uart_pins { - amlogic,setmask = <0x10 0x1800>; - amlogic,clrmask = <0x6 0x300>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4c>; - phandle = <0x4c>; - }; - - ao_to_sd_uart_pins { - amlogic,setmask = <0x6 0x300>; - amlogic,clrmask = <0x10 0x1800 0x6 0xcc3>; - amlogic,pins = "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4d>; - phandle = <0x4d>; - }; - - ao_to_sd_jtag_pins { - amlogic,setmask = <0x6 0x300>; - amlogic,clrmask = <0x6 0xcff 0x10 0x1800>; - amlogic,pins = "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4e>; - phandle = <0x4e>; - }; - - sd_to_ao_jtag_pins { - amlogic,setmask = <0x10 0x1800>; - amlogic,clrmask = <0x6 0xfc0>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4f>; - phandle = <0x4f>; - }; - - emmc_clk_cmd_pins { - amlogic,setmask = <0x7 0x60000000>; - amlogic,clrmask = <0x7 0xe0>; - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x43>; - phandle = <0x43>; - }; - - emmc_conf_pull_up { - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_10"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x44>; - phandle = <0x44>; - }; - - emmc_conf_pull_done { - amlogic,pins = "BOOT_15"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x45>; - phandle = <0x45>; - }; - - emmc_all_pins { - amlogic,setmask = <0x7 0xf0000000>; - amlogic,clrmask = <0x7 0xe0>; - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_10", "BOOT_15"; - amlogic,enable-output = <0x1>; - linux,phandle = <0x46>; - phandle = <0x46>; - }; - - sdio_clk_cmd_pins { - amlogic,setmask = <0x5 0xc000000>; - amlogic,pins = "GPIOX_4", "GPIOX_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x50>; - phandle = <0x50>; - }; - - sdio_all_pins { - amlogic,setmask = <0x5 0xfc000000>; - amlogic,pins = "GPIOX_0", "GPIOX_1", "GPIOX_2", "GPIOX_3", "GPIOX_4", "GPIOX_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x51>; - phandle = <0x51>; - }; - - conf_nand_pulldown { - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_15"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x52>; - phandle = <0x52>; - }; - - conf_nand_pullup { - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x53>; - phandle = <0x53>; - }; - - all_nand_pins { - amlogic,setmask = <0x7 0x800000ff>; - amlogic,clrmask = <0x7 0x70ffbc00>; - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_9", "BOOT_10", "BOOT_11", "BOOT_12", "BOOT_13", "BOOT_14", "BOOT_15"; - amlogic,enable-output = <0x1>; - linux,phandle = <0x54>; - phandle = <0x54>; - }; - - nand_cs { - amlogic,setmask = <0x7 0xc0>; - amlogic,clrmask = <0x7 0x40040000>; - amlogic,pins = "BOOT_8", "BOOT_9"; - linux,phandle = <0x55>; - phandle = <0x55>; - }; - - hdmitx_hpd { - amlogic,setmask = <0x6 0x80000000>; - amlogic,pins = "GPIOH_0"; - linux,phandle = <0x65>; - phandle = <0x65>; - }; - - hdmitx_ddc { - amlogic,setmask = <0x6 0x30000000>; - amlogic,pins = "GPIOH_1", "GPIOH_2"; - linux,phandle = <0x66>; - phandle = <0x66>; - }; - - hdmitx_aocec { - amlogic,setmask = <0x10 0x8000>; - amlogic,clrmask = <0x10 0x24000 0x11 0x1>; - amlogic,pins = "GPIOAO_8"; - linux,phandle = <0x67>; - phandle = <0x67>; - }; - - hdmitx_eecec { - amlogic,setmask = <0x10 0x4000>; - amlogic,clrmask = <0x10 0x28000 0x11 0x1>; - amlogic,pins = "GPIOAO_8"; - }; - - ao_i2c { - amlogic,setmask = <0x10 0x60>; - amlogic,clrmask = <0x10 0x1800006>; - amlogic,pins = "GPIOAO_4", "GPIOAO_5"; - linux,phandle = <0x1b>; - phandle = <0x1b>; - }; - - a_i2c { - amlogic,setmask = <0x1 0xc000>; - amlogic,clrmask = <0x3 0x18 0x2 0x18000 0x2 0xc0 0x1 0x600000>; - amlogic,pins = "GPIODV_24", "GPIODV_25"; - linux,phandle = <0x1c>; - phandle = <0x1c>; - }; - - b_i2c { - amlogic,setmask = <0x1 0x3000>; - amlogic,clrmask = <0x2 0x6000 0x1 0x1c0000>; - amlogic,pins = "GPIODV_26", "GPIODV_27"; - linux,phandle = <0x1d>; - phandle = <0x1d>; - }; - - c_i2c { - amlogic,setmask = <0x1 0xc00>; - amlogic,clrmask = <0x2 0x1800 0x1 0x200 0x2 0x20>; - amlogic,pins = "GPIODV_28", "GPIODV_29"; - linux,phandle = <0x1e>; - phandle = <0x1e>; - }; - - c_i2c_pin1 { - amlogic,setmask = <0x1 0x30000>; - amlogic,clrmask = <0x1 0x2000000 0x3 0x20>; - amlogic,pins = "GPIODV_18", "GPIODV_19"; - }; - - d_i2c { - amlogic,setmask = <0x5 0x30>; - amlogic,clrmask = <0x5 0x300c03 0x6 0x3>; - amlogic,pins = "GPIOX_10", "GPIOX_11"; - linux,phandle = <0x1f>; - phandle = <0x1f>; - }; - - spicc_pins_z11z12z13 { - amlogic,setmask = <0x4 0x1c>; - amlogic,clrmask = <0x3 0x800 0x4 0x1c00>; - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - }; - - spicc_pulldown_z11z12z13 { - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - }; - - spicc_pullup_z11z12z13 { - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - }; - - spicc_pins_x8x9x11 { - amlogic,setmask = <0x5 0xd>; - amlogic,clrmask = <0x5 0xd03430 0x6 0xd>; - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - }; - - spicc_pulldown_x8x9x11 { - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - }; - - spicc_pullup_x8x9x11 { - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - }; - - audio_pin { - amlogic,setmask = <0x6 0x7800000>; - amlogic,clrmask = <0x6 0x7e0000>; - amlogic,pins = "GPIOH_6", "GPIOH_7", "GPIOH_8", "GPIOH_9"; - linux,phandle = <0x70>; - phandle = <0x70>; - }; - - audio_pin1 { - amlogic,setmask = <0x6 0x10000000>; - amlogic,clrmask = <0x6 0x8000000>; - amlogic,pins = "GPIOH_4"; - linux,phandle = <0x6f>; - phandle = <0x6f>; - }; - - audio_btpcm_pins { - amlogic,setmask = <0x5 0xf00000>; - amlogic,clrmask = <0x5 0x3c33>; - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - linux,phandle = <0x6e>; - phandle = <0x6e>; - }; - }; - - cpu_version { - reg = <0x0 0xc8100220 0x0 0x4>; - }; - - meson_clk_msr { - compatible = "amlogic, gxl_measure"; - reg = <0x0 0xc110875c 0x0 0x4 0x0 0xc1108764 0x0 0x4>; - }; - - i2c@c8100500 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-AO"; - status = "disabled"; - reg = <0x0 0xc8100500 0x0 0x1d>; - device_id = <0x0>; - pinctrl-names = "default"; - pinctrl-0 = <0x1b>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c1108500 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-A"; - status = "disabled"; - reg = <0x0 0xc1108500 0x0 0x20>; - device_id = <0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x1c>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c11087c0 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-B"; - status = "okay"; - reg = <0x0 0xc11087c0 0x0 0x20>; - device_id = <0x2>; - pinctrl-names = "default"; - pinctrl-0 = <0x1d>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x186a0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - - khadas-hym8563 { - compatible = "khadas-hym8563"; - reg = <0x51>; - }; - }; - - i2c@c11087e0 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-C"; - status = "disabled"; - reg = <0x0 0xc11087e0 0x0 0x20>; - device_id = <0x3>; - pinctrl-names = "default"; - pinctrl-0 = <0x1e>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c1108d20 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-D"; - status = "disabled"; - reg = <0x0 0xc1108d20 0x0 0x20>; - device_id = <0x4>; - pinctrl-names = "default"; - pinctrl-0 = <0x1f>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - efuse { - compatible = "amlogic, efuse"; - read_cmd = <0x82000030>; - write_cmd = <0x82000031>; - get_max_cmd = <0x82000033>; - key = <0x20>; - resets = <0x6 0x3e>; - reset-names = "efuse_clk"; - status = "ok"; - }; - - efusekey { - keynum = <0x4>; - key0 = <0x21>; - key1 = <0x22>; - key2 = <0x23>; - key3 = <0x24>; - linux,phandle = <0x20>; - phandle = <0x20>; - - key_0 { - keyname = "mac"; - offset = <0x0>; - size = <0xc>; - linux,phandle = <0x21>; - phandle = <0x21>; - }; - - key_1 { - keyname = "mac_bt"; - offset = <0xc>; - size = <0xc>; - linux,phandle = <0x22>; - phandle = <0x22>; - }; - - key_2 { - keyname = "mac_wifi"; - offset = <0x18>; - size = <0xc>; - linux,phandle = <0x23>; - phandle = <0x23>; - }; - - key_3 { - keyname = "usid"; - offset = <0x24>; - size = <0xc>; - linux,phandle = <0x24>; - phandle = <0x24>; - }; - }; - - mhu@c883c400 { - compatible = "amlogic, meson_mhu"; - reg = <0x0 0xc883c400 0x0 0x4c 0x0 0xc8013000 0x0 0x800>; - interrupts = <0x0 0xd1 0x8 0x0 0xd2 0x8>; - #mbox-cells = <0x1>; - mbox-names = "cpu_to_scp_low", "cpu_to_scp_high"; - mboxes = <0x25 0x0 0x25 0x1>; - linux,phandle = <0x25>; - phandle = <0x25>; - }; - - scpi_clocks { - compatible = "arm,scpi-clks"; - - scpi_clocks@0 { - compatible = "arm,scpi-clk-indexed"; - #clock-cells = <0x1>; - clock-indices = <0x0 0x1>; - clock-output-names = "vbig", "vlittle"; - linux,phandle = <0x15>; - phandle = <0x15>; - }; - }; - - rc@c8100580 { - compatible = "amlogic, aml_remote"; - dev_name = "meson-remote"; - reg = <0x0 0xc8100580 0x0 0x44 0x0 0xc8100480 0x0 0x20>; - status = "okay"; - protocol = <0x1>; - interrupts = <0x0 0xc4 0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x26>; - map = <0x27>; - max_frame_time = <0xc8>; - }; - - custom_maps { - mapnum = <0x4>; - map0 = <0x28>; - map1 = <0x29>; - map2 = <0x2a>; - map3 = <0x2b>; - linux,phandle = <0x27>; - phandle = <0x27>; - - map_0 { - mapname = "amlogic-remote-1"; - customcode = <0xfb04>; - release_delay = <0x50>; - size = <0x2c>; - keymap = <0x47000b 0x130002 0x100003 0x110004 0xf0005 0xc0006 0xd0007 0xb0008 0x80009 0x9000a 0x5c0061 0x510041 0x49000e 0x60082 0x140083 0x440067 0x1d006c 0x1c0069 0x48006a 0x53007d 0x450068 0x19006d 0x160066 0x520077 0x5007a 0x59007b 0x1b0078 0x40079 0x1a0074 0xa000f 0xe0071 0x15003f 0x1f0066 0x1e0084 0x70085 0x120086 0x540087 0x20088 0x4f001e 0x420030 0x5d002e 0x4c0020 0x580089 0x55008c>; - linux,phandle = <0x28>; - phandle = <0x28>; - }; - - map_1 { - mapname = "amlogic-remote-2"; - customcode = <0xfe01>; - release_delay = <0x50>; - size = <0x35>; - keymap = <0x10002 0x20003 0x30004 0x40005 0x50006 0x60007 0x70008 0x80009 0x9000a 0xa000b 0x1f01d2 0x15008b 0x16000f 0xc0192 0xd0193 0xe0073 0xf0072 0x110066 0x1c006a 0x1b0069 0x190067 0x1a006c 0x1d001c 0x170071 0x4900db 0x43009e 0x1201d5 0x1401d6 0x1801d7 0x590166 0x5a00a6 0x100074 0x4200a5 0x4400a3 0x1e00a8 0x4b00d0 0x5800a4 0x460082 0x400083 0x380046 0x5701d0 0x5b01d1 0x54018e 0x4c018f 0x4e0190 0x550191 0x5300ed 0x5200ee 0x3900d4 0x4100d5 0xb00d6 0xd8 0x1300d9>; - linux,phandle = <0x29>; - phandle = <0x29>; - }; - - map_2 { - mapname = "amlogic-remote-3"; - customcode = <0xbd02>; - release_delay = <0x50>; - size = <0x11>; - keymap = <0xca0067 0xd2006c 0x990069 0xc1006a 0xce0061 0x450074 0xc50085 0x800071 0xd0000f 0xd6007d 0x950066 0xdd0068 0x8c006d 0x890083 0x9c0082 0x9a0078 0xcd0079>; - linux,phandle = <0x2a>; - phandle = <0x2a>; - }; - - map_3 { - mapname = "khadas-ir"; - customcode = <0xff00>; - release_delay = <0x50>; - fn_key_scancode = <0x5c>; - fn_key_scancode_other = <0x5b>; - cursor_left_scancode = <0xe>; - cursor_right_scancode = <0x1a>; - cursor_up_scancode = <0x3>; - cursor_down_scancode = <0x2>; - cursor_ok_scancode = <0x7>; - size = <0xd>; - keymap = <0x140074 0x13008b 0x30067 0x2006c 0xe0069 0x1a006a 0x700e8 0x580072 0x5c003f 0x5b003f 0xb0073 0x1009e 0x480066>; - linux,phandle = <0x2b>; - phandle = <0x2b>; - }; - }; - - rng { - compatible = "amlogic,meson-rng"; - reg = <0x0 0xc8834000 0x0 0x4>; - }; - - audio_data { - compatible = "amlogic, audio_data"; - query_licence_cmd = <0x82000050>; - status = "okay"; - }; - - saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0x0 0x9 0x1>; - interrupt-names = "saradc_int"; - clocks = <0x6 0x2>; - clock-names = "saradc_clk"; - resets = <0x6 0x56>; - reg = <0x0 0xc1108680 0x0 0x30 0x0 0xc883c3d8 0x0 0x8>; - }; - - defendkey { - compatible = "amlogic, defendkey"; - reg = <0x0 0xc8834500 0x0 0x4>; - mem_size = <0x0 0x100000>; - status = "okay"; - }; - - spicc { - compatible = "amlogic, spicc"; - status = "disabled"; - reg = <0x0 0xc1108d80 0x0 0x28>; - resets = <0x6 0x8>; - reset-names = "spicc_clk"; - clocks = <0x6 0xa>; - clock-names = "clk81"; - interrupts = <0x0 0x51 0x1>; - device_id = <0x0>; - }; - - aml_aes { - compatible = "amlogic,aes_dma"; - dev_name = "aml_aes_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aml_tdes { - compatible = "amlogic,des_dma,tdes_dma"; - dev_name = "aml_tdes_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aml_sha { - compatible = "amlogic,sha_dma"; - dev_name = "aml_sha_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - meson-pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - #pwm-cells = <0x2>; - pwm-outputs = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xa 0xb 0xc 0xd 0xe 0xf>; - reg = <0x0 0xc1108550 0x0 0x1c 0x0 0xc1108640 0x0 0x1c 0x0 0xc11086c0 0x0 0x1c 0x0 0xc8100550 0x0 0x1c>; - clocks = <0x6 0x2 0x6 0x5 0x6 0x9 0x6 0x8>; - clock-names = "xtal", "vid_pll_clk", "fclk_div4", "fclk_div3"; - clock-select = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>; - }; - - partitions { - parts = <0xb>; - part-0 = <0x2c>; - part-1 = <0x2d>; - part-2 = <0x2e>; - part-3 = <0x2f>; - part-4 = <0x30>; - part-5 = <0x31>; - part-6 = <0x32>; - part-7 = <0x33>; - part-8 = <0x34>; - part-9 = <0x35>; - part-10 = <0x36>; - - recovery { - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x2c>; - phandle = <0x2c>; - }; - - rsv { - pname = "rsv"; - size = <0x0 0x800000>; - mask = <0x1>; - linux,phandle = <0x2d>; - phandle = <0x2d>; - }; - - tee { - pname = "tee"; - size = <0x0 0x800000>; - mask = <0x1>; - linux,phandle = <0x2e>; - phandle = <0x2e>; - }; - - crypt { - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x2f>; - phandle = <0x2f>; - }; - - misc { - pname = "misc"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x30>; - phandle = <0x30>; - }; - - boot { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x31>; - phandle = <0x31>; - }; - - system { - pname = "system"; - size = <0x0 0x80000000>; - mask = <0x1>; - linux,phandle = <0x32>; - phandle = <0x32>; - }; - - cache { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <0x2>; - linux,phandle = <0x33>; - phandle = <0x33>; - }; - - libreelec { - pname = "libreelec"; - size = <0x0 0x20000000>; - mask = <0x4>; - linux,phandle = <0x34>; - phandle = <0x34>; - }; - - linux { - pname = "linux"; - size = <0x0 0xfffffe00>; - mask = <0x4>; - linux,phandle = <0x35>; - phandle = <0x35>; - }; - - data { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <0x4>; - linux,phandle = <0x36>; - phandle = <0x36>; - }; - - }; - - aliases { - serial0 = "/serial@c81004c0"; - serial1 = "/serial@c11084c0"; - serial2 = "/serial@c11084dc"; - serial3 = "/serial@c1108700"; - serial4 = "/serial@c81004e0"; - }; memory@00000000 { - device_type = "memory"; - linux,usable-memory-2g = <0x0 0x100000 0x0 0x7ff00000>; - linux,usable-memory-3g = <0x0 0x100000 0x0 0xbff00000>; - }; - - reserved-memory { - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - linux,phandle = <0x18>; - phandle = <0x18>; - }; - - linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x5300000 0x0 0x2000000>; - no-map; - }; - - aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x7300000 0x0 0x100000>; - no-map; - }; - - linux,di { - compatible = "amlogic, di-mem"; - size = <0x0 0x1e00000>; - linux,phandle = <0x3f>; - phandle = <0x3f>; - }; - - linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x4000000>; - linux,phandle = <0x3c>; - phandle = <0x3c>; - }; - - linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x1000000>; - alignment = <0x0 0x400000>; - linux,phandle = <0x40>; - phandle = <0x40>; - }; - - linux,ppmgr { - compatible = "shared-dma-pool"; - size = <0x0 0x0>; - linux,phandle = <0x3e>; - phandle = <0x3e>; - }; - - linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - linux,phandle = <0x39>; - phandle = <0x39>; - }; - - linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - linux,phandle = <0x3d>; - phandle = <0x3d>; - }; - - linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - linux,phandle = <0x3a>; - phandle = <0x3a>; - }; + /delete-property/ linux,usable-memory; + linux,usable-memory-2g = <0x0 0x00100000 0x0 0x7ff00000>; + linux,usable-memory-3g = <0x0 0x00100000 0x0 0xbff00000>; }; sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <0x37 0x9 0x0>; - led_active_low = <0x1>; + led_gpio = <&gpio_ao GPIOAO_9 GPIO_ACTIVE_HIGH>; }; fan { compatible = "fanctl"; - fan_ctl0 = <0x38 0x3f 0x0>; - fan_ctl1 = <0x38 0x40 0x0>; - trig_temp_level0 = <0x32>; - trig_temp_level1 = <0x3c>; - trig_temp_level2 = <0x46>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; + fan_ctl0 = <&gpio GPIODV_14 GPIO_ACTIVE_HIGH>; + fan_ctl1 = <&gpio GPIODV_15 GPIO_ACTIVE_HIGH>; + trig_temp_level0 = <50>; + trig_temp_level1 = <60>; + trig_temp_level2 = <70>; }; meson-fb { - compatible = "amlogic, meson-fb"; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0x0 0x3 0x1 0x0 0x59 0x1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x1851000 0x100000>; - display_mode_default = "1080p60hz"; - scale_mode = <0x1>; - display_size_default = <0x780 0x438 0x780 0xca8 0x20>; + /delete-property/ logo_addr; logo_addr_2g = "0x7d851000"; - logo_addr_3g = "0xbd851000"; - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0x0 0x96 0x1>; - interrupt-names = "ge2d"; - clocks = <0x6 0x17 0x6 0x19>; - clock-names = "clk_vapb_0", "clk_ge2d"; - resets = <0x6 0x34>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - - io_dos_base { - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - - io_hiubus_base { - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - - io_vcbus_base { - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - - io_dmc_base { - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <0x39 0x3a>; - dev_name = "codec_mm"; - status = "okay"; - }; - - ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 0x0 0xc8834540 0x0 0x8 0x0 0xc8834558 0x0 0xc>; - interrupts = <0x0 0x8 0x1>; - phy-mode = "rgmii"; - pinctrl-names = "external_eth_pins"; - pinctrl-0 = <0x3b>; - rst_pin-gpios = <0x38 0xe 0x0>; - GPIOZ4_pin-gpios = <0x38 0x4 0x0>; - GPIOZ5_pin-gpios = <0x38 0x5 0x0>; - mc_val = <0x1621>; - cali_val = <0x20000>; - resets = <0x6 0x23>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <0x6 0xa>; - clock-names = "ethclk81"; - internal_phy = <0x0>; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <0x6 0x39 0x6 0x59 0x6 0x24 0x6 0x1>; - reset-names = "parser_top", "vpu_intr", "demux", "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <0x8>; - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <0x3c>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0x0 0x3 0x1 0x0 0x17 0x1 0x0 0x20 0x1 0x0 0x2b 0x1 0x0 0x2c 0x1 0x0 0x2d 0x1>; - interrupt-names = "vsync", "demux", "parser", "mailbox_0", "mailbox_1", "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <0x3d>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr"; - memory-region = <0x3e>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <0x3f>; - interrupts = <0x0 0x2e 0x1 0x0 0x6 0x1>; - interrupt-names = "de_irq", "timerc"; - buffer-size = <0x2fd000>; - hw-version = <0x2>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0x1>; - cma_size = <0x10>; - interrupts = <0x0 0x53 0x1>; - rdma-irq = <0x2>; - clocks = <0x6 0x11 0x6 0x29>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0x0>; - tv_bit_mode = <0x1>; + logo_addr_3g = "0xbd851000"; /*ion base + fb0 memory size for uboot logo osd1*/ }; - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <0x40>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0x0>; - interrupts = <0x0 0x55 0x1>; - rdma-irq = <0x4>; - clocks = <0x6 0x11 0x6 0x29>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0x1>; - tv_bit_mode = <0x1>; - }; - - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <0x6 0x7 0x6 0x26>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0x0>; - }; - - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <0x6 0x7 0x6 0x27>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <0x1>; - }; - - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0x0>; - wb_en = <0x0>; - cm_en = <0x0>; - }; - - amvenc_avc { - compatible = "amlogic, amvenc_avc"; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0x0 0x2d 0x1>; - interrupt-names = "mailbox_2"; - }; - - hevc_enc { - compatible = "cnm, HevcEnc"; - dev_name = "HevcEnc"; - status = "okay"; - interrupts = <0x0 0xbb 0x1>; - interrupt-names = "wave420l_irq"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_reg_base { - reg = <0x0 0xc8810000 0x0 0x4000>; - }; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <0x7>; - }; - - bt-dev { - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; + uart_AO_B: serial@c81004e0 { status = "okay"; - gpio_reset = <0x38 0x60 0x0>; - }; - - rtc { - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <0x38 0x56 0x0>; - interrupts = <0x0 0x44 0x4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <0x38 0x55 0x0>; - dhd_static_buf; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <0x41>; - pwm_config = <0x42>; - }; - - wifi_pwm_conf { - pwm_channel1 = <0x4>; - pwm_channel2 = <0xc>; - pwm_channel1_conf = <0x774d 0x3ba6 0x6>; - pwm_channel2_conf = <0x7736 0x3b9b 0x9>; - linux,phandle = <0x42>; - phandle = <0x42>; }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = <0x0 0xda 0x1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <0x43>; - pinctrl-1 = <0x44 0x45 0x46>; - - emmc { - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_8_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_1_8V_DDR", "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <0x493e0>; - f_max = <0x5f5e100>; - max_req_size = <0x20000>; - gpio_dat3 = <0x38 0x1d 0x0>; - hw_reset = <0x38 0x23 0x0>; - card_type = <0x1>; - }; + + dwc2_a { + controller-type = <2>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; + adc_keypad{ + compatible = "amlogic, adc_keypad"; status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = <0x0 0xd9 0x1 0x0 0x43 0x1 0x0 0x45 0x1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins", "sd_clk_cmd_uart_pins", "sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins", "ao_to_sd_jtag_pins", "sd_to_ao_jtag_pins"; - pinctrl-0 = <0x47>; - pinctrl-1 = <0x48>; - pinctrl-2 = <0x49>; - pinctrl-3 = <0x4a>; - pinctrl-4 = <0x4b>; - pinctrl-5 = <0x4c>; - pinctrl-6 = <0x4d>; - pinctrl-7 = <0x4e>; - pinctrl-8 = <0x4f>; - - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED"; - f_min = <0x61a80>; - f_max = <0x5f5e100>; - max_req_size = <0x20000>; - gpio_dat3 = <0x38 0x2e 0x0>; - jtag_pin = <0x38 0x2a 0x0>; - gpio_cd = <0x38 0x30 0x0>; - card_in_delay = <0x190>; - irq_in = <0x3>; - irq_out = <0x5>; - card_type = <0x5>; - }; + key_name = "home"; + key_num = <1>; + key_code = <102>; + key_chan = <0>; + key_val = <10>; + key_tolerance = <40>; + }; + + dvb { + compatible = "amlogic,dvb"; + dev_name = "dvb"; + ts0 = "parallel"; + ts0_control = <0x0>; + ts0_invert = <0x0>; + fec_reset_gpio-gpios = <&gpio GPIODV_13 GPIO_ACTIVE_HIGH>; + power_ctrl_gpio-gpios = <&gpio GPIODV_11 GPIO_ACTIVE_LOW>; + pinctrl-names = "p_ts0", "s_ts0", "s_ts1"; + pinctrl-0 = <&dvb_p_ts0_pins>; + pinctrl-1 = <&dvb_s_ts0_pins>; + pinctrl-2 = <&dvb_s_ts1_pins>; + resets = <&clock GCLK_IDX_DEMUX &clock GCLK_IDX_ASYNC_FIFO &clock GCLK_IDX_AHB_ARB0 &clock GCLK_IDX_HIU_PARSER_TOP>; + reset-names = "demux", "asyncfifo", "ahbarb0", "uparsertop"; + }; + + dvbfe { + compatible = "amlogic,dvbfe"; + //dev_name = "dvbfe"; + status = "okay"; + dtv_demod0 = "Avl6211"; + dtv_demod0_i2c_adap_id = <2>; + dtv_demod0_i2c_addr = <0x60>; + dtv_demod0_reset_value = <0>; + dtv_demod0_reset_gpio-gpios = <&gpio GPIODV_13 GPIO_ACTIVE_LOW>; + dtv_demod0_power_gpio-gpios = <&gpio GPIODV_14 GPIO_ACTIVE_LOW>; + fe0_dtv_demod = <0>; + fe0_ts = <0>; + fe0_dev = <0>; }; +}; - sdio { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = <0x0 0xd8 0x1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <0x50>; - pinctrl-1 = <0x51>; +&i2c_a { + status = "okay"; +}; - sdio { +&i2c_b { + status = "okay"; + rtc_hym8563{ + compatible = "amlogic, rtc_hym8563"; + dev_name = "rtc_hym8563"; status = "okay"; - pinname = "sdio"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_UHS_SDR12", "MMC_CAP_UHS_SDR25", "MMC_CAP_UHS_SDR50", "MMC_CAP_UHS_SDR104", "MMC_PM_KEEP_POWER"; - f_min = <0x61a80>; - f_max = <0xbebc200>; - max_req_size = <0x20000>; - card_type = <0x3>; - }; - }; - - nand { - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = <0x0 0x22 0x1>; - pinctrl-names = "nand_rb_mod", "nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <0x52 0x53 0x54>; - pinctrl-1 = <0x52 0x53 0x54>; - pinctrl-2 = <0x55>; - device_id = <0x0>; - plat-names = "nandnormal"; - plat-num = <0x1>; - plat-part-0 = <0x56>; - - normal { - enable_pad = "ce0", "ce1", "ce2", "ce3"; - busy_pad = "rb0"; - linux,phandle = <0x56>; - phandle = <0x56>; - }; - }; - - aml_nftl { - compatible = "amlogic, nftl"; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - unifykey-num = <0xe>; - unifykey-index-0 = <0x57>; - unifykey-index-1 = <0x58>; - unifykey-index-2 = <0x59>; - unifykey-index-3 = <0x5a>; - unifykey-index-4 = <0x5b>; - unifykey-index-5 = <0x5c>; - unifykey-index-6 = <0x5d>; - unifykey-index-7 = <0x5e>; - unifykey-index-8 = <0x5f>; - unifykey-index-9 = <0x60>; - unifykey-index-10 = <0x61>; - unifykey-index-11 = <0x62>; - unifykey-index-12 = <0x63>; - unifykey-index-13 = <0x64>; - - key_0 { - key-name = "usid"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x57>; - phandle = <0x57>; - }; - - key_1 { - key-name = "mac"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x58>; - phandle = <0x58>; - }; - - key_2 { - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read", "write", "del"; - linux,phandle = <0x59>; - phandle = <0x59>; - }; - - key_3 { - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - linux,phandle = <0x5a>; - phandle = <0x5a>; - }; - - key_4 { - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read", "write", "del"; - key-type = "mac"; - linux,phandle = <0x5b>; - phandle = <0x5b>; - }; - - key_5 { - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read", "write", "del"; - key-type = "mac"; - linux,phandle = <0x5c>; - phandle = <0x5c>; - }; - - key_6 { - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5d>; - phandle = <0x5d>; - }; - - key_7 { - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5e>; - phandle = <0x5e>; - }; - - key_8 { - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5f>; - phandle = <0x5f>; - }; - - key_9 { - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x60>; - phandle = <0x60>; - }; - - key_10 { - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x61>; - phandle = <0x61>; - }; - - key_11 { - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x62>; - phandle = <0x62>; - }; - - key_12 { - key-name = "prpubkeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x63>; - phandle = <0x63>; - }; - - key_13 { - key-name = "prprivkeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x64>; - phandle = <0x64>; - }; - }; - - amhdmitx { - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names = "hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0 = <0x65>; - pinctrl-1 = <0x66>; - interrupts = <0x0 0x39 0x1>; - interrupt-names = "hdmitx_hpd"; - clocks = <0x6 0xb 0x6 0xc 0x6 0xd 0x6 0xe 0x6 0xf 0x6 0x16>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - }; - - aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; - vendor_id = <0x0>; - product_desc = "GXBB Mbox"; - cec_osd_string = "MBox"; - port_num = <0x1>; - arc_port_mask = <0x0>; - interrupts = <0x0 0xc7 0x1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0 = <0x67>; - reg = <0x0 0xc810023c 0x0 0x4 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <0xa>; - gpios = <0x38 0x11 0x0 0x38 0x12 0x0>; - #address-cells = <0x2>; - #size-cells = <0x2>; - i2c-gpio,timeout-ms = <0xa>; - - i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0x0 0xc1 0x1>; - status = "okay"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - xtal_tick_en = <0x1>; - fifosize = <0x40>; - pinctrl-names = "default"; - support-sysrq = <0x0>; - }; - - serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0x0 0x1a 0x1>; - status = "okay"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x80>; - pinctrl-names = "default"; - pinctrl-0 = <0x68>; - resets = <0x6 0xd>; - }; - - serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0x0 0x4b 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x69>; - resets = <0x6 0x30>; - }; - - serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0x0 0x5d 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x6a>; - resets = <0x6 0x4f>; - }; - - serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0x0 0xc5 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x6b>; - }; - - canvas { - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma { - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0x0 0x59 0x1>; - interrupt-names = "rdma"; - }; - - dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0x0 0x1e 0x4>; - usb-phy = <0x6c 0x6d>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <0x3>; - reg = <0x0 0xd0078000 0x0 0x80>; - linux,phandle = <0x6c>; - phandle = <0x6c>; - }; - - usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0x0>; - reg = <0x0 0xd0078080 0x0 0x20>; - interrupts = <0x0 0x10 0x4>; - otg = <0x1>; - gpio-vbus-power = "GPIOAO_5"; - gpios = <0x37 0x5 0x0>; - linux,phandle = <0x6d>; - phandle = <0x6d>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0x0 0x1f 0x4>; - pl-periph-id = <0x0>; - clock-src = "usb0"; - port-id = <0x0>; - port-type = <0x2>; - port-speed = <0x0>; - port-config = <0x0>; - port-dma = <0x0>; - port-id-mode = <0x0>; - usb-fifo = <0x2d8>; - cpu-type = "gxl"; - controller-type = <0x2>; - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <0x6 0x3a 0x6 0x48 0x6 0x36>; - reset-names = "usb_general", "usb1", "usb1_to_ddr"; - }; - - I2S { - #sound-dai-cells = <0x0>; - resets = <0x6 0x26 0x6 0x12 0x6 0x28 0x6 0x29 0x6 0x2a 0x6 0x2b 0x6 0x2c 0x6 0x2d 0x6 0x2f 0x6 0x8e 0x6 0x22>; - reset-names = "top_glue", "aud_buf", "i2s_out", "amclk_measure", "aififo2", "aud_mixer", "mixer_reg", "adc", "top_level", "aoclk", "aud_in"; - clocks = <0x6 0x21 0x6 0x22>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - linux,phandle = <0x79>; - phandle = <0x79>; - }; - - SPDIF { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-spdif-dai"; - resets = <0x6 0x27 0x6 0x90>; - reset-names = "iec958", "iec958_amclk"; - clocks = <0x6 0x20 0x6 0x24 0x6 0x22 0x6 0x25 0x6 0xa>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - linux,phandle = <0x7a>; - phandle = <0x7a>; - }; - - PCM { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <0x6e>; - clocks = <0x6 0x1f 0x6 0x2a 0x6 0x2b>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <0x1>; - linux,phandle = <0x7b>; - phandle = <0x7b>; - }; - - i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0x0 0x1d 0x1>; - linux,phandle = <0x77>; - phandle = <0x77>; - }; - - pcm_platform { - compatible = "amlogic, aml-pcm"; - linux,phandle = <0x78>; - phandle = <0x78>; - }; - - spdif_codec { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <0x6f>; - linux,phandle = <0x7d>; - phandle = <0x7d>; + reg = <0x51>; }; +}; - pcm_codec { - #sound-dai-cells = <0x0>; - compatible = "amlogic, pcm2BT-codec"; - linux,phandle = <0x7e>; - phandle = <0x7e>; - }; +&i2c_c { + status = "okay"; +}; - dummy { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; +&i2c_d { + status = "okay"; +}; - t9015 { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - linux,phandle = <0x7c>; - phandle = <0x7c>; +&pinmux { + dvb_p_ts0_pins:dvb_p_ts0_pins { + amlogic,setmask = <0x2 0x1f>; + amlogic,clrmask = <0x3 0x787 0x2 0xff000400>; + amlogic,pins = "GPIODV_0", "GPIODV_1", "GPIODV_2", "GPIODV_3", "GPIODV_4", "GPIODV_5", "GPIODV_6", "GPIODV_7", "GPIODV_8", "GPIODV_9", "GPIODV_10"; }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = "Ext Spk", "LOUTL", "Ext Spk", "LOUTR"; - mute_gpio-gpios = <0x38 0x15 0x0>; - mute_inv; - hp_disable; - hp_paraments = <0x320 0x12c 0x0 0x5 0x1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <0x70>; - cpu_list = <0x71 0x72 0x73>; - codec_list = <0x74 0x75 0x76>; - plat_list = <0x77 0x77 0x78>; - - cpudai0 { - sound-dai = <0x79>; - linux,phandle = <0x71>; - phandle = <0x71>; - }; - - cpudai1 { - sound-dai = <0x7a>; - linux,phandle = <0x72>; - phandle = <0x72>; - }; - - cpudai2 { - sound-dai = <0x7b>; - linux,phandle = <0x73>; - phandle = <0x73>; - }; - - codec0 { - sound-dai = <0x7c>; - linux,phandle = <0x74>; - phandle = <0x74>; - }; - - codec1 { - sound-dai = <0x7d>; - linux,phandle = <0x75>; - phandle = <0x75>; - }; - - codec2 { - sound-dai = <0x7e>; - linux,phandle = <0x76>; - phandle = <0x76>; - }; + dvb_s_ts0_pins:dvb_s_ts0_pins { + amlogic,setmask = <0x2 0x17>; + amlogic,clrmask = <0x3 0x584 0x2 0x7000000 0x1 0x100>; + amlogic,pins = "GPIODV_0", "GPIODV_8", "GPIODV_9", "GPIODV_10"; }; - gpio_keypad { - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <0x14>; - key_num = <0x1>; - key_name = "power"; - key_code = <0x74>; - key_pin = <0x37 0x2 0x0>; - irq_keyup = <0x6>; - irq_keydown = <0x7>; + dvb_s_ts1_pins:dvb_s_ts1_pins { + amlogic,setmask = <0x3 0x17>; + amlogic,clrmask = <0x2 0xf0000 0x1 0x7>; + amlogic,pins = "GPIODV_0", "GPIODV_8", "GPIODV_9", "GPIODV_10"; }; - adc_keypad { - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "home"; - key_num = <0x1>; - key_code = <0x66>; - key_chan = <0x0>; - key_val = <0xa>; - key_tolerance = <0x28>; + dtv_params_pin:dtv_params_pin { + amlogic,clrmask = <0x1 0x38000000 0x3 0x80>; + amlogic,pins = "GPIODV_13", "GPIODV_14", "GPIODV_15"; }; - - aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <0x1>; - linux,phandle = <0x7f>; - phandle = <0x7f>; - - cooling_devices { - - cpufreq_cool_cluster0 { - min_state = <0xf4240>; - dyn_coeff = <0x8c>; - cluster_id = <0x0>; - node_name = "cluster0"; - device_type = "cpufreq"; - }; - - cpufreq_cool_cluster1 { - min_state = <0x7a120>; - dyn_coeff = <0x8c>; - cluster_id = <0x1>; - node_name = "cluster1"; - device_type = "cpufreq"; - }; - - cpucore_cool_cluster0 { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - - cpucore_cool_cluster1 { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x1>; - node_name = "cpu_core_cluster1"; - device_type = "cpucore"; - }; - - gpufreq_cool { - min_state = <0x190>; - dyn_coeff = <0x1b5>; - cluster_id = <0x0>; - node_name = "t82x"; - device_type = "gpufreq"; - }; - - gpucore_cool { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - - cpu_core_cluster0 { - #cooling-cells = <0x2>; - linux,phandle = <0x83>; - phandle = <0x83>; - }; - - cpu_core_cluster1 { - #cooling-cells = <0x2>; - linux,phandle = <0x84>; - phandle = <0x84>; - }; - - thermal_gpu_cores { - #cooling-cells = <0x2>; - linux,phandle = <0x86>; - phandle = <0x86>; - }; - }; - - thermal-zones { - - soc_thermal { - polling-delay = <0x3e8>; - polling-delay-passive = <0x64>; - sustainable-power = <0x992>; - thermal-sensors = <0x7f 0x3>; - - trips { - - trip-point@0 { - temperature = <0x11170>; - hysteresis = <0x3e8>; - type = "passive"; - }; - - trip-point@1 { - temperature = <0x13880>; - hysteresis = <0x3e8>; - type = "passive"; - linux,phandle = <0x80>; - phandle = <0x80>; - }; - - trip-point@2 { - temperature = <0x14c08>; - hysteresis = <0x1388>; - type = "hot"; - }; - - trip-point@3 { - temperature = <0x3f7a0>; - hysteresis = <0x3e8>; - type = "critical"; - }; - }; - - cooling-maps { - - cpufreq_cooling_map0 { - trip = <0x80>; - cooling-device = <0x81 0x0 0x4>; - contribution = <0x400>; - }; - - cpufreq_cooling_map1 { - trip = <0x80>; - cooling-device = <0x82 0x0 0x4>; - contribution = <0x400>; - }; - - cpucore_cooling_map0 { - trip = <0x80>; - cooling-device = <0x83 0x0 0x3>; - contribution = <0x400>; - }; - - cpucore_cooling_map1 { - trip = <0x80>; - cooling-device = <0x84 0x0 0x3>; - contribution = <0x400>; - }; - - gpufreq_cooling_map { - trip = <0x80>; - cooling-device = <0x85 0x0 0x4>; - contribution = <0x400>; - }; - - gpucore_cooling_map { - trip = <0x80>; - cooling-device = <0x86 0x0 0x2>; - contribution = <0x400>; - }; - }; - }; - }; -}; +}; \ No newline at end of file diff --git a/arch/arm64/boot/dts/kvim2_nougat.dts b/arch/arm64/boot/dts/kvim2_nougat.dts deleted file mode 100644 index 26143f2ef8af0..0000000000000 --- a/arch/arm64/boot/dts/kvim2_nougat.dts +++ /dev/null @@ -1,2427 +0,0 @@ -/dts-v1/; - -/ { - model = "Amlogic"; - compatible = "kvim"; - amlogic-dt-id = "kvim"; - interrupt-parent = <0x1>; - #address-cells = <0x2>; - #size-cells = <0x2>; - - t82x { - compatible = "arm,malit602", "arm,malit60x", "arm,malit6xx", "arm,mali-midgard"; - #cooling-cells = <0x2>; - reg = <0x0 0xd00c0000 0x0 0x100000 0x0 0xc1104440 0x0 0x1000 0x0 0xc8100000 0x0 0x1000 0x0 0xc883c000 0x0 0x1000 0x0 0xc1104440 0x0 0x1000>; - interrupt-parent = <0x1>; - interrupts = <0x0 0xa0 0x4 0x0 0xa1 0x4 0x0 0xa2 0x4>; - interrupt-names = "GPU", "MMU", "JOB"; - num_of_pp = <0x3>; - sc_mpp = <0x1>; - operating-points = <0xa2c2a 0xf4240 0x7a120 0xf4240 0x61a80 0xf4240 0x45c12 0xf4240 0x3d090 0xf4240 0x1e848 0xf4240>; - tbl = <0x2 0x3 0x4 0x5 0x5>; - clocks = <0x6 0x8 0x6 0x9 0x6 0x11 0x6 0x12 0x6 0x1e 0x6 0x15 0x6 0x13 0x6 0x14>; - clock-names = "fclk_div3", "fclk_div4", "fclk_div5", "fclk_div7", "gp0_pll", "clk_gpu", "clk_gpu_0", "clk_gpu_1"; - linux,phandle = <0x81>; - phandle = <0x81>; - - clk125_cfg { - clk_freq = <0x7735940>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x1e 0x78>; - }; - - dvfs250_cfg { - clk_freq = <0xee6b280>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x50 0xaa>; - }; - - dvfs285_cfg { - clk_freq = <0x1107a650>; - clk_parent = "fclk_div7"; - clkp_freq = <0x1107a650>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x64 0xbe>; - linux,phandle = <0x2>; - phandle = <0x2>; - }; - - dvfs400_cfg { - clk_freq = <0x17d78400>; - clk_parent = "fclk_div5"; - clkp_freq = <0x17d78400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x98 0xcf>; - linux,phandle = <0x3>; - phandle = <0x3>; - }; - - dvfs500_cfg { - clk_freq = <0x1dcd6500>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xb4 0xdc>; - linux,phandle = <0x4>; - phandle = <0x4>; - }; - - dvfs666_cfg { - clk_freq = <0x27b25a80>; - clk_parent = "fclk_div3"; - clkp_freq = <0x27b25a80>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xd2 0xec>; - linux,phandle = <0x5>; - phandle = <0x5>; - }; - - dvfs800_cfg { - clk_freq = <0x2f34f600>; - clk_parent = "gp0_pll"; - clkp_freq = <0x2f34f600>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xe6 0xff>; - }; - }; - - gpu_clk@c883c00 { - compatible = "meson, gpu-clkgen-1.00.a"; - #clock-cells = <0x0>; - reg = <0x0 0xc883c000 0x0 0x1000>; - clocks = <0x6 0x8 0x6 0x9 0x6 0x11 0x6 0x12 0x6 0x1e 0x6 0x15 0x6 0x13 0x6 0x14>; - clock-names = "fclk_div3", "fclk_div4", "fclk_div5", "fclk_div7", "gp0_pll", "clk_gpu", "clk_gpu_0", "clk_gpu_1"; - clock-output-names = "clk_mali"; - tbl = <0x7 0x8 0x9 0xa 0xb 0xc>; - - clk125_cfg { - clk_freq = <0x7735940>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x1e 0x78>; - linux,phandle = <0x7>; - phandle = <0x7>; - }; - - clk250_cfg { - clk_freq = <0xee6b280>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x50 0xaa>; - linux,phandle = <0x8>; - phandle = <0x8>; - }; - - clk285_cfg { - clk_freq = <0x1107a650>; - clk_parent = "fclk_div7"; - clkp_freq = <0x1107a650>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x64 0xbe>; - linux,phandle = <0x9>; - phandle = <0x9>; - }; - - clk400_cfg { - clk_freq = <0x17d78400>; - clk_parent = "fclk_div5"; - clkp_freq = <0x17d78400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0x98 0xcf>; - linux,phandle = <0xa>; - phandle = <0xa>; - }; - - clk500_cfg { - clk_freq = <0x1dcd6500>; - clk_parent = "fclk_div4"; - clkp_freq = <0x1dcd6500>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xb4 0xdc>; - linux,phandle = <0xb>; - phandle = <0xb>; - }; - - clk666_cfg { - clk_freq = <0x27bc8410>; - clk_parent = "fclk_div3"; - clkp_freq = <0x27bc8410>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xd2 0xec>; - linux,phandle = <0xc>; - phandle = <0xc>; - }; - - clk720_cfg { - clk_freq = <0x2aea5400>; - clk_parent = "gp0_pll"; - clkp_freq = <0x2aea5400>; - voltage = <0x47e>; - keep_count = <0x5>; - threshold = <0xe6 0xff>; - }; - }; - - cpus { - #address-cells = <0x2>; - #size-cells = <0x0>; - - cpu-map { - - cluster0 { - #cooling-cells = <0x2>; - linux,phandle = <0x7d>; - phandle = <0x7d>; - - core0 { - cpu = <0xd>; - }; - - core1 { - cpu = <0xe>; - }; - - core2 { - cpu = <0xf>; - }; - - core3 { - cpu = <0x10>; - }; - }; - - cluster1 { - #cooling-cells = <0x2>; - linux,phandle = <0x7e>; - phandle = <0x7e>; - - core0 { - cpu = <0x11>; - }; - - core1 { - cpu = <0x12>; - }; - - core2 { - cpu = <0x13>; - }; - - core3 { - cpu = <0x14>; - }; - }; - }; - - cpu@0 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x0>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xd>; - phandle = <0xd>; - }; - - cpu@1 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x1>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xe>; - phandle = <0xe>; - }; - - cpu@2 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x2>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0xf>; - phandle = <0xf>; - }; - - cpu@3 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x3>; - enable-method = "psci"; - clocks = <0x15 0x0>; - clock-names = "cpu-cluster.0"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x10>; - phandle = <0x10>; - }; - - cpu@100 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x100>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x11>; - phandle = <0x11>; - }; - - cpu@101 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x101>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x12>; - phandle = <0x12>; - }; - - cpu@102 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x102>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x13>; - phandle = <0x13>; - }; - - cpu@103 { - device_type = "cpu"; - compatible = "arm,cortex-a53", "arm,armv8"; - reg = <0x0 0x103>; - enable-method = "psci"; - clocks = <0x15 0x1>; - clock-names = "cpu-cluster.1"; - cpu-idle-states = <0x16 0x17>; - linux,phandle = <0x14>; - phandle = <0x14>; - }; - - idle-states { - entry-method = "arm,psci"; - - cpu-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x10000>; - local-timer-stop; - entry-latency-us = <0x1f40>; - exit-latency-us = <0x1f40>; - min-residency-us = <0x4e20>; - linux,phandle = <0x16>; - phandle = <0x16>; - }; - - cluster-sleep-0 { - compatible = "arm, idle-state"; - arm,psci-suspend-param = <0x1010000>; - local-timer-stop; - entry-latency-us = <0x1f40>; - exit-latency-us = <0x1f40>; - min-residency-us = <0x61a8>; - linux,phandle = <0x17>; - phandle = <0x17>; - }; - }; - }; - - timer { - compatible = "arm,armv8-timer"; - interrupts = <0x1 0xd 0xff01 0x1 0xe 0xff01 0x1 0xb 0xff01 0x1 0xa 0xff01>; - }; - - timer_bc { - compatible = "arm, meson-bc-timer"; - reg = <0x0 0xc1109990 0x0 0x4 0x0 0xc1109994 0x0 0x4>; - timer_name = "Meson TimerF"; - clockevent-rating = <0x12c>; - clockevent-shift = <0x14>; - clockevent-features = <0x23>; - interrupts = <0x0 0x3c 0x1>; - bit_enable = <0x10>; - bit_mode = <0xc>; - bit_resolution = <0x0>; - }; - - arm_pmu { - compatible = "arm,armv8-pmuv3"; - interrupts = <0x0 0x89 0x4 0x0 0x8a 0x4 0x0 0x99 0x4 0x0 0x9a 0x4>; - }; - - pm { - compatible = "amlogic, pm"; - device_name = "aml_pm"; - gxbaby-suspend; - reg = <0x0 0xc81000a8 0x0 0x4 0x0 0xc810023c 0x0 0x4>; - }; - - interrupt-controller@2c001000 { - compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; - #interrupt-cells = <0x3>; - #address-cells = <0x0>; - interrupt-controller; - reg = <0x0 0xc4301000 0x0 0x1000 0x0 0xc4302000 0x0 0x100>; - interrupts = <0x1 0x9 0xf04>; - linux,phandle = <0x1>; - phandle = <0x1>; - }; - - aml_restart { - compatible = "aml, restart"; - sys_reset = <0x84000009>; - sys_poweroff = <0x84000008>; - }; - - psci { - compatible = "arm,psci"; - method = "smc"; - cpu_suspend = <0xc4000001>; - cpu_off = <0x84000002>; - cpu_on = <0xc4000003>; - migrate = <0xc4000005>; - }; - - secmon { - compatible = "amlogic, secmon"; - memory-region = <0x18>; - in_base_func = <0x82000020>; - out_base_func = <0x82000021>; - }; - - securitykey { - compatible = "aml, securitykey"; - storage_query = <0x82000060>; - storage_read = <0x82000061>; - storage_write = <0x82000062>; - storage_tell = <0x82000063>; - storage_verify = <0x82000064>; - storage_status = <0x82000065>; - storage_list = <0x82000067>; - storage_remove = <0x82000068>; - storage_in_func = <0x82000023>; - storage_out_func = <0x82000024>; - storage_block_func = <0x82000025>; - storage_size_func = <0x82000027>; - storage_set_enctype = <0x8200006a>; - storage_get_enctype = <0x8200006b>; - storage_version = <0x8200006c>; - }; - - cpu_iomap { - compatible = "amlogic, iomap"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - - io_apb_base { - reg = <0x0 0xd0000000 0x0 0x200000>; - }; - - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - }; - - cpufreq { - compatible = "arm, scpi-cpufreq"; - }; - - amlogic-watchdog { - compatible = "amlogic, gx-wdt"; - status = "disable"; - default_timeout = <0xa>; - reset_watchdog_method = <0x1>; - reset_watchdog_time = <0x2>; - shutdown_timeout = <0xa>; - firmware_timeout = <0x6>; - suspend_timeout = <0x6>; - reg = <0x0 0xc11098d0 0x0 0x10>; - clocks = <0x6 0x2>; - }; - - amlogic-jtag { - compatible = "amlogic, jtag"; - status = "disable"; - pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; - pinctrl-0 = <0x19>; - pinctrl-1 = <0x1a>; - }; - - meson_clock { - compatible = "amlogic, gxl-clock"; - reg = <0x0 0xc883c000 0x0 0x1000 0x0 0xc8100000 0x0 0x1000>; - #clock-cells = <0x1>; - #reset-cells = <0x1>; - sys_max = <0x5b8d8000>; - linux,phandle = <0x6>; - phandle = <0x6>; - }; - - cpu_info { - compatible = "amlogic, cpuinfo"; - cpuinfo_cmd = <0x82000044>; - }; - - pinmux { - compatible = "amlogic, pinmux-gxl"; - dev_name = "pinmux"; - #pinmux-cells = <0x2>; - #address-cells = <0x2>; - #size-cells = <0x2>; - reg = <0x0 0xc1109880 0x0 0x10>; - ranges; - - banks@c11080b0 { - reg = <0x0 0xc88344b0 0x0 0x28 0x0 0xc88344e8 0x0 0x14 0x0 0xc8834520 0x0 0x14 0x0 0xc8834430 0x0 0x40>; - reg-names = "mux", "pull", "pull-enable", "gpio"; - gpio-controller; - #gpio-cells = <0x2>; - linux,phandle = <0x34>; - phandle = <0x34>; - }; - - ao-bank@c1108030 { - reg = <0x0 0xc8100014 0x0 0x8 0x0 0xc810002c 0x0 0x4 0x0 0xc8100024 0x0 0x8>; - reg-names = "mux", "pull", "gpio"; - gpio-controller; - #gpio-cells = <0x2>; - linux,phandle = <0x33>; - phandle = <0x33>; - }; - - external_eth_pins { - amlogic,setmask = <0x4 0xfffc00>; - amlogic,clrmask = <0x4 0x3fc 0x3 0xffcff800>; - amlogic,pins = "GPIOZ_0", "GPIOZ_1", "GPIOZ_2", "GPIOZ_3", "GPIOZ_4", "GPIOZ_5", "GPIOZ_6", "GPIOZ_7", "GPIOZ_8", "GPIOZ_9", "GPIOZ_10", "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - linux,phandle = <0x37>; - phandle = <0x37>; - }; - - internal_eth_pins { - amlogic,setmask = <0x4 0x3000000>; - amlogic,clrmask = <0x3 0x300000>; - amlogic,pins = "GPIOZ_14", "GPIOZ_15"; - }; - - jtag_apao_pin { - amlogic,clrmask = <0x6 0x7fe0000>; - amlogic,pins = "GPIOH_6", "GPIOH_7", "GPIOH_8", "GPIOH_9"; - linux,phandle = <0x19>; - phandle = <0x19>; - }; - - jtag_apee_pin { - amlogic,clrmask = <0x6 0x3c>; - amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3"; - linux,phandle = <0x1a>; - phandle = <0x1a>; - }; - - remote_pin { - amlogic,setmask = <0x10 0x1>; - amlogic,pins = "GPIOAO_7"; - linux,phandle = <0x26>; - phandle = <0x26>; - }; - - ao_uart { - amlogic,setmask = <0x10 0x1800>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - }; - - ao_b_uart { - amlogic,setmask = <0x10 0x1800000>; - amlogic,pins = "GPIOAO_4", "GPIOAO_5"; - linux,phandle = <0x67>; - phandle = <0x67>; - }; - - a_uart { - amlogic,setmask = <0x5 0xf0000>; - amlogic,clrmask = <0x5 0x3c0>; - amlogic,pins = "GPIOX_12", "GPIOX_13", "GPIOX_14", "GPIOX_15"; - linux,phandle = <0x64>; - phandle = <0x64>; - }; - - b_uart { - amlogic,setmask = <0x2 0x18000>; - amlogic,pins = "GPIODV_24", "GPIODV_25"; - linux,phandle = <0x65>; - phandle = <0x65>; - }; - - c_uart { - amlogic,setmask = <0x5 0x3000>; - amlogic,pins = "GPIOX_8", "GPIOX_9"; - linux,phandle = <0x66>; - phandle = <0x66>; - }; - - wifi_32k_pins { - amlogic,setmask = <0x5 0x8000>; - amlogic,pins = "GPIOX_16"; - linux,phandle = <0x3d>; - phandle = <0x3d>; - }; - - sd_clk_cmd_pins { - amlogic,setmask = <0x6 0xc 0x10 0x1800>; - amlogic,pins = "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x43>; - phandle = <0x43>; - }; - - sd_all_pins { - amlogic,setmask = <0x6 0x3f 0x10 0x1800>; - amlogic,clrmask = <0x6 0xfc0>; - amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3", "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x44>; - phandle = <0x44>; - }; - - sd_1bit_pins { - amlogic,setmask = <0x6 0x1c 0x10 0x1800>; - amlogic,clrmask = <0x6 0xcc3>; - amlogic,pins = "CARD_1", "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x45>; - phandle = <0x45>; - }; - - sd_clk_cmd_uart_pins { - amlogic,setmask = <0x6 0x30c>; - amlogic,clrmask = <0x6 0xcc3 0x10 0x1800>; - amlogic,pins = "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x46>; - phandle = <0x46>; - }; - - sd_1bit_uart_pins { - amlogic,setmask = <0x6 0x31c>; - amlogic,clrmask = <0x6 0xcc3 0x10 0x1800>; - amlogic,pins = "CARD_1", "CARD_2", "CARD_3"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x47>; - phandle = <0x47>; - }; - - sd_to_ao_uart_pins { - amlogic,setmask = <0x10 0x1800>; - amlogic,clrmask = <0x6 0x300>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x48>; - phandle = <0x48>; - }; - - ao_to_sd_uart_pins { - amlogic,setmask = <0x6 0x300>; - amlogic,clrmask = <0x10 0x1800 0x6 0xcc3>; - amlogic,pins = "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x49>; - phandle = <0x49>; - }; - - ao_to_sd_jtag_pins { - amlogic,setmask = <0x6 0x300>; - amlogic,clrmask = <0x6 0xcff 0x10 0x1800>; - amlogic,pins = "CARD_4", "CARD_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4a>; - phandle = <0x4a>; - }; - - sd_to_ao_jtag_pins { - amlogic,setmask = <0x10 0x1800>; - amlogic,clrmask = <0x6 0xfc0>; - amlogic,pins = "GPIOAO_0", "GPIOAO_1"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4b>; - phandle = <0x4b>; - }; - - emmc_clk_cmd_pins { - amlogic,setmask = <0x7 0x60000000>; - amlogic,clrmask = <0x7 0xe0>; - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x3f>; - phandle = <0x3f>; - }; - - emmc_conf_pull_up { - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_10"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x40>; - phandle = <0x40>; - }; - - emmc_conf_pull_done { - amlogic,pins = "BOOT_15"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x41>; - phandle = <0x41>; - }; - - emmc_all_pins { - amlogic,setmask = <0x7 0xf0000000>; - amlogic,clrmask = <0x7 0xe0>; - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_10", "BOOT_15"; - amlogic,enable-output = <0x1>; - linux,phandle = <0x42>; - phandle = <0x42>; - }; - - sdio_clk_cmd_pins { - amlogic,setmask = <0x5 0xc000000>; - amlogic,pins = "GPIOX_4", "GPIOX_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4c>; - phandle = <0x4c>; - }; - - sdio_all_pins { - amlogic,setmask = <0x5 0xfc000000>; - amlogic,pins = "GPIOX_0", "GPIOX_1", "GPIOX_2", "GPIOX_3", "GPIOX_4", "GPIOX_5"; - amlogic,enable-output = <0x1>; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4d>; - phandle = <0x4d>; - }; - - conf_nand_pulldown { - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_15"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4e>; - phandle = <0x4e>; - }; - - conf_nand_pullup { - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - linux,phandle = <0x4f>; - phandle = <0x4f>; - }; - - all_nand_pins { - amlogic,setmask = <0x7 0x800000ff>; - amlogic,clrmask = <0x7 0x70ffbc00>; - amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_8", "BOOT_9", "BOOT_10", "BOOT_11", "BOOT_12", "BOOT_13", "BOOT_14", "BOOT_15"; - amlogic,enable-output = <0x1>; - linux,phandle = <0x50>; - phandle = <0x50>; - }; - - nand_cs { - amlogic,setmask = <0x7 0xc0>; - amlogic,clrmask = <0x7 0x40040000>; - amlogic,pins = "BOOT_8", "BOOT_9"; - linux,phandle = <0x51>; - phandle = <0x51>; - }; - - hdmitx_hpd { - amlogic,setmask = <0x6 0x80000000>; - amlogic,pins = "GPIOH_0"; - linux,phandle = <0x61>; - phandle = <0x61>; - }; - - hdmitx_ddc { - amlogic,setmask = <0x6 0x30000000>; - amlogic,pins = "GPIOH_1", "GPIOH_2"; - linux,phandle = <0x62>; - phandle = <0x62>; - }; - - hdmitx_aocec { - amlogic,setmask = <0x10 0x8000>; - amlogic,clrmask = <0x10 0x24000 0x11 0x1>; - amlogic,pins = "GPIOAO_8"; - linux,phandle = <0x63>; - phandle = <0x63>; - }; - - hdmitx_eecec { - amlogic,setmask = <0x10 0x4000>; - amlogic,clrmask = <0x10 0x28000 0x11 0x1>; - amlogic,pins = "GPIOAO_8"; - }; - - ao_i2c { - amlogic,setmask = <0x10 0x60>; - amlogic,clrmask = <0x10 0x1800006>; - amlogic,pins = "GPIOAO_4", "GPIOAO_5"; - linux,phandle = <0x1b>; - phandle = <0x1b>; - }; - - a_i2c { - amlogic,setmask = <0x1 0xc000>; - amlogic,clrmask = <0x3 0x18 0x2 0x18000 0x2 0xc0 0x1 0x600000>; - amlogic,pins = "GPIODV_24", "GPIODV_25"; - linux,phandle = <0x1c>; - phandle = <0x1c>; - }; - - b_i2c { - amlogic,setmask = <0x1 0x3000>; - amlogic,clrmask = <0x2 0x6000 0x1 0x1c0000>; - amlogic,pins = "GPIODV_26", "GPIODV_27"; - linux,phandle = <0x1d>; - phandle = <0x1d>; - }; - - c_i2c { - amlogic,setmask = <0x1 0xc00>; - amlogic,clrmask = <0x2 0x1800 0x1 0x200 0x2 0x20>; - amlogic,pins = "GPIODV_28", "GPIODV_29"; - linux,phandle = <0x1e>; - phandle = <0x1e>; - }; - - c_i2c_pin1 { - amlogic,setmask = <0x1 0x30000>; - amlogic,clrmask = <0x1 0x2000000 0x3 0x20>; - amlogic,pins = "GPIODV_18", "GPIODV_19"; - }; - - d_i2c { - amlogic,setmask = <0x5 0x30>; - amlogic,clrmask = <0x5 0x300c03 0x6 0x3>; - amlogic,pins = "GPIOX_10", "GPIOX_11"; - linux,phandle = <0x1f>; - phandle = <0x1f>; - }; - - spicc_pins_z11z12z13 { - amlogic,setmask = <0x4 0x1c>; - amlogic,clrmask = <0x3 0x800 0x4 0x1c00>; - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - }; - - spicc_pulldown_z11z12z13 { - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - }; - - spicc_pullup_z11z12z13 { - amlogic,pins = "GPIOZ_11", "GPIOZ_12", "GPIOZ_13"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - }; - - spicc_pins_x8x9x11 { - amlogic,setmask = <0x5 0xd>; - amlogic,clrmask = <0x5 0xd03430 0x6 0xd>; - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - }; - - spicc_pulldown_x8x9x11 { - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - amlogic,pullup = <0x0>; - amlogic,pullupen = <0x1>; - }; - - spicc_pullup_x8x9x11 { - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_11"; - amlogic,pullup = <0x1>; - amlogic,pullupen = <0x1>; - }; - - audio_pin { - amlogic,setmask = <0x6 0x7800000>; - amlogic,clrmask = <0x6 0x7e0000>; - amlogic,pins = "GPIOH_6", "GPIOH_7", "GPIOH_8", "GPIOH_9"; - linux,phandle = <0x6c>; - phandle = <0x6c>; - }; - - audio_pin1 { - amlogic,setmask = <0x6 0x10000000>; - amlogic,clrmask = <0x6 0x8000000>; - amlogic,pins = "GPIOH_4"; - linux,phandle = <0x6b>; - phandle = <0x6b>; - }; - - audio_btpcm_pins { - amlogic,setmask = <0x5 0xf00000>; - amlogic,clrmask = <0x5 0x3c33>; - amlogic,pins = "GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - linux,phandle = <0x6a>; - phandle = <0x6a>; - }; - }; - - cpu_version { - reg = <0x0 0xc8100220 0x0 0x4>; - }; - - meson_clk_msr { - compatible = "amlogic, gxl_measure"; - reg = <0x0 0xc110875c 0x0 0x4 0x0 0xc1108764 0x0 0x4>; - }; - - i2c@c8100500 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-AO"; - status = "disabled"; - reg = <0x0 0xc8100500 0x0 0x1d>; - device_id = <0x0>; - pinctrl-names = "default"; - pinctrl-0 = <0x1b>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c1108500 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-A"; - status = "okay"; - reg = <0x0 0xc1108500 0x0 0x20>; - device_id = <0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x1c>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c11087c0 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-B"; - status = "okay"; - reg = <0x0 0xc11087c0 0x0 0x20>; - device_id = <0x2>; - pinctrl-names = "default"; - pinctrl-0 = <0x1d>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x186a0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - - khadas-hym8563 { - compatible = "khadas-hym8563"; - reg = <0x51>; - }; - }; - - i2c@c11087e0 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-C"; - status = "disabled"; - reg = <0x0 0xc11087e0 0x0 0x20>; - device_id = <0x3>; - pinctrl-names = "default"; - pinctrl-0 = <0x1e>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - i2c@c1108d20 { - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-D"; - status = "disabled"; - reg = <0x0 0xc1108d20 0x0 0x20>; - device_id = <0x4>; - pinctrl-names = "default"; - pinctrl-0 = <0x1f>; - #address-cells = <0x1>; - #size-cells = <0x0>; - use_pio = <0x0>; - master_i2c_speed = <0x493e0>; - clocks = <0x6 0xa>; - clock-names = "clk_i2c"; - resets = <0x6 0x9>; - }; - - efuse { - compatible = "amlogic, efuse"; - read_cmd = <0x82000030>; - write_cmd = <0x82000031>; - get_max_cmd = <0x82000033>; - key = <0x20>; - resets = <0x6 0x3e>; - reset-names = "efuse_clk"; - status = "ok"; - }; - - efusekey { - keynum = <0x4>; - key0 = <0x21>; - key1 = <0x22>; - key2 = <0x23>; - key3 = <0x24>; - linux,phandle = <0x20>; - phandle = <0x20>; - - key_0 { - keyname = "mac"; - offset = <0x0>; - size = <0xc>; - linux,phandle = <0x21>; - phandle = <0x21>; - }; - - key_1 { - keyname = "mac_bt"; - offset = <0xc>; - size = <0xc>; - linux,phandle = <0x22>; - phandle = <0x22>; - }; - - key_2 { - keyname = "mac_wifi"; - offset = <0x18>; - size = <0xc>; - linux,phandle = <0x23>; - phandle = <0x23>; - }; - - key_3 { - keyname = "usid"; - offset = <0x24>; - size = <0xc>; - linux,phandle = <0x24>; - phandle = <0x24>; - }; - }; - - mhu@c883c400 { - compatible = "amlogic, meson_mhu"; - reg = <0x0 0xc883c400 0x0 0x4c 0x0 0xc8013000 0x0 0x800>; - interrupts = <0x0 0xd1 0x8 0x0 0xd2 0x8>; - #mbox-cells = <0x1>; - mbox-names = "cpu_to_scp_low", "cpu_to_scp_high"; - mboxes = <0x25 0x0 0x25 0x1>; - linux,phandle = <0x25>; - phandle = <0x25>; - }; - - scpi_clocks { - compatible = "arm,scpi-clks"; - - scpi_clocks@0 { - compatible = "arm,scpi-clk-indexed"; - #clock-cells = <0x1>; - clock-indices = <0x0 0x1>; - clock-output-names = "vbig", "vlittle"; - linux,phandle = <0x15>; - phandle = <0x15>; - }; - }; - - rc@c8100580 { - compatible = "amlogic, aml_remote"; - dev_name = "meson-remote"; - reg = <0x0 0xc8100580 0x0 0x44 0x0 0xc8100480 0x0 0x20>; - status = "okay"; - protocol = <0x1>; - interrupts = <0x0 0xc4 0x1>; - pinctrl-names = "default"; - pinctrl-0 = <0x26>; - map = <0x27>; - max_frame_time = <0xc8>; - }; - - custom_maps { - mapnum = <0x1>; - map0 = <0x28>; - linux,phandle = <0x27>; - phandle = <0x27>; - - map_0 { - mapname = "khadas-ir"; - customcode = <0xff00>; - release_delay = <0x50>; - fn_key_scancode = <0x5c>; - fn_key_scancode_other = <0x5b>; - cursor_left_scancode = <0xe>; - cursor_right_scancode = <0x1a>; - cursor_up_scancode = <0x3>; - cursor_down_scancode = <0x2>; - cursor_ok_scancode = <0x7>; - size = <0xd>; - keymap = <0x140074 0x13008b 0x30067 0x2006c 0xe0069 0x1a006a 0x700e8 0x580072 0x5c003f 0x5b003f 0xb0073 0x1009e 0x480066>; - linux,phandle = <0x28>; - phandle = <0x28>; - }; - }; - - rng { - compatible = "amlogic,meson-rng"; - reg = <0x0 0xc8834000 0x0 0x4>; - }; - - audio_data { - compatible = "amlogic, audio_data"; - query_licence_cmd = <0x82000050>; - status = "okay"; - }; - - saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0x0 0x9 0x1>; - interrupt-names = "saradc_int"; - clocks = <0x6 0x2>; - clock-names = "saradc_clk"; - resets = <0x6 0x56>; - reg = <0x0 0xc1108680 0x0 0x30 0x0 0xc883c3d8 0x0 0x8>; - }; - - defendkey { - compatible = "amlogic, defendkey"; - reg = <0x0 0xc8834500 0x0 0x4>; - mem_size = <0x0 0x100000>; - status = "okay"; - }; - - spicc { - compatible = "amlogic, spicc"; - status = "disabled"; - reg = <0x0 0xc1108d80 0x0 0x28>; - resets = <0x6 0x8>; - reset-names = "spicc_clk"; - clocks = <0x6 0xa>; - clock-names = "clk81"; - interrupts = <0x0 0x51 0x1>; - device_id = <0x0>; - }; - - aml_aes { - compatible = "amlogic,aes_dma"; - dev_name = "aml_aes_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aml_tdes { - compatible = "amlogic,des_dma,tdes_dma"; - dev_name = "aml_tdes_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aml_sha { - compatible = "amlogic,sha_dma"; - dev_name = "aml_sha_dma"; - interrupts = <0x0 0xbc 0x1 0x0 0xbd 0x1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - meson-pwm { - compatible = "amlogic, meson-pwm"; - status = "okay"; - #pwm-cells = <0x2>; - pwm-outputs = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xa 0xb 0xc 0xd 0xe 0xf>; - reg = <0x0 0xc1108550 0x0 0x1c 0x0 0xc1108640 0x0 0x1c 0x0 0xc11086c0 0x0 0x1c 0x0 0xc8100550 0x0 0x1c>; - clocks = <0x6 0x2 0x6 0x5 0x6 0x9 0x6 0x8>; - clock-names = "xtal", "vid_pll_clk", "fclk_div4", "fclk_div3"; - clock-select = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>; - }; - - partitions { - parts = <0xa>; - part-0 = <0x29>; - part-1 = <0x2a>; - part-2 = <0x2b>; - part-3 = <0x2c>; - part-4 = <0x2d>; - part-5 = <0x2e>; - part-6 = <0x2f>; - part-7 = <0x30>; - part-8 = <0x31>; - part-9 = <0x32>; - - logo { - pname = "logo"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x29>; - phandle = <0x29>; - }; - - recovery { - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x2a>; - phandle = <0x2a>; - }; - - rsv { - pname = "rsv"; - size = <0x0 0x800000>; - mask = <0x1>; - linux,phandle = <0x2b>; - phandle = <0x2b>; - }; - - tee { - pname = "tee"; - size = <0x0 0x800000>; - mask = <0x1>; - linux,phandle = <0x2c>; - phandle = <0x2c>; - }; - - crypt { - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x2d>; - phandle = <0x2d>; - }; - - misc { - pname = "misc"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x2e>; - phandle = <0x2e>; - }; - - boot { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <0x1>; - linux,phandle = <0x2f>; - phandle = <0x2f>; - }; - - system { - pname = "system"; - size = <0x0 0x80000000>; - mask = <0x1>; - linux,phandle = <0x30>; - phandle = <0x30>; - }; - - cache { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <0x2>; - linux,phandle = <0x31>; - phandle = <0x31>; - }; - - data { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <0x4>; - linux,phandle = <0x32>; - phandle = <0x32>; - }; - }; - - aliases { - serial0 = "/serial@c81004c0"; - serial1 = "/serial@c11084c0"; - serial2 = "/serial@c11084dc"; - serial3 = "/serial@c1108700"; - serial4 = "/serial@c81004e0"; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory-2g = <0x0 0x100000 0x0 0x7ff00000>; - linux,usable-memory-3g = <0x0 0x100000 0x0 0xbff00000>; - }; - - reserved-memory { - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - linux,phandle = <0x18>; - phandle = <0x18>; - }; - - linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x5300000 0x0 0x2000000>; - no-map; - }; - - aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x7300000 0x0 0x100000>; - no-map; - }; - - linux,di { - compatible = "amlogic, di-mem"; - size = <0x0 0x1e00000>; - linux,phandle = <0x3b>; - phandle = <0x3b>; - }; - - linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x4000000>; - linux,phandle = <0x38>; - phandle = <0x38>; - }; - - linux,vdin1_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x1000000>; - alignment = <0x0 0x400000>; - linux,phandle = <0x3c>; - phandle = <0x3c>; - }; - - linux,ppmgr { - compatible = "shared-dma-pool"; - size = <0x0 0x0>; - linux,phandle = <0x3a>; - phandle = <0x3a>; - }; - - linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - linux,phandle = <0x35>; - phandle = <0x35>; - }; - - linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - linux,phandle = <0x39>; - phandle = <0x39>; - }; - - linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - linux,phandle = <0x36>; - phandle = <0x36>; - }; - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <0x33 0x9 0x0>; - led_active_low = <0x1>; - }; - - fan { - compatible = "fanctl"; - fan_ctl0 = <0x34 0x3f 0x0>; - fan_ctl1 = <0x34 0x40 0x0>; - trig_temp_level0 = <0x32>; - trig_temp_level1 = <0x3c>; - trig_temp_level2 = <0x46>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - - meson-fb { - compatible = "amlogic, meson-fb"; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0x0 0x3 0x1 0x0 0x59 0x1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x1851000 0x100000>; - display_mode_default = "1080p60hz"; - scale_mode = <0x1>; - display_size_default = <0x780 0x438 0x780 0xca8 0x20>; - logo_addr_2g = "0x7d851000"; - logo_addr_3g = "0xbd851000"; - }; - - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0x0 0x96 0x1>; - interrupt-names = "ge2d"; - clocks = <0x6 0x17 0x6 0x19>; - clock-names = "clk_vapb_0", "clk_ge2d"; - resets = <0x6 0x34>; - reset-names = "ge2d"; - }; - - codec_io { - compatible = "amlogic, codec_io"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - - io_dos_base { - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - - io_hiubus_base { - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - - io_vcbus_base { - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - - io_dmc_base { - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <0x35 0x36>; - dev_name = "codec_mm"; - status = "okay"; - }; - - ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rgmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 0x0 0xc8834540 0x0 0x8 0x0 0xc8834558 0x0 0xc>; - interrupts = <0x0 0x8 0x1>; - phy-mode = "rgmii"; - pinctrl-names = "external_eth_pins"; - pinctrl-0 = <0x37>; - rst_pin-gpios = <0x34 0xe 0x0>; - GPIOZ4_pin-gpios = <0x34 0x4 0x0>; - GPIOZ5_pin-gpios = <0x34 0x5 0x0>; - mc_val = <0x1621>; - cali_val = <0x20000>; - resets = <0x6 0x23>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <0x6 0xa>; - clock-names = "ethclk81"; - internal_phy = <0x0>; - }; - - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <0x6 0x39 0x6 0x59 0x6 0x24 0x6 0x1>; - reset-names = "parser_top", "vpu_intr", "demux", "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <0x8>; - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <0x38>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0x0 0x3 0x1 0x0 0x17 0x1 0x0 0x20 0x1 0x0 0x2b 0x1 0x0 0x2c 0x1 0x0 0x2d 0x1>; - interrupt-names = "vsync", "demux", "parser", "mailbox_0", "mailbox_1", "mailbox_2"; - }; - - picdec { - compatible = "amlogic, picdec"; - memory-region = <0x39>; - dev_name = "picdec"; - status = "okay"; - }; - - ppmgr { - compatible = "amlogic, ppmgr"; - memory-region = <0x3a>; - dev_name = "ppmgr"; - status = "okay"; - }; - - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <0x3b>; - interrupts = <0x0 0x2e 0x1 0x0 0x6 0x1>; - interrupt-names = "de_irq", "timerc"; - buffer-size = <0x2fd000>; - hw-version = <0x2>; - }; - - vdin0 { - compatible = "amlogic, vdin"; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0x1>; - cma_size = <0x10>; - interrupts = <0x0 0x53 0x1>; - rdma-irq = <0x2>; - clocks = <0x6 0x11 0x6 0x29>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0x0>; - tv_bit_mode = <0x1>; - }; - - vdin1 { - compatible = "amlogic, vdin"; - memory-region = <0x3c>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - flag_cma = <0x0>; - interrupts = <0x0 0x55 0x1>; - rdma-irq = <0x4>; - clocks = <0x6 0x11 0x6 0x29>; - clock-names = "fclk_div5", "cts_vdin_meas_clk"; - vdin_id = <0x1>; - tv_bit_mode = <0x1>; - }; - - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <0x6 0x7 0x6 0x26>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0x0>; - }; - - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <0x6 0x7 0x6 0x27>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <0x1>; - }; - - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0x0>; - wb_en = <0x0>; - cm_en = <0x0>; - }; - - amvenc_avc { - compatible = "amlogic, amvenc_avc"; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0x0 0x2d 0x1>; - interrupt-names = "mailbox_2"; - }; - - hevc_enc { - compatible = "cnm, HevcEnc"; - dev_name = "HevcEnc"; - status = "okay"; - interrupts = <0x0 0xbb 0x1>; - interrupt-names = "wave420l_irq"; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - - io_reg_base { - reg = <0x0 0xc8810000 0x0 0x4000>; - }; - }; - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <0x7>; - }; - - bt-dev { - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "okay"; - gpio_reset = <0x34 0x60 0x0>; - }; - - rtc { - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi { - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <0x34 0x56 0x0>; - interrupts = <0x0 0x44 0x4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <0x34 0x55 0x0>; - dhd_static_buf; - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <0x3d>; - pwm_config = <0x3e>; - }; - - wifi_pwm_conf { - pwm_channel1 = <0x4>; - pwm_channel2 = <0xc>; - pwm_channel1_conf = <0x774d 0x3ba6 0x6>; - pwm_channel2_conf = <0x7736 0x3b9b 0x9>; - linux,phandle = <0x3e>; - phandle = <0x3e>; - }; - - emmc { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = <0x0 0xda 0x1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <0x3f>; - pinctrl-1 = <0x40 0x41 0x42>; - - emmc { - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_8_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_1_8V_DDR", "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <0x493e0>; - f_max = <0x5f5e100>; - max_req_size = <0x20000>; - gpio_dat3 = <0x34 0x1d 0x0>; - hw_reset = <0x34 0x23 0x0>; - card_type = <0x1>; - }; - }; - - sd { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = <0x0 0xd9 0x1 0x0 0x43 0x1 0x0 0x45 0x1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins", "sd_clk_cmd_uart_pins", "sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins", "ao_to_sd_jtag_pins", "sd_to_ao_jtag_pins"; - pinctrl-0 = <0x43>; - pinctrl-1 = <0x44>; - pinctrl-2 = <0x45>; - pinctrl-3 = <0x46>; - pinctrl-4 = <0x47>; - pinctrl-5 = <0x48>; - pinctrl-6 = <0x49>; - pinctrl-7 = <0x4a>; - pinctrl-8 = <0x4b>; - - sd { - status = "okay"; - pinname = "sd"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED"; - f_min = <0x61a80>; - f_max = <0x5f5e100>; - max_req_size = <0x20000>; - gpio_dat3 = <0x34 0x2e 0x0>; - jtag_pin = <0x34 0x2a 0x0>; - gpio_cd = <0x34 0x30 0x0>; - card_in_delay = <0x190>; - irq_in = <0x3>; - irq_out = <0x5>; - card_type = <0x5>; - }; - }; - - sdio { - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = <0x0 0xd8 0x1>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <0x4c>; - pinctrl-1 = <0x4d>; - - sdio { - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x200080>; - caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_UHS_SDR12", "MMC_CAP_UHS_SDR25", "MMC_CAP_UHS_SDR50", "MMC_CAP_UHS_SDR104", "MMC_PM_KEEP_POWER"; - f_min = <0x61a80>; - f_max = <0xbebc200>; - max_req_size = <0x20000>; - card_type = <0x3>; - }; - }; - - nand { - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = <0x0 0x22 0x1>; - pinctrl-names = "nand_rb_mod", "nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <0x4e 0x4f 0x50>; - pinctrl-1 = <0x4e 0x4f 0x50>; - pinctrl-2 = <0x51>; - device_id = <0x0>; - plat-names = "nandnormal"; - plat-num = <0x1>; - plat-part-0 = <0x52>; - - normal { - enable_pad = "ce0", "ce1", "ce2", "ce3"; - busy_pad = "rb0"; - linux,phandle = <0x52>; - phandle = <0x52>; - }; - }; - - aml_nftl { - compatible = "amlogic, nftl"; - }; - - unifykey { - compatible = "amlogic, unifykey"; - status = "ok"; - unifykey-num = <0xe>; - unifykey-index-0 = <0x53>; - unifykey-index-1 = <0x54>; - unifykey-index-2 = <0x55>; - unifykey-index-3 = <0x56>; - unifykey-index-4 = <0x57>; - unifykey-index-5 = <0x58>; - unifykey-index-6 = <0x59>; - unifykey-index-7 = <0x5a>; - unifykey-index-8 = <0x5b>; - unifykey-index-9 = <0x5c>; - unifykey-index-10 = <0x5d>; - unifykey-index-11 = <0x5e>; - unifykey-index-12 = <0x5f>; - unifykey-index-13 = <0x60>; - - key_0 { - key-name = "usid"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x53>; - phandle = <0x53>; - }; - - key_1 { - key-name = "mac"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x54>; - phandle = <0x54>; - }; - - key_2 { - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read", "write", "del"; - linux,phandle = <0x55>; - phandle = <0x55>; - }; - - key_3 { - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - linux,phandle = <0x56>; - phandle = <0x56>; - }; - - key_4 { - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read", "write", "del"; - key-type = "mac"; - linux,phandle = <0x57>; - phandle = <0x57>; - }; - - key_5 { - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read", "write", "del"; - key-type = "mac"; - linux,phandle = <0x58>; - phandle = <0x58>; - }; - - key_6 { - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x59>; - phandle = <0x59>; - }; - - key_7 { - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5a>; - phandle = <0x5a>; - }; - - key_8 { - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5b>; - phandle = <0x5b>; - }; - - key_9 { - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5c>; - phandle = <0x5c>; - }; - - key_10 { - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5d>; - phandle = <0x5d>; - }; - - key_11 { - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5e>; - phandle = <0x5e>; - }; - - key_12 { - key-name = "prpubkeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x5f>; - phandle = <0x5f>; - }; - - key_13 { - key-name = "prprivkeybox"; - key-device = "secure"; - key-permit = "read", "write", "del"; - linux,phandle = <0x60>; - phandle = <0x60>; - }; - }; - - amhdmitx { - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names = "hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0 = <0x61>; - pinctrl-1 = <0x62>; - interrupts = <0x0 0x39 0x1>; - interrupt-names = "hdmitx_hpd"; - clocks = <0x6 0xb 0x6 0xc 0x6 0xd 0x6 0xe 0x6 0xf 0x6 0x16>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <0x2>; - #size-cells = <0x2>; - ranges; - }; - - aocec { - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; - vendor_id = <0x0>; - product_desc = "GXBB Mbox"; - cec_osd_string = "MBox"; - port_num = <0x1>; - arc_port_mask = <0x0>; - interrupts = <0x0 0xc7 0x1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0 = <0x63>; - reg = <0x0 0xc810023c 0x0 0x4 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <0xa>; - gpios = <0x34 0x11 0x0 0x34 0x12 0x0>; - #address-cells = <0x2>; - #size-cells = <0x2>; - i2c-gpio,timeout-ms = <0xa>; - - i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0x0 0xc1 0x1>; - status = "okay"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - xtal_tick_en = <0x1>; - fifosize = <0x40>; - pinctrl-names = "default"; - support-sysrq = <0x0>; - }; - - serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0x0 0x1a 0x1>; - status = "okay"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x80>; - pinctrl-names = "default"; - pinctrl-0 = <0x64>; - resets = <0x6 0xd>; - }; - - serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0x0 0x4b 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x65>; - resets = <0x6 0x30>; - }; - - serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0x0 0x5d 0x1>; - status = "disable"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x66>; - resets = <0x6 0x4f>; - }; - - serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0x0 0xc5 0x1>; - status = "okay"; - clocks = <0x6 0x2>; - clock-names = "clk_uart"; - fifosize = <0x40>; - pinctrl-names = "default"; - pinctrl-0 = <0x67>; - }; - - canvas { - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma { - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0x0 0x59 0x1>; - interrupt-names = "rdma"; - }; - - dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0x0 0x1e 0x4>; - usb-phy = <0x68 0x69>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <0x3>; - reg = <0x0 0xd0078000 0x0 0x80>; - linux,phandle = <0x68>; - phandle = <0x68>; - }; - - usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0x0>; - reg = <0x0 0xd0078080 0x0 0x20>; - interrupts = <0x0 0x10 0x4>; - otg = <0x1>; - gpio-vbus-power = "GPIOAO_5"; - gpios = <0x33 0x5 0x0>; - linux,phandle = <0x69>; - phandle = <0x69>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0x0 0x1f 0x4>; - pl-periph-id = <0x0>; - clock-src = "usb0"; - port-id = <0x0>; - port-type = <0x2>; - port-speed = <0x0>; - port-config = <0x0>; - port-dma = <0x0>; - port-id-mode = <0x0>; - usb-fifo = <0x2d8>; - cpu-type = "gxl"; - controller-type = <0x2>; - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <0x6 0x3a 0x6 0x48 0x6 0x36>; - reset-names = "usb_general", "usb1", "usb1_to_ddr"; - }; - - I2S { - #sound-dai-cells = <0x0>; - resets = <0x6 0x26 0x6 0x12 0x6 0x28 0x6 0x29 0x6 0x2a 0x6 0x2b 0x6 0x2c 0x6 0x2d 0x6 0x2f 0x6 0x8e 0x6 0x22>; - reset-names = "top_glue", "aud_buf", "i2s_out", "amclk_measure", "aififo2", "aud_mixer", "mixer_reg", "adc", "top_level", "aoclk", "aud_in"; - clocks = <0x6 0x21 0x6 0x22>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - linux,phandle = <0x75>; - phandle = <0x75>; - }; - - SPDIF { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-spdif-dai"; - resets = <0x6 0x27 0x6 0x90>; - reset-names = "iec958", "iec958_amclk"; - clocks = <0x6 0x20 0x6 0x24 0x6 0x22 0x6 0x25 0x6 0xa>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - linux,phandle = <0x76>; - phandle = <0x76>; - }; - - PCM { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <0x6a>; - clocks = <0x6 0x1f 0x6 0x2a 0x6 0x2b>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <0x1>; - linux,phandle = <0x77>; - phandle = <0x77>; - }; - - i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0x0 0x1d 0x1>; - linux,phandle = <0x73>; - phandle = <0x73>; - }; - - pcm_platform { - compatible = "amlogic, aml-pcm"; - linux,phandle = <0x74>; - phandle = <0x74>; - }; - - spdif_codec { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <0x6b>; - linux,phandle = <0x79>; - phandle = <0x79>; - }; - - pcm_codec { - #sound-dai-cells = <0x0>; - compatible = "amlogic, pcm2BT-codec"; - linux,phandle = <0x7a>; - phandle = <0x7a>; - }; - - dummy { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - - t9015 { - #sound-dai-cells = <0x0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - linux,phandle = <0x78>; - phandle = <0x78>; - }; - - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = "Ext Spk", "LOUTL", "Ext Spk", "LOUTR"; - mute_inv; - hp_disable; - hp_paraments = <0x320 0x12c 0x0 0x5 0x1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <0x6c>; - cpu_list = <0x6d 0x6e 0x6f>; - codec_list = <0x70 0x71 0x72>; - plat_list = <0x73 0x73 0x74>; - - cpudai0 { - sound-dai = <0x75>; - linux,phandle = <0x6d>; - phandle = <0x6d>; - }; - - cpudai1 { - sound-dai = <0x76>; - linux,phandle = <0x6e>; - phandle = <0x6e>; - }; - - cpudai2 { - sound-dai = <0x77>; - linux,phandle = <0x6f>; - phandle = <0x6f>; - }; - - codec0 { - sound-dai = <0x78>; - linux,phandle = <0x70>; - phandle = <0x70>; - }; - - codec1 { - sound-dai = <0x79>; - linux,phandle = <0x71>; - phandle = <0x71>; - }; - - codec2 { - sound-dai = <0x7a>; - linux,phandle = <0x72>; - phandle = <0x72>; - }; - }; - - gpio_keypad { - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <0x14>; - key_num = <0x1>; - key_name = "power"; - key_code = <0x74>; - key_pin = <0x33 0x2 0x0>; - irq_keyup = <0x6>; - irq_keydown = <0x7>; - }; - - adc_keypad { - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "home"; - key_num = <0x1>; - key_code = <0x66>; - key_chan = <0x0>; - key_val = <0xa>; - key_tolerance = <0x28>; - }; - - aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <0x1>; - linux,phandle = <0x7b>; - phandle = <0x7b>; - - cooling_devices { - - cpufreq_cool_cluster0 { - min_state = <0xf4240>; - dyn_coeff = <0x8c>; - cluster_id = <0x0>; - node_name = "cluster0"; - device_type = "cpufreq"; - }; - - cpufreq_cool_cluster1 { - min_state = <0x7a120>; - dyn_coeff = <0x8c>; - cluster_id = <0x1>; - node_name = "cluster1"; - device_type = "cpufreq"; - }; - - cpucore_cool_cluster0 { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - - cpucore_cool_cluster1 { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x1>; - node_name = "cpu_core_cluster1"; - device_type = "cpucore"; - }; - - gpufreq_cool { - min_state = <0x190>; - dyn_coeff = <0x1b5>; - cluster_id = <0x0>; - node_name = "t82x"; - device_type = "gpufreq"; - }; - - gpucore_cool { - min_state = <0x1>; - dyn_coeff = <0x0>; - cluster_id = <0x0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - - cpu_core_cluster0 { - #cooling-cells = <0x2>; - linux,phandle = <0x7f>; - phandle = <0x7f>; - }; - - cpu_core_cluster1 { - #cooling-cells = <0x2>; - linux,phandle = <0x80>; - phandle = <0x80>; - }; - - thermal_gpu_cores { - #cooling-cells = <0x2>; - linux,phandle = <0x82>; - phandle = <0x82>; - }; - }; - - thermal-zones { - - soc_thermal { - polling-delay = <0x3e8>; - polling-delay-passive = <0x64>; - sustainable-power = <0x992>; - thermal-sensors = <0x7b 0x3>; - - trips { - - trip-point@0 { - temperature = <0x11170>; - hysteresis = <0x3e8>; - type = "passive"; - }; - - trip-point@1 { - temperature = <0x13880>; - hysteresis = <0x3e8>; - type = "passive"; - linux,phandle = <0x7c>; - phandle = <0x7c>; - }; - - trip-point@2 { - temperature = <0x14c08>; - hysteresis = <0x1388>; - type = "hot"; - }; - - trip-point@3 { - temperature = <0x3f7a0>; - hysteresis = <0x3e8>; - type = "critical"; - }; - }; - - cooling-maps { - - cpufreq_cooling_map0 { - trip = <0x7c>; - cooling-device = <0x7d 0x0 0x4>; - contribution = <0x400>; - }; - - cpufreq_cooling_map1 { - trip = <0x7c>; - cooling-device = <0x7e 0x0 0x4>; - contribution = <0x400>; - }; - - cpucore_cooling_map0 { - trip = <0x7c>; - cooling-device = <0x7f 0x0 0x3>; - contribution = <0x400>; - }; - - cpucore_cooling_map1 { - trip = <0x7c>; - cooling-device = <0x80 0x0 0x3>; - contribution = <0x400>; - }; - - gpufreq_cooling_map { - trip = <0x7c>; - cooling-device = <0x81 0x0 0x4>; - contribution = <0x400>; - }; - - gpucore_cooling_map { - trip = <0x7c>; - cooling-device = <0x82 0x0 0x2>; - contribution = <0x400>; - }; - }; - }; - }; -}; diff --git a/arch/arm64/boot/dts/amlogic/gxl_p231_2g.dts b/arch/arm64/boot/dts/kvim_android.dts similarity index 93% rename from arch/arm64/boot/dts/amlogic/gxl_p231_2g.dts rename to arch/arm64/boot/dts/kvim_android.dts index 2ee9802c22545..bf6c194469456 100644 --- a/arch/arm64/boot/dts/amlogic/gxl_p231_2g.dts +++ b/arch/arm64/boot/dts/kvim_android.dts @@ -1,5 +1,5 @@ /* - * arch/arm64/boot/dts/amlogic/gxl_p231_2g.dts + * arch/arm64/boot/dts/kvim.dts * * Copyright (C) 2015 Amlogic, Inc. All rights reserved. * @@ -25,10 +25,11 @@ #include #include #include "mesongxl.dtsi" +#include "partitions-android.dtsi" / { model = "Amlogic"; + amlogic-dt-id = "kvim"; compatible = "amlogic, Gxbb"; - amlogic-dt-id = "gxl_p231_2g"; interrupt-parent = <&gic>; #address-cells = <2>; #size-cells = <2>; @@ -40,9 +41,10 @@ serial3 = &uart_C; serial4 = &uart_AO_B; }; + memory@00000000 { device_type = "memory"; - linux,usable-memory = <0x0 0x100000 0x0 0x7f000000>; + linux,usable-memory = <0x0 0x100000 0x0 0x7ff00000>; }; reserved-memory { @@ -68,7 +70,7 @@ }; fb_reserved:linux,meson-fb { compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; + reg = <0x0 0x7e000000 0x0 0x2000000>; no-map; }; @@ -78,7 +80,6 @@ size = <0x0 0x1e00000>; //no-map; }; - chunk_reserved:linux,chunk-reserve { compatible = "amlogic, chunk-reserve"; size = <0x0 0x4000000>; @@ -86,7 +87,7 @@ ion_reserved:linux,ion-dev { compatible = "amlogic, idev-mem"; - size = <0x0 0x2000000>; + size = <0x0 0x3000000>; }; /* vdin0 CMA pool */ @@ -144,7 +145,7 @@ compatible = "amlogic, sysled"; dev_name = "sysled"; status = "okay"; - led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; + led_gpio = <&gpio_ao GPIOAO_9 GPIO_ACTIVE_HIGH>; led_active_low = <1>; }; @@ -167,11 +168,11 @@ interrupts = <0 3 1 0 89 1>; interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ + mem_size = <0x01851000 0x00100000>; /* fb0/fb1 memory size */ display_mode_default = "1080p60hz"; scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - logo_addr = "0x7d851000"; + logo_addr = "0x7f851000"; }; ge2d { compatible = "amlogic, ge2d"; @@ -224,8 +225,6 @@ interrupts = <0 8 1 0 9 1>; phy-mode= "rmii"; - pinctrl-names = "internal_eth_pins"; - pinctrl-0 = <&internal_eth_pins>; mc_val = <0x1800>; resets = <&clock GCLK_IDX_ETHERNET>; reset-names = "ethpower"; @@ -234,7 +233,7 @@ clocks = <&clock CLK_81>; clock-names = "ethclk81"; internal_phy=<1>; - wol=<0>; + wol=<0>; }; mesonstream { compatible = "amlogic, codec, streambuf"; @@ -437,7 +436,7 @@ pinctrl-0 = <&wifi_32k_pins>; pwm_config = <&wifi_pwm_conf>; }; - wifi_pwm_conf:wifi_pwm_conf{ + wifi_pwm_conf:wifi_pwm_conf{ pwm_channel1 = ; pwm_channel2 = ; pwm_channel1_conf = <30541 15270 6>; @@ -574,75 +573,6 @@ status = "okay"; }; };*/ - partitions: partitions{ - parts = <10>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&boot>; - part-7 = <&system>; - part-8 = <&cache>; - part-9 = <&data>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x80000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; unifykey{ compatible = "amlogic, unifykey"; status = "ok"; @@ -851,7 +781,7 @@ compatible = "amlogic, meson-uart"; reg = <0x0 0xc81004e0 0x0 0x18>; interrupts = <0 197 1>; - status = "disable"; + status = "okay"; clocks = <&clock CLK_XTAL>; clock-names = "clk_uart"; fifosize = < 64 >; @@ -912,7 +842,7 @@ port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ usb-fifo = <728>; cpu-type = "gxl"; - controller-type = <1>; /** 0: normal, 1: otg+dwc3*/ + controller-type = <2>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ phy-reg = <0xd0078000>; phy-reg-size = <0xa0>; resets = <&clock GCLK_IDX_USB_GENERAL @@ -1025,13 +955,11 @@ "Ext Spk","LOUTL", "Ext Spk","LOUTR"; - mute_gpio-gpios = <&gpio GPIOH_5 0>; mute_inv; - hp_disable; sleep_time = <100>; + hp_disable; hp_paraments = <800 300 0 5 1>; pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; cpu_list = <&cpudai0 &cpudai1 &cpudai2>; codec_list = <&codec0 &codec1 &codec2>; plat_list = <&i2s_plat &i2s_plat &pcm_plat>; @@ -1060,11 +988,11 @@ compatible = "amlogic, meson-pwm"; status = "okay"; pwm-outputs = ,,,, - ,,,; + ,,,; pwm-outputs-new = ,,,, - ,,,, - ,,,, - ,,,; + ,,,, + ,,,, + ,,,; reg = <0x0 0xc1108550 0x0 0x30>, <0x0 0xc8100550 0x0 0x10>; clocks = <&clock CLK_XTAL>, @@ -1076,7 +1004,7 @@ "fclk_div4", "fclk_div3"; clock-select = ,,,, - ,,,; + ,,,; clock-select-new = ,,,, ,,,, ,,,, @@ -1096,6 +1024,17 @@ irq_keyup = <6>; irq_keydown = <7>; }; + adc_keypad{ + compatible = "amlogic, adc_keypad"; + status = "okay"; + key_name = "home"; + key_num = <1>; + key_code = <300>; + key_chan = <0>; + key_val = <10>; + key_tolerance = <40>; + }; + aml_sensor0: aml-sensor@0 { compatible = "amlogic, aml-thermal"; device_name = "thermal"; @@ -1223,3 +1162,13 @@ &defendkey { status = "okay"; }; +&i2c_a { + status = "okay"; +}; +&i2c_b { + status = "okay"; + kvim_hym8563{ + compatible = "kvim_hym8563"; + reg = <0x51>; + }; +}; diff --git a/arch/arm64/boot/dts/kvim.dts b/arch/arm64/boot/dts/kvim_linux.dts similarity index 99% rename from arch/arm64/boot/dts/kvim.dts rename to arch/arm64/boot/dts/kvim_linux.dts index ed9e680be53a0..2b21c19294cec 100644 --- a/arch/arm64/boot/dts/kvim.dts +++ b/arch/arm64/boot/dts/kvim_linux.dts @@ -25,7 +25,7 @@ #include #include #include "mesongxl.dtsi" -#include "partitions.dtsi" +#include "partitions-linux.dtsi" / { model = "Amlogic"; amlogic-dt-id = "kvim"; diff --git a/arch/arm64/boot/dts/kvim_multios.dts b/arch/arm64/boot/dts/kvim_multios.dts index ee5a94d677991..75a2d3c04568c 100644 --- a/arch/arm64/boot/dts/kvim_multios.dts +++ b/arch/arm64/boot/dts/kvim_multios.dts @@ -1,5 +1,5 @@ /* - * arch/arm64/boot/dts/amlogic/kvim.dts + * arch/arm64/boot/dts/kvim.dts * * Copyright (C) 2015 Amlogic, Inc. All rights reserved. * @@ -22,6 +22,8 @@ #include #include #include +#include +#include #include "mesongxl.dtsi" #include "partitions-multios.dtsi" / { @@ -68,33 +70,43 @@ }; fb_reserved:linux,meson-fb { compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; + reg = <0x0 0x7e000000 0x0 0x2000000>; no-map; }; di_reserved:linux,di { compatible = "amlogic, di-mem"; - size = <0x0 0x1e00000>; //10x1920x1088x3/2=30M + /** 10x3133440=30M(0x1e) support 8bit **/ + size = <0x0 0x1e00000>; //no-map; }; + chunk_reserved:linux,chunk-reserve { + compatible = "amlogic, chunk-reserve"; + size = <0x0 0x4000000>; + }; ion_reserved:linux,ion-dev { compatible = "amlogic, idev-mem"; size = <0x0 0x3000000>; }; - /* vdin0 */ -// vdin0_reserved:linux,vdin0 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* vdin1 */ -// vdin1_reserved:linux,vdin1 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; + /* vdin0 CMA pool */ + //vdin0_cma_reserved:linux,vdin0_cma { + // compatible = "shared-dma-pool"; + // linux,phandle = <4>; + // reusable; + /* 1920x1080x2x4 =16+4 M */ + // size = <0x0 0x01400000>; + // alignment = <0x0 0x400000>; + //}; + /* vdin1 CMA pool */ + vdin1_cma_reserved:linux,vdin1_cma { + compatible = "shared-dma-pool"; + reusable; + /* 1920x1080x2x4 =16 M */ + size = <0x0 0x01000000>; + alignment = <0x0 0x400000>; + }; /* POST PROCESS MANAGER */ ppmgr_reserved:linux,ppmgr { compatible = "shared-dma-pool"; @@ -137,6 +149,12 @@ led_active_low = <1>; }; + chunk-reserve { + compatible = "amlogic, chunk-reserve"; + memory-region = <&chunk_reserved>; + status = "okay"; + }; + meson-vout { compatible = "amlogic, meson-vout"; dev_name = "meson-vout"; @@ -150,10 +168,11 @@ interrupts = <0 3 1 0 89 1>; interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ + mem_size = <0x01851000 0x00100000>; /* fb0/fb1 memory size */ display_mode_default = "1080p60hz"; scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 + logo_addr = "0x7f851000"; }; ge2d { compatible = "amlogic, ge2d"; @@ -198,20 +217,23 @@ dev_name = "codec_mm"; status = "okay"; }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1>; - phy-mode= "rmii"; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; + ethmac: ethernet@0xc9410000 { + compatible = "amlogic, gxbb-rmii-dwmac"; + reg = <0x0 0xc9410000 0x0 0x10000 + 0x0 0xc8834540 0x0 0x8 + 0x0 0xc8834558 0x0 0xc>; + interrupts = <0 8 1 + 0 9 1>; + phy-mode= "rmii"; + mc_val = <0x1800>; + resets = <&clock GCLK_IDX_ETHERNET>; + reset-names = "ethpower"; + interrupt-names = "macirq", + "phyirq"; + clocks = <&clock CLK_81>; + clock-names = "ethclk81"; + internal_phy=<1>; + wol=<0>; }; mesonstream { compatible = "amlogic, codec, streambuf"; @@ -276,35 +298,60 @@ 0 6 1>; interrupt-names = "de_irq", "timerc"; - buffer-size = <3133440>; //1920x1088x3/2 + /* nr_size(byte) = 1920*544*2(yuv422 8bit) | 1920*544*2*12/8(yuv422 10bit) | 1920*544*2*10/8(yuv422 10bit full pack mode) */ + /* mtn_size(byte) = 1920*544/2 */ + /* count_size(byte) = 1920*544/2 */ + buffer-size = <3133440>; hw-version = <2>; }; -/* vdin0 { + /*if you want to use vdin just modify status to "ok"*/ + vdin0 { compatible = "amlogic, vdin"; - memory-region = <&vdin0_reserved>; + /*memory-region = <&vdin0_cma_reserved>;*/ dev_name = "vdin0"; status = "ok"; reserve-iomap = "true"; + flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/ + /*MByte, if 10bit disable: 64M(YUV422), if 10bit enable: 64*1.5 = 96M(YUV422) + *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M + *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M + *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M + *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M*/ + cma_size = <16>; interrupts = <0 83 1>; rdma-irq = <2>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; + clocks = <&clock CLK_FPLL_DIV5>, + <&clock CLK_VDIN_MEAS_CLK>; + clock-names = "fclk_div5", "cts_vdin_meas_clk"; vdin_id = <0>; + /*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 = <1>; }; - vdin { + vdin1 { compatible = "amlogic, vdin"; - memory-region = <&vdin1_reserved>; + memory-region = <&vdin1_cma_reserved>; dev_name = "vdin1"; status = "ok"; reserve-iomap = "true"; + flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/ interrupts = <0 85 1>; rdma-irq = <4>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; + clocks = <&clock CLK_FPLL_DIV5>, + <&clock CLK_VDIN_MEAS_CLK>; + clock-names = "fclk_div5", "cts_vdin_meas_clk"; vdin_id = <1>; - };*/ + /*vdin write mem color depth support: + *bit0:support 8bit + *bit1:support 9bit + *bit2:support 10bit + *bit3:support 12bit*/ + tv_bit_mode = <1>; + }; amvdec_656in0 { compatible = "amlogic, amvdec_656in"; dev_name = "amvdec_656in0"; @@ -387,6 +434,38 @@ dhd_static_buf; //if use bcm wifi, config dhd_static_buf and 32k as bellow pinctrl-names = "wifi_32k_pins"; pinctrl-0 = <&wifi_32k_pins>; + pwm_config = <&wifi_pwm_conf>; + }; + wifi_pwm_conf:wifi_pwm_conf{ + pwm_channel1 = ; + pwm_channel2 = ; + pwm_channel1_conf = <30541 15270 6>; + pwm_channel2_conf = <30518 15259 9>; + }; + emmc{ + compatible = "amlogic, aml_sd_emmc"; + dev_name = "aml_newsd.0"; + status = "okay"; + reg = <0x0 0xd0074000 0x0 0x2000>; + interrupts = < 0 218 1>; + pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; + pinctrl-0 = <&emmc_clk_cmd_pins>; + pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; + emmc{ + status = "disabled"; + pinname = "emmc"; + ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ + caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", + "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", + "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; + caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; + f_min = <300000>; + f_max = <100000000>; + max_req_size = <0x20000>; /**256KB*/ + gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; + hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; + card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ + }; }; sd{ compatible = "amlogic, aml_sd_emmc"; @@ -425,31 +504,6 @@ irq_out = <5>; card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ }; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc{ - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**256KB*/ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; }; sdio{ compatible = "amlogic, aml_sd_emmc"; @@ -519,7 +573,6 @@ status = "okay"; }; };*/ - unifykey{ compatible = "amlogic, unifykey"; status = "ok"; @@ -728,7 +781,7 @@ compatible = "amlogic, meson-uart"; reg = <0x0 0xc81004e0 0x0 0x18>; interrupts = <0 197 1>; - status = "disable"; + status = "okay"; clocks = <&clock CLK_XTAL>; clock-names = "clk_uart"; fifosize = < 64 >; @@ -857,10 +910,10 @@ pinctrl-names = "aml_audio_btpcm"; pinctrl-0 = <&audio_btpcm_pins>; clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; + <&clock CLK_PCM_MCLK>, + <&clock CLK_PCM_SCLK>; clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ + pcm_mode = <1>; /* 0=slave mode, 1=master mode */ }; i2s_plat: i2s_platform { compatible = "amlogic, aml-i2s"; @@ -902,12 +955,11 @@ "Ext Spk","LOUTL", "Ext Spk","LOUTR"; - mute_gpio-gpios = <&gpio GPIOH_5 0>; mute_inv; + sleep_time = <100>; hp_disable; hp_paraments = <800 300 0 5 1>; pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; cpu_list = <&cpudai0 &cpudai1 &cpudai2>; codec_list = <&codec0 &codec1 &codec2>; plat_list = <&i2s_plat &i2s_plat &pcm_plat>; @@ -932,6 +984,35 @@ }; /* END OF AUDIO board specific */ + pwm { + compatible = "amlogic, meson-pwm"; + status = "okay"; + pwm-outputs = ,,,, + ,,,; + pwm-outputs-new = ,,,, + ,,,, + ,,,, + ,,,; + reg = <0x0 0xc1108550 0x0 0x30>, + <0x0 0xc8100550 0x0 0x10>; + clocks = <&clock CLK_XTAL>, + <&clock CLK_VID_PLL>, + <&clock CLK_FPLL_DIV4>, + <&clock CLK_FPLL_DIV3>; + clock-names = "xtal", + "vid_pll_clk", + "fclk_div4", + "fclk_div3"; + clock-select = ,,,, + ,,,; + clock-select-new = ,,,, + ,,,, + ,,,, + ,,,; + /*all channels use the default clock source XTAL_CLK*/ + /*and you can shoose it in file dt-bindings/pwm/meson.h*/ + }; + gpio_keypad{ compatible = "amlogic, gpio_keypad"; status = "okay"; @@ -1081,10 +1162,13 @@ &defendkey { status = "okay"; }; +&i2c_a { + status = "okay"; +}; &i2c_b { status = "okay"; - kvim_hym8563{ - compatible = "kvim_hym8563"; - reg = <0x51>; + kvim_hym8563{ + compatible = "kvim_hym8563"; + reg = <0x51>; }; }; diff --git a/arch/arm64/boot/dts/kvim_nougat.dts b/arch/arm64/boot/dts/kvim_nougat.dts deleted file mode 100644 index de28c5b902748..0000000000000 --- a/arch/arm64/boot/dts/kvim_nougat.dts +++ /dev/null @@ -1,1090 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/kvim.dts - * - * Copyright (C) 2015 Amlogic, Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * -*/ - -/dts-v1/; - -#include -#include -#include -#include -#include -#include "mesongxl.dtsi" -#include "partitions-android.dtsi" -/ { - model = "Amlogic"; - amlogic-dt-id = "kvim"; - compatible = "amlogic, Gxbb"; - interrupt-parent = <&gic>; - #address-cells = <2>; - #size-cells = <2>; - - aliases { - serial0 = &uart_AO; - serial1 = &uart_A; - serial2 = &uart_B; - serial3 = &uart_C; - serial4 = &uart_AO_B; - }; - - memory@00000000 { - device_type = "memory"; - linux,usable-memory = <0x0 0x100000 0x0 0x7ff00000>; - }; - - reserved-memory { - #address-cells = <2>; - #size-cells = <2>; - ranges; - /* global autoconfigured region for contiguous allocations */ - secmon_reserved:linux,secmon { - compatible = "amlogic, aml_secmon_memory"; - reg = <0x0 0x10000000 0x0 0x200000>; - no-map; - }; - secos_reserved:linux,secos { - status = "disable"; - compatible = "amlogic, aml_secos_memory"; - reg = <0x0 0x05300000 0x0 0x2000000>; - no-map; - }; - pstore:aml_pstore { - compatible = "amlogic, pstore"; - reg = <0x0 0x07300000 0x0 0x100000>; - no-map; - }; - fb_reserved:linux,meson-fb { - compatible = "amlogic, fb-memory"; - size = <0x0 0x2000000>; - no-map; - }; - - di_reserved:linux,di { - compatible = "amlogic, di-mem"; - size = <0x0 0x1e00000>; //10x1920x1088x3/2=30M - //no-map; - }; - - ion_reserved:linux,ion-dev { - compatible = "amlogic, idev-mem"; - size = <0x0 0x3000000>; - }; - - /* vdin0 */ -// vdin0_reserved:linux,vdin0 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* vdin1 */ -// vdin1_reserved:linux,vdin1 { -// compatible = "amlogic, vdin_memory"; - /* 1920x1080x2x4 =17M */ -// size = <0x0 0x01000000>; -// }; - /* POST PROCESS MANAGER */ - ppmgr_reserved:linux,ppmgr { - compatible = "shared-dma-pool"; - size = <0x0 0x0>; - }; - - codec_mm_cma:linux,codec_mm_cma { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0xc000000>; - alignment = <0x0 0x400000>; - linux,contiguous-region; - }; - picdec_cma_reserved:linux,picdec { - compatible = "shared-dma-pool"; - reusable; - size = <0x0 0x0>; - alignment = <0x0 0x0>; - linux,contiguous-region; - }; - /* codec shared reserved */ - codec_mm_reserved:linux,codec_mm_reserved { - compatible = "amlogic, codec-mm-reserved"; - size = <0x0 0x4100000>; - alignment = <0x0 0x100000>; - //no-map; - }; - /*vm_reserved:linux,vm { - compatible = "amlogic, vm_memory"; - size = <0x0 0x2000000>; - };*/ - - }; - - sysled { - compatible = "amlogic, sysled"; - dev_name = "sysled"; - status = "okay"; - led_gpio = <&gpio_ao GPIOAO_9 GPIO_ACTIVE_HIGH>; - led_active_low = <1>; - }; - - meson-vout { - compatible = "amlogic, meson-vout"; - dev_name = "meson-vout"; - status = "okay"; - }; - meson-fb { - compatible = "amlogic, meson-fb"; - memory-region = <&fb_reserved>; - dev_name = "meson-fb"; - status = "okay"; - interrupts = <0 3 1 - 0 89 1>; - interrupt-names = "viu-vsync", "rdma"; - mem_size = <0x01800000 0x00100000>; /* fb0/fb1 memory size */ - display_mode_default = "1080p60hz"; - scale_mode = <1>; /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */ - display_size_default = <1920 1080 1920 3240 32>; //1920*1080*4*3 = 0x17BB000 - }; - ge2d { - compatible = "amlogic, ge2d"; - dev_name = "ge2d"; - status = "okay"; - interrupts = <0 150 1>; - interrupt-names = "ge2d"; - clocks = <&clock CLK_VAPB_0>, - <&clock CLK_GE2D>; - clock-names = "clk_vapb_0", - "clk_ge2d"; - resets = <&clock GCLK_IDX_GE2D>; - reset-names = "ge2d"; - }; - codec_io { - compatible = "amlogic, codec_io"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xC1100000 0x0 0x100000>; - }; - io_dos_base{ - reg = <0x0 0xc8820000 0x0 0x10000>; - }; - io_hiubus_base{ - reg = <0x0 0xc883c000 0x0 0x2000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - io_vcbus_base{ - reg = <0x0 0xd0100000 0x0 0x40000>; - }; - io_dmc_base{ - reg = <0x0 0xc8838000 0x0 0x400>; - }; - }; - codec_mm { - compatible = "amlogic, codec, mm"; - memory-region = <&codec_mm_cma &codec_mm_reserved>; - dev_name = "codec_mm"; - status = "okay"; - }; - ethmac: ethernet@0xc9410000 { - compatible = "amlogic, gxbb-rmii-dwmac"; - reg = <0x0 0xc9410000 0x0 0x10000 - 0x0 0xc8834540 0x0 0x8 - 0x0 0xc8834558 0x0 0xc>; - interrupts = <0 8 1>; - phy-mode= "rmii"; - mc_val = <0x1800>; - resets = <&clock GCLK_IDX_ETHERNET>; - reset-names = "ethpower"; - interrupt-names = "macirq"; - clocks = <&clock CLK_81>; - clock-names = "ethclk81"; - internal_phy=<1>; - }; - mesonstream { - compatible = "amlogic, codec, streambuf"; - dev_name = "mesonstream"; - status = "okay"; - resets = <&clock GCLK_IDX_HIU_PARSER_TOP - &clock GCLK_IDX_VPU_INTR - &clock GCLK_IDX_DEMUX - &clock GCLK_IDX_DOS>; - reset-names = "parser_top", - "vpu_intr", - "demux", - "vdec"; - }; - - amvideocap { - compatible = "amlogic, amvideocap"; - dev_name = "amvideocap.0"; - status = "okay"; - max_size = <8>;//8M - }; - - ion_dev { - compatible = "amlogic, ion_dev"; - memory-region = <&ion_reserved>; - }; - - vdec { - compatible = "amlogic, vdec"; - dev_name = "vdec.0"; - status = "okay"; - interrupts = <0 3 1 - 0 23 1 - 0 32 1 - 0 43 1 - 0 44 1 - 0 45 1>; - interrupt-names = "vsync", - "demux", - "parser", - "mailbox_0", - "mailbox_1", - "mailbox_2"; - }; - picdec { - compatible = "amlogic, picdec"; - memory-region = <&picdec_cma_reserved>; - dev_name = "picdec"; - status = "okay"; - }; - ppmgr { - compatible = "amlogic, ppmgr";//to match of_device_id's compatible member - memory-region = <&ppmgr_reserved>; - dev_name = "ppmgr"; - status = "okay"; - }; - deinterlace { - compatible = "amlogic, deinterlace"; - status = "okay"; - memory-region = <&di_reserved>; - interrupts = <0 46 1 - 0 6 1>; - interrupt-names = "de_irq", - "timerc"; - buffer-size = <3133440>; //1920x1088x3/2 - hw-version = <2>; - }; -/* vdin0 { - compatible = "amlogic, vdin"; - memory-region = <&vdin0_reserved>; - dev_name = "vdin0"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 83 1>; - rdma-irq = <2>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <0>; - }; - vdin { - compatible = "amlogic, vdin"; - memory-region = <&vdin1_reserved>; - dev_name = "vdin1"; - status = "ok"; - reserve-iomap = "true"; - interrupts = <0 85 1>; - rdma-irq = <4>; - clocks = <&clock CLK_XTAL>, - <&clock CLK_VID_LOCK_CLK>; - clock-names = "xtal", "cts_vid_lock_clk"; - vdin_id = <1>; - };*/ - amvdec_656in0 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in0"; - status = "ok"; - reg = <0x0 0xd0048000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK0>; - clock-names = "fclk_div2", "cts_bt656_clk0"; - bt656_id = <0>; - }; - amvdec_656in1 { - compatible = "amlogic, amvdec_656in"; - dev_name = "amvdec_656in1"; - status = "ok"; - reg = <0x0 0xd0050000 0x0 0x7c>; - clocks = <&clock CLK_FPLL_DIV2>, - <&clock CLK_BT656_CLK1>; - clock-names = "fclk_div2", "cts_bt656_clk1"; - bt656_id = <1>; - }; - amlvecm { - compatible = "amlogic, vecm"; - dev_name = "aml_vecm"; - status = "okay"; - gamma_en = <0>;/*1:enabel ;0:disable*/ - wb_en = <0>;/*1:enabel ;0:disable*/ - cm_en = <0>;/*1:enabel ;0:disable*/ - }; - amvenc_avc{ - compatible = "amlogic, amvenc_avc"; - //memory-region = <&amvenc_avc_reserved>; - //memory-region = <&avc_cma_reserved>; - dev_name = "amvenc_avc"; - status = "okay"; - interrupts = <0 45 1>; - interrupt-names = "mailbox_2"; - }; - - - /*vm { - compatible = "amlogic, vm"; - memory-region = <&vm_reserved>; - dev_name = "vm"; - status = "okay"; - };*/ - - vpu { - compatible = "amlogic, vpu"; - dev_name = "vpu"; - status = "ok"; - clk_level = <7>; - /** 0: 100.0M 1: 166.7M 2: 200.0M - 3: 250.0M 4: 333.3M 5: 400.0M - 6: 500.0M 7: 666.7M */ - }; - //if use bt, open it - bt-dev{ - compatible = "amlogic, bt-dev"; - dev_name = "bt-dev"; - status = "okay"; - gpio_reset = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - wifi{ - compatible = "amlogic, aml_wifi"; - dev_name = "aml_wifi"; - status = "okay"; - interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>; - interrupts = < 0 68 4>; - irq_trigger_type = "GPIO_IRQ_LOW"; - power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>; - dhd_static_buf; //if use bcm wifi, config dhd_static_buf and 32k as bellow - pinctrl-names = "wifi_32k_pins"; - pinctrl-0 = <&wifi_32k_pins>; - }; - sd{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0072000 0x0 0x2000>; - interrupts = < 0 217 1 - 0 67 1 - 0 69 1>; - pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "sd_1bit_pins","sd_clk_cmd_uart_pins","sd_1bit_uart_pins", "sd_to_ao_uart_pins", "ao_to_sd_uart_pins","ao_to_sd_jtag_pins","sd_to_ao_jtag_pins"; - pinctrl-0 = <&sd_clk_cmd_pins>; - pinctrl-1 = <&sd_all_pins>; - pinctrl-2 = <&sd_1bit_pins>; - pinctrl-3 = <&sd_clk_cmd_uart_pins>; - pinctrl-4 = <&sd_1bit_uart_pins>; - pinctrl-5 = <&sd_to_ao_uart_pins>; - pinctrl-6 = <&ao_to_sd_uart_pins>; - pinctrl-7 = <&ao_to_sd_jtag_pins>; - pinctrl-8 = <&sd_to_ao_jtag_pins>; - sd{ - status = "okay"; - pinname = "sd"; - ocr_avail = <0x00200080>; // 3.3:0x200000, 1.8+3.3:0x00200080 - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED"; - //"MMC_CAP_UHS_SDR12", - //"MMC_CAP_UHS_SDR25","MMC_CAP_UHS_SDR50", - //"MMC_CAP_UHS_SDR104"; - f_min = <400000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**128KB*/ - gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>; - jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>; - gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; - irq_in = <3>; - irq_out = <5>; - card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */ - }; - }; - emmc{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0074000 0x0 0x2000>; - interrupts = < 0 218 1>; - pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins"; - pinctrl-0 = <&emmc_clk_cmd_pins>; - pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done &emmc_all_pins>; - emmc{ - status = "disabled"; - pinname = "emmc"; - ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */ - caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_1_8V_DDR", - "MMC_CAP_HW_RESET", "MMC_CAP_ERASE", "MMC_CAP_CMD23"; - caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400"; - f_min = <300000>; - f_max = <100000000>; - max_req_size = <0x20000>; /**256KB*/ - gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>; - hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>; - card_type = <1>; /* 1:mmc card(include eMMC), 2:sd card(include tSD), */ - }; - }; - sdio{ - compatible = "amlogic, aml_sd_emmc"; - dev_name = "aml_newsd.0"; - status = "okay"; - reg = <0x0 0xd0070000 0x0 0x2000>; - interrupts = < 0 216 4>; - pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins"; - pinctrl-0 = <&sdio_clk_cmd_pins>; - pinctrl-1 = <&sdio_all_pins>; - sdio{ - status = "okay"; - pinname = "sdio"; - ocr_avail = <0x00200080>; /*3.3:0x200000, 1.8+3.3:0x00200080 */ - caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED", - "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", - "MMC_CAP_UHS_SDR12","MMC_CAP_UHS_SDR25", - "MMC_CAP_UHS_SDR50","MMC_CAP_UHS_SDR104", - "MMC_PM_KEEP_POWER","MMC_CAP_SDIO_IRQ"; - f_min = <400000>; - f_max = <200000000>; - max_req_size = <0x20000>; /**128KB*/ - card_type = <3>; /*3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, */ - }; - }; - nand{ - compatible = "amlogic, aml_nand"; - dev_name = "nand"; - status = "disabled"; - reg = <0x0 0xd0074800 0x0 0x200>; - interrupts = < 0 34 1 >; - pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_pins_only"; - pinctrl-0 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-1 = <&conf_nand_pulldown &conf_nand_pullup &all_nand_pins>; - pinctrl-2 = <&nand_cs_pins>; - device_id = <0>; - plat-names = "nandnormal"; - plat-num = <1>; - plat-part-0 = <&normal>; - normal: normal{ - enable_pad ="ce0","ce1","ce2","ce3"; - busy_pad = "rb0"; - }; - }; - aml_nftl{ - compatible = "amlogic, nftl"; - /* config nftl here */ - - }; - /*aml_cams{ - compatible = "amlogic, cams_prober"; - status = "okay"; - clocks = <&clock CLK_CAMERA_24M>; - clock-names = "clk_camera_24"; - pinctrl-names = "gpio"; - pinctrl-0 = <&aml_cam_gpio_pins> ; - cam_0{ - cam_name = "sp2518"; - front_back = <0>; - i2c_bus = "i2c_bus_a"; - gpio_pwdn-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_HIGH>; - gpio_rst-gpios = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>; - mirror_flip = <1>; - vertical_flip = <1>; - spread_spectrum = <0>; //0:none; 1:0.3%; 2:0.6%; 3:1.25%; 4:2.5%; 5:5% - bt_path = "gpio"; - status = "okay"; - }; - };*/ - - unifykey{ - compatible = "amlogic, unifykey"; - status = "ok"; - - unifykey-num = <14>; - unifykey-index-0 = <&keysn_0>; - unifykey-index-1 = <&keysn_1>; - unifykey-index-2 = <&keysn_2>; - unifykey-index-3 = <&keysn_3>; - unifykey-index-4 = <&keysn_4>; - unifykey-index-5 = <&keysn_5>; - unifykey-index-6 = <&keysn_6>; - unifykey-index-7 = <&keysn_7>; - unifykey-index-8 = <&keysn_8>; - unifykey-index-9 = <&keysn_9>; - unifykey-index-10= <&keysn_10>; - unifykey-index-11= <&keysn_11>; - unifykey-index-12= <&keysn_12>; - unifykey-index-13= <&keysn_13>; - - keysn_0: key_0{ - key-name = "usid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_1:key_1{ - key-name = "mac"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_2:key_2{ - key-name = "hdcp"; - key-device = "secure"; - key-type = "sha1"; - key-permit = "read","write","del"; - }; - keysn_3:key_3{ - key-name = "secure_boot_set"; - key-device = "efuse"; - key-permit = "write"; - }; - keysn_4:key_4{ - key-name = "mac_bt"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_5:key_5{ - key-name = "mac_wifi"; - key-device = "normal"; - key-permit = "read","write","del"; - key-type = "mac"; - }; - keysn_6:key_6{ - key-name = "hdcp2_tx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_7:key_7{ - key-name = "hdcp2_rx"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_8:key_8{ - key-name = "widevinekeybox"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_9:key_9{ - key-name = "deviceid"; - key-device = "normal"; - key-permit = "read","write","del"; - }; - keysn_10:key_10{ - key-name = "hdcp22_fw_private"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_11:key_11{ - key-name = "PlayReadykeybox25"; - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_12:key_12{ - key-name = "prpubkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - keysn_13:key_13{ - key-name = "prprivkeybox";// PlayReady - key-device = "secure"; - key-permit = "read","write","del"; - }; - };//End unifykey - amhdmitx: amhdmitx{ - compatible = "amlogic, amhdmitx"; - dev_name = "amhdmitx"; - status = "okay"; - pinctrl-names="hdmitx_hpd", "hdmitx_ddc"; - pinctrl-0=<&hdmitx_hpd>; - pinctrl-1=<&hdmitx_ddc>; - /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/ - interrupts = <0 57 1>; - interrupt-names = "hdmitx_hpd"; - clocks = <&clock CLK_HDMITX_SYS &clock CLK_HDMITX_ENCP - &clock CLK_HDMITX_ENCI &clock CLK_HDMITX_PIXEL - &clock CLK_HDMITX_PHY &clock CLK_VID>; - clock-names = "hdmitx_clk_sys", "hdmitx_clk_encp", "hdmitx_clk_enci", - "hdmitx_clk_pixel", "hdmitx_clk_phy", "hdmitx_clk_vid"; - gpio_i2c_en = <0x1>; - #address-cells = <2>; - #size-cells = <2>; - ranges; - }; - - aocec: aocec{ - compatible = "amlogic, amlogic-aocec"; - device_name = "aocec"; - status = "okay"; - vendor_name = "Amlogic"; /* Max Chars: 8 */ - vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */ - product_desc = "GXBB Mbox"; /* Max Chars: 16 */ - cec_osd_string = "MBox"; /* Max Chars: 14 */ - port_num = <1>; - arc_port_mask = <0x0>; - interrupts = <0 199 1>; - interrupt-names = "hdmi_aocec"; - pinctrl-names = "hdmitx_aocec"; - pinctrl-0=<&hdmitx_aocec>; - reg = <0x0 0xc810023c 0x0 0x4 - 0x0 0xc8100000 0x0 0x200>; - }; - - tvout { - compatible = "amlogic, tvout"; - dev_name = "tvout"; - status = "okay"; - }; - - i2c_gpio: i2c_gpio { - compatible = "i2c-gpio"; - status = "okay"; - dev_name = "i2c-gpio"; - i2c-gpio,delay-us = <10>; /* 50 kHz */ - gpios = <&gpio GPIOH_1 0 - &gpio GPIOH_2 0>; - #address-cells = <2>; - #size-cells = <2>; - i2c-gpio,timeout-ms = <10>; - i2c_gpio_edid: i2c_gpio_edid { - compatible = "i2c-gpio-edid"; - reg = <0x50 0x0 0x0 0x0>; - }; - }; - - uart_AO: serial@c81004c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004c0 0x0 0x18>; - interrupts = <0 193 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - xtal_tick_en = <1>; - fifosize = < 64 >; - pinctrl-names = "default"; - //pinctrl-0 = <&ao_uart_pins>; - support-sysrq = <0>; /* 0 not support , 1 support */ - }; - uart_A: serial@c11084c0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084c0 0x0 0x18>; - interrupts = <0 26 1>; - status = "okay"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 128 >; - pinctrl-names = "default"; - pinctrl-0 = <&a_uart_pins>; - resets = <&clock GCLK_IDX_UART0>; - }; - uart_B: serial@c11084dc { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc11084dc 0x0 0x18>; - interrupts = <0 75 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&b_uart_pins>; - resets = <&clock GCLK_IDX_UART1>; - }; - uart_C: serial@c1108700 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc1108700 0x0 0x18>; - interrupts = <0 93 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&c_uart_pins>; - resets = <&clock GCLK_IDX_UART2>; - }; - uart_AO_B: serial@c81004e0 { - compatible = "amlogic, meson-uart"; - reg = <0x0 0xc81004e0 0x0 0x18>; - interrupts = <0 197 1>; - status = "disable"; - clocks = <&clock CLK_XTAL>; - clock-names = "clk_uart"; - fifosize = < 64 >; - pinctrl-names = "default"; - pinctrl-0 = <&ao_b_uart_pins>; - }; - - - canvas{ - compatible = "amlogic, meson, canvas"; - dev_name = "amlogic-canvas"; - status = "ok"; - reg = <0x0 0xc8838000 0x0 0x400>; - }; - - rdma{ - compatible = "amlogic, meson, rdma"; - dev_name = "amlogic-rdma"; - status = "ok"; - interrupts = <0 89 1>; - interrupt-names = "rdma"; - }; - - dwc3: dwc3@c9000000 { - compatible = "synopsys, dwc3"; - reg = <0x0 0xc9000000 0x0 0x100000>; - interrupts = <0 30 4>; - usb-phy = <&usb2_phy>, <&usb3_phy>; - cpu-type = "gxl"; - clock-src = "usb3.0"; - }; - - usb2_phy: usb2phy@d0078000 { - compatible = "amlogic, amlogic-new-usb2"; - portnum = <2>; - reg = <0x0 0xd0078000 0x0 0x80>; - }; - - usb3_phy: usb3phy@d0078080 { - compatible = "amlogic, amlogic-new-usb3"; - portnum = <0>; - reg = <0x0 0xd0078080 0x0 0x20>; - }; - - dwc2_a { - compatible = "amlogic,dwc2"; - device_name = "dwc2_a"; - reg = <0x0 0xc9100000 0x0 0x40000>; - status = "okay"; - interrupts = <0 31 4>; - pl-periph-id = <0>; /** lm name */ - clock-src = "usb0"; /** clock src */ - port-id = <0>; /** ref to mach/usb.h */ - port-type = <2>; /** 0: otg, 1: host, 2: slave */ - port-speed = <0>; /** 0: default, high, 1: full */ - port-config = <0>; /** 0: default */ - port-dma = <0>; /** 0: default, 1: single, 2: incr, 3: incr4, 4: incr8, 5: incr16, 6: disable*/ - port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/ - usb-fifo = <728>; - cpu-type = "gxl"; - controller-type = <2>; /** 0: normal, 1: otg+dwc3 host only, 2: otg+dwc3 device only*/ - phy-reg = <0xd0078000>; - phy-reg-size = <0xa0>; - resets = <&clock GCLK_IDX_USB_GENERAL - &clock GCLK_IDX_MISC_USB1_TO_DDR - &clock GCLK_IDX_USB1>; - reset-names = "usb_general", - "usb1", - "usb1_to_ddr"; - }; - - - /* AUDIO MESON8 DEVICES */ - i2s_dai: I2S { - #sound-dai-cells = <0>; - resets = < - &clock GCLK_IDX_AIU_AI_TOP_GLUE - &clock GCLK_IDX_AUD_BUF_ABD - &clock GCLK_IDX_AIU_I2S_OUT - &clock GCLK_IDX_AIU_AMCLK_MEASURE - &clock GCLK_IDX_AIU_AIFIFO2 - &clock GCLK_IDX_AIU_AUD_MIXER - &clock GCLK_IDX_AIU_MIXER_REG - &clock GCLK_IDX_AIU_ADC - &clock GCLK_IDX_AIU_TOP_LEVEL - &clock GCLK_IDX_AIU_AOCLK - &clock GCLK_IDX_AUD_IN - >; - reset-names = - "top_glue", - "aud_buf", - "i2s_out", - "amclk_measure", - "aififo2", - "aud_mixer", - "mixer_reg", - "adc", - "top_level", - "aoclk", - "aud_in"; - clocks = <&clock CLK_MPLL2>, - <&clock CLK_AMCLK>; - clock-names = "mpll2", "mclk"; - compatible = "amlogic, aml-i2s-dai"; - }; - spdif_dai: SPDIF { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-dai"; - resets = < - &clock GCLK_IDX_AIU_IEC958 - &clock GCLK_IDX_AIU_ICE958_AMCLK - >; - reset-names = - "iec958", - "iec958_amclk"; - clocks = <&clock CLK_MPLL1>, - <&clock CLK_I958>, - <&clock CLK_AMCLK>, - <&clock CLK_SPDIF>, - <&clock CLK_81>; - clock-names = "mpll1", "i958", "mclk", "spdif", "clk_81"; - }; - pcm_dai: PCM { - #sound-dai-cells = <0>; - compatible = "amlogic, aml-pcm-dai"; - pinctrl-names = "aml_audio_btpcm"; - pinctrl-0 = <&audio_btpcm_pins>; - clocks = <&clock CLK_MPLL0>, - <&clock CLK_PCM_MCLK>, - <&clock CLK_PCM_SCLK>; - clock-names = "mpll0", "pcm_mclk", "pcm_sclk"; - pcm_mode = <1>; /* 0=slave mode, 1=master mode */ - }; - i2s_plat: i2s_platform { - compatible = "amlogic, aml-i2s"; - interrupts = <0 29 1>; - }; - pcm_plat: pcm_platform { - compatible = "amlogic, aml-pcm"; - }; - spdif_codec: spdif_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml-spdif-codec"; - pinctrl-names = "aml_audio_spdif"; - pinctrl-0 = <&audio_spdif_pins>; - }; - pcm_codec: pcm_codec{ - #sound-dai-cells = <0>; - compatible = "amlogic, pcm2BT-codec"; - }; - /* endof AUDIO MESON8 DEVICES */ - - /* AUDIO board specific */ - dummy_codec:dummy{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_dummy_codec"; - status = "disable"; - }; - amlogic_codec:t9015{ - #sound-dai-cells = <0>; - compatible = "amlogic, aml_codec_T9015"; - reg = <0x0 0xc8832000 0x0 0x14>; - status = "okay"; - }; - aml_m8_snd { - compatible = "aml, aml_snd_m8"; - status = "okay"; - aml-sound-card,format = "i2s"; - aml_sound_card,name = "AML-M8AUDIO"; - aml,audio-routing = - "Ext Spk","LOUTL", - "Ext Spk","LOUTR"; - - mute_gpio-gpios = <&gpio GPIOH_5 0>; - mute_inv; - hp_disable; - hp_paraments = <800 300 0 5 1>; - pinctrl-names = "aml_snd_m8"; - pinctrl-0 = <&audio_pins>; - cpu_list = <&cpudai0 &cpudai1 &cpudai2>; - codec_list = <&codec0 &codec1 &codec2>; - plat_list = <&i2s_plat &i2s_plat &pcm_plat>; - cpudai0: cpudai0 { - sound-dai = <&i2s_dai>; - }; - cpudai1: cpudai1 { - sound-dai = <&spdif_dai>; - }; - cpudai2: cpudai2 { - sound-dai = <&pcm_dai>; - }; - codec0: codec0 { - sound-dai = <&amlogic_codec>; - }; - codec1: codec1 { - sound-dai = <&spdif_codec>; - }; - codec2: codec2 { - sound-dai = <&pcm_codec>; - }; - }; - /* END OF AUDIO board specific */ - - gpio_keypad{ - compatible = "amlogic, gpio_keypad"; - status = "okay"; - scan_period = <20>; - key_num = <1>; - key_name = "power"; - key_code = <116>; - key_pin = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>; /*"GPIOAO_2";*/ - irq_keyup = <6>; - irq_keydown = <7>; - }; - adc_keypad{ - compatible = "amlogic, adc_keypad"; - status = "okay"; - key_name = "home"; - key_num = <1>; - key_code = <300>; - key_chan = <0>; - key_val = <10>; - key_tolerance = <40>; - }; - - aml_sensor0: aml-sensor@0 { - compatible = "amlogic, aml-thermal"; - device_name = "thermal"; - #thermal-sensor-cells = <1>; - cooling_devices { - cpufreq_cool_cluster0 { - min_state = <1000000>; - dyn_coeff = <140>; - cluster_id = <0>; - node_name = "cpus"; - device_type = "cpufreq"; - }; - cpucore_cool_cluster0 { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "cpu_core_cluster0"; - device_type = "cpucore"; - }; - gpufreq_cool { - min_state = <400>; - dyn_coeff = <437>; - cluster_id = <0>; - node_name = "mali"; - device_type = "gpufreq"; - }; - gpucore_cool { - min_state = <1>; - dyn_coeff = <0>; - cluster_id = <0>; - node_name = "thermal_gpu_cores"; - device_type = "gpucore"; - }; - }; - cpu_cluster0:cpu_core_cluster0 { - #cooling-cells = <2>; /* min followed by max */ - }; - gpucore:thermal_gpu_cores { - #cooling-cells = <2>; /* min followed by max */ - }; - }; - thermal-zones { - soc_thermal { - polling-delay = <1000>; - polling-delay-passive = <100>; - sustainable-power = <2150>; - - thermal-sensors = <&aml_sensor0 3>; - - trips { - switch_on: trip-point@0 { - temperature = <70000>; - hysteresis = <1000>; - type = "passive"; - }; - control: trip-point@1 { - temperature = <80000>; - hysteresis = <1000>; - type = "passive"; - }; - hot: trip-point@2 { - temperature = <85000>; - hysteresis = <5000>; - type = "hot"; - }; - critical: trip-point@3 { - temperature = <260000>; - hysteresis = <1000>; - type = "critical"; - }; - }; - - cooling-maps { - cpufreq_cooling_map { - trip = <&control>; - cooling-device = <&cpus 0 4>; - contribution = <1024>; - }; - cpucore_cooling_map { - trip = <&control>; - cooling-device = <&cpu_cluster0 0 3>; - contribution = <1024>; - }; - gpufreq_cooling_map { - trip = <&control>; - cooling-device = <&gpu 0 4>; - contribution = <1024>; - }; - gpucore_cooling_map { - trip = <&control>; - cooling-device = <&gpucore 0 2>; - contribution = <1024>; - }; - }; - }; - }; -}; - -&pinmux { - audio_pins:audio_pin{ - amlogic,setmask=<6 0x7800000>; - amlogic,clrmask=<6 0x07e0000>; - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8","GPIOH_9"; - }; - - audio_spdif_pins:audio_pin1{ - amlogic,setmask=<6 0x10000000>; /*spdif_out*/ - amlogic,clrmask=<6 0x8000000>; - amlogic,pins ="GPIOH_4"; /*spdif_out*/ - }; - - audio_btpcm_pins:audio_btpcm_pins{ - /* BT PCM PINMUX SETTING*/ - amlogic,setmask=<5 0xf00000>; - amlogic,clrmask=<5 0x3c33>; - amlogic,pins ="GPIOX_8", "GPIOX_9", "GPIOX_10", "GPIOX_11"; - }; -}; -&efuse { - status = "okay"; -}; -&audio_data{ - status = "okay"; -}; -&defendkey { - status = "okay"; -}; -&i2c_b { - status = "okay"; - kvim_hym8563{ - compatible = "kvim_hym8563"; - reg = <0x51>; - }; -}; diff --git a/arch/arm64/boot/dts/mesongxbb-gpu-mali450.dtsi b/arch/arm64/boot/dts/mesongxbb-gpu-mali450.dtsi index 095823dfc85cd..5bc8b247d4247 100644 --- a/arch/arm64/boot/dts/mesongxbb-gpu-mali450.dtsi +++ b/arch/arm64/boot/dts/mesongxbb-gpu-mali450.dtsi @@ -28,7 +28,7 @@ num_of_pp = <3> ; def_clk = <3>; sc_mpp = <3>;/* number of pp used most of time.*/ - tbl = <&clk125_cfg &clk285_cfg &clk400_cfg &clk500_cfg &clk666_cfg &clk800_cfg>; + tbl = <&clk125_cfg &clk285_cfg &clk400_cfg &clk500_cfg &clk666_cfg &clk800_cfg &clk800_cfg>; clocks = <&clock CLK_FPLL_DIV3>, <&clock CLK_FPLL_DIV4>, diff --git a/arch/arm64/boot/dts/mesongxl.dtsi b/arch/arm64/boot/dts/mesongxl.dtsi index b243af2d057de..66df4520a15d6 100644 --- a/arch/arm64/boot/dts/mesongxl.dtsi +++ b/arch/arm64/boot/dts/mesongxl.dtsi @@ -33,7 +33,7 @@ compatible = "arm,cortex-a53","arm,armv8"; reg = <0x0 0x0>; enable-method = "psci"; - /*cpu-idle-states = <&CPU_SLEEP_0>;*/ + cpu-idle-states = <&CPU_SLEEP_0>; }; cpu1:cpu@1 { @@ -41,14 +41,14 @@ compatible = "arm,cortex-a53","arm,armv8"; reg = <0x0 0x1>; enable-method = "psci"; - /*cpu-idle-states = <&CPU_SLEEP_0>;*/ + cpu-idle-states = <&CPU_SLEEP_0>; }; cpu2:cpu@2 { device_type = "cpu"; compatible = "arm,cortex-a53","arm,armv8"; reg = <0x0 0x2>; enable-method = "psci"; - /*cpu-idle-states = <&CPU_SLEEP_0>;*/ + cpu-idle-states = <&CPU_SLEEP_0>; }; cpu3:cpu@3 { @@ -56,22 +56,21 @@ compatible = "arm,cortex-a53","arm,armv8"; reg = <0x0 0x3>; enable-method = "psci"; - /*cpu-idle-states = <&CPU_SLEEP_0>;*/ + cpu-idle-states = <&CPU_SLEEP_0>; }; -/* idle-states { entry-method = "arm,psci"; CPU_SLEEP_0: cpu-sleep-0 { compatible = "arm, idle-state"; arm,psci-suspend-param = <0x0010000>; local-timer-stop; - entry-latency-us = <3000>; - exit-latency-us = <3000>; - min-residency-us = <8000>; + entry-latency-us = <8000>; + exit-latency-us = <8000>; + min-residency-us = <20000>; }; }; -*/ + }; timer { @@ -154,6 +153,9 @@ storage_out_func = <0x82000024>; storage_block_func = <0x82000025>; storage_size_func = <0x82000027>; + storage_set_enctype = <0x8200006A>; + storage_get_enctype = <0x8200006B>; + storage_version = <0x8200006C>; }; cpu_iomap{ compatible = "amlogic, iomap"; @@ -191,7 +193,7 @@ }; amlogic-jtag { compatible = "amlogic, jtag"; - status = "okay"; + status = "disable"; pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; pinctrl-0 = <&jtag_apao_pins>; pinctrl-1 = <&jtag_apee_pins>; @@ -461,7 +463,12 @@ amlogic,pins="GPIOAO_8"; }; - /*p200 i2c-A multiplex with usb PWR*/ + /*I2C-AO*/ + ao_i2c_master:ao_i2c{ + amlogic,setmask=; + amlogic,clrmask=; + amlogic,pins="GPIOAO_4","GPIOAO_5"; + }; a_i2c_master:a_i2c{ amlogic,setmask=<1 0xc000>; amlogic,clrmask=<3 0x18 2 0x18000 2 0xc0 1 0x600000>; @@ -477,9 +484,14 @@ amlogic,clrmask=<2 0x1800 1 0x200 2 0x20>; amlogic,pins="GPIODV_28","GPIODV_29"; }; + c_i2c_master_pin1:c_i2c_pin1{ + amlogic,setmask=<1 0x30000>; + amlogic,clrmask=<1 0x2000000 3 0x20>; + amlogic,pins="GPIODV_18","GPIODV_19"; + }; d_i2c_master:d_i2c{ amlogic,setmask=<5 0x30>; - amlogic,clrmask=<5 0x300c03>; + amlogic,clrmask=<5 0x300c03 6 0x3>; amlogic,pins="GPIOX_10","GPIOX_11"; }; @@ -523,6 +535,22 @@ 0x0 0xc1108764 0x0 0x4>; }; + i2c_ao: i2c@c8100500{ /*I2C-AO*/ + compatible = "amlogic, meson-i2c"; + dev_name = "i2c-AO"; + status = "disabled"; + reg = <0x0 0xc8100500 0x0 0x1d>; + device_id = <0>; + pinctrl-names="default"; + pinctrl-0=<&ao_i2c_master>; + #address-cells = <1>; + #size-cells = <0>; + use_pio = <0>; + master_i2c_speed = <300000>; + clocks = <&clock CLK_81>; + clock-names = "clk_i2c"; + resets = <&clock GCLK_IDX_I2C>; + }; i2c_a: i2c@c1108500{ /*I2C-A*/ compatible = "amlogic, meson-i2c"; dev_name = "i2c-A"; @@ -599,26 +627,26 @@ }; efusekey:efusekey{ keynum = <4>; - key0 = <&key0>; - key1 = <&key1>; - key2 = <&key2>; - key3 = <&key3>; - key0:key0{ + key0 = <&key_0>; + key1 = <&key_1>; + key2 = <&key_2>; + key3 = <&key_3>; + key_0:key_0{ keyname = "mac"; offset = <0>; size = <6>; }; - key1:key1{ + key_1:key_1{ keyname = "mac_bt"; offset = <6>; size = <6>; }; - key2:key2{ + key_2:key_2{ keyname = "mac_wifi"; offset = <12>; size = <6>; }; - key3:key3{ + key_3:key_3{ keyname = "usid"; offset = <18>; size = <16>; @@ -646,7 +674,7 @@ }; }; - meson-remote { + aml_remote:meson-remote { compatible = "amlogic, aml_remote"; dev_name = "meson-remote"; status = "okay"; @@ -655,6 +683,14 @@ pinctrl-names = "default"; pinctrl-0 = <&remote_pins>; }; + meson_ir:meson-ir { + compatible = "amlogic,meson-gxbb-ir"; + status = "disabled"; + reg = <0x0 0xc8100580 0x0 0x40>; + interrupts = <0 196 1>; + pinctrl-names = "default"; + pinctrl-0 = <&remote_pins>; + }; rng { compatible = "amlogic,meson-rng"; @@ -691,8 +727,9 @@ status = "disabled"; reg = <0x0 0xc1108d80 0x0 0x28>; resets = <&clock GCLK_IDX_SPICC>; + reset-names = "spicc_clk"; clocks = <&clock CLK_81>; - clock-names = "spicc_clk"; + clock-names = "clk81"; interrupts = <0 81 1>; device_id = <0>; }; diff --git a/arch/arm64/boot/dts/mesongxm.dtsi b/arch/arm64/boot/dts/mesongxm.dtsi index 54cc6abb4bca8..c0a83c41ebc5c 100644 --- a/arch/arm64/boot/dts/mesongxm.dtsi +++ b/arch/arm64/boot/dts/mesongxm.dtsi @@ -66,7 +66,7 @@ enable-method = "psci"; clocks = <&scpi_dvfs 0>; clock-names = "cpu-cluster.0"; - /*cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;*/ + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; CPU1:cpu@1 { @@ -76,7 +76,7 @@ enable-method = "psci"; clocks = <&scpi_dvfs 0>; clock-names = "cpu-cluster.0"; - /*cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;*/ + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; CPU2:cpu@2 { device_type = "cpu"; @@ -85,7 +85,7 @@ enable-method = "psci"; clocks = <&scpi_dvfs 0>; clock-names = "cpu-cluster.0"; - /*cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;*/ + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; CPU3:cpu@3 { @@ -95,7 +95,7 @@ enable-method = "psci"; clocks = <&scpi_dvfs 0>; clock-names = "cpu-cluster.0"; - /*cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;*/ + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; CPU4:cpu@100 { @@ -105,7 +105,7 @@ enable-method = "psci"; clocks = <&scpi_dvfs 1>; clock-names = "cpu-cluster.1"; - /*cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;*/ + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; CPU5:cpu@101 { @@ -115,7 +115,7 @@ enable-method = "psci"; clocks = <&scpi_dvfs 1>; clock-names = "cpu-cluster.1"; - /*cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;*/ + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; CPU6:cpu@102 { device_type = "cpu"; @@ -124,7 +124,7 @@ enable-method = "psci"; clocks = <&scpi_dvfs 1>; clock-names = "cpu-cluster.1"; - /*cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;*/ + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; CPU7:cpu@103 { @@ -134,26 +134,26 @@ enable-method = "psci"; clocks = <&scpi_dvfs 1>; clock-names = "cpu-cluster.1"; - /*cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;*/ + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; idle-states { entry-method = "arm,psci"; CPU_SLEEP_0: cpu-sleep-0 { - /*compatible = "arm, idle-state";*/ + compatible = "arm, idle-state"; arm,psci-suspend-param = <0x0010000>; local-timer-stop; - entry-latency-us = <5000>; + entry-latency-us = <8000>; exit-latency-us = <8000>; min-residency-us = <20000>; }; CLUSTER_SLEEP_0: cluster-sleep-0 { - /*compatible = "arm, idle-state";*/ + compatible = "arm, idle-state"; arm,psci-suspend-param = <0x1010000>; local-timer-stop; - entry-latency-us = <5000>; + entry-latency-us = <8000>; exit-latency-us = <8000>; min-residency-us = <25000>; }; @@ -240,6 +240,9 @@ storage_out_func = <0x82000024>; storage_block_func = <0x82000025>; storage_size_func = <0x82000027>; + storage_set_enctype = <0x8200006A>; + storage_get_enctype = <0x8200006B>; + storage_version = <0x8200006C>; }; cpu_iomap{ compatible = "amlogic, iomap"; @@ -545,7 +548,11 @@ amlogic,pins="GPIOAO_8"; }; - /*p200 i2c-A multiplex with usb PWR*/ + ao_i2c_master:ao_i2c{ + amlogic,setmask=; + amlogic,clrmask=; + amlogic,pins="GPIOAO_4","GPIOAO_5"; + }; a_i2c_master:a_i2c{ amlogic,setmask=<1 0xc000>; amlogic,clrmask=<3 0x18 2 0x18000 2 0xc0 1 0x600000>; @@ -561,9 +568,14 @@ amlogic,clrmask=<2 0x1800 1 0x200 2 0x20>; amlogic,pins="GPIODV_28","GPIODV_29"; }; + c_i2c_master_pin1:c_i2c_pin1{ + amlogic,setmask=<1 0x30000>; + amlogic,clrmask=<1 0x2000000 3 0x20>; + amlogic,pins="GPIODV_18","GPIODV_19"; + }; d_i2c_master:d_i2c{ amlogic,setmask=<5 0x30>; - amlogic,clrmask=<5 0x300c03>; + amlogic,clrmask=<5 0x300c03 6 0x3>; amlogic,pins="GPIOX_10","GPIOX_11"; }; @@ -607,6 +619,22 @@ 0x0 0xc1108764 0x0 0x4>; }; + i2c_ao: i2c@c8100500{ /*I2C-AO*/ + compatible = "amlogic, meson-i2c"; + dev_name = "i2c-AO"; + status = "disabled"; + reg = <0x0 0xc8100500 0x0 0x1d>; + device_id = <0>; + pinctrl-names="default"; + pinctrl-0=<&ao_i2c_master>; + #address-cells = <1>; + #size-cells = <0>; + use_pio = <0>; + master_i2c_speed = <300000>; + clocks = <&clock CLK_81>; + clock-names = "clk_i2c"; + resets = <&clock GCLK_IDX_I2C>; + }; i2c_a: i2c@c1108500{ /*I2C-A*/ compatible = "amlogic, meson-i2c"; dev_name = "i2c-A"; @@ -683,26 +711,26 @@ }; efusekey:efusekey{ keynum = <4>; - key0 = <&key0>; - key1 = <&key1>; - key2 = <&key2>; - key3 = <&key3>; - key0:key0{ + key0 = <&key_0>; + key1 = <&key_1>; + key2 = <&key_2>; + key3 = <&key_3>; + key_0:key_0{ keyname = "mac"; offset = <0>; size = <6>; }; - key1:key1{ + key_1:key_1{ keyname = "mac_bt"; offset = <6>; size = <6>; }; - key2:key2{ + key_2:key_2{ keyname = "mac_wifi"; offset = <12>; size = <6>; }; - key3:key3{ + key_3:key_3{ keyname = "usid"; offset = <18>; size = <16>; @@ -730,7 +758,7 @@ }; }; - meson-remote { + aml_remote:meson-remote { compatible = "amlogic, aml_remote"; dev_name = "meson-remote"; status = "okay"; @@ -739,6 +767,14 @@ pinctrl-names = "default"; pinctrl-0 = <&remote_pins>; }; + meson_ir:meson-ir { + compatible = "amlogic,meson-gxbb-ir"; + status = "disabled"; + reg = <0x0 0xc8100580 0x0 0x40>; + interrupts = <0 196 1>; + pinctrl-names = "default"; + pinctrl-0 = <&remote_pins>; + }; rng { compatible = "amlogic,meson-rng"; @@ -775,8 +811,9 @@ status = "disabled"; reg = <0x0 0xc1108d80 0x0 0x28>; resets = <&clock GCLK_IDX_SPICC>; + reset-names = "spicc_clk"; clocks = <&clock CLK_81>; - clock-names = "spicc_clk"; + clock-names = "clk81"; interrupts = <0 81 1>; device_id = <0>; }; diff --git a/arch/arm64/boot/dts/mesongxtvbb-gpu-t83x.dtsi b/arch/arm64/boot/dts/mesongxtvbb-gpu-t83x.dtsi deleted file mode 100644 index 9efee6babcf84..0000000000000 --- a/arch/arm64/boot/dts/mesongxtvbb-gpu-t83x.dtsi +++ /dev/null @@ -1,208 +0,0 @@ -/* - * Amlogic GXTVBB Platform gpu - * - * Copyright (c) 2015-2015 Amlogic Ltd - * - * This file is licensed under a dual GPLv2 or BSD license. - * - */ - -/ { - t83x_gpu:t83x@d00c0000{ - compatible = "arm,malit602", "arm,malit60x", "arm,malit6xx", "arm,mali-midgard"; - #cooling-cells = <2>; /* min followed by max */ - reg = <0 0xd00c0000 0 0x100000>, - <0 0xc1104440 0 0x001000>, - <0 0xc8100000 0 0x001000>, - <0 0xc883c000 0 0x001000>, /*hiubus base address for gpu clk cntl*/ - <0 0xc1104440 0 0x001000>; - interrupt-parent = <&gic>; - interrupts = <0 160 4>, <0 161 4>, <0 162 4>; - interrupt-names = "GPU", "MMU", "JOB"; - num_of_pp = <2>; - sc_mpp = <1>;/* number of pp used most of time.*/ - /*mali-supply = <&vdd_mali>;*/ - operating-points = < - /* KHz uV */ - 666666 1000000 - 500000 1000000 - 400000 1000000 - 285714 1000000 - 250000 1000000 - 125000 1000000 - >; - - tbl = <&dvfs125_cfg &dvfs285_cfg &dvfs400_cfg &dvfs500_cfg &dvfs666_cfg>; - - /*clocks = <&gpu_clk>; - clock-names = "clk_mali";*/ - clocks = <&clock CLK_FPLL_DIV3>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV5>, - <&clock CLK_FPLL_DIV7>, - <&clock GP0_PLL>, - <&clock CLK_MALI>, - <&clock CLK_MALI_0>, - <&clock CLK_MALI_1>; - clock-names = - "fclk_div3", - "fclk_div4", - "fclk_div5", - "fclk_div7", - "gp0_pll", - "clk_gpu", - "clk_gpu_0", - "clk_gpu_1"; - - dvfs125_cfg:clk125_cfg { - clk_freq = <125000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <30 120>; - }; - - dvfs250_cfg:dvfs250_cfg { - clk_freq = <250000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <80 170>; - }; - - dvfs285_cfg:dvfs285_cfg { - clk_freq = <285714000>; - clk_parent = "fclk_div7"; - clkp_freq = <285714000>; - voltage = <1150>; - keep_count = <5>; - threshold = <100 190>; - }; - - dvfs400_cfg:dvfs400_cfg { - clk_freq = <400000000>; - clk_parent = "fclk_div5"; - clkp_freq = <400000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <152 207>; - }; - - dvfs500_cfg:dvfs500_cfg { - clk_freq = <500000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <180 220>; - }; - - dvfs666_cfg:dvfs666_cfg { - clk_freq = <666000000>; - clk_parent = "fclk_div3"; - clkp_freq = <666000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <210 236>; - }; - - dvfs800_cfg:dvfs800_cfg { - clk_freq = <792000000>; - clk_parent = "gp0_pll"; - clkp_freq = <792000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <230 255>; - }; - }; - - gpu_clk:gpu_clk@c883c00 { - compatible = "meson, gpu-clkgen-1.00.a"; - #clock-cells = <0>; - reg = <0 0xc883c000 0 0x001000>; - clocks = <&clock CLK_FPLL_DIV3>, - <&clock CLK_FPLL_DIV4>, - <&clock CLK_FPLL_DIV5>, - <&clock CLK_FPLL_DIV7>, - <&clock GP0_PLL>, - <&clock CLK_GPU>, - <&clock CLK_GPU_0>, - <&clock CLK_GPU_1>; - clock-names = - "fclk_div3", - "fclk_div4", - "fclk_div5", - "fclk_div7", - "gp0_pll", - "clk_gpu", - "clk_gpu_0", - "clk_gpu_1"; - clock-output-names = "clk_mali"; - tbl = <&t83x_clk125_cfg &t83x_clk250_cfg &t83x_clk285_cfg &t83x_clk400_cfg &t83x_clk500_cfg &t83x_clk666_cfg>; - t83x_clk125_cfg:clk125_cfg { - clk_freq = <125000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <30 120>; - }; - - t83x_clk250_cfg:clk250_cfg { - clk_freq = <250000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <80 170>; - }; - - t83x_clk285_cfg:clk285_cfg { - clk_freq = <285714000>; - clk_parent = "fclk_div7"; - clkp_freq = <285714000>; - voltage = <1150>; - keep_count = <5>; - threshold = <100 190>; - }; - - t83x_clk400_cfg:clk400_cfg { - clk_freq = <400000000>; - clk_parent = "fclk_div5"; - clkp_freq = <400000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <152 207>; - }; - - t83x_clk500_cfg:clk500_cfg { - clk_freq = <500000000>; - clk_parent = "fclk_div4"; - clkp_freq = <500000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <180 220>; - }; - - t83x_clk666_cfg:clk666_cfg { - clk_freq = <666666000>; - clk_parent = "fclk_div3"; - clkp_freq = <666666000>; - voltage = <1150>; - keep_count = <5>; - threshold = <210 236>; - }; - - t83x_clk720_cfg:clk720_cfg { - clk_freq = <720000000>; - clk_parent = "gp0_pll"; - clkp_freq = <720000000>; - voltage = <1150>; - keep_count = <5>; - threshold = <230 255>; - }; - }; - -};/* end of / */ diff --git a/arch/arm64/boot/dts/mesongxtvbb.dtsi b/arch/arm64/boot/dts/mesongxtvbb.dtsi deleted file mode 100644 index f10b32de8986d..0000000000000 --- a/arch/arm64/boot/dts/mesongxtvbb.dtsi +++ /dev/null @@ -1,775 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include "mesongxtvbb-gpu-t83x.dtsi" -/ { - cpus:cpus { - #address-cells = <2>; - #size-cells = <0>; - #cooling-cells = <2>; /* min followed by max */ - - cpu@0 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x0>; - enable-method = "psci"; - }; - - cpu@1 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x1>; - enable-method = "psci"; - }; - cpu@2 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x2>; - enable-method = "psci"; - }; - - cpu@3 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x3>; - enable-method = "psci"; - }; - - - }; - - timer { - compatible = "arm,armv8-timer"; - interrupts = , - , - , - ; - }; - - timer_bc { - compatible = "arm, meson-bc-timer"; - reg= <0x0 0xc1109990 0x0 0x4 0x0 0xc1109994 0x0 0x4>; - timer_name = "Meson TimerF"; - clockevent-rating=<300>; - clockevent-shift=<20>; - clockevent-features=<0x03>; - interrupts = <0 60 1>; - bit_enable=<16>; - 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>; - }; - meson_suspend:pm{ - compatible = "amlogic, pm"; - device_name = "aml_pm"; - gxbaby-suspend; - reg = <0x0 0xc81000a8 0x0 0x4 - 0x0 0xc810023c 0x0 0x4>; - }; - - gic: interrupt-controller@2c001000 { - compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; - #interrupt-cells = <3>; - #address-cells = <0>; - interrupt-controller; - reg = <0x0 0xc4301000 0 0x1000>, - <0x0 0xc4302000 0 0x0100>; - interrupts = ; - }; - - aml_restart{ - compatible = "aml, restart"; - sys_reset = <0x84000009>; - sys_poweroff = <0x84000008>; - }; - - rtc{ - compatible = "amlogic, aml_vrtc"; - alarm_reg_addr = <0xc81000a8>; - timer_e_addr = <0xc1109988>; - init_date = "2015/01/01"; - status = "okay"; - }; - - - psci { - compatible = "arm,psci"; - method = "smc"; - cpu_suspend = <0xC4000001>; - cpu_off = <0x84000002>; - cpu_on = <0xC4000003>; - migrate = <0xC4000005>; - }; - secmon { - compatible = "amlogic, secmon"; - memory-region = <&secmon_reserved>; - in_base_func = <0x82000020>; - out_base_func = <0x82000021>; - }; - securitykey { - compatible = "aml, securitykey"; - storage_query = <0x82000060>; - storage_read = <0x82000061>; - storage_write = <0x82000062>; - storage_tell = <0x82000063>; - storage_verify = <0x82000064>; - storage_status = <0x82000065>; - storage_list = <0x82000067>; - storage_remove = <0x82000068>; - storage_in_func = <0x82000023>; - storage_out_func = <0x82000024>; - storage_block_func = <0x82000025>; - storage_size_func = <0x82000027>; - }; - cpu_iomap{ - compatible = "amlogic, iomap"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base{ - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - io_apb_base{ - reg = <0x0 0xd0000000 0x0 0x200000>; - }; - io_aobus_base{ - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - }; - cpufreq-meson { - compatible = "amlogic, cpufreq-scpi"; - status = "okay"; - clocks = <&scpi_dvfs 0>; - clock-names = "cpu_clk"; - }; - - amlogic-watchdog{ - compatible = "amlogic, gx-wdt"; - status = "disable"; - default_timeout=<10>; - reset_watchdog_method=<1>;//0:sysfs,1:kernel - reset_watchdog_time=<2>; - shutdown_timeout=<10>; - firmware_timeout=<6>; - suspend_timeout=<6>; - reg = <0x0 0xc11098d0 0x0 0x10>; - clocks = <&clock CLK_XTAL>; - }; - amlogic-jtag { - compatible = "amlogic, jtag"; - status = "okay"; - pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; - pinctrl-0 = <&jtag_apao_pins>; - pinctrl-1 = <&jtag_apee_pins>; - }; - clock: meson_clock { - compatible = "amlogic, gxtvbb-clock"; - reg = <0x0 0xc883c000 0x0 0x1000>, /* HIU BUS*/ - <0x0 0xc8100000 0x0 0x1000>; //AOBUS - #clock-cells = <1>; - #reset-cells = <1>; - sys_max = <1536000000>; - }; - - pinmux: pinmux{ - compatible = "amlogic, pinmux-gxtvbb"; - dev_name = "pinmux"; - #pinmux-cells=<2>; - #address-cells = <2>; - #size-cells = <2>; - reg = <0x0 0xc1109880 0x0 0x10>; - ranges; - - gpio: banks@c11080b0 { - reg = <0x0 0xc88344b0 0x0 0x2c>, - <0x0 0xc88344e8 0x0 0x14>, - <0x0 0xc8834520 0x0 0x14>, - <0x0 0xc8834430 0x0 0x3c>; - reg-names = "mux", "pull", "pull-enable", "gpio"; - gpio-controller; - #gpio-cells = <2>; - }; - - gpio_ao: ao-bank@c1108030 { - reg = <0x0 0xc8100014 0x0 0x8>, - <0x0 0xc810002c 0x0 0x4>, - <0x0 0xc8100024 0x0 0x8>; - reg-names = "mux", "pull", "gpio"; - gpio-controller; - #gpio-cells = <2>; - }; - jtag_apao_pins:jtag_apao_pin{ - amlogic,clrmask = ; - amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11"; - }; - jtag_apee_pins:jtag_apee_pin{ - amlogic,clrmask = <5 0x9e 10 0x3c0>; - amlogic,pins = "CARD_0","CARD_1","CARD_2","CARD_3"; - }; - remote_pins:remote_pin{ - amlogic,setmask = ; - amlogic,pins = "GPIOAO_7"; - }; - ao_a_uart_pins:ao_a_uart{ - amlogic,setmask=; - amlogic,pins="GPIOAO_0", "GPIOAO_1"; - }; - - ao_b_uart_pins:ao_b_uart{ - amlogic,setmask=; - amlogic,pins="GPIOAO_4", "GPIOAO_5"; - }; - - a_uart_pins:a_uart{ - amlogic,setmask=<2 0xf000000>; - amlogic,pins="GPIOX_12", "GPIOX_13", "GPIOX_14", "GPIOX_15"; - }; - - b_uart_pins:b_uart{ - amlogic,setmask=<7 0x6>; - amlogic,pins="GPIOH_1", "GPIOH_2"; - }; - - b_uart_pins_y:b_uart_y{ - amlogic,setmask=<10 0x3000>; - amlogic,clrmask=<10 0x1e0c000>; - amlogic,pins="GPIOY_12", "GPIOY_13"; - }; - - wifi_32k_pins:wifi_32k_pins{ - amlogic,setmask=<7 0x8000000>; - amlogic,clrmask=<7 0x12020000>; - amlogic,pins="GPIOH_7"; - }; - sd_clk_cmd_pins:sd_clk_cmd_pins{ - amlogic,setmask=<5 0x00000018>; - amlogic,clrmask=<5 0x00000080 10 0x400>; - amlogic,pins = "CARD_2","CARD_3"; /* CARD_2:CLK, CARD_3:CMD */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - sd_all_pins:sd_all_pins{ - amlogic,setmask=<5 0x0000007e>; - amlogic,clrmask=<5 0x00000f80 10 0x400>; - amlogic,pins="CARD_0","CARD_1","CARD_2","CARD_3","CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - sd_1bit_pins:sd_1bit_pins{ - amlogic,setmask=<5 0x0000001c>; - amlogic,clrmask=<5 0x00000080 10 0x400>; - amlogic,pins = "CARD_1","CARD_2","CARD_3"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - sd_clk_cmd_uart_pins:sd_clk_cmd_uart_pins{ - amlogic,setmask=<2 0x00000c00>, - <8 0x00000600>; - amlogic,pins = "CARD_2","CARD_3"; /* CARD_2:CLK, CARD_3:CMD */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - sd_1bit_uart_pins:sd_1bit_uart_pins{ - amlogic,setmask=<2 0x00008c00>, - <8 0x00000600>; - amlogic,pins = "CARD_1","CARD_2","CARD_3"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - sd_to_ao_uart_pins:sd_to_ao_uart_pins{ - amlogic,setmask=; - amlogic,clrmask=<8 0x00000600>; - amlogic,pins = "GPIOAO_0","GPIOAO_1"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - ao_to_sd_uart_pins:ao_to_sd_uart_pins{ - amlogic,setmask=<8 0x00000600>; - amlogic,clrmask=, - <2 0x00003000>; - amlogic,pins = "CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - - emmc_clk_cmd_pins:emmc_clk_cmd_pins{ - amlogic,setmask=<5 0x0000f000>; - amlogic,pins = "BOOT_8","BOOT_10"; /** BOOT_10:CMD, BOOT_8:CLK */ - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - emmc_all_pins:emmc_all_pins{ - amlogic,setmask=<5 0x0000f000>; /*sdhc c*/ - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_10"; - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - sdio_clk_cmd_pins:sdio_clk_cmd_pins{ - amlogic,setmask=<0 0x00000300>; - amlogic,clrmask=<0 0x8c0300 1 0x804 2 0x40200>; - amlogic,pins = "GPIOX_8","GPIOX_9"; /** GPIOX_5:CMD, GPIOX_4:CLK */ - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - sdio_all_pins:sdio_all_pins{ - amlogic,setmask=<0 0x000003ff>; - amlogic,clrmask=<0 0x8ffc00 1 0x3ffc0c07 2 0x403ff>; - amlogic,pins = "GPIOX_0","GPIOX_1","GPIOX_2","GPIOX_3","GPIOX_4","GPIOX_5", - "GPIOX_6","GPIOX_7","GPIOX_8","GPIOX_9"; - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - /*aml_cam_gpio_pins: aml_cam_gpio_pins{ - amlogic,setmask=<2 0x3f0000>; - amlogic,clrmask=<1 0x7030ff 3 0x37>; - amlogic,pins = "GPIOY_0","GPIOY_1","GPIOY_2","GPIOY_3","GPIOY_4", - "GPIOY_5","GPIOY_6","GPIOY_7","GPIOY_8", - "GPIOY_9","GPIOY_10","GPIOY_15","GPIOY_16"; - };*/ - - conf_nand_pulldown: conf_nand_pulldown{ - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_15"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - - conf_nand_pullup: conf_nand_pullup{ - amlogic,pins = "BOOT_8", "BOOT_10"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - all_nand_pins: all_nand_pins{ - amlogic,setmask=<4 0x7ff00000>; - amlogic,clrmask=<0 0x80000 - 4 0x800c0000 - 5 0xf>; - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_9", - "BOOT_10","BOOT_11","BOOT_12","BOOT_13", - "BOOT_14","BOOT_15","BOOT_16","BOOT_17"; - amlogic,enable-output=<1>; - }; - - nand_cs_pins: nand_cs{ - amlogic,setmask=<4 0xc000000>; - amlogic,clrmask=<4 0x40000>; - amlogic,pins = "BOOT_8","BOOT_9"; - }; - - hdmitx_hpd: hdmitx_hpd { - amlogic,setmask=<1 0x04000000>; - amlogic,pins="GPIOH_5"; - }; - hdmitx_ddc: hdmitx_ddc { - amlogic,setmask=<1 0x03000000>; - amlogic,pins="GPIOH_3", "GPIOH_4"; - }; - hdmitx_aocec: hdmitx_aocec { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_9"; - }; - hdmitx_eecec: hdmitx_eecec { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_9"; - }; - lcd_vbyone_pins:lcd_vbyone_pin { - amlogic,setmask = <7 0x00001800>; - amlogic,clrmask = <7 0x00000606>; - amlogic,pins = "GPIOH_1","GPIOH_2"; - }; - lcd_ttl_rgb_6bit_pins_on:lcd_ttl_rgb_6bit_on{ - amlogic,setmask=<1 0x0000002a>; - amlogic,clrmask=<0 0xf0b3f0fc 1 0x003c0000 2 0x1fb8fcfc 3 0x2016ffcf>; - amlogic,pins = "GPIOX_2","GPIOX_3","GPIOX_4","GPIOX_5","GPIOX_6","GPIOX_7", /* R2~R7 */ - "GPIOX_10","GPIOX_11","GPIOX_12","GPIOX_13","GPIOX_14","GPIOX_15", /* G2~G7 */ - "GPIOX_18","GPIOX_19","GPIOX_20","GPIOX_21","GPIOX_22","GPIOX_23"; /* B2~B7 */ - }; - - lcd_ttl_rgb_6bit_pins_off:lcd_ttl_rgb_6bit_off{ - amlogic,clrmask=<0 0xf0b3f0fc 1 0x003c002a 2 0x1fb8fcfc 3 0x2016ffcf>; - amlogic,pins = "GPIOX_2","GPIOX_3","GPIOX_4","GPIOX_5","GPIOX_6","GPIOX_7", /* R2~R7 */ - "GPIOX_10","GPIOX_11","GPIOX_12","GPIOX_13","GPIOX_14","GPIOX_15", /* G2~G7 */ - "GPIOX_18","GPIOX_19","GPIOX_20","GPIOX_21","GPIOX_22","GPIOX_23"; /* B2~B7 */ - amlogic,enable-output=<1>; - }; - lcd_ttl_rgb_8bit_pins_on:lcd_ttl_rgb_8bit_on{ - amlogic,setmask=<1 0x0000003f>; - amlogic,clrmask=<0 0xf0bfffff 1 0x00fc1c00 2 0x1fbfffff 3 0x2016ffff>; - amlogic,pins = "GPIOX_0","GPIOX_1","GPIOX_2","GPIOX_3","GPIOX_4","GPIOX_5","GPIOX_6","GPIOX_7", /* R0~R7 */ - "GPIOX_8","GPIOX_9","GPIOX_10","GPIOX_11","GPIOX_12","GPIOX_13","GPIOX_14","GPIOX_15", /* G0~G7 */ - "GPIOX_16","GPIOX_17","GPIOX_18","GPIOX_19","GPIOX_20","GPIOX_21","GPIOX_22","GPIOX_23"; /* B0~B7 */ - }; - - lcd_ttl_rgb_8bit_pins_off:lcd_ttl_rgb_8bit_off{ - amlogic,clrmask=<0 0xf0bfffff 1 0x00fc1c3f 2 0x1fbfffff 3 0x2016ffff>; - amlogic,pins = "GPIOX_0","GPIOX_1","GPIOX_2","GPIOX_3","GPIOX_4","GPIOX_5","GPIOX_6","GPIOX_7", /* R0~R7 */ - "GPIOX_8","GPIOX_9","GPIOX_10","GPIOX_11","GPIOX_12","GPIOX_13","GPIOX_14","GPIOX_15", /* G0~G7 */ - "GPIOX_16","GPIOX_17","GPIOX_18","GPIOX_19","GPIOX_20","GPIOX_21","GPIOX_22","GPIOX_23"; /* B0~B7 */ - amlogic,enable-output=<1>; - }; - lcd_ttl_de_on_pins:lcd_ttl_de_on_pin{ /* DE + clk */ - amlogic,setmask=<1 0x00018000>; - amlogic,clrmask=<0 0x0c000000 1 0x00020000 3 0xdf000000>; - amlogic,pins = "GPIOX_26","GPIOX_27"; - }; - - lcd_ttl_de_off_pins:lcd_ttl_de_off_pin{ /* DE + clk */ - amlogic,clrmask=<0 0x0c000000 1 0x00038000 3 0xdf000000>; - amlogic,pins = "GPIOX_26","GPIOX_27"; - amlogic,enable-output=<1>; - }; - - lcd_ttl_hvsync_on_pins:lcd_ttl_hvsync_on_pin{ /* hvsync + clk */ - amlogic,setmask=<1 0x0000e000>; - amlogic,clrmask=<0 0x07000000 1 0x000000c0 3 0x6fc90000>; - amlogic,pins = "GPIOX_24","GPIOX_25","GPIOX_26"; - }; - - lcd_ttl_hvsync_off_pins:lcd_ttl_hvsync_off_pin{ /* hvsync + clk */ - amlogic,clrmask=<0 0x07000000 1 0x0000e0c0 3 0x6fc90000>; - amlogic,pins = "GPIOX_24","GPIOX_25","GPIOX_26"; - amlogic,enable-output=<1>; - }; - - lcd_ttl_de_hvsync_on_pins:lcd_ttl_de_hvsync_on_pin{ /* DE + hvsync + clk */ - amlogic,setmask=<1 0x0001e000>; - amlogic,clrmask=<0 0x0f000000 1 0x000200c0 3 0xffc90000>; - amlogic,pins = "GPIOX_24","GPIOX_25","GPIOX_26","GPIOX_27"; - }; - - lcd_ttl_de_hvsync_off_pins:lcd_ttl_de_hvsync_off_pin{ /* DE + hvsync + clk */ - amlogic,clrmask=<0 0x0f000000 1 0x0003e0c0 3 0xffc90000>; - amlogic,pins = "GPIOX_24","GPIOX_25","GPIOX_26","GPIOX_27"; - amlogic,enable-output=<1>; - }; - - atvdemod_agc: atvdemod_agc { - amlogic,setmask=<5 0x01000000>; - amlogic,clrmask=<5 0x0e000000>; - amlogic,pins="GPIOW_2"; - }; - - /*gxtvbb i2c multiplex */ - /*I2C-AO*/ - ao_i2c_master:ao_i2c{ - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_4","GPIOAO_5"; - }; - /*I2C-A*/ - a_i2c_master:a_i2c{ - amlogic,setmask=<5 0xc00000>; - amlogic,clrmask=<5 0x300000>; - amlogic,pins="GPIOW_0","GPIOW_1"; - }; - a_i2c_master_pin1:a_i2c_pin1{ - amlogic,setmask=<9 0x180>; - amlogic,clrmask=<8 0x6000000 9 0x30000678 10 0x1>; - amlogic,pins="GPIOZ_17","GPIOZ_18"; - }; - /*I2C-B*/ - b_i2c_master:b_i2c{ - amlogic,setmask=<10 0xc000>; - amlogic,clrmask=<10 0x1e03000>; - amlogic,pins="GPIOY_12","GPIOY_13"; - }; - b_i2c_master_pin1:b_i2c_pin1{ - amlogic,setmask=<7 0xc0>; - amlogic,clrmask=<7 0x180000>; - amlogic,pins="GPIOH_3","GPIOH_4"; - }; - /*I2C-C*/ - c_i2c_master:c_i2c{ - amlogic,setmask=<1 0xc00000>; - amlogic,clrmask=<0 0x800c03 1 0x300401 2 0x3>; - amlogic,pins="GPIOX_0","GPIOX_1"; - }; - c_i2c_master_pin1:c_i2c_pin1{ - amlogic,setmask=<4 0x30000000>; - amlogic,clrmask=<4 0xd801808 10 0x70000>; - amlogic,pins="GPIOY_7","GPIOY_8"; - }; - /*I2C-D*/ - d_i2c_master:d_i2c{ - amlogic,setmask=<10 0xc00>; - amlogic,clrmask=<4 0xc000c008>; - amlogic,pins="GPIOY_10","GPIOY_11"; - }; - d_i2c_master_pin1:d_i2c_pin1{ - amlogic,setmask=<7 0x1800000>; - amlogic,clrmask=<7 0x610028>; - amlogic,pins="GPIOH_5","GPIOH_6"; - }; - - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,clrmask=<6 0x7f 9 0x40000000>; - amlogic,pins = "GPIOW_3","GPIOW_4"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; - - spicc_pins_h6h7h8: spicc_pins_h6h7h8{ - amlogic,setmask=<7 0x70000>; - amlogic,clrmask=<7 0x7f400028>; - amlogic,pins="GPIOH_6","GPIOH_7","GPIOH_8"; - }; - spicc_pulldown_h6h7h8: spicc_pulldown_h6h7h8{ - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - spicc_pullup_h6h7h8: spicc_pullup_h6h7h8{ - amlogic,pins = "GPIOH_6","GPIOH_7","GPIOH_8"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - - spicc_pins_y4y5y6: spicc_pins_y4y5y6{ - amlogic,setmask=<4 0x700000>; - amlogic,clrmask=<4 0x708>; - amlogic,pins="GPIOY_4","GPIOY_5","GPIOY_6"; - }; - spicc_pulldown_y4y5y6: spicc_pulldown_y4y5y6{ - amlogic,pins="GPIOY_4","GPIOY_5","GPIOY_6"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - spicc_pullup_y4y5y6: spicc_pullup_y4y5y6{ - amlogic,pins="GPIOY_4","GPIOY_5","GPIOY_6"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - }; - cpu_version{ - reg=<0x0 0xc8100220 0x0 0x4>; - }; - meson_clk_msr{ - compatible = "amlogic, gxtvbb_measure"; - reg = <0x0 0xc110875c 0x0 0x4 - 0x0 0xc1108764 0x0 0x4 - 0x0 0xc883c15c 0x0 0x4>; - }; - - i2c_ao: i2c@c8100500{ /*I2C-AO*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-AO"; - status = "disabled"; - reg = <0x0 0xc8100500 0x0 0x1d>; - device_id = <0>; - pinctrl-names="default"; - pinctrl-0=<&ao_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_a: i2c@c1108500{ /*I2C-A*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-A"; - status = "disabled"; - reg = <0x0 0xc1108500 0x0 0x20>; - device_id = <1>; - pinctrl-names="default"; - pinctrl-0=<&a_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_b: i2c@c11087c0{ /*I2C-B*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-B"; - status = "disabled"; - reg = <0x0 0xc11087c0 0x0 0x20>; - device_id = <2>; - pinctrl-names="default"; - pinctrl-0=<&b_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_c: i2c@c11087e0{ /*I2C-C*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-C"; - status = "disabled"; - reg = <0x0 0xc11087e0 0x0 0x20>; - device_id = <3>; - pinctrl-names="default"; - pinctrl-0=<&c_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - i2c_d: i2c@c1108d20{ /*I2C-D*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-D"; - status = "disabled"; - reg = <0x0 0xc1108d20 0x0 0x20>; - device_id = <4>; - pinctrl-names="default"; - pinctrl-0=<&d_i2c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - - efuse: efuse{ - compatible = "amlogic, efuse"; - read_cmd = <0x82000030>; - write_cmd = <0x82000031>; - get_max_cmd = <0x82000033>; - key = <&efusekey>; - status = "disabled"; - }; - efusekey:efusekey{ - keynum = <4>; - key0 = <&key_0>; - key1 = <&key_1>; - key2 = <&key_2>; - key3 = <&key_3>; - key_0:key_0{ - keyname = "mac"; - offset = <0>; - size = <6>; - }; - key_1:key_1{ - keyname = "mac_bt"; - offset = <6>; - size = <6>; - }; - key_2:key_2{ - keyname = "mac_wifi"; - offset = <12>; - size = <6>; - }; - key_3:key_3{ - keyname = "usid"; - offset = <18>; - size = <16>; - }; - }; - - mailbox: mhu@c883c400 { - compatible = "amlogic, meson_mhu"; - status = "ok"; - reg = <0x0 0xc883c400 0x0 0x4c>, /* MHU registers */ - <0x0 0xc8013000 0x0 0x800>; /* Payload area */ - interrupts = <0 209 IRQ_TYPE_EDGE_RISING>, /* low priority interrupt */ - <0 210 IRQ_TYPE_EDGE_RISING>; /* high priority interrupt */ - #mbox-cells = <1>; - mbox-names = "cpu_to_scp_low", "cpu_to_scp_high"; - mboxes = <&mailbox 0 &mailbox 1>; - }; - scpi_clocks { - compatible = "arm,scpi-clks"; - - scpi_dvfs: scpi_clocks@0 { - compatible = "arm,scpi-clk-indexed"; - #clock-cells = <1>; - clock-indices = <0>; - clock-output-names = "vcpu"; - }; - - }; - - meson-remote { - compatible = "amlogic, aml_remote"; - dev_name = "meson-remote"; - status = "ok"; - remote_ao_offset = <0x580>; /* 0x400 + (0x20 + idx)<<2 -- old ; 0x400 + (0x60 +idx)<<2 --new */ - interrupts = <0 196 1>; - pinctrl-names = "default"; - pinctrl-0 = <&remote_pins>; - }; - - rng { - compatible = "amlogic,meson-rng"; - reg = <0x0 0xc8834000 0x0 0x4>; - }; - - audio_data:audio_data { - compatible = "amlogic, audio_data"; - query_licence_cmd = <0x82000050>; - status = "disabled"; - }; - - saradc: saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0 9 1>; - interrupt-names = "saradc_int"; - clocks = <&clock CLK_XTAL>; - clock-names = "saradc_clk"; - resets = <&clock GCLK_IDX_SARADC>; - reg = <0x0 0xc8100600 0x0 0x30 - 0x0 0xc8100090 0x0 0x08>; - }; - - spicc:spicc{ - compatible = "amlogic, spicc"; - status = "disabled"; - reg = <0x0 0xc1108d80 0x0 0x28>; - resets = <&clock GCLK_IDX_SPICC>; - clocks = <&clock CLK_81>; - clock-names = "spicc_clk"; - interrupts = <0 81 1>; - pinctrl-names="default"; - pinctrl-0=<&spicc_pins_h6h7h8>; - device_id = <0>; - }; - -};/* end of / */ diff --git a/arch/arm64/boot/dts/mesontxl-panel.dtsi b/arch/arm64/boot/dts/mesontxl-panel.dtsi deleted file mode 100644 index 03df3279010ed..0000000000000 --- a/arch/arm64/boot/dts/mesontxl-panel.dtsi +++ /dev/null @@ -1,271 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/mesontxl-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"; - dev_name = "lcd"; - mode = "tv"; - status = "okay"; - key_valid = <0>; - resets = <&clock GCLK_IDX_VCLK2_ENCL &clock GCLK_IDX_VCLK2_VENCL>; - reset-names = "encl","vencl"; - interrupts = <0 78 1 0 3 1>; - interrupt-names = "vbyone","vbyone_vsync"; - pinctrl-names = "vbyone"; - pinctrl-0 = <&lcd_vbyone_pins>; - - /* power type:(0=cpu_gpio, 1=pmu_gpio, 2=signal, 3=extern, 0xff=ending) */ - /* power index:(point gpios_index, or extern_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - lcd_cpu-gpios = <&gpio GPIOH_3 1 &gpio GPIOH_4 1>; - lcd_cpu_gpio_names = "GPIOH_3","GPIOH_4"; - - lvds_0{ - model_name = "1080p-vfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - lvds_1{ - model_name = "1080p-pclk"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <0 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - lvds_2{ - model_name = "1080p-hfreq"; - interface = "lvds"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <1920 1080 2200 1125 8 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - lcd_timing = <44 148 0 5 30 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <1 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - lvds_attr = <1 1 0 0>; /* lvds_repack, dual_port, pn_swap, port_swap */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 20 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_0{ - model_name = "public"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <0 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 50 /* panel power on */ - 2 0 0 200 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_1{ - model_name = "LG_RDL550WY"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 50 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_2{ - model_name = "INL_V580DJ2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - lcd_timing = <33 477 0 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 1 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 50 /* panel power on */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 50 /* signal disable */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - - vbyone_3{ - model_name = "BOE_HV550QU2"; - interface = "vbyone"; /* lcd_interface(lvds, vbyone) */ - basic_setting = <3840 2160 4400 2250 10 16 9>; /* h_active, v_active, h_period, v_period, lcd_bits, screen_widht, screen_height */ - lcd_timing = <33 477 1 6 65 0>; /* hs_width, hs_bp, hs_pol, vs_width, vs_bp, vs_pol */ - clk_attr = <2 0 1 0>; /* fr_adj_type(0=clock, 1=htotal, 2=vtotal), clk_ss_level, clk_auto_generate, pixel_clk(unit in Hz) */ - vbyone_attr = <8 2 4 4>; /* lane_count, region_num, byte_mode, color_fmt */ - phy_attr=<3 0>; /* vswing_level, preemphasis_level */ - power_on_step = <0 0 1 20 /* panel power on */ - 0 1 0 10 /* 3d_enable=0 */ - 2 0 0 0 /* signal enable */ - 0xff 0 0 0>; /* type, index, value, delay */ - power_off_step = <2 0 0 30 /* signal disable */ - 0 1 2 0 /* 3d_enable pin reset to input */ - 0 0 0 100 /* panel power off */ - 0xff 0 0 0>; /* type, index, value, delay */ - backlight_index = <0>; - }; - }; /* end of lcd */ - - lcd_extern{ - compatible = "amlogic, lcd_extern"; - dev_name = "lcd_extern"; - status = "okay"; - key_valid = <0>; - - extern_0{ - index = <0>; - extern_name = "ext_default"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_second_address = <0xff>; /* 7bit i2c address, 0xff for none */ - i2c_bus = "i2c_bus_d"; - cmd_size = <9>; - /* init on/off: (type, value..., delay), must match cmd_size for every group */ - /* type: 0x00=cmd(bit[3:0]=1 for second_addr), 0x10=gpio, 0xff=ending*/ - /* value: i2c or spi cmd, or gpio index & level, fill 0x0 for no use */ - /* delay: unit ms */ - init_on = <0x00 0x20 0x01 0x02 0x00 0x40 0xFF 0x00 0x00 - 0x00 0x80 0x02 0x00 0x40 0x62 0x51 0x73 0x00 - 0x00 0x61 0x06 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0xC1 0x05 0x0F 0x00 0x08 0x70 0x00 0x00 - 0x00 0x13 0x01 0x00 0x00 0x00 0x00 0x00 0x00 - 0x00 0x3D 0x02 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0xED 0x0D 0x01 0x00 0x00 0x00 0x00 0x00 - 0x00 0x23 0x02 0x00 0x00 0x00 0x00 0x00 0x0A - 0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - init_off = <0xff 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00>; - }; - extern_1{ - index = <1>; - extern_name = "i2c_T5800Q"; - status = "disabled"; - type = <0>; /* 0=i2c, 1=spi, 2=mipi */ - i2c_address = <0x1c>; /* 7bit i2c address */ - i2c_bus = "i2c_bus_d"; - }; - }; - - backlight { - compatible = "amlogic, backlight"; - dev_name = "backlight"; - status = "disable"; - key_valid = <0>; - pinctrl-names = "pwm_on","pwm_vs_on","pwm_combo_on", - "pwm_combo_0_on","pwm_combo_1_on"; - pinctrl-0 = <&bl_pwm_on_pins>; - pinctrl-1 = <&bl_pwm_vs_on_pins>; - pinctrl-2 = <&bl_pwm_combo_0_on_pins &bl_pwm_combo_1_on_pins>; - pinctrl-3 = <&bl_pwm_combo_0_on_pins>; - pinctrl-4 = <&bl_pwm_combo_1_on_pins>; - - /* power index:(point gpios_index, 0xff=invalid) */ - /* power value:(0=output low, 1=output high, 2=input) */ - /* power delay:(unit in ms) */ - bl-gpios = <&gpio_ao GPIOAO_4 1 &gpio GPIOZ_6 1 &gpio GPIOZ_4 1>; - bl_gpio_names = "GPIOAO_4","GPIOZ_6","GPIOZ_4"; - - backlight_0{ - index = <0>; - bl_name = "backlight_pwm"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 1=pwm, 2=pwm_combo, 4=extern */ - bl_power_attr = <0 0 1 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_B"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <0 180 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - backlight_1{ - index = <1>; - bl_name = "backlight_pwm_vs"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <1>; /* 1=pwm, 2=pwm_combo, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_port = "PWM_VS"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_attr = <1 2 100 25>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_power = <1 0 10 10>; /* pwm_gpio_index, pwm_off_value, pwm_on_delay, pwm_off_delay */ - }; - backlight_2{ - index = <2>; - bl_name = "backlight_pwm_combo"; - bl_level_default_uboot_kernel = <100 100>; - bl_level_attr = <255 10 128 102>; /* max, min, mid, mid_mapping */ - - bl_ctrl_method = <2>; /* 1=pwm, 2=pwm_combo, 4=extern */ - bl_power_attr = <0 1 0 200 200>; /* en_gpio_index, on_value, off_value, on_delay, off_delay */ - - /* pwm_method: 0=negative, 1=positive */ - /* pwm_freq: pwm_vs: 1~4(vfreq multiple), other pwm: real freq(unit: Hz) */ - /* duty_max, duty_min: unit in % */ - bl_pwm_combo_level_mapping = <255 100 100 10>; /* level_max, level_min */ - bl_pwm_combo_port = "PWM_B","PWM_D"; /* PWM_A, PWM_B, PWM_C, PWM_D, PWM_VS */ - bl_pwm_combo_attr = <1 180 100 25 - 1 18000 100 20>; /* pwm_method, pwm_freq, duty_max, duty_min */ - bl_pwm_combo_power = <1 0 2 0 10 10>; /* pwm0_gpio_index, pwm0_gpio_off, pwm1_gpio_index, pwm1_gpio_off, pwm_on_delay, pwm_off_delay */ - }; - }; /* end of backlight */ - -};/* end of / */ - diff --git a/arch/arm64/boot/dts/mesontxl.dtsi b/arch/arm64/boot/dts/mesontxl.dtsi deleted file mode 100644 index 9e1c3e7544aeb..0000000000000 --- a/arch/arm64/boot/dts/mesontxl.dtsi +++ /dev/null @@ -1,607 +0,0 @@ -/* - * arch/arm64/boot/dts/amlogic/mesontxl.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. - * -*/ - -#include -#include -#include -#include -#include -#include - -#include "mesongxbb-gpu-mali450.dtsi" - -/ { - cpus:cpus { - #address-cells = <2>; - #size-cells = <0>; - #cooling-cells = <2>; /* min followed by max */ - - cpu0:cpu@0 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x0>; - enable-method = "psci"; - }; - - cpu1:cpu@1 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x1>; - enable-method = "psci"; - }; - cpu2:cpu@2 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x2>; - enable-method = "psci"; - }; - - cpu3:cpu@3 { - device_type = "cpu"; - compatible = "arm,cortex-a53","arm,armv8"; - reg = <0x0 0x3>; - enable-method = "psci"; - }; - - }; - - timer { - compatible = "arm,armv8-timer"; - interrupts = , - , - , - ; - }; - - arm_pmu { - compatible = "arm,armv8-pmuv3"; - interrupts = <0 137 4>, - <0 138 4>, - <0 153 4>, - <0 154 4>; - }; - - meson_suspend:pm { - compatible = "amlogic, pm"; - device_name = "aml_pm"; - gxbaby-suspend; - reg = <0x0 0xc81000a8 0x0 0x4 - 0x0 0xc810023c 0x0 0x4>; - }; - - gic: interrupt-controller@2c001000 { - compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; - #interrupt-cells = <3>; - #address-cells = <0>; - interrupt-controller; - reg = <0x0 0xc4301000 0 0x1000>, - <0x0 0xc4302000 0 0x0100>; - interrupts = ; - }; - - aml_restart { - compatible = "aml, restart"; - sys_reset = <0x84000009>; - sys_poweroff = <0x84000008>; - }; - - psci { - compatible = "arm,psci"; - method = "smc"; - cpu_suspend = <0xC4000001>; - cpu_off = <0x84000002>; - cpu_on = <0xC4000003>; - migrate = <0xC4000005>; - }; - - secmon { - compatible = "amlogic, secmon"; - memory-region = <&secmon_reserved>; - in_base_func = <0x82000020>; - out_base_func = <0x82000021>; - }; - - securitykey { - compatible = "aml, securitykey"; - storage_query = <0x82000060>; - storage_read = <0x82000061>; - storage_write = <0x82000062>; - storage_tell = <0x82000063>; - storage_verify = <0x82000064>; - storage_status = <0x82000065>; - storage_list = <0x82000067>; - storage_remove = <0x82000068>; - storage_in_func = <0x82000023>; - storage_out_func = <0x82000024>; - storage_block_func = <0x82000025>; - storage_size_func = <0x82000027>; - }; - - cpu_iomap { - compatible = "amlogic, iomap"; - #address-cells=<2>; - #size-cells=<2>; - ranges; - io_cbus_base { - reg = <0x0 0xc1100000 0x0 0x100000>; - }; - io_apb_base { - reg = <0x0 0xd0000000 0x0 0x200000>; - }; - io_aobus_base { - reg = <0x0 0xc8100000 0x0 0x100000>; - }; - }; - - cpufreq-meson { - compatible = "amlogic, cpufreq-scpi"; - status = "okay"; - clocks = <&scpi_dvfs 0>; - clock-names = "cpu_clk"; - }; - - amlogic-watchdog { - compatible = "amlogic, gx-wdt"; - status = "disable"; - default_timeout=<10>; - reset_watchdog_method=<1>;//0:sysfs,1:kernel - reset_watchdog_time=<2>; - shutdown_timeout=<10>; - firmware_timeout=<6>; - suspend_timeout=<6>; - reg = <0x0 0xc11098d0 0x0 0x10>; - clocks = <&clock CLK_XTAL>; - }; - - amlogic-jtag { - compatible = "amlogic, jtag"; - status = "okay"; - pinctrl-names = "jtag_apao_pins", "jtag_apee_pins"; - pinctrl-0 = <&jtag_apao_pins>; - pinctrl-1 = <&jtag_apee_pins>; - }; - - clock: meson_clock { - compatible = "amlogic, txl-clock"; - reg = <0x0 0xc883c000 0x0 0x1000>, /* HIU BUS */ - <0x0 0xc8100000 0x0 0x1000>; /* AOBUS */ - #clock-cells = <1>; - #reset-cells = <1>; - sys_max = <1536000000>; - }; - - cpu_info { - compatible = "amlogic, cpuinfo"; - cpuinfo_cmd = <0x82000044>; - }; - - pinmux: pinmux { - compatible = "amlogic, pinmux-txl"; - dev_name = "pinmux"; - #pinmux-cells=<2>; - #address-cells = <2>; - #size-cells = <2>; - reg = <0x0 0xc1109880 0x0 0x10>; - ranges; - gpio: banks@c11080b0 { - reg = <0x0 0xc88344b0 0x0 0x28>, - <0x0 0xc88344e8 0x0 0x14>, - <0x0 0xc8834520 0x0 0x14>, - <0x0 0xc8834430 0x0 0x40>; - reg-names = "mux", "pull", "pull-enable", "gpio"; - gpio-controller; - #gpio-cells = <2>; - }; - gpio_ao: ao-bank@c1108030 { - reg = <0x0 0xc8100014 0x0 0x8>, - <0x0 0xc810002c 0x0 0x4>, - <0x0 0xc8100024 0x0 0x8>; - reg-names = "mux", "pull", "gpio"; - gpio-controller; - #gpio-cells = <2>; - }; - - avin_gpio_disable_pull:avin_gpio_disable_pull{ - amlogic,pins = "GPIODV_8","GPIODV_7"; - amlogic,enable-output=<1>; - amlogic,pullupen=<0>; - }; - - jtag_apao_pins:jtag_apao_pin{ - amlogic,clrmask = ; - amlogic,pins = "GPIOAO_3","GPIOAO_4","GPIOAO_5","GPIOAO_7"; - }; - jtag_apee_pins:jtag_apee_pin{ - amlogic,clrmask = <6 0xF000F03C>; - amlogic,pins = "CARD_0","CARD_1","CARD_2","CARD_3"; - }; - hdmitx_aocec: hdmitx_aocec { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_7"; - }; - hdmitx_eecec: hdmitx_eecec { - amlogic,setmask=; - amlogic,clrmask=; - amlogic,pins="GPIOAO_7"; - }; - remote_pins:remote_pin{ - amlogic,setmask = ; - amlogic,clrmask = ; - amlogic,pins = "GPIOAO_6"; - }; - uart_ao_a_pins:uart_ao_a{ - amlogic,setmask = ; - amlogic,clrmask = ; - amlogic,pins="GPIOAO_0", "GPIOAO_1"; - }; - uart_ao_a_2_pins:uart_ao_a_2{ - amlogic,setmask = <6 0x300>; - amlogic,clrmask = <6 0x0C000C03>; - amlogic,pins="CARD_4", "CARD_5"; - }; - uart_ao_a_3_pins:uart_ao_a_3{ - amlogic,setmask = <6 0xC00>; - amlogic,clrmask = <6 0x0C000303>; - amlogic,pins="CARD_4", "CARD_5"; - }; - uart_ao_b_pins:uart_ao_b{ - amlogic,setmask = ; - amlogic,clrmask = ; - amlogic,pins="GPIOAO_0", "GPIOAO_1"; - }; - uart_ao_b_2_pins:uart_ao_b_2{ - amlogic,setmask = ; - amlogic,clrmask = ; - amlogic,pins="GPIOAO_4", "GPIOAO_5"; - }; - uart_a_pins:uart_a{ - amlogic,setmask=<2 0x7800>; - amlogic,clrmask=<2 0x3C00066E>; - amlogic,pins="GPIODV_8", "GPIODV_9", "GPIODV_10", "GPIODV_11"; - }; - uart_b_pins:uart_b{ - amlogic,setmask=<3 0x3000000>; - amlogic,clrmask = <4 0x60>, - <3 0x80200000>; - amlogic,pins="GPIOZ_15", "GPIOZ_16"; - }; - uart_c_pins:uart_c{ - amlogic,setmask=<4 0x3000000>; - amlogic,clrmask=<4 0xC0000000>, - <3 0x218000>; - amlogic,pins="GPIOZ_0", "GPIOZ_1"; - }; - sd_clk_cmd_pins:sd_clk_cmd_pins{ - amlogic,setmask=<6 0x0000000c>; - amlogic,pins = "CARD_2","CARD_3"; /* CARD_2:CLK, CARD_3:CMD */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_all_pins:sd_all_pins{ - amlogic,setmask=<6 0x0000003f>; - amlogic,clrmask=<6 0xFC00FF00>; - amlogic,pins="CARD_0","CARD_1","CARD_2","CARD_3","CARD_4","CARD_5"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_1bit_pins:sd_1bit_pins{ - amlogic,setmask=<6 0x0000001c>; - amlogic,clrmask=<6 0x70007F03>; - amlogic,pins = "CARD_1","CARD_2","CARD_3"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_clk_cmd_uart_pins:sd_clk_cmd_uart_pins{ - amlogic,setmask=<6 0x0000030c>; - amlogic,clrmask=<6 0x3C003C03>; - amlogic,pins = "CARD_2","CARD_3"; /* CARD_2:CLK, CARD_3:CMD */ - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - sd_1bit_uart_pins:sd_1bit_uart_pins{ - amlogic,setmask=<6 0x0000031c>; - amlogic,clrmask=<6 0x7C007C03>; - amlogic,pins = "CARD_1","CARD_2","CARD_3"; - amlogic,enable-output=<1>; /* 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - emmc_clk_cmd_pins:emmc_clk_cmd_pins{ - amlogic,setmask=<7 0x60000000>; - amlogic,pins = "BOOT_8","BOOT_10"; /** BOOT_10:CMD, BOOT_8:CLK */ - amlogic,enable-output=<1>; /** 0:output, 1:input */ - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - emmc_conf_pull_up:emmc_conf_pull_up{ - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_10"; - amlogic,pullup=<1>; - amlogic,pullupen=<1>; - }; - emmc_conf_pull_done:emmc_conf_pull_done{ - amlogic,pins = "BOOT_11"; - amlogic,pullup=<0>; - amlogic,pullupen=<1>; - }; - emmc_all_pins:emmc_all_pins{ - amlogic,setmask=<7 0xf0000000>; /*sdhc c*/ - amlogic,clrmask=<7 0x00F83C00>; - amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4", - "BOOT_5","BOOT_6","BOOT_7","BOOT_8","BOOT_10","BOOT_11"; - amlogic,enable-output=<1>; /** 0:output, 1:input */ - }; - atvdemod_agc: atvdemod_agc { - amlogic,setmask=<2 0x800000>; - amlogic,clrmask=<2 0x500000>; - amlogic,pins="GPIODV_2"; - }; - dtvdemod_agc: dtvdemod_agc { - amlogic,setmask=<2 0x400000>; - amlogic,clrmask=<2 0x980000>; - amlogic,pins="GPIODV_2"; - }; - i2c_a_master:i2c_a{ - amlogic,setmask=<4 0x1800>; - amlogic,clrmask=<3 0x200000>; - amlogic,pins="GPIOZ_8","GPIOZ_9"; - }; - i2c_b_master:i2c_b{ - amlogic,setmask=<2 0x03000000>; - amlogic,clrmask=<2 0x80000000>; - amlogic,pins="GPIODV_0","GPIODV_1"; - }; - i2c_c_master:i2c_c{ - amlogic,setmask=<0 0x30000000>; - amlogic,pins="GPIOH_2","GPIOH_3"; - }; - i2c_d_master:i2c_d{ - amlogic,setmask=<4 0x00300000>; - amlogic,clrmask=<4 0x30c00000 3 0x00006000>; - amlogic,pins="GPIOZ_2","GPIOZ_3"; - }; - lcd_vbyone_pins:lcd_vbyone_pin { - amlogic,setmask = <0 0xC0000000>; - amlogic,pins = "GPIOH_0","GPIOH_1"; - }; - }; /* end of pinmux */ - - cpu_version { - reg=<0x0 0xc8100220 0x0 0x4>; - }; - - meson_clk_msr { - compatible = "amlogic, txl_measure"; - reg = <0x0 0xc110875c 0x0 0x4 - 0x0 0xc1108764 0x0 0x4>; - }; - - i2c_a: i2c@c1108500 { /*I2C-A*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-A"; - status = "disabled"; - reg = <0x0 0xc1108500 0x0 0x20>; - device_id = <1>; - pinctrl-names="default"; - pinctrl-0=<&i2c_a_master>;/*p200 i2c-A multiplex with usb PWR*/ - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - - i2c_b: i2c@c11087c0 { /*I2C-B*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-B"; - status = "disabled"; - reg = <0x0 0xc11087c0 0x0 0x20>; - device_id = <2>; - pinctrl-names="default"; - pinctrl-0=<&i2c_b_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - - i2c_c: i2c@c11087e0 { /*I2C-C*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-C"; - status = "disabled"; - reg = <0x0 0xc11087e0 0x0 0x20>; - device_id = <3>; - pinctrl-names="default"; - pinctrl-0=<&i2c_c_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - - i2c_d: i2c@c1108d20 { /*I2C-D*/ - compatible = "amlogic, meson-i2c"; - dev_name = "i2c-D"; - status = "disabled"; - reg = <0x0 0xc1108d20 0x0 0x20>; - device_id = <4>; - pinctrl-names="default"; - pinctrl-0=<&i2c_d_master>; - #address-cells = <1>; - #size-cells = <0>; - use_pio = <0>; - master_i2c_speed = <300000>; - clocks = <&clock CLK_81>; - clock-names = "clk_i2c"; - resets = <&clock GCLK_IDX_I2C>; - }; - - efuse: efuse { - compatible = "amlogic, efuse"; - read_cmd = <0x82000030>; - write_cmd = <0x82000031>; - get_max_cmd = <0x82000033>; - key = <&efusekey>; - resets = <&clock GCLK_IDX_EFUSE>; - reset-names = "efuse_clk"; - status = "disabled"; - }; - - efusekey:efusekey { - keynum = <4>; - key0 = <&key0>; - key1 = <&key1>; - key2 = <&key2>; - key3 = <&key3>; - key0:key0{ - keyname = "mac"; - offset = <0>; - size = <6>; - }; - key1:key1{ - keyname = "mac_bt"; - offset = <6>; - size = <6>; - }; - key2:key2{ - keyname = "mac_wifi"; - offset = <12>; - size = <6>; - }; - key3:key3{ - keyname = "usid"; - offset = <18>; - size = <16>; - }; - }; - - mailbox: mhu@c883c400 { - compatible = "amlogic, meson_mhu"; - reg = <0x0 0xc883c400 0x0 0x4c>, /* MHU registers */ - <0x0 0xc8013000 0x0 0x800>; /* Payload area */ - interrupts = <0 209 IRQ_TYPE_EDGE_RISING>, /* low priority interrupt */ - <0 210 IRQ_TYPE_EDGE_RISING>; /* high priority interrupt */ - #mbox-cells = <1>; - mbox-names = "cpu_to_scp_low", "cpu_to_scp_high"; - mboxes = <&mailbox 0 &mailbox 1>; - }; - - scpi_clocks { - compatible = "arm,scpi-clks"; - - scpi_dvfs: scpi_clocks@0 { - compatible = "arm,scpi-clk-indexed"; - #clock-cells = <1>; - clock-indices = <0>; - clock-output-names = "vcpu"; - }; - - }; - - meson-remote { - compatible = "amlogic, aml_remote"; - dev_name = "meson-remote"; - status = "okay"; - remote_ao_offset = <0x580>; /* 0x400 + (0x20 + idx)<<2 -- old ; 0x400 + (0x60 +idx)<<2 --new */ - interrupts = <0 196 1>; - pinctrl-names = "default"; - pinctrl-0 = <&remote_pins>; - }; - - rng { - compatible = "amlogic,meson-rng"; - reg = <0x0 0xc8834000 0x0 0x4>; - }; - - audio_data:audio_data { - compatible = "amlogic, audio_data"; - query_licence_cmd = <0x82000050>; - status = "disabled"; - }; - - saradc: saradc { - compatible = "amlogic, saradc"; - status = "okay"; - interrupts = <0 9 1>; - interrupt-names = "saradc_int"; - clocks = <&clock CLK_XTAL>; - clock-names = "saradc_clk"; - resets = <&clock GCLK_IDX_SARADC>; - reg = <0x0 0xc1108680 0x0 0x30 - 0x0 0xc883c3d8 0x0 0x08>; - }; - - defendkey: defendkey { - compatible = "amlogic, defendkey"; - reg = <0x0 0xc8834500 0x0 0x4>; /*RAND64_ADDR0*/ - mem_size = <0x0 0x100000>; - status = "disabled"; - }; - - spicc:spicc { - compatible = "amlogic, spicc"; - status = "disabled"; - reg = <0x0 0xc1108d80 0x0 0x28>; - resets = <&clock GCLK_IDX_SPICC>; - clocks = <&clock CLK_81>; - clock-names = "spicc_clk"; - interrupts = <0 81 1>; - device_id = <0>; - }; - - aml_aes { - compatible = "amlogic,aes_dma"; - dev_name = "aml_aes_dma"; - interrupts = <0 188 1 - 0 189 1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - aml_tdes { - compatible = "amlogic,des_dma,tdes_dma"; - dev_name = "aml_tdes_dma"; - interrupts = <0 188 1 - 0 189 1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - - aml_sha { - compatible = "amlogic,sha_dma"; - dev_name = "aml_sha_dma"; - interrupts = <0 188 1 - 0 189 1>; - reg = <0x0 0xc883e000 0x0 0x28>; - }; - -};/* end of / */ - -&gpu{ -/*gpu max freq is 750M*/ - tbl = <&clk125_cfg &clk285_cfg &clk400_cfg &clk500_cfg &clk666_cfg &clk750_cfg &clk750_cfg>; -}; diff --git a/arch/arm64/boot/dts/partitions-dualos.dtsi b/arch/arm64/boot/dts/partitions-dualos.dtsi deleted file mode 100644 index dcc6a8262f583..0000000000000 --- a/arch/arm64/boot/dts/partitions-dualos.dtsi +++ /dev/null @@ -1,108 +0,0 @@ -/* - * arch/arm64/boot/dts/partitions-dualos.dtsi - * Partitions for Android OS + Linux Distro(i.e. Ubuntu) - * - * Copyright (C) 2017 Khadsa.com 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. - * -*/ - -/ { - partitions: partitions{ - parts = <13>; - part-0 = <&logo>; - part-1 = <&recovery>; - part-2 = <&rsv>; - part-3 = <&tee>; - part-4 = <&crypt>; - part-5 = <&misc>; - part-6 = <&instaboot>; - part-7 = <&boot>; - part-8 = <&system>; - part-9 = <&cache>; - part-10 = <&data>; - part-11 = <&ramdisk>; - part-12 = <&rootfs>; - - logo:logo{ - pname = "logo"; - size = <0x0 0x2000000>; - mask = <1>; - }; - recovery:recovery{ - pname = "recovery"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rsv:rsv{ - pname = "rsv"; - size = <0x0 0x800000>; - mask = <1>; - }; - tee:tee{ - pname = "tee"; - size = <0x0 0x800000>; - mask = <1>; - }; - crypt:crypt{ - pname = "crypt"; - size = <0x0 0x2000000>; - mask = <1>; - }; - misc:misc{ - pname = "misc"; - size = <0x0 0x2000000>; - mask = <1>; - }; - instaboot:instaboot{ - pname = "instaboot"; - size = <0x0 0x20000000>; - mask = <1>; - }; - boot:boot - { - pname = "boot"; - size = <0x0 0x2000000>; - mask = <1>; - }; - system:system - { - pname = "system"; - size = <0x0 0x40000000>; - mask = <1>; - }; - cache:cache - { - pname = "cache"; - size = <0x0 0x20000000>; - mask = <2>; - }; - data:data - { - pname = "data"; - size = <0x0 0x68C00000>; - mask = <4>; - }; - ramdisk:ramdisk - { - pname = "ramdisk"; - size = <0x0 0x2000000>; - mask = <1>; - }; - rootfs:rootfs - { - pname = "rootfs"; - size = <0xffffffff 0xffffffff>; - mask = <4>; - }; - }; -}; diff --git a/arch/arm64/boot/dts/partitions.dtsi b/arch/arm64/boot/dts/partitions-linux.dtsi similarity index 100% rename from arch/arm64/boot/dts/partitions.dtsi rename to arch/arm64/boot/dts/partitions-linux.dtsi diff --git a/config_20180201 b/config_20180201 new file mode 100644 index 0000000000000..2e22185b806c6 --- /dev/null +++ b/config_20180201 @@ -0,0 +1,4575 @@ +# +# Automatically generated file; DO NOT EDIT. +# Linux/arm64 3.14.29 Kernel Configuration +# +CONFIG_ARM64=y +CONFIG_ARM64_HAS_SG_CHAIN=y +CONFIG_64BIT=y +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +CONFIG_MMU=y +CONFIG_ARCH_MMAP_RND_BITS_MIN=18 +CONFIG_ARCH_MMAP_RND_BITS_MAX=24 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 +CONFIG_NO_IOPORT=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_RWSEM_GENERIC_SPINLOCK=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_GENERIC_CSUM=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_SWIOTLB=y +CONFIG_IOMMU_HELPER=y +CONFIG_KERNEL_MODE_NEON=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" +CONFIG_IRQ_WORK=y +CONFIG_BUILDTIME_EXTABLE_SORT=y + +# +# General setup +# +CONFIG_INIT_ENV_ARG_LIMIT=32 +CONFIG_CROSS_COMPILE="" +# CONFIG_COMPILE_TEST is not set +CONFIG_LOCALVERSION="" +CONFIG_LOCALVERSION_AUTO=y +CONFIG_DEFAULT_HOSTNAME="(none)" +CONFIG_SWAP=y +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_FHANDLE=y +CONFIG_AUDIT=y + +# +# IRQ subsystem +# +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_HARDIRQS_SW_RESEND=y +CONFIG_IRQ_DOMAIN=y +# CONFIG_IRQ_DOMAIN_DEBUG is not set +CONFIG_SPARSE_IRQ=y +CONFIG_GENERIC_TIME_VSYSCALL=y +CONFIG_GENERIC_CLOCKEVENTS=y +CONFIG_GENERIC_CLOCKEVENTS_BUILD=y +CONFIG_ARCH_HAS_TICK_BROADCAST=y +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y + +# +# Timers subsystem +# +CONFIG_TICK_ONESHOT=y +CONFIG_NO_HZ_COMMON=y +# CONFIG_HZ_PERIODIC is not set +CONFIG_NO_HZ_IDLE=y +# CONFIG_NO_HZ_FULL is not set +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y + +# +# CPU/Task time and stats accounting +# +CONFIG_TICK_CPU_ACCOUNTING=y +# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set +# CONFIG_BSD_PROCESS_ACCT is not set +# CONFIG_TASKSTATS is not set + +# +# RCU Subsystem +# +CONFIG_TREE_PREEMPT_RCU=y +CONFIG_PREEMPT_RCU=y +CONFIG_RCU_STALL_COMMON=y +# CONFIG_RCU_USER_QS is not set +CONFIG_RCU_FANOUT=32 +CONFIG_RCU_FANOUT_LEAF=16 +# CONFIG_RCU_FANOUT_EXACT is not set +# CONFIG_RCU_FAST_NO_HZ is not set +CONFIG_TREE_RCU_TRACE=y +# CONFIG_RCU_BOOST is not set +# CONFIG_RCU_NOCB_CPU is not set +CONFIG_IKCONFIG=m +CONFIG_IKCONFIG_PROC=y +CONFIG_LOG_BUF_SHIFT=17 +CONFIG_GENERIC_SCHED_CLOCK=y +CONFIG_CGROUPS=y +# CONFIG_CGROUP_DEBUG is not set +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_DEVICE=y +CONFIG_CPUSETS=y +CONFIG_PROC_PID_CPUSET=y +CONFIG_CGROUP_CPUACCT=y +CONFIG_RESOURCE_COUNTERS=y +CONFIG_MEMCG=y +CONFIG_MEMCG_SWAP=y +CONFIG_MEMCG_SWAP_ENABLED=y +CONFIG_MEMCG_KMEM=y +CONFIG_CGROUP_HUGETLB=y +CONFIG_CGROUP_PERF=y +CONFIG_CGROUP_SCHED=y +CONFIG_FAIR_GROUP_SCHED=y +CONFIG_CFS_BANDWIDTH=y +# CONFIG_RT_GROUP_SCHED is not set +CONFIG_BLK_CGROUP=y +# CONFIG_DEBUG_BLK_CGROUP is not set +CONFIG_CHECKPOINT_RESTORE=y +CONFIG_NAMESPACES=y +CONFIG_UTS_NS=y +CONFIG_IPC_NS=y +CONFIG_USER_NS=y +CONFIG_PID_NS=y +CONFIG_NET_NS=y +# CONFIG_SCHED_AUTOGROUP is not set +CONFIG_MM_OWNER=y +# CONFIG_SYSFS_DEPRECATED is not set +# CONFIG_RELAY is not set +CONFIG_BLK_DEV_INITRD=y +CONFIG_INITRAMFS_SOURCE="" +CONFIG_RD_GZIP=y +CONFIG_RD_BZIP2=y +CONFIG_RD_LZMA=y +CONFIG_RD_XZ=y +CONFIG_RD_LZO=y +CONFIG_RD_LZ4=y +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_SYSCTL=y +CONFIG_ANON_INODES=y +CONFIG_HAVE_UID16=y +CONFIG_SYSCTL_EXCEPTION_TRACE=y +CONFIG_EXPERT=y +CONFIG_UID16=y +# CONFIG_SYSCTL_SYSCALL is not set +CONFIG_KALLSYMS=y +# CONFIG_KALLSYMS_ALL is not set +CONFIG_PRINTK=y +CONFIG_BUG=y +CONFIG_ELF_CORE=y +CONFIG_BASE_FULL=y +CONFIG_FUTEX=y +CONFIG_EPOLL=y +CONFIG_SIGNALFD=y +CONFIG_TIMERFD=y +CONFIG_EVENTFD=y +CONFIG_SHMEM=y +CONFIG_AIO=y +CONFIG_EMBEDDED=y +CONFIG_HAVE_PERF_EVENTS=y +CONFIG_PERF_USE_VMALLOC=y + +# +# Kernel Performance Events And Counters +# +CONFIG_PERF_EVENTS=y +# CONFIG_DEBUG_PERF_USE_VMALLOC is not set +CONFIG_VM_EVENT_COUNTERS=y +CONFIG_SLUB_DEBUG=y +# CONFIG_COMPAT_BRK is not set +# CONFIG_SLAB is not set +CONFIG_SLUB=y +# CONFIG_SLOB is not set +CONFIG_SLUB_CPU_PARTIAL=y +# CONFIG_SYSTEM_TRUSTED_KEYRING is not set +CONFIG_PROFILING=y +CONFIG_TRACEPOINTS=y +CONFIG_JUMP_LABEL=y +# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_DMA_ATTRS=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_HAVE_CLK=y +CONFIG_HAVE_DMA_API_DEBUG=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +# CONFIG_CC_STACKPROTECTOR is not set +CONFIG_HAVE_CONTEXT_TRACKING=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_MODULES_USE_ELF_RELA=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_ARCH_MMAP_RND_BITS=18 +CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11 +CONFIG_CLONE_BACKWARDS=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_COMPAT_OLD_SIGACTION=y + +# +# GCOV-based kernel profiling +# +# CONFIG_GCOV_KERNEL is not set +CONFIG_HAVE_GENERIC_DMA_COHERENT=y +CONFIG_SLABINFO=y +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=0 +CONFIG_MODULES=y +# CONFIG_MODULE_FORCE_LOAD is not set +CONFIG_MODULE_UNLOAD=y +# CONFIG_MODULE_FORCE_UNLOAD is not set +# CONFIG_MODVERSIONS is not set +# CONFIG_MODULE_SRCVERSION_ALL is not set +# CONFIG_MODULE_SIG is not set +CONFIG_STOP_MACHINE=y +CONFIG_BLOCK=y +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +# CONFIG_BLK_DEV_INTEGRITY is not set +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_CMDLINE_PARSER is not set + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +# CONFIG_AIX_PARTITION is not set +# CONFIG_OSF_PARTITION is not set +# CONFIG_AMIGA_PARTITION is not set +# CONFIG_ATARI_PARTITION is not set +CONFIG_MAC_PARTITION=y +CONFIG_MSDOS_PARTITION=y +# CONFIG_BSD_DISKLABEL is not set +# CONFIG_MINIX_SUBPARTITION is not set +# CONFIG_SOLARIS_X86_PARTITION is not set +# CONFIG_UNIXWARE_DISKLABEL is not set +CONFIG_LDM_PARTITION=y +# CONFIG_LDM_DEBUG is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_SUN_PARTITION is not set +# CONFIG_KARMA_PARTITION is not set +CONFIG_EFI_PARTITION=y +# CONFIG_SYSV68_PARTITION is not set +# CONFIG_CMDLINE_PARTITION is not set +CONFIG_BLOCK_COMPAT=y + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +CONFIG_CFQ_GROUP_IOSCHED=y +# CONFIG_DEFAULT_DEADLINE is not set +CONFIG_DEFAULT_CFQ=y +# CONFIG_DEFAULT_NOOP is not set +CONFIG_DEFAULT_IOSCHED="cfq" +CONFIG_PADATA=y +CONFIG_UNINLINE_SPIN_UNLOCK=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_FREEZER=y + +# +# Platform selection +# +# CONFIG_ARCH_VEXPRESS is not set +# CONFIG_ARCH_XGENE is not set +CONFIG_ARCH_MESON64_ODROIDC2=y + +# +# Bus support +# +CONFIG_ARM_AMBA=y + +# +# ARM errata workarounds via the alternatives framework +# +CONFIG_ARM64_ERRATUM_845719=y +CONFIG_ARM64_ERRATUM_843419=y +CONFIG_ARM64_ERRATUM_835769=y + +# +# Kernel Features +# +# CONFIG_ARM64_64K_PAGES is not set +# CONFIG_CPU_BIG_ENDIAN is not set +CONFIG_SMP=y +CONFIG_SCHED_MC=y +# CONFIG_SCHED_SMT is not set +# CONFIG_DISABLE_CPU_SCHED_DOMAIN_BALANCE is not set +CONFIG_SCHED_HMP=y +# CONFIG_SCHED_HMP_PRIO_FILTER is not set +CONFIG_HMP_FAST_CPU_MASK="" +CONFIG_HMP_SLOW_CPU_MASK="" +CONFIG_HMP_VARIABLE_SCALE=y +CONFIG_HMP_FREQUENCY_INVARIANT_SCALE=y +# CONFIG_SCHED_HMP_LITTLE_PACKING is not set +CONFIG_NR_CPUS=8 +CONFIG_HOTPLUG_CPU=y +CONFIG_SWP_EMULATE=y +# CONFIG_PREEMPT_NONE is not set +# CONFIG_PREEMPT_VOLUNTARY is not set +CONFIG_PREEMPT=y +CONFIG_PREEMPT_COUNT=y +CONFIG_HZ=100 +CONFIG_ARCH_HAS_HOLES_MEMORYMODEL=y +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_HAVE_ARCH_PFN_VALID=y +CONFIG_HW_PERF_EVENTS=y +CONFIG_ARMV7_COMPAT=y +CONFIG_ARMV7_COMPAT_CPUINFO=y +CONFIG_SYS_SUPPORTS_HUGETLBFS=y +CONFIG_ARCH_WANT_GENERAL_HUGETLB=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_SELECT_MEMORY_MODEL=y +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM=y +CONFIG_HAVE_MEMORY_PRESENT=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_HAVE_MEMBLOCK=y +CONFIG_NO_BOOTMEM=y +CONFIG_MEMORY_ISOLATION=y +# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set +CONFIG_PAGEFLAGS_EXTENDED=y +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_BALLOON_COMPACTION=y +CONFIG_COMPACTION=y +CONFIG_MIGRATION=y +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_ZONE_DMA_FLAG=0 +# CONFIG_KSM is not set +CONFIG_DEFAULT_MMAP_MIN_ADDR=32768 +# CONFIG_TRANSPARENT_HUGEPAGE is not set +CONFIG_CROSS_MEMORY_ATTACH=y +CONFIG_CLEANCACHE=y +CONFIG_FRONTSWAP=y +CONFIG_CMA=y +# CONFIG_CMA_DEBUG is not set +CONFIG_CMA_AREAS=7 +# CONFIG_ZBUD is not set +# CONFIG_ZSWAP is not set +CONFIG_ZSMALLOC=y +# CONFIG_ZSMALLOC_STAT is not set +# CONFIG_PGTABLE_MAPPING is not set +CONFIG_GENERIC_EARLY_IOREMAP=y +# CONFIG_KEXEC is not set +# CONFIG_CRASH_DUMP is not set +# CONFIG_XEN is not set +CONFIG_FORCE_MAX_ZONEORDER=11 +# CONFIG_SECCOMP is not set + +# +# Boot options +# +CONFIG_CMDLINE=" " +# CONFIG_CMDLINE_FROM_BOOTLOADER is not set +CONFIG_CMDLINE_EXTEND=y +# CONFIG_CMDLINE_FORCE is not set +# CONFIG_BUILD_ARM64_APPENDED_DTB_IMAGE is not set + +# +# Userspace binary formats +# +CONFIG_BINFMT_ELF=y +CONFIG_COMPAT_BINFMT_ELF=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +CONFIG_BINFMT_SCRIPT=y +# CONFIG_HAVE_AOUT is not set +CONFIG_BINFMT_MISC=y +CONFIG_COREDUMP=y +CONFIG_COMPAT=y +CONFIG_SYSVIPC_COMPAT=y +CONFIG_KEYS_COMPAT=y + +# +# Power management options +# +CONFIG_SUSPEND=y +CONFIG_SUSPEND_FREEZER=y +CONFIG_HAS_WAKELOCK=y +CONFIG_HAS_EARLYSUSPEND=y +CONFIG_WAKELOCK=y +CONFIG_WAKELOCK_STAT=y +CONFIG_USER_WAKELOCK=y +CONFIG_EARLYSUSPEND=y +CONFIG_FORCE_POWER_ON_STATE_AFTER_RESUME=y +CONFIG_NO_USER_SPACE_SCREEN_ACCESS_CONTROL=y +# CONFIG_CONSOLE_EARLYSUSPEND is not set +# CONFIG_FB_EARLYSUSPEND is not set +CONFIG_HIBERNATE_CALLBACKS=y +CONFIG_HIBERNATION=y +CONFIG_PM_STD_PARTITION="" +CONFIG_PM_SLEEP=y +CONFIG_PM_SLEEP_SMP=y +# CONFIG_PM_AUTOSLEEP is not set +# CONFIG_PM_WAKELOCKS is not set +CONFIG_PM_RUNTIME=y +CONFIG_PM=y +# CONFIG_PM_DEBUG is not set +CONFIG_ARCH_HAS_OPP=y +CONFIG_PM_OPP=y +CONFIG_PM_CLK=y +# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set +CONFIG_CPU_PM=y +# CONFIG_SUSPEND_TIME is not set +# CONFIG_MK_SNAPSHOT_ONLY is not set + +# +# CPU Frequency scaling +# +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_GOV_COMMON=y +CONFIG_CPU_FREQ_STAT=y +CONFIG_CPU_FREQ_STAT_DETAILS=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_HOTPLUG is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_INTERACTIVE is not set +CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=y +CONFIG_CPU_FREQ_GOV_USERSPACE=y +CONFIG_CPU_FREQ_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_HOTPLUG=y +CONFIG_CPU_FREQ_GOV_INTERACTIVE=y +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y +# CONFIG_GENERIC_CPUFREQ_CPU0 is not set + +# +# ARM CPU frequency scaling drivers +# +CONFIG_ARM_BIG_LITTLE_CPUFREQ=y +# CONFIG_ARM_DT_BL_CPUFREQ is not set +CONFIG_ARM_SCPI_CPUFREQ=y +# CONFIG_ARM_KIRKWOOD_CPUFREQ is not set +CONFIG_ARCH_SUSPEND_POSSIBLE=y +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARM64_CPU_SUSPEND=y + +# +# CPU Power Management +# + +# +# CPU Idle +# +CONFIG_CPU_IDLE=y +# CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set +# CONFIG_CPU_IDLE_GOV_LADDER is not set +CONFIG_CPU_IDLE_GOV_MENU=y +CONFIG_DT_IDLE_STATES=y + +# +# ARM64 CPU Idle Drivers +# +CONFIG_ARM64_CPUIDLE=y +# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set +CONFIG_NET=y +CONFIG_COMPAT_NETLINK_MESSAGES=y + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_DIAG=y +CONFIG_UNIX=y +CONFIG_UNIX_DIAG=y +CONFIG_XFRM=y +CONFIG_XFRM_ALGO=y +CONFIG_XFRM_USER=y +# CONFIG_XFRM_SUB_POLICY is not set +CONFIG_XFRM_MIGRATE=y +# CONFIG_XFRM_STATISTICS is not set +CONFIG_XFRM_IPCOMP=y +CONFIG_NET_KEY=y +CONFIG_NET_KEY_MIGRATE=y +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +# CONFIG_IP_FIB_TRIE_STATS is not set +CONFIG_IP_MULTIPLE_TABLES=y +# CONFIG_IP_ROUTE_MULTIPATH is not set +# CONFIG_IP_ROUTE_VERBOSE is not set +CONFIG_IP_PNP=y +CONFIG_IP_PNP_DHCP=y +CONFIG_IP_PNP_BOOTP=y +CONFIG_IP_PNP_RARP=y +CONFIG_NET_IPIP=y +# CONFIG_NET_IPGRE_DEMUX is not set +CONFIG_NET_IP_TUNNEL=y +# CONFIG_IP_MROUTE is not set +CONFIG_SYN_COOKIES=y +# CONFIG_NET_IPVTI is not set +# CONFIG_INET_AH is not set +CONFIG_INET_ESP=y +# CONFIG_INET_IPCOMP is not set +# CONFIG_INET_XFRM_TUNNEL is not set +CONFIG_INET_TUNNEL=y +CONFIG_INET_XFRM_MODE_TRANSPORT=y +CONFIG_INET_XFRM_MODE_TUNNEL=y +CONFIG_INET_XFRM_MODE_BEET=y +# CONFIG_INET_LRO is not set +CONFIG_INET_DIAG=y +CONFIG_INET_TCP_DIAG=y +# CONFIG_INET_UDP_DIAG is not set +# CONFIG_INET_DIAG_DESTROY is not set +# CONFIG_TCP_CONG_ADVANCED is not set +CONFIG_TCP_CONG_CUBIC=y +CONFIG_DEFAULT_TCP_CONG="cubic" +# CONFIG_TCP_MD5SIG is not set +CONFIG_IPV6=y +CONFIG_IPV6_ROUTER_PREF=y +CONFIG_IPV6_ROUTE_INFO=y +CONFIG_IPV6_OPTIMISTIC_DAD=y +CONFIG_INET6_AH=y +CONFIG_INET6_ESP=y +CONFIG_INET6_IPCOMP=y +CONFIG_IPV6_MIP6=y +CONFIG_INET6_XFRM_TUNNEL=y +CONFIG_INET6_TUNNEL=y +CONFIG_INET6_XFRM_MODE_TRANSPORT=y +CONFIG_INET6_XFRM_MODE_TUNNEL=y +CONFIG_INET6_XFRM_MODE_BEET=y +# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set +# CONFIG_IPV6_VTI is not set +CONFIG_IPV6_SIT=y +# CONFIG_IPV6_SIT_6RD is not set +CONFIG_IPV6_NDISC_NODETYPE=y +CONFIG_IPV6_TUNNEL=y +# CONFIG_IPV6_GRE is not set +CONFIG_IPV6_MULTIPLE_TABLES=y +# CONFIG_IPV6_SUBTREES is not set +# CONFIG_IPV6_MROUTE is not set +CONFIG_NETLABEL=y +# CONFIG_ANDROID_PARANOID_NETWORK is not set +CONFIG_NET_ACTIVITY_STATS=y +CONFIG_NETWORK_SECMARK=y +# CONFIG_NETWORK_PHY_TIMESTAMPING is not set +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_DEBUG is not set +CONFIG_NETFILTER_ADVANCED=y +CONFIG_BRIDGE_NETFILTER=y + +# +# Core Netfilter Configuration +# +CONFIG_NETFILTER_NETLINK=y +# CONFIG_NETFILTER_NETLINK_ACCT is not set +CONFIG_NETFILTER_NETLINK_QUEUE=y +CONFIG_NETFILTER_NETLINK_LOG=y +CONFIG_NF_CONNTRACK=y +CONFIG_NF_CONNTRACK_MARK=y +# CONFIG_NF_CONNTRACK_SECMARK is not set +CONFIG_NF_CONNTRACK_PROCFS=y +CONFIG_NF_CONNTRACK_EVENTS=y +# CONFIG_NF_CONNTRACK_TIMEOUT is not set +# CONFIG_NF_CONNTRACK_TIMESTAMP is not set +CONFIG_NF_CT_PROTO_DCCP=y +CONFIG_NF_CT_PROTO_GRE=y +CONFIG_NF_CT_PROTO_SCTP=y +CONFIG_NF_CT_PROTO_UDPLITE=y +CONFIG_NF_CONNTRACK_AMANDA=y +CONFIG_NF_CONNTRACK_FTP=y +CONFIG_NF_CONNTRACK_H323=y +CONFIG_NF_CONNTRACK_IRC=y +CONFIG_NF_CONNTRACK_BROADCAST=y +CONFIG_NF_CONNTRACK_NETBIOS_NS=y +# CONFIG_NF_CONNTRACK_SNMP is not set +CONFIG_NF_CONNTRACK_PPTP=y +CONFIG_NF_CONNTRACK_SANE=y +# CONFIG_NF_CONNTRACK_SIP is not set +CONFIG_NF_CONNTRACK_TFTP=y +CONFIG_NF_CT_NETLINK=y +# CONFIG_NF_CT_NETLINK_TIMEOUT is not set +# CONFIG_NETFILTER_NETLINK_QUEUE_CT is not set +CONFIG_NF_NAT=y +CONFIG_NF_NAT_NEEDED=y +CONFIG_NF_NAT_PROTO_DCCP=y +CONFIG_NF_NAT_PROTO_UDPLITE=y +CONFIG_NF_NAT_PROTO_SCTP=y +CONFIG_NF_NAT_AMANDA=y +CONFIG_NF_NAT_FTP=y +CONFIG_NF_NAT_IRC=y +# CONFIG_NF_NAT_SIP is not set +CONFIG_NF_NAT_TFTP=y +# CONFIG_NF_TABLES is not set +CONFIG_NETFILTER_XTABLES=y + +# +# Xtables combined modules +# +CONFIG_NETFILTER_XT_MARK=y +CONFIG_NETFILTER_XT_CONNMARK=y + +# +# Xtables targets +# +# CONFIG_NETFILTER_XT_TARGET_AUDIT is not set +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=y +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=y +CONFIG_NETFILTER_XT_TARGET_CONNMARK=y +# CONFIG_NETFILTER_XT_TARGET_CT is not set +# CONFIG_NETFILTER_XT_TARGET_DSCP is not set +# CONFIG_NETFILTER_XT_TARGET_HL is not set +# CONFIG_NETFILTER_XT_TARGET_HMARK is not set +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=y +# CONFIG_NETFILTER_XT_TARGET_LED is not set +# CONFIG_NETFILTER_XT_TARGET_LOG is not set +CONFIG_NETFILTER_XT_TARGET_MARK=y +CONFIG_NETFILTER_XT_TARGET_NETMAP=y +CONFIG_NETFILTER_XT_TARGET_NFLOG=y +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=y +# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set +# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set +CONFIG_NETFILTER_XT_TARGET_REDIRECT=y +# CONFIG_NETFILTER_XT_TARGET_TEE is not set +CONFIG_NETFILTER_XT_TARGET_TPROXY=y +CONFIG_NETFILTER_XT_TARGET_TRACE=y +# CONFIG_NETFILTER_XT_TARGET_SECMARK is not set +# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set +# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set + +# +# Xtables matches +# +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y +# CONFIG_NETFILTER_XT_MATCH_BPF is not set +# CONFIG_NETFILTER_XT_MATCH_CGROUP is not set +# CONFIG_NETFILTER_XT_MATCH_CLUSTER is not set +CONFIG_NETFILTER_XT_MATCH_COMMENT=y +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=y +# CONFIG_NETFILTER_XT_MATCH_CONNLABEL is not set +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=y +CONFIG_NETFILTER_XT_MATCH_CONNMARK=y +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y +# CONFIG_NETFILTER_XT_MATCH_CPU is not set +# CONFIG_NETFILTER_XT_MATCH_DCCP is not set +# CONFIG_NETFILTER_XT_MATCH_DEVGROUP is not set +# CONFIG_NETFILTER_XT_MATCH_DSCP is not set +CONFIG_NETFILTER_XT_MATCH_ECN=y +# CONFIG_NETFILTER_XT_MATCH_ESP is not set +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=y +CONFIG_NETFILTER_XT_MATCH_HELPER=y +CONFIG_NETFILTER_XT_MATCH_HL=y +# CONFIG_NETFILTER_XT_MATCH_IPCOMP is not set +CONFIG_NETFILTER_XT_MATCH_IPRANGE=y +CONFIG_NETFILTER_XT_MATCH_IPVS=y +CONFIG_NETFILTER_XT_MATCH_L2TP=y +CONFIG_NETFILTER_XT_MATCH_LENGTH=y +CONFIG_NETFILTER_XT_MATCH_LIMIT=y +CONFIG_NETFILTER_XT_MATCH_MAC=y +CONFIG_NETFILTER_XT_MATCH_MARK=y +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m +# CONFIG_NETFILTER_XT_MATCH_NFACCT is not set +# CONFIG_NETFILTER_XT_MATCH_OSF is not set +# CONFIG_NETFILTER_XT_MATCH_OWNER is not set +CONFIG_NETFILTER_XT_MATCH_POLICY=y +# CONFIG_NETFILTER_XT_MATCH_PHYSDEV is not set +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=y +CONFIG_NETFILTER_XT_MATCH_QTAGUID=y +CONFIG_NETFILTER_XT_MATCH_QUOTA=y +CONFIG_NETFILTER_XT_MATCH_QUOTA2=y +CONFIG_NETFILTER_XT_MATCH_QUOTA2_LOG=y +# CONFIG_NETFILTER_XT_MATCH_RATEEST is not set +# CONFIG_NETFILTER_XT_MATCH_REALM is not set +# CONFIG_NETFILTER_XT_MATCH_RECENT is not set +# CONFIG_NETFILTER_XT_MATCH_SCTP is not set +CONFIG_NETFILTER_XT_MATCH_SOCKET=y +CONFIG_NETFILTER_XT_MATCH_STATE=y +CONFIG_NETFILTER_XT_MATCH_STATISTIC=y +CONFIG_NETFILTER_XT_MATCH_STRING=y +# CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set +CONFIG_NETFILTER_XT_MATCH_TIME=y +CONFIG_NETFILTER_XT_MATCH_U32=y +# CONFIG_IP_SET is not set +CONFIG_IP_VS=y +# CONFIG_IP_VS_IPV6 is not set +# CONFIG_IP_VS_DEBUG is not set +CONFIG_IP_VS_TAB_BITS=12 + +# +# IPVS transport protocol load balancing support +# +# CONFIG_IP_VS_PROTO_TCP is not set +# CONFIG_IP_VS_PROTO_UDP is not set +# CONFIG_IP_VS_PROTO_AH_ESP is not set +# CONFIG_IP_VS_PROTO_ESP is not set +# CONFIG_IP_VS_PROTO_AH is not set +# CONFIG_IP_VS_PROTO_SCTP is not set + +# +# IPVS scheduler +# +CONFIG_IP_VS_RR=y +# CONFIG_IP_VS_WRR is not set +# CONFIG_IP_VS_LC is not set +# CONFIG_IP_VS_WLC is not set +# CONFIG_IP_VS_LBLC is not set +# CONFIG_IP_VS_LBLCR is not set +# CONFIG_IP_VS_DH is not set +# CONFIG_IP_VS_SH is not set +# CONFIG_IP_VS_SED is not set +# CONFIG_IP_VS_NQ is not set + +# +# IPVS SH scheduler +# +CONFIG_IP_VS_SH_TAB_BITS=8 + +# +# IPVS application helper +# +CONFIG_IP_VS_NFCT=y + +# +# IP: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV4=y +CONFIG_NF_CONNTRACK_IPV4=y +CONFIG_NF_CONNTRACK_PROC_COMPAT=y +CONFIG_IP_NF_IPTABLES=y +CONFIG_IP_NF_MATCH_AH=y +CONFIG_IP_NF_MATCH_ECN=y +# CONFIG_IP_NF_MATCH_RPFILTER is not set +CONFIG_IP_NF_MATCH_TTL=y +CONFIG_IP_NF_FILTER=y +CONFIG_IP_NF_TARGET_REJECT=y +# CONFIG_IP_NF_TARGET_SYNPROXY is not set +# CONFIG_IP_NF_TARGET_ULOG is not set +CONFIG_NF_NAT_IPV4=y +CONFIG_IP_NF_TARGET_MASQUERADE=y +CONFIG_IP_NF_TARGET_NETMAP=y +CONFIG_IP_NF_TARGET_REDIRECT=y +CONFIG_NF_NAT_PROTO_GRE=y +CONFIG_NF_NAT_PPTP=y +CONFIG_NF_NAT_H323=y +CONFIG_IP_NF_MANGLE=y +# CONFIG_IP_NF_TARGET_CLUSTERIP is not set +# CONFIG_IP_NF_TARGET_ECN is not set +# CONFIG_IP_NF_TARGET_TTL is not set +CONFIG_IP_NF_RAW=y +# CONFIG_IP_NF_SECURITY is not set +CONFIG_IP_NF_ARPTABLES=y +CONFIG_IP_NF_ARPFILTER=y +CONFIG_IP_NF_ARP_MANGLE=y + +# +# IPv6: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV6=y +CONFIG_NF_CONNTRACK_IPV6=y +CONFIG_IP6_NF_IPTABLES=y +# CONFIG_IP6_NF_MATCH_AH is not set +# CONFIG_IP6_NF_MATCH_EUI64 is not set +# CONFIG_IP6_NF_MATCH_FRAG is not set +# CONFIG_IP6_NF_MATCH_OPTS is not set +# CONFIG_IP6_NF_MATCH_HL is not set +# CONFIG_IP6_NF_MATCH_IPV6HEADER is not set +# CONFIG_IP6_NF_MATCH_MH is not set +# CONFIG_IP6_NF_MATCH_RPFILTER is not set +# CONFIG_IP6_NF_MATCH_RT is not set +# CONFIG_IP6_NF_TARGET_HL is not set +CONFIG_IP6_NF_FILTER=y +CONFIG_IP6_NF_TARGET_REJECT=y +# CONFIG_IP6_NF_TARGET_SYNPROXY is not set +CONFIG_IP6_NF_MANGLE=y +CONFIG_IP6_NF_RAW=y +# CONFIG_IP6_NF_SECURITY is not set +CONFIG_NF_NAT_IPV6=y +CONFIG_IP6_NF_TARGET_MASQUERADE=y +CONFIG_IP6_NF_TARGET_NPT=y +# CONFIG_BRIDGE_NF_EBTABLES is not set +# CONFIG_IP_DCCP is not set +# CONFIG_IP_SCTP is not set +# CONFIG_RDS is not set +# CONFIG_TIPC is not set +# CONFIG_ATM is not set +CONFIG_L2TP=y +CONFIG_L2TP_DEBUGFS=y +CONFIG_L2TP_V3=y +CONFIG_L2TP_IP=y +CONFIG_L2TP_ETH=y +CONFIG_STP=y +CONFIG_BRIDGE=y +# CONFIG_BRIDGE_IGMP_SNOOPING is not set +# CONFIG_BRIDGE_VLAN_FILTERING is not set +CONFIG_HAVE_NET_DSA=y +CONFIG_VLAN_8021Q=y +# CONFIG_VLAN_8021Q_GVRP is not set +# CONFIG_VLAN_8021Q_MVRP is not set +# CONFIG_DECNET is not set +CONFIG_LLC=y +# CONFIG_LLC2 is not set +# CONFIG_IPX is not set +# CONFIG_ATALK is not set +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +CONFIG_PHONET=y +# CONFIG_IEEE802154 is not set +CONFIG_6LOWPAN_IPHC=m +CONFIG_NET_SCHED=y + +# +# Queueing/Scheduling +# +# CONFIG_NET_SCH_CBQ is not set +CONFIG_NET_SCH_HTB=y +# CONFIG_NET_SCH_HFSC is not set +# CONFIG_NET_SCH_PRIO is not set +# CONFIG_NET_SCH_MULTIQ is not set +# CONFIG_NET_SCH_RED is not set +# CONFIG_NET_SCH_SFB is not set +# CONFIG_NET_SCH_SFQ is not set +# CONFIG_NET_SCH_TEQL is not set +# CONFIG_NET_SCH_TBF is not set +# CONFIG_NET_SCH_GRED is not set +# CONFIG_NET_SCH_DSMARK is not set +# CONFIG_NET_SCH_NETEM is not set +# CONFIG_NET_SCH_DRR is not set +# CONFIG_NET_SCH_MQPRIO is not set +# CONFIG_NET_SCH_CHOKE is not set +# CONFIG_NET_SCH_QFQ is not set +# CONFIG_NET_SCH_CODEL is not set +# CONFIG_NET_SCH_FQ_CODEL is not set +# CONFIG_NET_SCH_FQ is not set +# CONFIG_NET_SCH_HHF is not set +# CONFIG_NET_SCH_PIE is not set +CONFIG_NET_SCH_INGRESS=y +# CONFIG_NET_SCH_PLUG is not set + +# +# Classification +# +CONFIG_NET_CLS=y +# CONFIG_NET_CLS_BASIC is not set +# CONFIG_NET_CLS_TCINDEX is not set +# CONFIG_NET_CLS_ROUTE4 is not set +# CONFIG_NET_CLS_FW is not set +CONFIG_NET_CLS_U32=y +# CONFIG_CLS_U32_PERF is not set +# CONFIG_CLS_U32_MARK is not set +# CONFIG_NET_CLS_RSVP is not set +# CONFIG_NET_CLS_RSVP6 is not set +# CONFIG_NET_CLS_FLOW is not set +CONFIG_NET_CLS_CGROUP=y +# CONFIG_NET_CLS_BPF is not set +CONFIG_NET_EMATCH=y +CONFIG_NET_EMATCH_STACK=32 +# CONFIG_NET_EMATCH_CMP is not set +# CONFIG_NET_EMATCH_NBYTE is not set +CONFIG_NET_EMATCH_U32=y +# CONFIG_NET_EMATCH_META is not set +# CONFIG_NET_EMATCH_TEXT is not set +CONFIG_NET_CLS_ACT=y +CONFIG_NET_ACT_POLICE=y +CONFIG_NET_ACT_GACT=y +# CONFIG_GACT_PROB is not set +CONFIG_NET_ACT_MIRRED=y +# CONFIG_NET_ACT_IPT is not set +# CONFIG_NET_ACT_NAT is not set +# CONFIG_NET_ACT_PEDIT is not set +# CONFIG_NET_ACT_SIMP is not set +# CONFIG_NET_ACT_SKBEDIT is not set +# CONFIG_NET_ACT_CSUM is not set +# CONFIG_NET_CLS_IND is not set +CONFIG_NET_SCH_FIFO=y +# CONFIG_DCB is not set +CONFIG_DNS_RESOLVER=y +# CONFIG_BATMAN_ADV is not set +# CONFIG_OPENVSWITCH is not set +# CONFIG_VSOCKETS is not set +# CONFIG_NETLINK_MMAP is not set +CONFIG_NETLINK_DIAG=y +# CONFIG_NET_MPLS_GSO is not set +# CONFIG_HSR is not set +CONFIG_RPS=y +CONFIG_RFS_ACCEL=y +CONFIG_XPS=y +CONFIG_CGROUP_NET_PRIO=y +CONFIG_CGROUP_NET_CLASSID=y +CONFIG_NET_RX_BUSY_POLL=y +CONFIG_BQL=y +CONFIG_NET_FLOW_LIMIT=y + +# +# Network testing +# +# CONFIG_NET_PKTGEN is not set +# CONFIG_NET_DROP_MONITOR is not set +# CONFIG_HAMRADIO is not set +# CONFIG_CAN is not set +# CONFIG_IRDA is not set +CONFIG_BT=m +CONFIG_BT_RFCOMM=m +CONFIG_BT_RFCOMM_TTY=y +CONFIG_BT_BNEP=m +CONFIG_BT_BNEP_MC_FILTER=y +CONFIG_BT_BNEP_PROTO_FILTER=y +CONFIG_BT_HIDP=m + +# +# Bluetooth device drivers +# +CONFIG_BT_HCIBTUSB=m +CONFIG_BT_HCIBTSDIO=m +CONFIG_BT_HCIUART=m +CONFIG_BT_HCIUART_H4=y +CONFIG_BT_HCIUART_BCSP=y +CONFIG_BT_HCIUART_ATH3K=y +CONFIG_BT_HCIUART_LL=y +CONFIG_BT_HCIUART_3WIRE=y +CONFIG_BT_HCIBCM203X=m +CONFIG_BT_HCIBPA10X=m +CONFIG_BT_HCIBFUSB=m +# CONFIG_BT_HCIVHCI is not set +CONFIG_BT_MRVL=m +CONFIG_BT_MRVL_SDIO=m +CONFIG_BT_ATH3K=m +# CONFIG_AF_RXRPC is not set +CONFIG_FIB_RULES=y +CONFIG_WIRELESS=y +CONFIG_WIRELESS_EXT=y +CONFIG_WEXT_CORE=y +CONFIG_WEXT_PROC=y +CONFIG_WEXT_SPY=y +CONFIG_WEXT_PRIV=y +CONFIG_CFG80211=m +# CONFIG_NL80211_TESTMODE is not set +# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set +# CONFIG_CFG80211_REG_DEBUG is not set +# CONFIG_CFG80211_CERTIFICATION_ONUS is not set +CONFIG_CFG80211_DEFAULT_PS=y +# CONFIG_CFG80211_DEBUGFS is not set +# CONFIG_CFG80211_INTERNAL_REGDB is not set +CONFIG_CFG80211_WEXT=y +CONFIG_LIB80211=m +CONFIG_LIB80211_CRYPT_WEP=m +CONFIG_LIB80211_CRYPT_CCMP=m +CONFIG_LIB80211_CRYPT_TKIP=m +# CONFIG_LIB80211_DEBUG is not set +CONFIG_MAC80211=m +CONFIG_MAC80211_HAS_RC=y +# CONFIG_MAC80211_RC_PID is not set +CONFIG_MAC80211_RC_MINSTREL=y +CONFIG_MAC80211_RC_MINSTREL_HT=y +CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y +CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" +CONFIG_MAC80211_MESH=y +CONFIG_MAC80211_LEDS=y +# CONFIG_MAC80211_DEBUGFS is not set +# CONFIG_MAC80211_MESSAGE_TRACING is not set +# CONFIG_MAC80211_DEBUG_MENU is not set +# CONFIG_WIMAX is not set +CONFIG_RFKILL=y +CONFIG_RFKILL_PM=y +CONFIG_RFKILL_LEDS=y +# CONFIG_RFKILL_INPUT is not set +# CONFIG_RFKILL_REGULATOR is not set +# CONFIG_RFKILL_GPIO is not set +# CONFIG_NET_9P is not set +# CONFIG_CAIF is not set +# CONFIG_CEPH_LIB is not set +# CONFIG_NFC is not set + +# +# Device Drivers +# + +# +# Amlogic Device Drivers +# +CONFIG_MESON_TIMER=y +# CONFIG_MESON_LOCAL_TIMER is not set +CONFIG_MESON_BC_TIMER=y +CONFIG_AM_UART=y +CONFIG_SERIAL_MESON_CONSOLE=y +# CONFIG_PRINTK_NOBLOCK_MODE is not set +CONFIG_AML_CPU_VERSION=y +CONFIG_AML_MESON64_VERSION=y +# CONFIG_AML_M8_VERSION is not set +CONFIG_AMLOGIC_IOMAP=y +CONFIG_PINCTRL_AMLOGIC=y + +# +# USB Support +# +CONFIG_AMLOGIC_USB=y +CONFIG_USB_DWC_OTG_HCD=y +CONFIG_USB_HOST_ELECT_TEST=y + +# +# I2C Hardware Bus support +# +CONFIG_I2C_AML=y +# CONFIG_I2C_SLAVE_AML is not set +# CONFIG_I2C_SW_AML is not set +# CONFIG_BCM2079X_I2C is not set +CONFIG_AMLOGIC_PWM=y +CONFIG_PWM_MESON=y + +# +# HDMI TX Support +# +CONFIG_AML_HDMI_TX=y +CONFIG_AML_HDMI_TX_20=y +# CONFIG_AML_HDMI_TX_14 is not set +# CONFIG_AML_RTC is not set +CONFIG_AML_VRTC=y +# CONFIG_AM_IRBLASTER is not set +# CONFIG_AML_DEBUG is not set +CONFIG_AML_REG_ACCESS=y + +# +# Power Management Support +# +# CONFIG_AML_POWER_SUPPORT is not set +# CONFIG_AML_PMU_ALGORITHM_SUPPORT is not set +CONFIG_AML_PMU4=y + +# +# Ethernet Support +# +CONFIG_AM_PHY=y +CONFIG_PHYLIB=y + +# +# MII PHY device drivers +# +CONFIG_AML_PHY=y +CONFIG_AML_SMSC=y +CONFIG_AML_ICPLUS=y +CONFIG_AML_MICREL=y +CONFIG_AML_REALTEK=y + +# +# MMC/SD/SDIO Host Controller Drivers +# + +# +# Multimedia Card support +# +CONFIG_MMC_AML=y +# CONFIG_MMC_AML_DEBUG is not set +# CONFIG_AML_MMC_DEBUG_FORCE_SINGLE_BLOCK_RW is not set + +# +# Amlogic VPU Drivers +# + +# +# Amlogic VPU Driver +# +CONFIG_AML_VPU=y +# CONFIG_AML_VPU_DYNAMIC_ADJ is not set + +# +# ION support +# +CONFIG_AMLOGIC_ION=y + +# +# Amlogic Display Driver +# +CONFIG_AML_DISPLAY=y + +# +# Amlogic VOUT Module +# +CONFIG_AM_VOUT=y +CONFIG_AM_TV_OUTPUT=y +CONFIG_AML_VOUT_FRAMERATE_AUTOMATION=y +# CONFIG_AML_VOUT_CC_BYPASS is not set +# CONFIG_AML_VDAC_HW_SWITCH is not set +CONFIG_AML_WSS=y + +# +# Amlogic OSD Module +# +CONFIG_AM_FB=y +CONFIG_FB_OSD_SUPPORT_SYNC_FENCE=y +CONFIG_FB_OSD_VSYNC_RDMA=y +CONFIG_FB_OSD2_ENABLE=y +# CONFIG_FB_OSD2_CURSOR is not set + +# +# Amlogic VOUT2 Module +# +# CONFIG_AM_VOUT2 is not set +# CONFIG_AM_TV_OUTPUT2 is not set + +# +# Amlogic OSD_EXT Module +# +# CONFIG_AM_FB_EXT is not set + +# +# Amlogic GE2D Module +# +CONFIG_AM_GE2D=y +# CONFIG_AM_GE2D_MORE_SECURITY is not set +CONFIG_AM_LOGO=y + +# +# Amlogic LCD Output Module +# +# CONFIG_AML_LCD is not set + +# +# Amlogic Backlight Support +# +# CONFIG_AML_BACKLIGHT is not set +CONFIG_AMLOGIC_LED=y +CONFIG_AML_LED_SYS=y +CONFIG_AML_LED_PWM=y +CONFIG_AML_LED_TRIGGER_BREATHE=y +CONFIG_AML_LED_TRIGGER_SCPI=y +CONFIG_AML_LED_TRIGGER_SCPISTOP=y +CONFIG_AML_LED_TRIGGER_DISTURB=y + +# +# Canvas management driver +# +CONFIG_AML_CANVAS=y +CONFIG_AMLOGIC_CLK=y +CONFIG_AMLOGIC_SEC=y +# CONFIG_AML_SERR is not set +CONFIG_AMLOGIC_SECURITY_KEY=y +CONFIG_AM_PTSSERVER=y +# CONFIG_H264_4K2K_SINGLE_CORE is not set +CONFIG_VSYNC_RDMA=y +# CONFIG_TVIN_VIUIN is not set +CONFIG_AM_VIDEO=y +# CONFIG_AM_VIDEO2 is not set +# CONFIG_SUPPORT_VIDEO_ON_VPP2 is not set +CONFIG_GE2D_KEEP_FRAME=y + +# +# Video Decoders +# +# CONFIG_MULTI_DEC is not set +CONFIG_AM_VDEC_MPEG12=y +CONFIG_AM_VDEC_MPEG4=y +# CONFIG_AM_VDEC_MMPEG4 is not set +CONFIG_AM_VDEC_VC1=y +CONFIG_AM_VDEC_H264=y +# CONFIG_AM_VDEC_MH264 is not set +CONFIG_AM_VDEC_H264MVC=y +CONFIG_AM_VDEC_H264_4K2K=y +CONFIG_AM_VDEC_H265=y +CONFIG_AM_VDEC_VP9=y +CONFIG_AM_VDEC_MJPEG=y +# CONFIG_AM_ENCODER is not set +# CONFIG_AM_JPEG_ENCODER is not set +# CONFIG_AM_PIC_DEC is not set +CONFIG_AM_VDEC_REAL=y +CONFIG_AM_VDEC_AVS=y +# CONFIG_AM_JPEGDEC is not set +CONFIG_AM_TIMESYNC=y +CONFIG_AM_STREAMING=y +CONFIG_AM_SUBTITLE=y +CONFIG_AM_VIDEOCAPTURE=y +# CONFIG_AM_HEVCENC is not set + +# +# Deinterlace driver +# +CONFIG_DEINTERLACE=y +# CONFIG_AM_DEINTERLACE_SD_ONLY is not set +CONFIG_AML_VFM=y + +# +# EFUSE Support +# +CONFIG_EFUSE=y +# CONFIG_EFUSE_WRITE_VERSION_PERMIT is not set + +# +# key management Support +# +CONFIG_KEY_MANAGE=y + +# +# Audio Interface +# +CONFIG_AMAUDIO=y + +# +# Amlogic Audio Interface V2 +# +CONFIG_AMAUDIO2=y + +# +# Audio dsp process +# +CONFIG_AML_AUDIO_DSP=y + +# +# Post Process Manager driver +# +CONFIG_POST_PROCESS_MANAGER=y +CONFIG_POST_PROCESS_MANAGER_PPSCALER=y +# CONFIG_POST_PROCESS_MANAGER_3D_PROCESS is not set + +# +# Amlogic Wifi Driver +# +CONFIG_AM_WIFI=y +# CONFIG_BCMDHD_USE_STATIC_BUF is not set +CONFIG_AML_POWER_RESET=y +# CONFIG_M8_POWER_RESET is not set +CONFIG_GXBB_POWER_RESET=y + +# +# Amlogic Bt Rfkill Driver +# +CONFIG_BT_DEVICE=y +# CONFIG_BLUESLEEP is not set + +# +# Amlogic ion video support +# +# CONFIG_VIDEOBUF2_ION is not set +# CONFIG_AMLOGIC_IONVIDEO is not set + +# +# V4L2 Video Support +# +CONFIG_V4L_AMLOGIC_VIDEO=y +# CONFIG_V4L_AMLOGIC_VIDEO2 is not set + +# +# Amlogic TVIN Drivers +# +CONFIG_TVIN=y +CONFIG_TVIN_VDIN=y +CONFIG_TVIN_AFE=y +# CONFIG_ADC_DOUBLE_SAMPLING_FOR_SD is not set +# CONFIG_ADC_DOUBLE_SAMPLING_FOR_CVBS is not set +# CONFIG_TVIN_VBI is not set +CONFIG_TVIN_HDMI=y +# CONFIG_TVIN_HDMI_CEC is not set +CONFIG_TVIN_HDMI_EXT=y +CONFIG_TVIN_HDMI_EXT_SII9135=y +# CONFIG_TVIN_BT656 is not set +# CONFIG_VIUIN is not set +# CONFIG_TVIN_ISP is not set + +# +# Amlogic VECM Drivers +# + +# +# Amlogic amvecm Driver +# +CONFIG_AM_VECM=y +CONFIG_AML_NAND=y +CONFIG_AML_NEXT_GEN_NAND=y +CONFIG_AML_NFTL_NEW=y +CONFIG_AML_NAND_KEY=y +# CONFIG_SECURE_NAND is not set +CONFIG_AM_INPUT=y +CONFIG_AM_SARADC=y +CONFIG_MESON_NEW_INPUT_REMOTE=y +CONFIG_NEW_AM_REMOTE=y +CONFIG_MESON_INPUT_KEYBOARD=y +# CONFIG_ADC_KEYPADS_AM is not set +CONFIG_AML_GPIO_KEY=y +# CONFIG_SENSOR_DEVICES is not set +# CONFIG_AMLOGIC_AVIN_DETECT is not set +# CONFIG_AMLOGIC_MESON_CPUFREQ is not set +CONFIG_AMLOGIC_SCPI_CPUFREQ=y +CONFIG_MESON_SUSPEND=y +# CONFIG_M8M2_SUSPEND is not set +CONFIG_GXBB_SUSPEND=y + +# +# Amlogic DVB driver +# +# CONFIG_AM_DVB is not set +# CONFIG_AM_ATVDEMOD is not set + +# +# AMLOGIC CI Driver +# +# CONFIG_AM_PCMCIA is not set +# CONFIG_AM_SPI is not set +# CONFIG_AML_SMARTCARD is not set + +# +# MESON MHU mailbox Support +# +CONFIG_MESON_MHU_MBOX=y +CONFIG_ARM_SCPI_PROTOCOL=y + +# +# RDMA management driver +# +CONFIG_AML_RDMA=y + +# +# Amlogic temperature sensor +# +CONFIG_AML_TEMP_SENSOR=y +# CONFIG_AUDIO_DATA is not set +CONFIG_INSTABOOT=y +# CONFIG_INSTABOOT_MEM_MG is not set + +# +# Amlogic Camera Support +# +# CONFIG_VIDEO_AMLOGIC_CAPTURE is not set +CONFIG_AML_CODEC_MM=y +# CONFIG_AML_WDT is not set + +# +# AMLOGIC SPI Hardware bus support +# +CONFIG_AMLOGIC_SPICC_MASTER=y +# CONFIG_AMLOGIC_JTAG is not set +CONFIG_AMLOGIC_CPU_INFO=y + +# +# defend img file update support +# +# CONFIG_DEFEND_IMG is not set + +# +# AO CEC Support +# +CONFIG_AML_AO_CEC=y + +# +# Amlogic Crypto Support +# +# CONFIG_CRYPTO_AML is not set +CONFIG_AMLOGIC_WATCHPOINT=y + +# +# ESM Support +# +CONFIG_AML_ESM=y + +# +# Generic Driver Options +# +CONFIG_UEVENT_HELPER_PATH="/sbin/mdev" +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +CONFIG_FW_LOADER=y +CONFIG_FIRMWARE_IN_KERNEL=y +CONFIG_EXTRA_FIRMWARE="" +CONFIG_FW_LOADER_USER_HELPER=y +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_DEVRES is not set +# CONFIG_SYS_HYPERVISOR is not set +# CONFIG_GENERIC_CPU_DEVICES is not set +CONFIG_HAVE_CPU_AUTOPROBE=y +CONFIG_GENERIC_CPU_AUTOPROBE=y +CONFIG_REGMAP=y +CONFIG_REGMAP_I2C=y +CONFIG_REGMAP_SPI=y +CONFIG_REGMAP_MMIO=y +CONFIG_DMA_SHARED_BUFFER=y +CONFIG_DMA_CMA=y + +# +# Default contiguous memory area size: +# +CONFIG_CMA_SIZE_MBYTES=12 +CONFIG_CMA_SIZE_SEL_MBYTES=y +# CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set +# CONFIG_CMA_SIZE_SEL_MIN is not set +# CONFIG_CMA_SIZE_SEL_MAX is not set +CONFIG_CMA_ALIGNMENT=8 + +# +# Bus devices +# +CONFIG_CONNECTOR=m +CONFIG_MTD=y +# CONFIG_MTD_TESTS is not set +# CONFIG_MTD_REDBOOT_PARTS is not set +# CONFIG_MTD_CMDLINE_PARTS is not set +CONFIG_MTD_OF_PARTS=y +# CONFIG_MTD_AR7_PARTS is not set + +# +# User Modules And Translation Layers +# +CONFIG_MTD_BLKDEVS=y +CONFIG_MTD_BLOCK=y +# CONFIG_FTL is not set +# CONFIG_NFTL is not set +# CONFIG_INFTL is not set +# CONFIG_RFD_FTL is not set +# CONFIG_SSFDC is not set +# CONFIG_SM_FTL is not set +# CONFIG_MTD_OOPS is not set +# CONFIG_MTD_SWAP is not set + +# +# RAM/ROM/Flash chip drivers +# +CONFIG_MTD_CFI=y +# CONFIG_MTD_JEDECPROBE is not set +CONFIG_MTD_GEN_PROBE=y +# CONFIG_MTD_CFI_ADV_OPTIONS is not set +CONFIG_MTD_MAP_BANK_WIDTH_1=y +CONFIG_MTD_MAP_BANK_WIDTH_2=y +CONFIG_MTD_MAP_BANK_WIDTH_4=y +# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set +CONFIG_MTD_CFI_I1=y +CONFIG_MTD_CFI_I2=y +# CONFIG_MTD_CFI_I4 is not set +# CONFIG_MTD_CFI_I8 is not set +CONFIG_MTD_CFI_INTELEXT=y +# CONFIG_MTD_CFI_AMDSTD is not set +# CONFIG_MTD_CFI_STAA is not set +CONFIG_MTD_CFI_UTIL=y +# CONFIG_MTD_RAM is not set +# CONFIG_MTD_ROM is not set +# CONFIG_MTD_ABSENT is not set + +# +# Mapping drivers for chip access +# +# CONFIG_MTD_COMPLEX_MAPPINGS is not set +# CONFIG_MTD_PHYSMAP is not set +# CONFIG_MTD_PHYSMAP_OF is not set +# CONFIG_MTD_PLATRAM is not set + +# +# Self-contained MTD device drivers +# +# CONFIG_MTD_DATAFLASH is not set +# CONFIG_MTD_M25P80 is not set +# CONFIG_MTD_SST25L is not set +# CONFIG_MTD_SLRAM is not set +# CONFIG_MTD_PHRAM is not set +# CONFIG_MTD_MTDRAM is not set +# CONFIG_MTD_BLOCK2MTD is not set + +# +# Disk-On-Chip Device Drivers +# +# CONFIG_MTD_DOCG3 is not set +CONFIG_MTD_NAND_IDS=y +CONFIG_MTD_NAND_ECC=y +# CONFIG_MTD_NAND_ECC_SMC is not set +CONFIG_MTD_NAND=y +# CONFIG_MTD_NAND_ECC_BCH is not set +# CONFIG_MTD_SM_COMMON is not set +# CONFIG_MTD_NAND_DENALI is not set +# CONFIG_MTD_NAND_GPIO is not set +# CONFIG_MTD_NAND_DISKONCHIP is not set +# CONFIG_MTD_NAND_DOCG4 is not set +# CONFIG_MTD_NAND_NANDSIM is not set +# CONFIG_MTD_NAND_PLATFORM is not set +# CONFIG_MTD_ONENAND is not set + +# +# LPDDR flash memory drivers +# +# CONFIG_MTD_LPDDR is not set +CONFIG_MTD_UBI=y +CONFIG_MTD_UBI_WL_THRESHOLD=4096 +CONFIG_MTD_UBI_BEB_LIMIT=20 +# CONFIG_MTD_UBI_FASTMAP is not set +# CONFIG_MTD_UBI_GLUEBI is not set +CONFIG_DTC=y +CONFIG_OF=y + +# +# Device Tree and Open Firmware support +# +CONFIG_PROC_DEVICETREE=y +# CONFIG_OF_SELFTEST is not set +CONFIG_OF_FLATTREE=y +CONFIG_OF_EARLY_FLATTREE=y +CONFIG_OF_ADDRESS=y +CONFIG_OF_IRQ=y +CONFIG_OF_NET=y +CONFIG_OF_MDIO=y +CONFIG_OF_MTD=y +CONFIG_OF_RESERVED_MEM=y +# CONFIG_PARPORT is not set +CONFIG_BLK_DEV=y +# CONFIG_BLK_DEV_NULL_BLK is not set +CONFIG_ZRAM=m +# CONFIG_ZRAM_DEBUG is not set +# CONFIG_BLK_DEV_COW_COMMON is not set +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 +# CONFIG_BLK_DEV_CRYPTOLOOP is not set +# CONFIG_BLK_DEV_DRBD is not set +CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_RAM is not set +# CONFIG_CDROM_PKTCDVD is not set +# CONFIG_ATA_OVER_ETH is not set +CONFIG_VIRTIO_BLK=y +# CONFIG_BLK_DEV_RBD is not set + +# +# Misc devices +# +# CONFIG_SENSORS_LIS3LV02D is not set +# CONFIG_AD525X_DPOT is not set +# CONFIG_ATMEL_PWM is not set +# CONFIG_DUMMY_IRQ is not set +# CONFIG_ICS932S401 is not set +# CONFIG_ATMEL_SSC is not set +# CONFIG_ENCLOSURE_SERVICES is not set +# CONFIG_APDS9802ALS is not set +# CONFIG_ISL29003 is not set +# CONFIG_ISL29020 is not set +# CONFIG_SENSORS_TSL2550 is not set +# CONFIG_SENSORS_BH1780 is not set +# CONFIG_SENSORS_BH1770 is not set +# CONFIG_SENSORS_APDS990X is not set +# CONFIG_HMC6352 is not set +# CONFIG_DS1682 is not set +# CONFIG_TI_DAC7512 is not set +# CONFIG_UID_STAT is not set +# CONFIG_BMP085_I2C is not set +# CONFIG_BMP085_SPI is not set +# CONFIG_USB_SWITCH_FSA9480 is not set +# CONFIG_LATTICE_ECP3_CONFIG is not set +# CONFIG_SRAM is not set +# CONFIG_C2PORT is not set + +# +# EEPROM support +# +# CONFIG_EEPROM_AT24 is not set +# CONFIG_EEPROM_AT25 is not set +# CONFIG_EEPROM_LEGACY is not set +# CONFIG_EEPROM_MAX6875 is not set +CONFIG_EEPROM_93CX6=m +# CONFIG_EEPROM_93XX46 is not set + +# +# Texas Instruments shared transport line discipline +# +# CONFIG_TI_ST is not set +# CONFIG_SENSORS_LIS3_SPI is not set +# CONFIG_SENSORS_LIS3_I2C is not set + +# +# Altera FPGA firmware download module +# +# CONFIG_ALTERA_STAPL is not set + +# +# Intel MIC Host Driver +# + +# +# Intel MIC Card Driver +# + +# +# SCSI device support +# +CONFIG_SCSI_MOD=y +# CONFIG_RAID_ATTRS is not set +CONFIG_SCSI=y +CONFIG_SCSI_DMA=y +CONFIG_SCSI_TGT=m +CONFIG_SCSI_NETLINK=y +CONFIG_SCSI_PROC_FS=y + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=y +# CONFIG_CHR_DEV_ST is not set +# CONFIG_CHR_DEV_OSST is not set +CONFIG_BLK_DEV_SR=y +# CONFIG_BLK_DEV_SR_VENDOR is not set +CONFIG_CHR_DEV_SG=y +# CONFIG_CHR_DEV_SCH is not set +CONFIG_SCSI_MULTI_LUN=y +# CONFIG_SCSI_CONSTANTS is not set +# CONFIG_SCSI_LOGGING is not set +# CONFIG_SCSI_SCAN_ASYNC is not set + +# +# SCSI Transports +# +# CONFIG_SCSI_SPI_ATTRS is not set +CONFIG_SCSI_FC_ATTRS=m +# CONFIG_SCSI_FC_TGT_ATTRS is not set +CONFIG_SCSI_ISCSI_ATTRS=m +# CONFIG_SCSI_SAS_ATTRS is not set +# CONFIG_SCSI_SAS_LIBSAS is not set +# CONFIG_SCSI_SRP_ATTRS is not set +CONFIG_SCSI_LOWLEVEL=y +CONFIG_ISCSI_TCP=m +CONFIG_ISCSI_BOOT_SYSFS=m +# CONFIG_SCSI_UFSHCD is not set +CONFIG_LIBFC=m +CONFIG_LIBFCOE=m +CONFIG_SCSI_DEBUG=m +CONFIG_SCSI_VIRTIO=m +# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set +# CONFIG_SCSI_DH is not set +# CONFIG_SCSI_OSD_INITIATOR is not set +CONFIG_HAVE_PATA_PLATFORM=y +# CONFIG_ATA is not set +CONFIG_MD=y +CONFIG_BLK_DEV_MD=m +CONFIG_MD_LINEAR=m +CONFIG_MD_RAID0=m +CONFIG_MD_RAID1=m +CONFIG_MD_RAID10=m +CONFIG_MD_RAID456=m +CONFIG_MD_MULTIPATH=m +CONFIG_MD_FAULTY=m +# CONFIG_BCACHE is not set +# CONFIG_BLK_DEV_DM is not set +# CONFIG_TARGET_CORE is not set +CONFIG_NETDEVICES=y +CONFIG_MII=y +CONFIG_NET_CORE=y +CONFIG_BONDING=m +CONFIG_DUMMY=y +# CONFIG_EQUALIZER is not set +# CONFIG_IFB is not set +CONFIG_NET_TEAM=m +CONFIG_NET_TEAM_MODE_BROADCAST=m +CONFIG_NET_TEAM_MODE_ROUNDROBIN=m +CONFIG_NET_TEAM_MODE_RANDOM=m +CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m +CONFIG_NET_TEAM_MODE_LOADBALANCE=m +CONFIG_MACVLAN=y +# CONFIG_MACVTAP is not set +CONFIG_VXLAN=y +CONFIG_NETCONSOLE=y +# CONFIG_NETCONSOLE_DYNAMIC is not set +CONFIG_NETPOLL=y +# CONFIG_NETPOLL_TRAP is not set +CONFIG_NET_POLL_CONTROLLER=y +CONFIG_TUN=y +CONFIG_VETH=y +CONFIG_VIRTIO_NET=y +CONFIG_NLMON=y + +# +# CAIF transport drivers +# + +# +# Distributed Switch Architecture drivers +# +# CONFIG_NET_DSA_MV88E6XXX is not set +# CONFIG_NET_DSA_MV88E6060 is not set +# CONFIG_NET_DSA_MV88E6XXX_NEED_PPU is not set +# CONFIG_NET_DSA_MV88E6131 is not set +# CONFIG_NET_DSA_MV88E6123_61_65 is not set +CONFIG_ETHERNET=y +CONFIG_NET_VENDOR_ARC=y +# CONFIG_ARC_EMAC is not set +CONFIG_NET_CADENCE=y +# CONFIG_ARM_AT91_ETHER is not set +# CONFIG_MACB is not set +CONFIG_NET_VENDOR_BROADCOM=y +# CONFIG_B44 is not set +# CONFIG_NET_CALXEDA_XGMAC is not set +# CONFIG_DNET is not set +CONFIG_NET_VENDOR_INTEL=y +CONFIG_NET_VENDOR_I825XX=y +CONFIG_NET_VENDOR_MARVELL=y +# CONFIG_MVMDIO is not set +CONFIG_NET_VENDOR_MICREL=y +# CONFIG_KS8851 is not set +# CONFIG_KS8851_MLL is not set +CONFIG_NET_VENDOR_MICROCHIP=y +# CONFIG_ENC28J60 is not set +CONFIG_NET_VENDOR_NATSEMI=y +CONFIG_NET_VENDOR_8390=y +# CONFIG_ETHOC is not set +# CONFIG_SH_ETH is not set +CONFIG_NET_VENDOR_SEEQ=y +CONFIG_NET_VENDOR_SMSC=y +CONFIG_SMC91X=y +CONFIG_SMSC911X=y +# CONFIG_SMSC911X_ARCH_HOOKS is not set +CONFIG_NET_VENDOR_STMICRO=y +CONFIG_STMMAC_ETH=y +CONFIG_STMMAC_PLATFORM=y +CONFIG_DWMAC_MESON=y +CONFIG_STMMAC_DEBUG_FS=y +CONFIG_STMMAC_DA=y +CONFIG_NET_VENDOR_VIA=y +CONFIG_NET_VENDOR_WIZNET=y +# CONFIG_WIZNET_W5100 is not set +# CONFIG_WIZNET_W5300 is not set + +# +# MII PHY device drivers +# +CONFIG_AMLOGIC_PHY=y +# CONFIG_AT803X_PHY is not set +# CONFIG_AMD_PHY is not set +# CONFIG_MARVELL_PHY is not set +# CONFIG_DAVICOM_PHY is not set +# CONFIG_QSEMI_PHY is not set +# CONFIG_LXT_PHY is not set +# CONFIG_CICADA_PHY is not set +# CONFIG_VITESSE_PHY is not set +# CONFIG_SMSC_PHY is not set +# CONFIG_BROADCOM_PHY is not set +# CONFIG_BCM87XX_PHY is not set +CONFIG_ICPLUS_PHY=y +CONFIG_REALTEK_PHY=y +# CONFIG_NATIONAL_PHY is not set +# CONFIG_STE10XP is not set +# CONFIG_LSI_ET1011C_PHY is not set +# CONFIG_MICREL_PHY is not set +# CONFIG_FIXED_PHY is not set +# CONFIG_MDIO_BITBANG is not set +# CONFIG_MDIO_BUS_MUX_GPIO is not set +# CONFIG_MDIO_BUS_MUX_MMIOREG is not set +# CONFIG_MICREL_KS8995MA is not set +CONFIG_PPP=y +CONFIG_PPP_BSDCOMP=m +CONFIG_PPP_DEFLATE=m +# CONFIG_PPP_FILTER is not set +CONFIG_PPP_MPPE=m +# CONFIG_PPP_MULTILINK is not set +CONFIG_PPPOE=m +CONFIG_PPPOL2TP=m +CONFIG_PPPOLAC=y +CONFIG_PPPOPNS=y +CONFIG_PPP_ASYNC=m +# CONFIG_PPP_SYNC_TTY is not set +# CONFIG_SLIP is not set +CONFIG_SLHC=y + +# +# USB Network Adapters +# +CONFIG_USB_CATC=m +CONFIG_USB_KAWETH=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_RTL8150=m +CONFIG_USB_RTL8152=m +CONFIG_USB_USBNET=y +CONFIG_USB_NET_AX8817X=m +CONFIG_USB_NET_AX88179_178A=m +CONFIG_USB_NET_CDCETHER=y +CONFIG_USB_NET_CDC_EEM=m +CONFIG_USB_NET_CDC_NCM=y +CONFIG_USB_NET_HUAWEI_CDC_NCM=m +CONFIG_USB_NET_CDC_MBIM=m +CONFIG_USB_NET_DM9601=m +CONFIG_USB_NET_SR9700=m +CONFIG_USB_NET_SR9800=m +CONFIG_USB_NET_SMSC75XX=m +CONFIG_USB_NET_SMSC95XX=m +CONFIG_USB_NET_GL620A=m +CONFIG_USB_NET_NET1080=m +CONFIG_USB_NET_PLUSB=m +CONFIG_USB_NET_MCS7830=m +CONFIG_USB_NET_RNDIS_HOST=m +CONFIG_USB_NET_CDC_SUBSET=m +CONFIG_USB_ALI_M5632=y +CONFIG_USB_AN2720=y +CONFIG_USB_BELKIN=y +CONFIG_USB_ARMLINUX=y +CONFIG_USB_EPSON2888=y +CONFIG_USB_KC2190=y +CONFIG_USB_NET_ZAURUS=m +CONFIG_USB_NET_CX82310_ETH=m +CONFIG_USB_NET_KALMIA=m +CONFIG_USB_NET_QMI_WWAN=m +CONFIG_USB_HSO=m +CONFIG_USB_NET_INT51X1=m +CONFIG_USB_CDC_PHONET=m +CONFIG_USB_IPHETH=m +CONFIG_USB_SIERRA_NET=m +CONFIG_USB_VL600=m +CONFIG_WLAN=y +# CONFIG_LIBERTAS_THINFIRM is not set +CONFIG_AT76C50X_USB=m +CONFIG_USB_ZD1201=m +CONFIG_USB_NET_RNDIS_WLAN=m +CONFIG_RTL8187=m +CONFIG_RTL8187_LEDS=y +# CONFIG_MAC80211_HWSIM is not set +# CONFIG_WIFI_CONTROL_FUNC is not set +CONFIG_ATH_COMMON=m +CONFIG_ATH_CARDS=m +# CONFIG_ATH_DEBUG is not set +CONFIG_ATH9K_HW=m +CONFIG_ATH9K_COMMON=m +CONFIG_ATH9K_BTCOEX_SUPPORT=y +CONFIG_ATH9K=m +CONFIG_ATH9K_AHB=y +# CONFIG_ATH9K_DEBUGFS is not set +# CONFIG_ATH9K_WOW is not set +# CONFIG_ATH9K_LEGACY_RATE_CONTROL is not set +CONFIG_ATH9K_RFKILL=y +CONFIG_ATH9K_HTC=m +# CONFIG_ATH9K_HTC_DEBUGFS is not set +CONFIG_CARL9170=m +CONFIG_CARL9170_LEDS=y +CONFIG_CARL9170_WPC=y +CONFIG_CARL9170_HWRNG=y +CONFIG_ATH6KL=m +# CONFIG_ATH6KL_SDIO is not set +CONFIG_ATH6KL_USB=m +# CONFIG_ATH6KL_DEBUG is not set +# CONFIG_ATH6KL_TRACING is not set +CONFIG_AR5523=m +CONFIG_ATH10K=m +# CONFIG_ATH10K_DEBUG is not set +# CONFIG_ATH10K_DEBUGFS is not set +# CONFIG_ATH10K_TRACING is not set +# CONFIG_WCN36XX is not set +CONFIG_B43=m +CONFIG_B43_SSB=y +CONFIG_B43_SDIO=y +CONFIG_B43_PIO=y +CONFIG_B43_PHY_N=y +CONFIG_B43_PHY_LP=y +CONFIG_B43_LEDS=y +CONFIG_B43_HWRNG=y +# CONFIG_B43_DEBUG is not set +CONFIG_B43LEGACY=m +CONFIG_B43LEGACY_LEDS=y +CONFIG_B43LEGACY_HWRNG=y +CONFIG_B43LEGACY_DEBUG=y +CONFIG_B43LEGACY_DMA=y +CONFIG_B43LEGACY_PIO=y +CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y +# CONFIG_B43LEGACY_DMA_MODE is not set +# CONFIG_B43LEGACY_PIO_MODE is not set +CONFIG_BRCMUTIL=m +# CONFIG_BRCMSMAC is not set +CONFIG_BRCMFMAC=m +CONFIG_BRCMFMAC_SDIO=y +CONFIG_BRCMFMAC_USB=y +# CONFIG_BRCM_TRACING is not set +# CONFIG_BRCMDBG is not set +CONFIG_HOSTAP=m +# CONFIG_HOSTAP_FIRMWARE is not set +# CONFIG_LIBERTAS is not set +CONFIG_P54_COMMON=m +CONFIG_P54_USB=m +# CONFIG_P54_SPI is not set +CONFIG_P54_LEDS=y +CONFIG_RT2X00=m +CONFIG_RT2500USB=m +CONFIG_RT73USB=m +CONFIG_RT2800USB=m +CONFIG_RT2800USB_RT33XX=y +CONFIG_RT2800USB_RT35XX=y +CONFIG_RT2800USB_RT3573=y +CONFIG_RT2800USB_RT53XX=y +CONFIG_RT2800USB_RT55XX=y +CONFIG_RT2800USB_UNKNOWN=y +CONFIG_RT2800_LIB=m +CONFIG_RT2X00_LIB_USB=m +CONFIG_RT2X00_LIB=m +CONFIG_RT2X00_LIB_FIRMWARE=y +CONFIG_RT2X00_LIB_CRYPTO=y +CONFIG_RT2X00_LIB_LEDS=y +# CONFIG_RT2X00_DEBUG is not set +CONFIG_RTL_CARDS=m +CONFIG_RTL8192CU=m +CONFIG_RTLWIFI=m +CONFIG_RTLWIFI_USB=m +# CONFIG_RTLWIFI_DEBUG is not set +CONFIG_RTL8192C_COMMON=m +CONFIG_BCMDHD=m +CONFIG_BCMDHD_FW_PATH="/lib/firmware/brcm/fw_bcmdhd.bin" +CONFIG_BCMDHD_NVRAM_PATH="/lib/firmware/brcm/nvram.txt" +CONFIG_BCMDHD_SDIO=y +CONFIG_BCMDHD_OOB=y +# CONFIG_BCMDHD_SDIO_IRQ is not set +# CONFIG_WL_TI is not set +CONFIG_ZD1211RW=m +# CONFIG_ZD1211RW_DEBUG is not set +# CONFIG_MWIFIEX is not set +# CONFIG_CW1200 is not set + +# +# Enable WiMAX (Networking options) to see the WiMAX drivers +# +# CONFIG_WAN is not set +# CONFIG_ISDN is not set + +# +# Input device support +# +CONFIG_INPUT=y +CONFIG_INPUT_FF_MEMLESS=y +# CONFIG_INPUT_POLLDEV is not set +# CONFIG_INPUT_SPARSEKMAP is not set +# CONFIG_INPUT_MATRIXKMAP is not set + +# +# Userland interfaces +# +CONFIG_INPUT_MOUSEDEV=y +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +CONFIG_INPUT_JOYDEV=m +CONFIG_INPUT_EVDEV=y +# CONFIG_INPUT_EVBUG is not set +# CONFIG_INPUT_KEYRESET is not set +# CONFIG_INPUT_KEYCOMBO is not set + +# +# Input Device Drivers +# +CONFIG_INPUT_KEYBOARD=y +# CONFIG_KEYBOARD_ADP5588 is not set +# CONFIG_KEYBOARD_ADP5589 is not set +CONFIG_KEYBOARD_ATKBD=y +# CONFIG_KEYBOARD_QT1070 is not set +# CONFIG_KEYBOARD_QT2160 is not set +# CONFIG_KEYBOARD_LKKBD is not set +# CONFIG_KEYBOARD_GPIO is not set +# CONFIG_KEYBOARD_GPIO_POLLED is not set +# CONFIG_KEYBOARD_TCA6416 is not set +# CONFIG_KEYBOARD_TCA8418 is not set +# CONFIG_KEYBOARD_MATRIX is not set +# CONFIG_KEYBOARD_LM8323 is not set +# CONFIG_KEYBOARD_LM8333 is not set +# CONFIG_KEYBOARD_MAX7359 is not set +# CONFIG_KEYBOARD_MCS is not set +# CONFIG_KEYBOARD_MPR121 is not set +# CONFIG_KEYBOARD_NEWTON is not set +# CONFIG_KEYBOARD_OPENCORES is not set +# CONFIG_KEYBOARD_SAMSUNG is not set +# CONFIG_KEYBOARD_STOWAWAY is not set +# CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_XTKBD is not set +CONFIG_INPUT_MOUSE=y +CONFIG_MOUSE_PS2=y +CONFIG_MOUSE_PS2_ALPS=y +CONFIG_MOUSE_PS2_LOGIPS2PP=y +CONFIG_MOUSE_PS2_SYNAPTICS=y +CONFIG_MOUSE_PS2_CYPRESS=y +CONFIG_MOUSE_PS2_TRACKPOINT=y +# CONFIG_MOUSE_PS2_ELANTECH is not set +# CONFIG_MOUSE_PS2_SENTELIC is not set +# CONFIG_MOUSE_PS2_TOUCHKIT is not set +# CONFIG_MOUSE_SERIAL is not set +CONFIG_MOUSE_APPLETOUCH=m +CONFIG_MOUSE_BCM5974=m +# CONFIG_MOUSE_CYAPA is not set +# CONFIG_MOUSE_VSXXXAA is not set +# CONFIG_MOUSE_GPIO is not set +# CONFIG_MOUSE_SYNAPTICS_I2C is not set +CONFIG_MOUSE_SYNAPTICS_USB=m +CONFIG_INPUT_JOYSTICK=y +CONFIG_JOYSTICK_ANALOG=m +CONFIG_JOYSTICK_A3D=m +CONFIG_JOYSTICK_ADI=m +CONFIG_JOYSTICK_COBRA=m +CONFIG_JOYSTICK_GF2K=m +CONFIG_JOYSTICK_GRIP=m +CONFIG_JOYSTICK_GRIP_MP=m +CONFIG_JOYSTICK_GUILLEMOT=m +CONFIG_JOYSTICK_INTERACT=m +CONFIG_JOYSTICK_SIDEWINDER=m +CONFIG_JOYSTICK_TMDC=m +CONFIG_JOYSTICK_IFORCE=m +CONFIG_JOYSTICK_IFORCE_USB=y +CONFIG_JOYSTICK_IFORCE_232=y +CONFIG_JOYSTICK_WARRIOR=m +CONFIG_JOYSTICK_MAGELLAN=m +CONFIG_JOYSTICK_SPACEORB=m +CONFIG_JOYSTICK_SPACEBALL=m +CONFIG_JOYSTICK_STINGER=m +CONFIG_JOYSTICK_TWIDJOY=m +CONFIG_JOYSTICK_ZHENHUA=m +CONFIG_JOYSTICK_AS5011=m +CONFIG_JOYSTICK_JOYDUMP=m +CONFIG_JOYSTICK_XPAD=m +CONFIG_JOYSTICK_XPAD_FF=y +CONFIG_JOYSTICK_XPAD_LEDS=y +# CONFIG_INPUT_TABLET is not set +# CONFIG_INPUT_TOUCHSCREEN is not set +CONFIG_INPUT_MISC=y +# CONFIG_INPUT_AD714X is not set +# CONFIG_INPUT_BMA150 is not set +# CONFIG_INPUT_MMA8450 is not set +# CONFIG_INPUT_MPU3050 is not set +# CONFIG_INPUT_GP2A is not set +# CONFIG_INPUT_GPIO_BEEPER is not set +# CONFIG_INPUT_GPIO_TILT_POLLED is not set +# CONFIG_INPUT_ATI_REMOTE2 is not set +# CONFIG_INPUT_KEYCHORD is not set +# CONFIG_INPUT_KEYSPAN_REMOTE is not set +# CONFIG_INPUT_KXTJ9 is not set +# CONFIG_INPUT_POWERMATE is not set +# CONFIG_INPUT_YEALINK is not set +# CONFIG_INPUT_CM109 is not set +CONFIG_INPUT_UINPUT=y +# CONFIG_INPUT_GPIO is not set +# CONFIG_INPUT_PCF8574 is not set +# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set +# CONFIG_INPUT_ADXL34X is not set +# CONFIG_INPUT_IMS_PCU is not set +# CONFIG_INPUT_CMA3000 is not set + +# +# Hardware I/O ports +# +CONFIG_SERIO=y +CONFIG_SERIO_SERPORT=y +CONFIG_SERIO_AMBAKMI=y +CONFIG_SERIO_LIBPS2=y +# CONFIG_SERIO_RAW is not set +# CONFIG_SERIO_ALTERA_PS2 is not set +# CONFIG_SERIO_PS2MULT is not set +# CONFIG_SERIO_ARC_PS2 is not set +# CONFIG_SERIO_APBPS2 is not set +# CONFIG_SERIO_OLPC_APSP is not set +CONFIG_GAMEPORT=m +# CONFIG_GAMEPORT_NS558 is not set +# CONFIG_GAMEPORT_L4 is not set + +# +# Character devices +# +CONFIG_TTY=y +CONFIG_VT=y +CONFIG_CONSOLE_TRANSLATIONS=y +CONFIG_VT_CONSOLE=y +CONFIG_VT_CONSOLE_SLEEP=y +CONFIG_HW_CONSOLE=y +CONFIG_VT_HW_CONSOLE_BINDING=y +CONFIG_UNIX98_PTYS=y +CONFIG_DEVPTS_MULTIPLE_INSTANCES=y +CONFIG_LEGACY_PTYS=y +CONFIG_LEGACY_PTY_COUNT=256 +# CONFIG_SERIAL_NONSTANDARD is not set +# CONFIG_N_GSM is not set +# CONFIG_TRACE_SINK is not set +CONFIG_DEVMEM=y +CONFIG_DEVKMEM=y + +# +# Serial drivers +# +# CONFIG_SERIAL_8250 is not set + +# +# Non-8250 serial port support +# +# CONFIG_SERIAL_AMBA_PL010 is not set +CONFIG_SERIAL_AMBA_PL011=y +CONFIG_SERIAL_AMBA_PL011_CONSOLE=y +# CONFIG_SERIAL_KGDB_NMI is not set +# CONFIG_SERIAL_MAX3100 is not set +# CONFIG_SERIAL_MAX310X is not set +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +CONFIG_CONSOLE_POLL=y +# CONFIG_SERIAL_SCCNXP is not set +# CONFIG_SERIAL_TIMBERDALE is not set +# CONFIG_SERIAL_ALTERA_JTAGUART is not set +# CONFIG_SERIAL_ALTERA_UART is not set +# CONFIG_SERIAL_IFX6X60 is not set +# CONFIG_SERIAL_XILINX_PS_UART is not set +# CONFIG_SERIAL_ARC is not set +# CONFIG_SERIAL_FSL_LPUART is not set +# CONFIG_SUPPORT_SYSRQ is not set +CONFIG_TTY_PRINTK=y +# CONFIG_VIRTIO_CONSOLE is not set +# CONFIG_IPMI_HANDLER is not set +CONFIG_HW_RANDOM=y +# CONFIG_HW_RANDOM_TIMERIOMEM is not set +# CONFIG_HW_RANDOM_ATMEL is not set +CONFIG_HW_RANDOM_MESON=y +CONFIG_HW_RANDOM_VIRTIO=m +# CONFIG_HW_RANDOM_EXYNOS is not set +# CONFIG_R3964 is not set + +# +# PCMCIA character devices +# +# CONFIG_RAW_DRIVER is not set +# CONFIG_TCG_TPM is not set +CONFIG_I2C=y +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_COMPAT=y +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_MUX=y + +# +# Multiplexer I2C Chip support +# +# CONFIG_I2C_ARB_GPIO_CHALLENGE is not set +# CONFIG_I2C_MUX_GPIO is not set +# CONFIG_I2C_MUX_PCA9541 is not set +# CONFIG_I2C_MUX_PCA954x is not set +# CONFIG_I2C_MUX_PINCTRL is not set +CONFIG_I2C_HELPER_AUTO=y +CONFIG_I2C_ALGOBIT=y + +# +# I2C Hardware Bus support +# + +# +# I2C system bus drivers (mostly embedded / system-on-chip) +# +# CONFIG_I2C_CBUS_GPIO is not set +# CONFIG_I2C_DESIGNWARE_PLATFORM is not set +CONFIG_I2C_GPIO=y +# CONFIG_I2C_NOMADIK is not set +# CONFIG_I2C_OCORES is not set +# CONFIG_I2C_PCA_PLATFORM is not set +# CONFIG_I2C_PXA_PCI is not set +# CONFIG_I2C_SIMTEC is not set +# CONFIG_I2C_XILINX is not set + +# +# External I2C/SMBus adapter drivers +# +# CONFIG_I2C_DIOLAN_U2C is not set +# CONFIG_I2C_PARPORT_LIGHT is not set +# CONFIG_I2C_ROBOTFUZZ_OSIF is not set +# CONFIG_I2C_TAOS_EVM is not set +# CONFIG_I2C_TINY_USB is not set + +# +# Other I2C/SMBus bus drivers +# +# CONFIG_I2C_STUB is not set +# CONFIG_I2C_DEBUG_CORE is not set +# CONFIG_I2C_DEBUG_ALGO is not set +# CONFIG_I2C_DEBUG_BUS is not set +CONFIG_SPI=y +# CONFIG_SPI_DEBUG is not set +CONFIG_SPI_MASTER=y + +# +# SPI Master Controller Drivers +# +# CONFIG_SPI_ALTERA is not set +CONFIG_SPI_BITBANG=y +CONFIG_SPI_GPIO=y +# CONFIG_SPI_FSL_SPI is not set +# CONFIG_SPI_OC_TINY is not set +# CONFIG_SPI_PL022 is not set +# CONFIG_SPI_PXA2XX_PCI is not set +# CONFIG_SPI_SC18IS602 is not set +# CONFIG_SPI_XCOMM is not set +# CONFIG_SPI_XILINX is not set +# CONFIG_SPI_DESIGNWARE is not set + +# +# SPI Protocol Masters +# +CONFIG_SPI_SPIDEV=y +# CONFIG_SPI_TLE62X0 is not set +# CONFIG_HSI is not set + +# +# PPS support +# +CONFIG_PPS=y +# CONFIG_PPS_DEBUG is not set + +# +# PPS clients support +# +# CONFIG_PPS_CLIENT_KTIMER is not set +# CONFIG_PPS_CLIENT_LDISC is not set +# CONFIG_PPS_CLIENT_GPIO is not set + +# +# PPS generators support +# + +# +# PTP clock support +# +CONFIG_PTP_1588_CLOCK=y + +# +# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. +# +CONFIG_PINCTRL=y + +# +# Pin controllers +# +CONFIG_PINMUX=y +CONFIG_PINCONF=y +# CONFIG_DEBUG_PINCTRL is not set +# CONFIG_PINCTRL_CAPRI is not set +# CONFIG_PINCTRL_MSM8X74 is not set +# CONFIG_PINCTRL_SINGLE is not set +CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y +CONFIG_ARCH_REQUIRE_GPIOLIB=y +CONFIG_GPIOLIB=y +CONFIG_GPIO_DEVRES=y +CONFIG_OF_GPIO=y +# CONFIG_DEBUG_GPIO is not set +CONFIG_GPIO_SYSFS=y + +# +# Memory mapped GPIO drivers: +# +# CONFIG_GPIO_GENERIC_PLATFORM is not set +# CONFIG_GPIO_PL061 is not set +# CONFIG_GPIO_SCH311X is not set +# CONFIG_GPIO_TS5500 is not set +# CONFIG_GPIO_GRGPIO is not set + +# +# I2C GPIO expanders: +# +# CONFIG_GPIO_MAX7300 is not set +# CONFIG_GPIO_MAX732X is not set +# CONFIG_GPIO_PCA953X is not set +# CONFIG_GPIO_PCF857X is not set +# CONFIG_GPIO_SX150X is not set +# CONFIG_GPIO_ADP5588 is not set +# CONFIG_GPIO_ADNP is not set + +# +# PCI GPIO expanders: +# + +# +# SPI GPIO expanders: +# +# CONFIG_GPIO_MAX7301 is not set +# CONFIG_GPIO_MCP23S08 is not set +# CONFIG_GPIO_MC33880 is not set +# CONFIG_GPIO_74X164 is not set + +# +# AC97 GPIO expanders: +# + +# +# LPC GPIO expanders: +# + +# +# MODULbus GPIO expanders: +# +# CONFIG_GPIO_BCM_KONA is not set + +# +# USB GPIO expanders: +# +# CONFIG_W1 is not set +CONFIG_POWER_SUPPLY=y +# CONFIG_POWER_SUPPLY_DEBUG is not set +# CONFIG_PDA_POWER is not set +# CONFIG_TEST_POWER is not set +# CONFIG_BATTERY_DS2780 is not set +# CONFIG_BATTERY_DS2781 is not set +# CONFIG_BATTERY_DS2782 is not set +# CONFIG_BATTERY_SBS is not set +# CONFIG_BATTERY_BQ27x00 is not set +# CONFIG_BATTERY_MAX17040 is not set +# CONFIG_BATTERY_MAX17042 is not set +# CONFIG_CHARGER_ISP1704 is not set +# CONFIG_CHARGER_MAX8903 is not set +# CONFIG_CHARGER_LP8727 is not set +# CONFIG_CHARGER_GPIO is not set +# CONFIG_CHARGER_MANAGER is not set +# CONFIG_CHARGER_BQ2415X is not set +# CONFIG_CHARGER_BQ24190 is not set +# CONFIG_CHARGER_BQ24735 is not set +# CONFIG_CHARGER_SMB347 is not set +CONFIG_POWER_RESET=y +# CONFIG_POWER_RESET_GPIO is not set +CONFIG_POWER_RESET_VEXPRESS=y +# CONFIG_POWER_RESET_XGENE is not set +# CONFIG_POWER_AVS is not set +CONFIG_HWMON=y +# CONFIG_HWMON_VID is not set +# CONFIG_HWMON_DEBUG_CHIP is not set + +# +# Native drivers +# +# CONFIG_SENSORS_AD7314 is not set +# CONFIG_SENSORS_AD7414 is not set +# CONFIG_SENSORS_AD7418 is not set +# CONFIG_SENSORS_ADCXX is not set +# CONFIG_SENSORS_ADM1021 is not set +# CONFIG_SENSORS_ADM1025 is not set +# CONFIG_SENSORS_ADM1026 is not set +# CONFIG_SENSORS_ADM1029 is not set +# CONFIG_SENSORS_ADM1031 is not set +# CONFIG_SENSORS_ADM9240 is not set +# CONFIG_SENSORS_ADT7310 is not set +# CONFIG_SENSORS_ADT7410 is not set +# CONFIG_SENSORS_ADT7411 is not set +# CONFIG_SENSORS_ADT7462 is not set +# CONFIG_SENSORS_ADT7470 is not set +# CONFIG_SENSORS_ADT7475 is not set +# CONFIG_SENSORS_ASC7621 is not set +# CONFIG_SENSORS_ATXP1 is not set +# CONFIG_SENSORS_DS620 is not set +# CONFIG_SENSORS_DS1621 is not set +# CONFIG_SENSORS_F71805F is not set +# CONFIG_SENSORS_F71882FG is not set +# CONFIG_SENSORS_F75375S is not set +# CONFIG_SENSORS_G760A is not set +# CONFIG_SENSORS_G762 is not set +# CONFIG_SENSORS_GL518SM is not set +# CONFIG_SENSORS_GL520SM is not set +# CONFIG_SENSORS_GPIO_FAN is not set +# CONFIG_SENSORS_HIH6130 is not set +# CONFIG_SENSORS_HTU21 is not set +# CONFIG_SENSORS_IT87 is not set +# CONFIG_SENSORS_JC42 is not set +# CONFIG_SENSORS_LINEAGE is not set +# CONFIG_SENSORS_LM63 is not set +# CONFIG_SENSORS_LM70 is not set +# CONFIG_SENSORS_LM73 is not set +# CONFIG_SENSORS_LM75 is not set +# CONFIG_SENSORS_LM77 is not set +# CONFIG_SENSORS_LM78 is not set +# CONFIG_SENSORS_LM80 is not set +# CONFIG_SENSORS_LM83 is not set +# CONFIG_SENSORS_LM85 is not set +# CONFIG_SENSORS_LM87 is not set +# CONFIG_SENSORS_LM90 is not set +# CONFIG_SENSORS_LM92 is not set +# CONFIG_SENSORS_LM93 is not set +# CONFIG_SENSORS_LTC4151 is not set +# CONFIG_SENSORS_LTC4215 is not set +# CONFIG_SENSORS_LTC4245 is not set +# CONFIG_SENSORS_LTC4261 is not set +# CONFIG_SENSORS_LM95234 is not set +# CONFIG_SENSORS_LM95241 is not set +# CONFIG_SENSORS_LM95245 is not set +# CONFIG_SENSORS_MAX1111 is not set +# CONFIG_SENSORS_MAX16065 is not set +# CONFIG_SENSORS_MAX1619 is not set +# CONFIG_SENSORS_MAX1668 is not set +# CONFIG_SENSORS_MAX197 is not set +# CONFIG_SENSORS_MAX6639 is not set +# CONFIG_SENSORS_MAX6642 is not set +# CONFIG_SENSORS_MAX6650 is not set +# CONFIG_SENSORS_MAX6697 is not set +# CONFIG_SENSORS_MCP3021 is not set +# CONFIG_SENSORS_NCT6775 is not set +# CONFIG_SENSORS_NTC_THERMISTOR is not set +# CONFIG_SENSORS_PC87360 is not set +# CONFIG_SENSORS_PC87427 is not set +# CONFIG_SENSORS_PCF8591 is not set +# CONFIG_PMBUS is not set +# CONFIG_SENSORS_SHT15 is not set +# CONFIG_SENSORS_SHT21 is not set +# CONFIG_SENSORS_SMM665 is not set +# CONFIG_SENSORS_DME1737 is not set +# CONFIG_SENSORS_EMC1403 is not set +# CONFIG_SENSORS_EMC2103 is not set +# CONFIG_SENSORS_EMC6W201 is not set +# CONFIG_SENSORS_SMSC47M1 is not set +# CONFIG_SENSORS_SMSC47M192 is not set +# CONFIG_SENSORS_SMSC47B397 is not set +# CONFIG_SENSORS_SCH56XX_COMMON is not set +# CONFIG_SENSORS_SCH5627 is not set +# CONFIG_SENSORS_SCH5636 is not set +# CONFIG_SENSORS_ADS1015 is not set +# CONFIG_SENSORS_ADS7828 is not set +# CONFIG_SENSORS_ADS7871 is not set +# CONFIG_SENSORS_AMC6821 is not set +# CONFIG_SENSORS_INA209 is not set +# CONFIG_SENSORS_INA2XX is not set +# CONFIG_SENSORS_THMC50 is not set +# CONFIG_SENSORS_TMP102 is not set +# CONFIG_SENSORS_TMP401 is not set +# CONFIG_SENSORS_TMP421 is not set +# CONFIG_SENSORS_VEXPRESS is not set +# CONFIG_SENSORS_VT1211 is not set +# CONFIG_SENSORS_W83781D is not set +# CONFIG_SENSORS_W83791D is not set +# CONFIG_SENSORS_W83792D is not set +# CONFIG_SENSORS_W83793 is not set +# CONFIG_SENSORS_W83795 is not set +# CONFIG_SENSORS_W83L785TS is not set +# CONFIG_SENSORS_W83L786NG is not set +# CONFIG_SENSORS_W83627HF is not set +# CONFIG_SENSORS_W83627EHF is not set +CONFIG_THERMAL=y +CONFIG_THERMAL_HWMON=y +CONFIG_THERMAL_OF=y +CONFIG_THERMAL_WRITABLE_TRIPS=y +# CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE is not set +# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set +# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set +CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR=y +# CONFIG_THERMAL_GOV_FAIR_SHARE is not set +# CONFIG_THERMAL_GOV_STEP_WISE is not set +# CONFIG_THERMAL_GOV_USER_SPACE is not set +CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y +CONFIG_CPU_THERMAL=y +CONFIG_DEVFREQ_THERMAL=y +CONFIG_CPUCORE_THERMAL=y +CONFIG_GPU_THERMAL=y +CONFIG_GPUCORE_THERMAL=y +# CONFIG_THERMAL_EMULATION is not set + +# +# Texas Instruments thermal drivers +# +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_CORE=y +# CONFIG_WATCHDOG_NOWAYOUT is not set + +# +# Watchdog Device Drivers +# +# CONFIG_SOFT_WATCHDOG is not set +# CONFIG_GPIO_WATCHDOG is not set +# CONFIG_ARM_SP805_WATCHDOG is not set +# CONFIG_DW_WATCHDOG is not set +# CONFIG_MEN_A21_WDT is not set + +# +# USB-based Watchdog Cards +# +# CONFIG_USBPCWATCHDOG is not set +CONFIG_SSB_POSSIBLE=y + +# +# Sonics Silicon Backplane +# +CONFIG_SSB=m +CONFIG_SSB_BLOCKIO=y +CONFIG_SSB_SDIOHOST_POSSIBLE=y +CONFIG_SSB_SDIOHOST=y +# CONFIG_SSB_SILENT is not set +# CONFIG_SSB_DEBUG is not set +# CONFIG_SSB_DRIVER_GPIO is not set +CONFIG_BCMA_POSSIBLE=y + +# +# Broadcom specific AMBA +# +# CONFIG_BCMA is not set + +# +# Multifunction device drivers +# +CONFIG_MFD_CORE=m +# CONFIG_MFD_AS3711 is not set +# CONFIG_MFD_AS3722 is not set +# CONFIG_PMIC_ADP5520 is not set +# CONFIG_MFD_AAT2870_CORE is not set +# CONFIG_MFD_CROS_EC is not set +# CONFIG_PMIC_DA903X is not set +# CONFIG_MFD_DA9052_SPI is not set +# CONFIG_MFD_DA9052_I2C is not set +# CONFIG_MFD_DA9055 is not set +# CONFIG_MFD_DA9063 is not set +# CONFIG_MFD_MC13XXX_SPI is not set +# CONFIG_MFD_MC13XXX_I2C is not set +# CONFIG_HTC_PASIC3 is not set +# CONFIG_HTC_I2CPLD is not set +# CONFIG_MFD_KEMPLD is not set +# CONFIG_MFD_88PM800 is not set +# CONFIG_MFD_88PM805 is not set +# CONFIG_MFD_88PM860X is not set +# CONFIG_MFD_MAX14577 is not set +# CONFIG_MFD_MAX77686 is not set +# CONFIG_MFD_MAX77693 is not set +# CONFIG_MFD_MAX8907 is not set +# CONFIG_MFD_MAX8925 is not set +# CONFIG_MFD_MAX8997 is not set +# CONFIG_MFD_MAX8998 is not set +# CONFIG_EZX_PCAP is not set +# CONFIG_MFD_VIPERBOARD is not set +# CONFIG_MFD_RETU is not set +# CONFIG_MFD_PCF50633 is not set +# CONFIG_UCB1400_CORE is not set +# CONFIG_MFD_RC5T583 is not set +# CONFIG_MFD_SEC_CORE is not set +# CONFIG_MFD_SI476X_CORE is not set +# CONFIG_MFD_SM501 is not set +# CONFIG_MFD_SMSC is not set +# CONFIG_ABX500_CORE is not set +# CONFIG_MFD_STMPE is not set +# CONFIG_MFD_SYSCON is not set +# CONFIG_MFD_TI_AM335X_TSCADC is not set +# CONFIG_MFD_LP3943 is not set +# CONFIG_MFD_LP8788 is not set +# CONFIG_MFD_PALMAS is not set +# CONFIG_TPS6105X is not set +# CONFIG_TPS65010 is not set +# CONFIG_TPS6507X is not set +# CONFIG_MFD_TPS65090 is not set +# CONFIG_MFD_TPS65217 is not set +# CONFIG_MFD_TPS6586X is not set +# CONFIG_MFD_TPS65910 is not set +# CONFIG_MFD_TPS65912 is not set +# CONFIG_MFD_TPS65912_I2C is not set +# CONFIG_MFD_TPS65912_SPI is not set +# CONFIG_MFD_TPS80031 is not set +# CONFIG_TWL4030_CORE is not set +# CONFIG_TWL6040_CORE is not set +# CONFIG_MFD_WL1273_CORE is not set +# CONFIG_MFD_LM3533 is not set +# CONFIG_MFD_TC3589X is not set +# CONFIG_MFD_TMIO is not set +# CONFIG_MFD_ARIZONA_I2C is not set +# CONFIG_MFD_ARIZONA_SPI is not set +# CONFIG_MFD_WM8400 is not set +# CONFIG_MFD_WM831X_I2C is not set +# CONFIG_MFD_WM831X_SPI is not set +# CONFIG_MFD_WM8350_I2C is not set +# CONFIG_MFD_WM8994 is not set +CONFIG_VEXPRESS_CONFIG=y +CONFIG_REGULATOR=y +# CONFIG_REGULATOR_DEBUG is not set +# CONFIG_REGULATOR_FIXED_VOLTAGE is not set +# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set +# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set +# CONFIG_REGULATOR_ACT8865 is not set +# CONFIG_REGULATOR_AD5398 is not set +# CONFIG_REGULATOR_DA9210 is not set +# CONFIG_REGULATOR_FAN53555 is not set +# CONFIG_REGULATOR_GPIO is not set +# CONFIG_REGULATOR_ISL6271A is not set +# CONFIG_REGULATOR_LP3971 is not set +# CONFIG_REGULATOR_LP3972 is not set +# CONFIG_REGULATOR_LP872X is not set +# CONFIG_REGULATOR_LP8755 is not set +# CONFIG_REGULATOR_MAX1586 is not set +# CONFIG_REGULATOR_MAX8649 is not set +# CONFIG_REGULATOR_MAX8660 is not set +# CONFIG_REGULATOR_MAX8952 is not set +# CONFIG_REGULATOR_MAX8973 is not set +# CONFIG_REGULATOR_PFUZE100 is not set +# CONFIG_REGULATOR_TPS51632 is not set +# CONFIG_REGULATOR_TPS62360 is not set +# CONFIG_REGULATOR_TPS65023 is not set +# CONFIG_REGULATOR_TPS6507X is not set +# CONFIG_REGULATOR_TPS6524X is not set +# CONFIG_REGULATOR_VEXPRESS is not set +CONFIG_MEDIA_SUPPORT=y + +# +# Multimedia core support +# +CONFIG_MEDIA_CAMERA_SUPPORT=y +CONFIG_MEDIA_ANALOG_TV_SUPPORT=y +CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y +CONFIG_MEDIA_RADIO_SUPPORT=y +CONFIG_MEDIA_RC_SUPPORT=y +CONFIG_MEDIA_CONTROLLER=y +CONFIG_VIDEO_DEV=y +CONFIG_VIDEO_V4L2_SUBDEV_API=y +CONFIG_VIDEO_V4L2=y +# CONFIG_VIDEO_ADV_DEBUG is not set +# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set +CONFIG_VIDEO_TUNER=m +CONFIG_VIDEOBUF_GEN=y +CONFIG_VIDEOBUF_VMALLOC=m +CONFIG_VIDEOBUF_RESOURCE=y +CONFIG_VIDEOBUF_DVB=m +CONFIG_VIDEOBUF2_CORE=m +CONFIG_VIDEOBUF2_MEMOPS=m +CONFIG_VIDEOBUF2_VMALLOC=m +CONFIG_DVB_CORE=y +CONFIG_DVB_NET=y +CONFIG_TTPCI_EEPROM=m +CONFIG_DVB_MAX_ADAPTERS=8 +# CONFIG_DVB_DYNAMIC_MINORS is not set + +# +# Media drivers +# +CONFIG_RC_CORE=y +CONFIG_RC_MAP=y +CONFIG_RC_DECODERS=y +CONFIG_LIRC=m +CONFIG_IR_LIRC_CODEC=m +CONFIG_IR_NEC_DECODER=m +CONFIG_IR_RC5_DECODER=m +CONFIG_IR_RC6_DECODER=m +CONFIG_IR_JVC_DECODER=m +CONFIG_IR_SONY_DECODER=m +CONFIG_IR_RC5_SZ_DECODER=m +CONFIG_IR_SANYO_DECODER=m +CONFIG_IR_MCE_KBD_DECODER=m +CONFIG_RC_DEVICES=y +CONFIG_RC_ATI_REMOTE=m +CONFIG_IR_IMON=m +CONFIG_IR_MCEUSB=m +CONFIG_IR_MESON=m +CONFIG_IR_REDRAT3=m +CONFIG_IR_STREAMZAP=m +CONFIG_IR_IGUANA=m +CONFIG_IR_TTUSBIR=m +CONFIG_RC_LOOPBACK=m +CONFIG_IR_GPIO_CIR=m +CONFIG_MEDIA_USB_SUPPORT=y + +# +# Webcam devices +# +CONFIG_USB_VIDEO_CLASS=m +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y +CONFIG_USB_GSPCA=m +CONFIG_USB_M5602=m +CONFIG_USB_STV06XX=m +CONFIG_USB_GL860=m +CONFIG_USB_GSPCA_BENQ=m +CONFIG_USB_GSPCA_CONEX=m +CONFIG_USB_GSPCA_CPIA1=m +CONFIG_USB_GSPCA_ETOMS=m +CONFIG_USB_GSPCA_FINEPIX=m +CONFIG_USB_GSPCA_JEILINJ=m +CONFIG_USB_GSPCA_JL2005BCD=m +CONFIG_USB_GSPCA_KINECT=m +CONFIG_USB_GSPCA_KONICA=m +CONFIG_USB_GSPCA_MARS=m +CONFIG_USB_GSPCA_MR97310A=m +CONFIG_USB_GSPCA_NW80X=m +CONFIG_USB_GSPCA_OV519=m +CONFIG_USB_GSPCA_OV534=m +CONFIG_USB_GSPCA_OV534_9=m +CONFIG_USB_GSPCA_PAC207=m +CONFIG_USB_GSPCA_PAC7302=m +CONFIG_USB_GSPCA_PAC7311=m +CONFIG_USB_GSPCA_SE401=m +CONFIG_USB_GSPCA_SN9C2028=m +CONFIG_USB_GSPCA_SN9C20X=m +CONFIG_USB_GSPCA_SONIXB=m +CONFIG_USB_GSPCA_SONIXJ=m +CONFIG_USB_GSPCA_SPCA500=m +CONFIG_USB_GSPCA_SPCA501=m +CONFIG_USB_GSPCA_SPCA505=m +CONFIG_USB_GSPCA_SPCA506=m +CONFIG_USB_GSPCA_SPCA508=m +CONFIG_USB_GSPCA_SPCA561=m +CONFIG_USB_GSPCA_SPCA1528=m +CONFIG_USB_GSPCA_SQ905=m +CONFIG_USB_GSPCA_SQ905C=m +CONFIG_USB_GSPCA_SQ930X=m +CONFIG_USB_GSPCA_STK014=m +CONFIG_USB_GSPCA_STK1135=m +CONFIG_USB_GSPCA_STV0680=m +CONFIG_USB_GSPCA_SUNPLUS=m +CONFIG_USB_GSPCA_T613=m +CONFIG_USB_GSPCA_TOPRO=m +CONFIG_USB_GSPCA_TV8532=m +CONFIG_USB_GSPCA_VC032X=m +CONFIG_USB_GSPCA_VICAM=m +CONFIG_USB_GSPCA_XIRLINK_CIT=m +CONFIG_USB_GSPCA_ZC3XX=m +CONFIG_USB_PWC=m +# CONFIG_USB_PWC_DEBUG is not set +CONFIG_USB_PWC_INPUT_EVDEV=y +CONFIG_VIDEO_CPIA2=m +CONFIG_USB_ZR364XX=m +CONFIG_USB_STKWEBCAM=m +CONFIG_USB_S2255=m +CONFIG_VIDEO_USBTV=m + +# +# Analog TV USB devices +# +CONFIG_VIDEO_PVRUSB2=m +CONFIG_VIDEO_PVRUSB2_SYSFS=y +CONFIG_VIDEO_PVRUSB2_DVB=y +# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set +# CONFIG_VIDEO_HDPVR is not set +CONFIG_VIDEO_TLG2300=m +CONFIG_VIDEO_USBVISION=m +CONFIG_VIDEO_STK1160_COMMON=m +CONFIG_VIDEO_STK1160_AC97=y +CONFIG_VIDEO_STK1160=m + +# +# Analog/digital TV USB devices +# +CONFIG_VIDEO_AU0828=m +CONFIG_VIDEO_AU0828_V4L2=y +CONFIG_VIDEO_CX231XX=m +CONFIG_VIDEO_CX231XX_RC=y +CONFIG_VIDEO_CX231XX_ALSA=m +CONFIG_VIDEO_CX231XX_DVB=m +CONFIG_VIDEO_TM6000=m +CONFIG_VIDEO_TM6000_ALSA=m +CONFIG_VIDEO_TM6000_DVB=m + +# +# Digital TV USB devices +# +CONFIG_DVB_USB=m +# CONFIG_DVB_USB_DEBUG is not set +CONFIG_DVB_USB_A800=m +CONFIG_DVB_USB_DIBUSB_MB=m +CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y +CONFIG_DVB_USB_DIBUSB_MC=m +CONFIG_DVB_USB_DIB0700=m +CONFIG_DVB_USB_UMT_010=m +CONFIG_DVB_USB_CXUSB=m +CONFIG_DVB_USB_M920X=m +CONFIG_DVB_USB_DIGITV=m +CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_VP702X=m +CONFIG_DVB_USB_GP8PSK=m +CONFIG_DVB_USB_NOVA_T_USB2=m +CONFIG_DVB_USB_TTUSB2=m +CONFIG_DVB_USB_DTT200U=m +CONFIG_DVB_USB_OPERA1=m +CONFIG_DVB_USB_AF9005=m +CONFIG_DVB_USB_AF9005_REMOTE=m +CONFIG_DVB_USB_PCTV452E=m +CONFIG_DVB_USB_DW2102=m +CONFIG_DVB_USB_CINERGY_T2=m +CONFIG_DVB_USB_DTV5100=m +CONFIG_DVB_USB_FRIIO=m +CONFIG_DVB_USB_AZ6027=m +CONFIG_DVB_USB_TECHNISAT_USB2=m +CONFIG_DVB_USB_V2=m +CONFIG_DVB_USB_AF9015=m +CONFIG_DVB_USB_AF9035=m +CONFIG_DVB_USB_ANYSEE=m +CONFIG_DVB_USB_AU6610=m +CONFIG_DVB_USB_AZ6007=m +CONFIG_DVB_USB_CE6230=m +CONFIG_DVB_USB_EC168=m +CONFIG_DVB_USB_GL861=m +CONFIG_DVB_USB_IT913X=m +CONFIG_DVB_USB_LME2510=m +CONFIG_DVB_USB_MXL111SF=m +CONFIG_DVB_USB_RTL28XXU=m +CONFIG_SMS_USB_DRV=m +CONFIG_DVB_B2C2_FLEXCOP_USB=m +# CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set + +# +# Webcam, TV (analog/digital) USB devices +# +CONFIG_VIDEO_EM28XX=m +CONFIG_VIDEO_EM28XX_V4L2=m +CONFIG_VIDEO_EM28XX_ALSA=m +CONFIG_VIDEO_EM28XX_DVB=m +CONFIG_VIDEO_EM28XX_RC=m +# CONFIG_V4L_PLATFORM_DRIVERS is not set +# CONFIG_V4L_MEM2MEM_DRIVERS is not set +# CONFIG_V4L_TEST_DRIVERS is not set + +# +# Supported MMC/SDIO adapters +# +# CONFIG_SMS_SDIO_DRV is not set +CONFIG_RADIO_ADAPTERS=y +# CONFIG_RADIO_SI470X is not set +# CONFIG_RADIO_SI4713 is not set +# CONFIG_USB_MR800 is not set +# CONFIG_USB_DSBR is not set +# CONFIG_RADIO_SHARK is not set +# CONFIG_RADIO_SHARK2 is not set +# CONFIG_USB_KEENE is not set +# CONFIG_USB_RAREMONO is not set +# CONFIG_USB_MA901 is not set +# CONFIG_RADIO_TEA5764 is not set +# CONFIG_RADIO_SAA7706H is not set +# CONFIG_RADIO_TEF6862 is not set +# CONFIG_RADIO_WL1273 is not set + +# +# Texas Instruments WL128x FM driver (ST based) +# +# CONFIG_RADIO_WL128X is not set +CONFIG_MEDIA_COMMON_OPTIONS=y + +# +# common driver options +# +CONFIG_VIDEO_CX2341X=m +CONFIG_VIDEO_TVEEPROM=m +CONFIG_CYPRESS_FIRMWARE=m +CONFIG_DVB_B2C2_FLEXCOP=m +CONFIG_SMS_SIANO_MDTV=m +CONFIG_SMS_SIANO_RC=y + +# +# Media ancillary drivers (tuners, sensors, i2c, frontends) +# +CONFIG_MEDIA_SUBDRV_AUTOSELECT=y +CONFIG_MEDIA_ATTACH=y +CONFIG_VIDEO_IR_I2C=y + +# +# Audio decoders, processors and mixers +# +CONFIG_VIDEO_MSP3400=m +CONFIG_VIDEO_CS53L32A=m +CONFIG_VIDEO_UDA1342=m +CONFIG_VIDEO_WM8775=m +CONFIG_VIDEO_SONY_BTF_MPX=m + +# +# RDS decoders +# + +# +# Video decoders +# +CONFIG_VIDEO_SAA711X=m +CONFIG_VIDEO_TVP5150=m +CONFIG_VIDEO_TW2804=m +CONFIG_VIDEO_TW9903=m +CONFIG_VIDEO_TW9906=m + +# +# Video and audio decoders +# +CONFIG_VIDEO_CX25840=m + +# +# Video encoders +# + +# +# Camera sensor devices +# +CONFIG_VIDEO_OV7640=m +CONFIG_VIDEO_MT9V011=m + +# +# Flash devices +# + +# +# Video improvement chips +# + +# +# Audio/Video compression chips +# + +# +# Miscellaneous helper chips +# + +# +# Sensors used on soc_camera driver +# +CONFIG_MEDIA_TUNER=y +CONFIG_MEDIA_TUNER_SIMPLE=y +CONFIG_MEDIA_TUNER_TDA8290=y +CONFIG_MEDIA_TUNER_TDA827X=y +CONFIG_MEDIA_TUNER_TDA18271=y +CONFIG_MEDIA_TUNER_TDA18272=m +CONFIG_MEDIA_TUNER_TDA9887=y +CONFIG_MEDIA_TUNER_TEA5761=y +CONFIG_MEDIA_TUNER_TEA5767=y +CONFIG_MEDIA_TUNER_MT20XX=y +CONFIG_MEDIA_TUNER_MT2060=m +CONFIG_MEDIA_TUNER_MT2063=m +CONFIG_MEDIA_TUNER_MT2266=m +CONFIG_MEDIA_TUNER_QT1010=m +CONFIG_MEDIA_TUNER_XC2028=y +CONFIG_MEDIA_TUNER_XC5000=y +CONFIG_MEDIA_TUNER_XC4000=y +CONFIG_MEDIA_TUNER_MXL5005S=m +CONFIG_MEDIA_TUNER_MXL5007T=m +CONFIG_MEDIA_TUNER_MC44S803=y +CONFIG_MEDIA_TUNER_MAX2165=m +CONFIG_MEDIA_TUNER_TDA18218=m +CONFIG_MEDIA_TUNER_FC0011=m +CONFIG_MEDIA_TUNER_FC0012=m +CONFIG_MEDIA_TUNER_FC0013=m +CONFIG_MEDIA_TUNER_TDA18212=m +CONFIG_MEDIA_TUNER_E4000=m +CONFIG_MEDIA_TUNER_FC2580=m +CONFIG_MEDIA_TUNER_M88TS2022=m +CONFIG_MEDIA_TUNER_TUA9001=m +CONFIG_MEDIA_TUNER_SI2157=m +CONFIG_MEDIA_TUNER_IT913X=m +CONFIG_MEDIA_TUNER_R820T=m + +# +# Multistandard (satellite) frontends +# +CONFIG_DVB_STB0899=m +CONFIG_DVB_STB6100=m +CONFIG_DVB_STV090x=m +CONFIG_DVB_STV6110x=m +CONFIG_DVB_M88DS3103=m + +# +# Multistandard (cable + terrestrial) frontends +# +CONFIG_DVB_DRXK=m +CONFIG_DVB_TDA18271C2DD=m + +# +# DVB-S (satellite) frontends +# +CONFIG_DVB_CX24123=m +CONFIG_DVB_MT312=m +CONFIG_DVB_ZL10039=m +CONFIG_DVB_S5H1420=m +CONFIG_DVB_STV0288=m +CONFIG_DVB_STB6000=m +CONFIG_DVB_STV0299=m +CONFIG_DVB_STV6110=m +CONFIG_DVB_STV0900=m +CONFIG_DVB_TDA10086=m +CONFIG_DVB_TUNER_ITD1000=m +CONFIG_DVB_TUNER_CX24113=m +CONFIG_DVB_TDA826X=m +CONFIG_DVB_CX24116=m +CONFIG_DVB_SI21XX=m +CONFIG_DVB_TS2020=m +CONFIG_DVB_DS3000=m +CONFIG_DVB_TDA10071=m + +# +# DVB-T (terrestrial) frontends +# +CONFIG_DVB_CX22702=m +CONFIG_DVB_DRXD=m +CONFIG_DVB_TDA1004X=m +CONFIG_DVB_NXT6000=m +CONFIG_DVB_MT352=m +CONFIG_DVB_ZL10353=m +CONFIG_DVB_DIB3000MB=m +CONFIG_DVB_DIB3000MC=m +CONFIG_DVB_DIB7000M=m +CONFIG_DVB_DIB7000P=m +CONFIG_DVB_TDA10048=m +CONFIG_DVB_AF9013=m +CONFIG_DVB_EC100=m +CONFIG_DVB_CXD2820R=m +CONFIG_DVB_RTL2830=m +CONFIG_DVB_RTL2832=m + +# +# DVB-C (cable) frontends +# +CONFIG_DVB_TDA10023=m +CONFIG_DVB_STV0297=m + +# +# ATSC (North American/Korean Terrestrial/Cable DTV) frontends +# +CONFIG_DVB_NXT200X=m +CONFIG_DVB_BCM3510=m +CONFIG_DVB_LGDT330X=m +CONFIG_DVB_LGDT3305=m +CONFIG_DVB_LGDT3306A=m +CONFIG_DVB_LG2160=m +CONFIG_DVB_S5H1409=m +CONFIG_DVB_AU8522=m +CONFIG_DVB_AU8522_DTV=m +CONFIG_DVB_AU8522_V4L=m +CONFIG_DVB_S5H1411=m + +# +# ISDB-T (terrestrial) frontends +# +CONFIG_DVB_S921=m +CONFIG_DVB_DIB8000=m +CONFIG_DVB_MB86A20S=m + +# +# Digital terrestrial only tuners/PLL +# +CONFIG_DVB_PLL=m +CONFIG_DVB_TUNER_DIB0070=m +CONFIG_DVB_TUNER_DIB0090=m + +# +# SEC control devices for DVB-S +# +CONFIG_DVB_LNBP21=m +CONFIG_DVB_LNBP22=m +CONFIG_DVB_ISL6421=m +CONFIG_DVB_ISL6423=m +CONFIG_DVB_A8293=m +CONFIG_DVB_LGS8GXX=m +CONFIG_DVB_ATBM8830=m +CONFIG_DVB_IX2505V=m +CONFIG_DVB_IT913X_FE=m +CONFIG_DVB_M88RS2000=m +CONFIG_DVB_AF9033=m + +# +# Tools to develop new frontends +# +# CONFIG_DVB_DUMMY_FE is not set + +# +# Graphics support +# +CONFIG_DRM=y +# CONFIG_DRM_UDL is not set +# CONFIG_VGASTATE is not set +# CONFIG_VIDEO_OUTPUT_CONTROL is not set +CONFIG_HDMI=y +CONFIG_VEXPRESS_DVI_CONTROL=y +CONFIG_FB=y +CONFIG_FIRMWARE_EDID=y +# CONFIG_FB_DDC is not set +# CONFIG_FB_BOOT_VESA_SUPPORT is not set +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_IMAGEBLIT=y +# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set +CONFIG_FB_SYS_FILLRECT=m +CONFIG_FB_SYS_COPYAREA=m +CONFIG_FB_SYS_IMAGEBLIT=m +# CONFIG_FB_FOREIGN_ENDIAN is not set +CONFIG_FB_SYS_FOPS=m +CONFIG_FB_DEFERRED_IO=y +# CONFIG_FB_SVGALIB is not set +# CONFIG_FB_MACMODES is not set +# CONFIG_FB_BACKLIGHT is not set +CONFIG_FB_MODE_HELPERS=y +CONFIG_FB_TILEBLITTING=y + +# +# Frame buffer hardware drivers +# +CONFIG_FB_ARMCLCD=y +# CONFIG_FB_UVESA is not set +# CONFIG_FB_OPENCORES is not set +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_TMIO is not set +# CONFIG_FB_SMSCUFX is not set +CONFIG_FB_UDL=m +# CONFIG_FB_GOLDFISH is not set +# CONFIG_FB_VIRTUAL is not set +# CONFIG_FB_METRONOME is not set +# CONFIG_FB_BROADSHEET is not set +# CONFIG_FB_AUO_K190X is not set +# CONFIG_FB_SIMPLE is not set +# CONFIG_EXYNOS_VIDEO is not set +CONFIG_BACKLIGHT_LCD_SUPPORT=y +CONFIG_LCD_CLASS_DEVICE=m +# CONFIG_LCD_L4F00242T03 is not set +# CONFIG_LCD_LMS283GF05 is not set +# CONFIG_LCD_LTV350QV is not set +# CONFIG_LCD_ILI922X is not set +# CONFIG_LCD_ILI9320 is not set +# CONFIG_LCD_TDO24M is not set +# CONFIG_LCD_VGG2432A4 is not set +# CONFIG_LCD_PLATFORM is not set +# CONFIG_LCD_S6E63M0 is not set +# CONFIG_LCD_LD9040 is not set +# CONFIG_LCD_AMS369FG06 is not set +# CONFIG_LCD_LMS501KF03 is not set +# CONFIG_LCD_HX8357 is not set +CONFIG_BACKLIGHT_CLASS_DEVICE=y +CONFIG_BACKLIGHT_GENERIC=y +# CONFIG_BACKLIGHT_PWM is not set +# CONFIG_BACKLIGHT_ADP8860 is not set +# CONFIG_BACKLIGHT_ADP8870 is not set +# CONFIG_BACKLIGHT_LM3630A is not set +# CONFIG_BACKLIGHT_LM3639 is not set +# CONFIG_BACKLIGHT_LP855X is not set +# CONFIG_BACKLIGHT_GPIO is not set +# CONFIG_BACKLIGHT_LV5207LP is not set +# CONFIG_BACKLIGHT_BD6107 is not set +# CONFIG_ADF is not set + +# +# Console display driver support +# +CONFIG_DUMMY_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y +CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +# CONFIG_LOGO is not set +# CONFIG_FB_SSD1307 is not set +CONFIG_SOUND=y +CONFIG_SOUND_OSS_CORE=y +CONFIG_SOUND_OSS_CORE_PRECLAIM=y +CONFIG_SND=y +CONFIG_SND_TIMER=y +CONFIG_SND_PCM=y +CONFIG_SND_HWDEP=y +CONFIG_SND_RAWMIDI=y +CONFIG_SND_COMPRESS_OFFLOAD=y +CONFIG_SND_JACK=y +CONFIG_SND_SEQUENCER=y +CONFIG_SND_SEQ_DUMMY=y +CONFIG_SND_OSSEMUL=y +CONFIG_SND_MIXER_OSS=y +CONFIG_SND_PCM_OSS=y +CONFIG_SND_PCM_OSS_PLUGINS=y +CONFIG_SND_SEQUENCER_OSS=y +CONFIG_SND_HRTIMER=y +CONFIG_SND_SEQ_HRTIMER_DEFAULT=y +CONFIG_SND_DYNAMIC_MINORS=y +CONFIG_SND_MAX_CARDS=32 +# CONFIG_SND_SUPPORT_OLD_API is not set +# CONFIG_SND_VERBOSE_PROCFS is not set +# CONFIG_SND_VERBOSE_PRINTK is not set +# CONFIG_SND_DEBUG is not set +CONFIG_SND_VMASTER=y +CONFIG_SND_RAWMIDI_SEQ=y +# CONFIG_SND_OPL3_LIB_SEQ is not set +# CONFIG_SND_OPL4_LIB_SEQ is not set +# CONFIG_SND_SBAWE_SEQ is not set +# CONFIG_SND_EMU10K1_SEQ is not set +CONFIG_SND_AC97_CODEC=m +# CONFIG_SND_DRIVERS is not set +# CONFIG_SND_SPI is not set +CONFIG_SND_USB=y +CONFIG_SND_USB_AUDIO=y +CONFIG_SND_USB_UA101=y +CONFIG_SND_USB_CAIAQ=y +CONFIG_SND_USB_CAIAQ_INPUT=y +CONFIG_SND_USB_6FIRE=y +# CONFIG_SND_USB_HIFACE is not set +CONFIG_SND_SOC=y +# CONFIG_SND_ATMEL_SOC is not set +# CONFIG_SND_DESIGNWARE_I2S is not set +CONFIG_SND_AML_M8_SOC=y +CONFIG_SND_AML_M8=y +CONFIG_SND_AML_SPLIT_MODE=y +# CONFIG_SND_AML_SPLIT_MODE_MMAP is not set +CONFIG_SND_SOC_I2C_AND_SPI=y +CONFIG_SND_SOC_DUMMY_CODEC=y +CONFIG_SND_SOC_TAS5707=y +CONFIG_SND_SOC_TAS5717=y +CONFIG_SND_SOC_TAS5731=y +CONFIG_SND_SOC_AMLPMU4=y +CONFIG_SND_SOC_ES8323=y +CONFIG_SND_SOC_PCM2BT=y +CONFIG_SND_SOC_AMLT9015=y +CONFIG_SND_SOC_AMLT9015S=y +# CONFIG_SND_SIMPLE_CARD is not set +# CONFIG_SOUND_PRIME is not set +CONFIG_AC97_BUS=m + +# +# HID support +# +CONFIG_HID=y +# CONFIG_HID_BATTERY_STRENGTH is not set +CONFIG_HIDRAW=y +CONFIG_UHID=y +CONFIG_HID_GENERIC=y + +# +# Special HID drivers +# +CONFIG_HID_A4TECH=m +CONFIG_HID_ACRUX=m +CONFIG_HID_ACRUX_FF=y +CONFIG_HID_APPLE=m +CONFIG_HID_APPLEIR=m +CONFIG_HID_AUREAL=m +CONFIG_HID_BELKIN=m +CONFIG_HID_CHERRY=m +CONFIG_HID_CHICONY=m +# CONFIG_HID_DIA_REMOTE is not set +CONFIG_HID_PRODIKEYS=m +CONFIG_HID_CYPRESS=m +CONFIG_HID_DRAGONRISE=m +CONFIG_DRAGONRISE_FF=y +CONFIG_HID_EMS_FF=m +CONFIG_HID_ELECOM=m +CONFIG_HID_ELO=m +CONFIG_HID_EZKEY=m +CONFIG_HID_HOLTEK=m +CONFIG_HOLTEK_FF=y +CONFIG_HID_HUION=m +CONFIG_HID_KEYTOUCH=m +CONFIG_HID_KYE=m +CONFIG_HID_UCLOGIC=m +CONFIG_HID_WALTOP=m +CONFIG_HID_GYRATION=m +CONFIG_HID_ICADE=m +CONFIG_HID_TWINHAN=m +CONFIG_HID_KENSINGTON=m +CONFIG_HID_LCPOWER=m +# CONFIG_HID_LENOVO_TPKBD is not set +CONFIG_HID_LOGITECH=m +# CONFIG_HID_LOGITECH_DJ is not set +CONFIG_LOGITECH_FF=y +CONFIG_LOGIRUMBLEPAD2_FF=y +CONFIG_LOGIG940_FF=y +CONFIG_LOGIWHEELS_FF=y +CONFIG_HID_MAGICMOUSE=m +CONFIG_HID_MICROSOFT=m +CONFIG_HID_MONTEREY=m +CONFIG_HID_MULTITOUCH=m +CONFIG_HID_NTRIG=m +CONFIG_HID_ORTEK=m +CONFIG_HID_PANTHERLORD=m +CONFIG_PANTHERLORD_FF=y +CONFIG_HID_PETALYNX=m +CONFIG_HID_PICOLCD=m +CONFIG_HID_PICOLCD_FB=y +CONFIG_HID_PICOLCD_BACKLIGHT=y +CONFIG_HID_PICOLCD_LCD=y +CONFIG_HID_PICOLCD_LEDS=y +CONFIG_HID_PICOLCD_CIR=y +CONFIG_HID_PRIMAX=m +CONFIG_HID_ROCCAT=m +CONFIG_HID_SAITEK=m +CONFIG_HID_SAMSUNG=m +CONFIG_HID_SONY=m +CONFIG_SONY_FF=y +CONFIG_HID_SPEEDLINK=m +CONFIG_HID_STEELSERIES=m +CONFIG_HID_SUNPLUS=m +CONFIG_HID_GREENASIA=m +CONFIG_GREENASIA_FF=y +CONFIG_HID_SMARTJOYPLUS=m +CONFIG_SMARTJOYPLUS_FF=y +CONFIG_HID_TIVO=m +CONFIG_HID_TOPSEED=m +CONFIG_HID_THINGM=m +CONFIG_HID_THRUSTMASTER=m +CONFIG_THRUSTMASTER_FF=y +CONFIG_HID_WACOM=m +CONFIG_HID_WIIMOTE=m +CONFIG_HID_XINMO=m +CONFIG_HID_ZEROPLUS=m +CONFIG_ZEROPLUS_FF=y +CONFIG_HID_ZYDACRON=m +CONFIG_HID_SENSOR_HUB=m + +# +# USB HID support +# +CONFIG_USB_HID=y +# CONFIG_HID_PID is not set +CONFIG_USB_HIDDEV=y + +# +# I2C HID support +# +# CONFIG_I2C_HID is not set +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +CONFIG_USB_SUPPORT=y +CONFIG_USB_COMMON=y +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB=y +# CONFIG_USB_DEBUG is not set +CONFIG_USB_ANNOUNCE_NEW_DEVICES=y + +# +# Miscellaneous USB options +# +CONFIG_USB_DEFAULT_PERSIST=y +# CONFIG_USB_DYNAMIC_MINORS is not set +CONFIG_USB_OTG=y +# CONFIG_USB_OTG_WHITELIST is not set +# CONFIG_USB_OTG_BLACKLIST_HUB is not set +CONFIG_USB_MON=m +# CONFIG_USB_WUSB_CBAF is not set + +# +# USB Host Controller Drivers +# +# CONFIG_USB_C67X00_HCD is not set +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_XHCI_PLATFORM=y +CONFIG_USB_EHCI_HCD=y +# CONFIG_USB_EHCI_ROOT_HUB_TT is not set +CONFIG_USB_EHCI_TT_NEWSCHED=y +CONFIG_USB_EHCI_HCD_SYNOPSYS=y +# CONFIG_USB_EHCI_HCD_PLATFORM is not set +# CONFIG_USB_OXU210HP_HCD is not set +# CONFIG_USB_ISP116X_HCD is not set +# CONFIG_USB_ISP1760_HCD is not set +# CONFIG_USB_ISP1362_HCD is not set +# CONFIG_USB_FUSBH200_HCD is not set +# CONFIG_USB_FOTG210_HCD is not set +CONFIG_USB_OHCI_HCD=y +# CONFIG_USB_OHCI_HCD_PLATFORM is not set +# CONFIG_USB_SL811_HCD is not set +# CONFIG_USB_R8A66597_HCD is not set +# CONFIG_USB_HCD_SSB is not set +# CONFIG_USB_HCD_TEST_MODE is not set +# CONFIG_USB_RENESAS_USBHS is not set + +# +# USB Device Class drivers +# +CONFIG_USB_ACM=y +# CONFIG_USB_PRINTER is not set +CONFIG_USB_WDM=m +# CONFIG_USB_TMC is not set + +# +# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may +# + +# +# also be needed; see USB_STORAGE Help for more info +# +CONFIG_USB_STORAGE=y +# CONFIG_USB_STORAGE_DEBUG is not set +# CONFIG_USB_STORAGE_REALTEK is not set +# CONFIG_USB_STORAGE_DATAFAB is not set +# CONFIG_USB_STORAGE_FREECOM is not set +# CONFIG_USB_STORAGE_ISD200 is not set +# CONFIG_USB_STORAGE_USBAT is not set +# CONFIG_USB_STORAGE_SDDR09 is not set +# CONFIG_USB_STORAGE_SDDR55 is not set +# CONFIG_USB_STORAGE_JUMPSHOT is not set +# CONFIG_USB_STORAGE_ALAUDA is not set +# CONFIG_USB_STORAGE_ONETOUCH is not set +# CONFIG_USB_STORAGE_KARMA is not set +# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set +# CONFIG_USB_STORAGE_ENE_UB6250 is not set + +# +# USB Imaging devices +# +# CONFIG_USB_MDC800 is not set +# CONFIG_USB_MICROTEK is not set +# CONFIG_USB_MUSB_HDRC is not set +CONFIG_USB_DWC3=y +CONFIG_USB_DWC3_HOST=y +# CONFIG_USB_DWC3_GADGET is not set +# CONFIG_USB_DWC3_DUAL_ROLE is not set + +# +# Platform Glue Driver Support +# +# CONFIG_USB_DWC3_EXYNOS is not set +# CONFIG_USB_DWC3_KEYSTONE is not set + +# +# Debugging features +# +# CONFIG_USB_DWC3_DEBUG is not set +# CONFIG_DWC3_HOST_USB3_LPM_ENABLE is not set +# CONFIG_USB_DWC2 is not set +# CONFIG_USB_CHIPIDEA is not set + +# +# USB port drivers +# +CONFIG_USB_SERIAL=y +CONFIG_USB_SERIAL_CONSOLE=y +CONFIG_USB_SERIAL_GENERIC=y +CONFIG_USB_SERIAL_SIMPLE=y +CONFIG_USB_SERIAL_AIRCABLE=y +CONFIG_USB_SERIAL_ARK3116=y +CONFIG_USB_SERIAL_BELKIN=y +CONFIG_USB_SERIAL_CH341=y +CONFIG_USB_SERIAL_WHITEHEAT=y +CONFIG_USB_SERIAL_DIGI_ACCELEPORT=y +CONFIG_USB_SERIAL_CP210X=y +CONFIG_USB_SERIAL_CYPRESS_M8=y +CONFIG_USB_SERIAL_EMPEG=y +CONFIG_USB_SERIAL_FTDI_SIO=y +CONFIG_USB_SERIAL_VISOR=y +CONFIG_USB_SERIAL_IPAQ=y +CONFIG_USB_SERIAL_IR=y +CONFIG_USB_SERIAL_EDGEPORT=y +CONFIG_USB_SERIAL_EDGEPORT_TI=y +CONFIG_USB_SERIAL_F81232=y +CONFIG_USB_SERIAL_GARMIN=y +CONFIG_USB_SERIAL_IPW=y +CONFIG_USB_SERIAL_IUU=y +CONFIG_USB_SERIAL_KEYSPAN_PDA=y +CONFIG_USB_SERIAL_KEYSPAN=y +# CONFIG_USB_SERIAL_KEYSPAN_MPR is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28 is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28X is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28XA is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28XB is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19 is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA18X is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19W is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19QW is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19QI is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA49W is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA49WLC is not set +CONFIG_USB_SERIAL_KLSI=y +CONFIG_USB_SERIAL_KOBIL_SCT=y +CONFIG_USB_SERIAL_MCT_U232=y +CONFIG_USB_SERIAL_METRO=y +CONFIG_USB_SERIAL_MOS7720=y +CONFIG_USB_SERIAL_MOS7840=y +CONFIG_USB_SERIAL_MXUPORT=y +CONFIG_USB_SERIAL_NAVMAN=y +CONFIG_USB_SERIAL_PL2303=y +CONFIG_USB_SERIAL_OTI6858=y +CONFIG_USB_SERIAL_QCAUX=y +CONFIG_USB_SERIAL_QUALCOMM=y +CONFIG_USB_SERIAL_SPCP8X5=y +CONFIG_USB_SERIAL_SAFE=y +# CONFIG_USB_SERIAL_SAFE_PADDED is not set +CONFIG_USB_SERIAL_SIERRAWIRELESS=y +CONFIG_USB_SERIAL_SYMBOL=y +CONFIG_USB_SERIAL_TI=y +CONFIG_USB_SERIAL_CYBERJACK=y +CONFIG_USB_SERIAL_XIRCOM=y +CONFIG_USB_SERIAL_WWAN=y +CONFIG_USB_SERIAL_OPTION=y +CONFIG_USB_SERIAL_OMNINET=y +CONFIG_USB_SERIAL_OPTICON=y +CONFIG_USB_SERIAL_XSENS_MT=y +CONFIG_USB_SERIAL_WISHBONE=y +CONFIG_USB_SERIAL_ZTE=y +CONFIG_USB_SERIAL_SSU100=y +CONFIG_USB_SERIAL_QT2=y +# CONFIG_USB_SERIAL_DEBUG is not set + +# +# USB Miscellaneous drivers +# +CONFIG_USB_EMI62=y +CONFIG_USB_EMI26=y +# CONFIG_USB_ADUTUX is not set +CONFIG_USB_SEVSEG=y +CONFIG_USB_RIO500=y +CONFIG_USB_LEGOTOWER=y +CONFIG_USB_LCD=y +CONFIG_USB_LED=y +# CONFIG_USB_CYPRESS_CY7C63 is not set +CONFIG_USB_CYTHERM=y +# CONFIG_USB_IDMOUSE is not set +# CONFIG_USB_FTDI_ELAN is not set +CONFIG_USB_APPLEDISPLAY=y +CONFIG_USB_SISUSBVGA=y +CONFIG_USB_SISUSBVGA_CON=y +CONFIG_USB_LD=y +CONFIG_USB_TRANCEVIBRATOR=y +CONFIG_USB_IOWARRIOR=y +# CONFIG_USB_TEST is not set +# CONFIG_USB_EHSET_TEST_FIXTURE is not set +CONFIG_USB_ISIGHTFW=y +CONFIG_USB_YUREX=y +CONFIG_USB_EZUSB_FX2=y +# CONFIG_USB_HSIC_USB3503 is not set + +# +# USB Physical Layer drivers +# +CONFIG_USB_PHY=y +# CONFIG_USB_OTG_FSM is not set +# CONFIG_USB_OTG_WAKELOCK is not set +# CONFIG_NOP_USB_XCEIV is not set +# CONFIG_SAMSUNG_USB2PHY is not set +# CONFIG_SAMSUNG_USB3PHY is not set +# CONFIG_USB_GPIO_VBUS is not set +CONFIG_USB_ISP1301=y +# CONFIG_USB_RCAR_PHY is not set +CONFIG_USB_ULPI=y +CONFIG_AMLOGIC_USBPHY=y +CONFIG_AMLOGIC_USB2PHY=y +CONFIG_AMLOGIC_USB3PHY=y +CONFIG_USB_GADGET=y +# CONFIG_USB_GADGET_DEBUG is not set +# CONFIG_USB_GADGET_DEBUG_FILES is not set +# CONFIG_USB_GADGET_DEBUG_FS is not set +CONFIG_USB_GADGET_VBUS_DRAW=2 +CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 + +# +# USB Peripheral Controller +# +# CONFIG_USB_FOTG210_UDC is not set +# CONFIG_USB_GR_UDC is not set +# CONFIG_USB_R8A66597 is not set +# CONFIG_USB_PXA27X is not set +# CONFIG_USB_MV_UDC is not set +# CONFIG_USB_MV_U3D is not set +# CONFIG_USB_M66592 is not set +# CONFIG_USB_NET2272 is not set +# CONFIG_USB_DUMMY_HCD is not set +# CONFIG_USB_CONFIGFS is not set +# CONFIG_USB_ZERO is not set +# CONFIG_USB_AUDIO is not set +# CONFIG_USB_ETH is not set +# CONFIG_USB_G_NCM is not set +# CONFIG_USB_GADGETFS is not set +# CONFIG_USB_FUNCTIONFS is not set +# CONFIG_USB_MASS_STORAGE is not set +# CONFIG_USB_G_SERIAL is not set +# CONFIG_USB_MIDI_GADGET is not set +# CONFIG_USB_G_PRINTER is not set +# CONFIG_USB_CDC_COMPOSITE is not set +# CONFIG_USB_G_NOKIA is not set +# CONFIG_USB_G_ACM_MS is not set +# CONFIG_USB_G_MULTI is not set +# CONFIG_USB_G_HID is not set +# CONFIG_USB_G_DBGP is not set +# CONFIG_USB_G_WEBCAM is not set +CONFIG_MMC=y +# CONFIG_MMC_DEBUG is not set +CONFIG_PXP_MMC=y +CONFIG_MMC_UNSAFE_RESUME=y +# CONFIG_MMC_CLKGATE is not set +# CONFIG_MMC_EMBEDDED_SDIO is not set +# CONFIG_MMC_PARANOID_SD_INIT is not set + +# +# MMC/SD/SDIO Card Drivers +# +CONFIG_MMC_BLOCK=y +CONFIG_MMC_BLOCK_MINORS=32 +CONFIG_MMC_BLOCK_BOUNCE=y +# CONFIG_MMC_BLOCK_DEFERRED_RESUME is not set +# CONFIG_SDIO_UART is not set +# CONFIG_MMC_TEST is not set + +# +# MMC/SD/SDIO Host Controller Drivers +# +CONFIG_MMC_ARMMMCI=y +# CONFIG_MMC_SDHCI is not set +# CONFIG_MMC_SDHCI_PXAV3 is not set +# CONFIG_MMC_SDHCI_PXAV2 is not set +# CONFIG_MMC_SPI is not set +# CONFIG_MMC_VUB300 is not set +# CONFIG_MMC_USHC is not set +# CONFIG_MEMSTICK is not set +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=y + +# +# LED drivers +# +# CONFIG_LEDS_LM3530 is not set +# CONFIG_LEDS_LM3642 is not set +# CONFIG_LEDS_PCA9532 is not set +CONFIG_LEDS_GPIO=y +# CONFIG_LEDS_LP3944 is not set +# CONFIG_LEDS_LP5521 is not set +# CONFIG_LEDS_LP5523 is not set +# CONFIG_LEDS_LP5562 is not set +# CONFIG_LEDS_LP8501 is not set +# CONFIG_LEDS_PCA955X is not set +# CONFIG_LEDS_PCA963X is not set +# CONFIG_LEDS_PCA9685 is not set +# CONFIG_LEDS_DAC124S085 is not set +# CONFIG_LEDS_PWM is not set +# CONFIG_LEDS_REGULATOR is not set +# CONFIG_LEDS_BD2802 is not set +# CONFIG_LEDS_LT3593 is not set +# CONFIG_LEDS_TCA6507 is not set +# CONFIG_LEDS_LM355x is not set +# CONFIG_LEDS_OT200 is not set +# CONFIG_LEDS_BLINKM is not set + +# +# LED Triggers +# +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_TIMER=y +CONFIG_LEDS_TRIGGER_ONESHOT=y +CONFIG_LEDS_TRIGGER_HEARTBEAT=y +CONFIG_LEDS_TRIGGER_BACKLIGHT=y +# CONFIG_LEDS_TRIGGER_OFF is not set +CONFIG_LEDS_TRIGGER_CPU=y +CONFIG_LEDS_TRIGGER_GPIO=y +CONFIG_LEDS_TRIGGER_DEFAULT_ON=y + +# +# iptables trigger is under Netfilter config (LED target) +# +CONFIG_LEDS_TRIGGER_TRANSIENT=y +CONFIG_LEDS_TRIGGER_CAMERA=y +CONFIG_SWITCH=y +# CONFIG_SWITCH_GPIO is not set +# CONFIG_ACCESSIBILITY is not set +CONFIG_RTC_LIB=y +CONFIG_RTC_CLASS=y +CONFIG_RTC_HCTOSYS=y +CONFIG_RTC_SYSTOHC=y +CONFIG_RTC_HCTOSYS_DEVICE="rtc0" +# CONFIG_RTC_DEBUG is not set + +# +# RTC interfaces +# +CONFIG_RTC_INTF_SYSFS=y +CONFIG_RTC_INTF_PROC=y +CONFIG_RTC_INTF_DEV=y +# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set +# CONFIG_RTC_DRV_TEST is not set + +# +# I2C RTC drivers +# +# CONFIG_RTC_DRV_DS1307 is not set +# CONFIG_RTC_DRV_DS1374 is not set +# CONFIG_RTC_DRV_DS1672 is not set +# CONFIG_RTC_DRV_DS3232 is not set +CONFIG_RTC_DRV_HYM8563=m +CONFIG_RTC_DRV_AML_HYM8563=m +# CONFIG_RTC_DRV_MAX6900 is not set +# CONFIG_RTC_DRV_RS5C372 is not set +# CONFIG_RTC_DRV_ISL1208 is not set +# CONFIG_RTC_DRV_ISL12022 is not set +# CONFIG_RTC_DRV_ISL12057 is not set +# CONFIG_RTC_DRV_X1205 is not set +# CONFIG_RTC_DRV_PCF2127 is not set +# CONFIG_RTC_DRV_PCF8523 is not set +# CONFIG_RTC_DRV_PCF8563 is not set +# CONFIG_RTC_DRV_PCF8583 is not set +# CONFIG_RTC_DRV_M41T80 is not set +# CONFIG_RTC_DRV_BQ32K is not set +# CONFIG_RTC_DRV_S35390A is not set +# CONFIG_RTC_DRV_FM3130 is not set +# CONFIG_RTC_DRV_RX8581 is not set +# CONFIG_RTC_DRV_RX8025 is not set +# CONFIG_RTC_DRV_EM3027 is not set +# CONFIG_RTC_DRV_RV3029C2 is not set + +# +# SPI RTC drivers +# +# CONFIG_RTC_DRV_M41T93 is not set +# CONFIG_RTC_DRV_M41T94 is not set +# CONFIG_RTC_DRV_DS1305 is not set +# CONFIG_RTC_DRV_DS1390 is not set +# CONFIG_RTC_DRV_MAX6902 is not set +# CONFIG_RTC_DRV_R9701 is not set +# CONFIG_RTC_DRV_RS5C348 is not set +# CONFIG_RTC_DRV_DS3234 is not set +# CONFIG_RTC_DRV_PCF2123 is not set +# CONFIG_RTC_DRV_RX4581 is not set + +# +# Platform RTC drivers +# +# CONFIG_RTC_DRV_DS1286 is not set +# CONFIG_RTC_DRV_DS1511 is not set +# CONFIG_RTC_DRV_DS1553 is not set +# CONFIG_RTC_DRV_DS1742 is not set +# CONFIG_RTC_DRV_STK17TA8 is not set +# CONFIG_RTC_DRV_M48T86 is not set +# CONFIG_RTC_DRV_M48T35 is not set +# CONFIG_RTC_DRV_M48T59 is not set +# CONFIG_RTC_DRV_MSM6242 is not set +# CONFIG_RTC_DRV_BQ4802 is not set +# CONFIG_RTC_DRV_RP5C01 is not set +# CONFIG_RTC_DRV_V3020 is not set +# CONFIG_RTC_DRV_DS2404 is not set + +# +# on-CPU RTC drivers +# +# CONFIG_RTC_DRV_PL030 is not set +CONFIG_RTC_DRV_PL031=y +# CONFIG_RTC_DRV_SNVS is not set +# CONFIG_RTC_DRV_MOXART is not set + +# +# HID Sensor RTC drivers +# +# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set +# CONFIG_DMADEVICES is not set +# CONFIG_AUXDISPLAY is not set +CONFIG_UIO=y +CONFIG_UIO_PDRV_GENIRQ=y +# CONFIG_UIO_DMEM_GENIRQ is not set +CONFIG_VIRT_DRIVERS=y +CONFIG_VIRTIO=y + +# +# Virtio drivers +# +CONFIG_VIRTIO_BALLOON=m +CONFIG_VIRTIO_MMIO=y +# CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set + +# +# Microsoft Hyper-V guest support +# +CONFIG_STAGING=y +CONFIG_USBIP_CORE=m +CONFIG_USBIP_VHCI_HCD=m +CONFIG_USBIP_HOST=m +# CONFIG_USBIP_DEBUG is not set +CONFIG_W35UND=m +CONFIG_PRISM2_USB=m +# CONFIG_ECHO is not set +# CONFIG_COMEDI is not set +CONFIG_RTLLIB=m +CONFIG_RTLLIB_CRYPTO_CCMP=m +CONFIG_RTLLIB_CRYPTO_TKIP=m +CONFIG_RTLLIB_CRYPTO_WEP=m +CONFIG_R8712U=m +CONFIG_R8188EU=m +CONFIG_88EU_AP_MODE=y +CONFIG_88EU_P2P=y +CONFIG_RTS5139=m +CONFIG_RTS5139_DEBUG=y +# CONFIG_TRANZPORT is not set +CONFIG_LINE6_USB=m +# CONFIG_LINE6_USB_IMPULSE_RESPONSE is not set +CONFIG_USB_SERIAL_QUATECH2=m +CONFIG_VT6656=m +CONFIG_USB_ENESTORAGE=m +CONFIG_BCM_WIMAX=m +# CONFIG_FT1000 is not set + +# +# Speakup console speech +# +# CONFIG_SPEAKUP is not set +# CONFIG_TOUCHSCREEN_CLEARPAD_TM1217 is not set +# CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4 is not set +CONFIG_STAGING_MEDIA=y +CONFIG_DVB_AS102=m +CONFIG_I2C_BCM2048=m +CONFIG_VIDEO_GO7007=m +CONFIG_VIDEO_GO7007_USB=m +CONFIG_VIDEO_GO7007_LOADER=m +CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m +CONFIG_USB_MSI3101=m +# CONFIG_VIDEO_TCM825X is not set +CONFIG_USB_SN9C102=m +CONFIG_LIRC_STAGING=y +CONFIG_LIRC_IGORPLUGUSB=m +CONFIG_LIRC_IMON=m +CONFIG_LIRC_SASEM=m +CONFIG_LIRC_SERIAL=m +CONFIG_LIRC_SERIAL_TRANSMITTER=y +CONFIG_LIRC_SIR=m +CONFIG_LIRC_ZILOG=m + +# +# Android +# +CONFIG_ANDROID=y +# CONFIG_ANDROID_BINDER_IPC is not set +# CONFIG_ASHMEM is not set +# CONFIG_ANDROID_LOGGER is not set +# CONFIG_ANDROID_TIMED_OUTPUT is not set +# CONFIG_ANDROID_LOW_MEMORY_KILLER is not set +# CONFIG_ANDROID_INTF_ALARM_DEV is not set +CONFIG_SYNC=y +CONFIG_SW_SYNC=y +# CONFIG_SW_SYNC_USER is not set +CONFIG_ION=y +# CONFIG_ION_TEST is not set +# CONFIG_ION_DUMMY is not set +# CONFIG_FIQ_DEBUGGER is not set +# CONFIG_FIQ_WATCHDOG is not set +# CONFIG_USB_WPAN_HCD is not set +# CONFIG_WIMAX_GDM72XX is not set +# CONFIG_LTE_GDM724X is not set +# CONFIG_CED1401 is not set +# CONFIG_DGRP is not set +# CONFIG_MTD_SPINAND_MT29F is not set +# CONFIG_LUSTRE_FS is not set +# CONFIG_XILLYBUS is not set +# CONFIG_DGAP is not set +CONFIG_CLKDEV_LOOKUP=y +CONFIG_HAVE_CLK_PREPARE=y +CONFIG_COMMON_CLK=y + +# +# Common Clock Framework +# +CONFIG_COMMON_CLK_VERSATILE=y +# CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_SI570 is not set +CONFIG_COMMON_CLK_XGENE=y +CONFIG_COMMON_CLK_SCPI=y +# CONFIG_COMMON_CLK_QCOM is not set + +# +# Hardware Spinlock drivers +# +CONFIG_CLKSRC_OF=y +CONFIG_ARM_ARCH_TIMER=y +CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y +CONFIG_MAILBOX=y +# CONFIG_PL320_MBOX is not set +CONFIG_IOMMU_SUPPORT=y +CONFIG_OF_IOMMU=y +# CONFIG_ARM_SMMU is not set + +# +# Remoteproc drivers +# +# CONFIG_STE_MODEM_RPROC is not set + +# +# Rpmsg drivers +# +CONFIG_PM_DEVFREQ=y + +# +# DEVFREQ Governors +# +CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y +CONFIG_DEVFREQ_GOV_PERFORMANCE=y +CONFIG_DEVFREQ_GOV_POWERSAVE=y +CONFIG_DEVFREQ_GOV_USERSPACE=y + +# +# DEVFREQ Drivers +# +# CONFIG_EXTCON is not set +# CONFIG_MEMORY is not set +# CONFIG_IIO is not set +CONFIG_PWM=y +CONFIG_PWM_SYSFS=y +# CONFIG_PWM_PCA9685 is not set +CONFIG_IRQCHIP=y +CONFIG_ARM_GIC=y +CONFIG_ARM_GIC_V3=y +# CONFIG_IPACK_BUS is not set +CONFIG_RESET_CONTROLLER=y +# CONFIG_FMC is not set + +# +# PHY Subsystem +# +# CONFIG_GENERIC_PHY is not set +# CONFIG_PHY_EXYNOS_MIPI_VIDEO is not set +# CONFIG_PHY_EXYNOS_DP_VIDEO is not set +# CONFIG_POWERCAP is not set +# CONFIG_GATOR is not set +CONFIG_CORESIGHT=y +CONFIG_CORESIGHT_LINKS_AND_SINKS=y +# CONFIG_CORESIGHT_LINK_AND_SINK_TMC is not set +CONFIG_CORESIGHT_SINK_TPIU=y +CONFIG_CORESIGHT_SINK_ETBV10=y +CONFIG_CORESIGHT_SOURCE_ETM4X=y +CONFIG_CORESIGHT_QCOM_REPLICATOR=y + +# +# Mali GPU OpenGL device driver +# +CONFIG_MALI400=m +# CONFIG_MALI400_DEBUG is not set +# CONFIG_MALI400_PROFILING is not set +# CONFIG_MALI400_UMP is not set +# CONFIG_MALI_DVFS is not set +CONFIG_MALI_DMA_BUF_MAP_ON_ATTACH=y +CONFIG_MALI_SHARED_INTERRUPTS=y +# CONFIG_MALI_PMU_PARALLEL_POWER_UP is not set +CONFIG_MALI_DT=y +# CONFIG_MALI_QUIET is not set + +# +# Mali 400 UMP device driver +# +# CONFIG_UMP is not set + +# +# File systems +# +CONFIG_DCACHE_WORD_ACCESS=y +# CONFIG_EXT2_FS is not set +# CONFIG_EXT3_FS is not set +CONFIG_EXT4_FS=y +CONFIG_EXT4_USE_FOR_EXT23=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +CONFIG_EXT4_DEBUG=y +CONFIG_JBD2=y +# CONFIG_JBD2_DEBUG is not set +CONFIG_FS_MBCACHE=y +CONFIG_REISERFS_FS=y +# CONFIG_REISERFS_CHECK is not set +CONFIG_REISERFS_PROC_INFO=y +CONFIG_REISERFS_FS_XATTR=y +CONFIG_REISERFS_FS_POSIX_ACL=y +CONFIG_REISERFS_FS_SECURITY=y +CONFIG_JFS_FS=y +# CONFIG_JFS_POSIX_ACL is not set +# CONFIG_JFS_SECURITY is not set +# CONFIG_JFS_DEBUG is not set +# CONFIG_JFS_STATISTICS is not set +CONFIG_XFS_FS=y +# CONFIG_XFS_QUOTA is not set +# CONFIG_XFS_POSIX_ACL is not set +# CONFIG_XFS_RT is not set +# CONFIG_XFS_WARN is not set +# CONFIG_XFS_DEBUG is not set +# CONFIG_GFS2_FS is not set +# CONFIG_OCFS2_FS is not set +CONFIG_BTRFS_FS=y +CONFIG_BTRFS_FS_POSIX_ACL=y +# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set +CONFIG_BTRFS_FS_RUN_SANITY_TESTS=y +# CONFIG_BTRFS_DEBUG is not set +# CONFIG_BTRFS_ASSERT is not set +# CONFIG_NILFS2_FS is not set +CONFIG_FS_POSIX_ACL=y +CONFIG_EXPORTFS=y +CONFIG_FILE_LOCKING=y +CONFIG_FSNOTIFY=y +CONFIG_DNOTIFY=y +CONFIG_INOTIFY_USER=y +CONFIG_FANOTIFY=y +CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y +CONFIG_QUOTA=y +# CONFIG_QUOTA_NETLINK_INTERFACE is not set +CONFIG_PRINT_QUOTA_WARNING=y +# CONFIG_QUOTA_DEBUG is not set +CONFIG_QUOTA_TREE=y +# CONFIG_QFMT_V1 is not set +CONFIG_QFMT_V2=y +CONFIG_QUOTACTL=y +CONFIG_AUTOFS4_FS=y +CONFIG_FUSE_FS=y +# CONFIG_CUSE is not set +CONFIG_OVERLAY_FS=y + +# +# Caches +# +CONFIG_FSCACHE=y +# CONFIG_FSCACHE_STATS is not set +# CONFIG_FSCACHE_HISTOGRAM is not set +# CONFIG_FSCACHE_DEBUG is not set +# CONFIG_FSCACHE_OBJECT_LIST is not set +CONFIG_CACHEFILES=y +# CONFIG_CACHEFILES_DEBUG is not set +# CONFIG_CACHEFILES_HISTOGRAM is not set + +# +# CD-ROM/DVD Filesystems +# +CONFIG_ISO9660_FS=y +CONFIG_JOLIET=y +CONFIG_ZISOFS=y +CONFIG_UDF_FS=y +CONFIG_UDF_NLS=y + +# +# DOS/FAT/NT Filesystems +# +CONFIG_FAT_FS=y +CONFIG_MSDOS_FS=y +CONFIG_VFAT_FS=y +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="ascii" +# CONFIG_EXFAT_FS is not set +CONFIG_NTFS_FS=y +# CONFIG_NTFS_DEBUG is not set +CONFIG_NTFS_RW=y + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +CONFIG_PROC_KCORE=y +CONFIG_PROC_SYSCTL=y +CONFIG_PROC_PAGE_MONITOR=y +CONFIG_SYSFS=y +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_TMPFS_XATTR=y +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_CONFIGFS_FS=y +CONFIG_MISC_FILESYSTEMS=y +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +CONFIG_ECRYPT_FS=m +CONFIG_ECRYPT_FS_MESSAGING=y +CONFIG_HFS_FS=m +CONFIG_HFSPLUS_FS=m +# CONFIG_HFSPLUS_FS_POSIX_ACL is not set +# CONFIG_BEFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +CONFIG_JFFS2_FS=y +CONFIG_JFFS2_FS_DEBUG=0 +CONFIG_JFFS2_FS_WRITEBUFFER=y +# CONFIG_JFFS2_FS_WBUF_VERIFY is not set +# CONFIG_JFFS2_SUMMARY is not set +# CONFIG_JFFS2_FS_XATTR is not set +CONFIG_JFFS2_COMPRESSION_OPTIONS=y +CONFIG_JFFS2_ZLIB=y +CONFIG_JFFS2_LZO=y +CONFIG_JFFS2_RTIME=y +CONFIG_JFFS2_RUBIN=y +# CONFIG_JFFS2_CMODE_NONE is not set +CONFIG_JFFS2_CMODE_PRIORITY=y +# CONFIG_JFFS2_CMODE_SIZE is not set +# CONFIG_JFFS2_CMODE_FAVOURLZO is not set +CONFIG_UBIFS_FS=y +CONFIG_UBIFS_FS_ADVANCED_COMPR=y +CONFIG_UBIFS_FS_LZO=y +CONFIG_UBIFS_FS_ZLIB=y +# CONFIG_LOGFS is not set +CONFIG_CRAMFS=y +CONFIG_SQUASHFS=y +CONFIG_SQUASHFS_FILE_CACHE=y +# CONFIG_SQUASHFS_FILE_DIRECT is not set +CONFIG_SQUASHFS_DECOMP_SINGLE=y +# CONFIG_SQUASHFS_DECOMP_MULTI is not set +# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set +CONFIG_SQUASHFS_XATTR=y +CONFIG_SQUASHFS_ZLIB=y +CONFIG_SQUASHFS_LZO=y +CONFIG_SQUASHFS_XZ=y +# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +# CONFIG_VXFS_FS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_OMFS_FS is not set +# CONFIG_HPFS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_QNX6FS_FS is not set +CONFIG_ROMFS_FS=y +CONFIG_ROMFS_BACKED_BY_BLOCK=y +# CONFIG_ROMFS_BACKED_BY_MTD is not set +# CONFIG_ROMFS_BACKED_BY_BOTH is not set +CONFIG_ROMFS_ON_BLOCK=y +# CONFIG_PSTORE is not set +# CONFIG_SYSV_FS is not set +CONFIG_UFS_FS=y +# CONFIG_UFS_FS_WRITE is not set +# CONFIG_UFS_DEBUG is not set +CONFIG_F2FS_FS=y +CONFIG_F2FS_STAT_FS=y +CONFIG_F2FS_FS_XATTR=y +# CONFIG_F2FS_FS_POSIX_ACL is not set +# CONFIG_F2FS_FS_SECURITY is not set +# CONFIG_F2FS_CHECK_FS is not set +CONFIG_AUFS_FS=m +CONFIG_AUFS_BRANCH_MAX_127=y +# CONFIG_AUFS_BRANCH_MAX_511 is not set +# CONFIG_AUFS_BRANCH_MAX_1023 is not set +# CONFIG_AUFS_BRANCH_MAX_32767 is not set +CONFIG_AUFS_SBILIST=y +CONFIG_AUFS_HNOTIFY=y +CONFIG_AUFS_HFSNOTIFY=y +CONFIG_AUFS_EXPORT=y +CONFIG_AUFS_INO_T_64=y +CONFIG_AUFS_XATTR=y +CONFIG_AUFS_FHSM=y +CONFIG_AUFS_RDU=y +CONFIG_AUFS_SHWH=y +CONFIG_AUFS_BR_RAMFS=y +CONFIG_AUFS_BR_FUSE=y +CONFIG_AUFS_POLL=y +CONFIG_AUFS_BR_HFSPLUS=y +CONFIG_AUFS_BDEV_LOOP=y +# CONFIG_AUFS_DEBUG is not set +CONFIG_NETWORK_FILESYSTEMS=y +CONFIG_NFS_FS=y +CONFIG_NFS_V2=y +CONFIG_NFS_V3=y +# CONFIG_NFS_V3_ACL is not set +CONFIG_NFS_V4=y +CONFIG_NFS_SWAP=y +CONFIG_NFS_V4_1=y +# CONFIG_NFS_V4_2 is not set +CONFIG_PNFS_FILE_LAYOUT=y +CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org" +# CONFIG_NFS_V4_1_MIGRATION is not set +CONFIG_ROOT_NFS=y +# CONFIG_NFS_FSCACHE is not set +# CONFIG_NFS_USE_LEGACY_DNS is not set +CONFIG_NFS_USE_KERNEL_DNS=y +CONFIG_NFSD=m +CONFIG_NFSD_V2_ACL=y +CONFIG_NFSD_V3=y +CONFIG_NFSD_V3_ACL=y +CONFIG_NFSD_V4=y +# CONFIG_NFSD_V4_SECURITY_LABEL is not set +# CONFIG_NFSD_FAULT_INJECTION is not set +CONFIG_LOCKD=y +CONFIG_LOCKD_V4=y +CONFIG_NFS_ACL_SUPPORT=m +CONFIG_NFS_COMMON=y +CONFIG_SUNRPC=y +CONFIG_SUNRPC_GSS=y +CONFIG_SUNRPC_BACKCHANNEL=y +CONFIG_SUNRPC_SWAP=y +CONFIG_RPCSEC_GSS_KRB5=m +# CONFIG_SUNRPC_DEBUG is not set +# CONFIG_CEPH_FS is not set +CONFIG_CIFS=y +CONFIG_CIFS_STATS=y +CONFIG_CIFS_STATS2=y +CONFIG_CIFS_WEAK_PW_HASH=y +# CONFIG_CIFS_UPCALL is not set +CONFIG_CIFS_XATTR=y +CONFIG_CIFS_POSIX=y +# CONFIG_CIFS_ACL is not set +# CONFIG_CIFS_DEBUG is not set +CONFIG_CIFS_DFS_UPCALL=y +CONFIG_CIFS_SMB2=y +# CONFIG_CIFS_FSCACHE is not set +# CONFIG_NCP_FS is not set +# CONFIG_CODA_FS is not set +# CONFIG_AFS_FS is not set +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_CODEPAGE_437=y +# CONFIG_NLS_CODEPAGE_737 is not set +# CONFIG_NLS_CODEPAGE_775 is not set +# CONFIG_NLS_CODEPAGE_850 is not set +# CONFIG_NLS_CODEPAGE_852 is not set +# CONFIG_NLS_CODEPAGE_855 is not set +# CONFIG_NLS_CODEPAGE_857 is not set +# CONFIG_NLS_CODEPAGE_860 is not set +# CONFIG_NLS_CODEPAGE_861 is not set +# CONFIG_NLS_CODEPAGE_862 is not set +# CONFIG_NLS_CODEPAGE_863 is not set +# CONFIG_NLS_CODEPAGE_864 is not set +# CONFIG_NLS_CODEPAGE_865 is not set +# CONFIG_NLS_CODEPAGE_866 is not set +# CONFIG_NLS_CODEPAGE_869 is not set +# CONFIG_NLS_CODEPAGE_936 is not set +# CONFIG_NLS_CODEPAGE_950 is not set +# CONFIG_NLS_CODEPAGE_932 is not set +# CONFIG_NLS_CODEPAGE_949 is not set +# CONFIG_NLS_CODEPAGE_874 is not set +# CONFIG_NLS_ISO8859_8 is not set +# CONFIG_NLS_CODEPAGE_1250 is not set +# CONFIG_NLS_CODEPAGE_1251 is not set +CONFIG_NLS_ASCII=y +CONFIG_NLS_ISO8859_1=y +# CONFIG_NLS_ISO8859_2 is not set +# CONFIG_NLS_ISO8859_3 is not set +# CONFIG_NLS_ISO8859_4 is not set +# CONFIG_NLS_ISO8859_5 is not set +# CONFIG_NLS_ISO8859_6 is not set +# CONFIG_NLS_ISO8859_7 is not set +# CONFIG_NLS_ISO8859_9 is not set +# CONFIG_NLS_ISO8859_13 is not set +# CONFIG_NLS_ISO8859_14 is not set +# CONFIG_NLS_ISO8859_15 is not set +# CONFIG_NLS_KOI8_R is not set +# CONFIG_NLS_KOI8_U is not set +# CONFIG_NLS_MAC_ROMAN is not set +# CONFIG_NLS_MAC_CELTIC is not set +# CONFIG_NLS_MAC_CENTEURO is not set +# CONFIG_NLS_MAC_CROATIAN is not set +# CONFIG_NLS_MAC_CYRILLIC is not set +# CONFIG_NLS_MAC_GAELIC is not set +# CONFIG_NLS_MAC_GREEK is not set +# CONFIG_NLS_MAC_ICELAND is not set +# CONFIG_NLS_MAC_INUIT is not set +# CONFIG_NLS_MAC_ROMANIAN is not set +# CONFIG_NLS_MAC_TURKISH is not set +CONFIG_NLS_UTF8=y +# CONFIG_DLM is not set +# CONFIG_VIRTUALIZATION is not set + +# +# Kernel hacking +# + +# +# printk and dmesg options +# +CONFIG_PRINTK_TIME=y +CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 +# CONFIG_BOOT_PRINTK_DELAY is not set +# CONFIG_DYNAMIC_DEBUG is not set + +# +# Compile-time checks and compiler options +# +# CONFIG_DEBUG_INFO is not set +CONFIG_ENABLE_WARN_DEPRECATED=y +CONFIG_ENABLE_MUST_CHECK=y +CONFIG_FRAME_WARN=2048 +# CONFIG_STRIP_ASM_SYMS is not set +# CONFIG_READABLE_ASM is not set +# CONFIG_UNUSED_SYMBOLS is not set +CONFIG_DEBUG_FS=y +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +CONFIG_ARCH_WANT_FRAME_POINTERS=y +CONFIG_FRAME_POINTER=y +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1 +CONFIG_DEBUG_KERNEL=y + +# +# Memory Debugging +# +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_SLUB_DEBUG_ON is not set +# CONFIG_SLUB_STATS is not set +CONFIG_HAVE_DEBUG_KMEMLEAK=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_VM is not set +# CONFIG_DEBUG_MEMORY_INIT is not set +# CONFIG_DEBUG_PER_CPU_MAPS is not set +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Lockups and Hangs +# +# CONFIG_LOCKUP_DETECTOR is not set +# CONFIG_DETECT_HUNG_TASK is not set +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANIC_TIMEOUT=0 +# CONFIG_SCHED_DEBUG is not set +# CONFIG_SCHEDSTATS is not set +CONFIG_TIMER_STATS=y +# CONFIG_DEBUG_PREEMPT is not set + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_RT_MUTEX_TESTER is not set +# CONFIG_DEBUG_SPINLOCK is not set +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +CONFIG_STACKTRACE=y +# CONFIG_DEBUG_KOBJECT is not set +CONFIG_HAVE_DEBUG_BUGVERBOSE=y +CONFIG_DEBUG_BUGVERBOSE=y +# CONFIG_DEBUG_WRITECOUNT is not set +# CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_CREDENTIALS is not set + +# +# RCU Debugging +# +# CONFIG_PROVE_RCU_DELAY is not set +# CONFIG_SPARSE_RCU_POINTER is not set +# CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=21 +CONFIG_RCU_CPU_STALL_VERBOSE=y +# CONFIG_RCU_CPU_STALL_INFO is not set +CONFIG_RCU_TRACE=y +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_NOTIFIER_ERROR_INJECTION is not set +# CONFIG_FAULT_INJECTION is not set +CONFIG_NOP_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_TRACE_CLOCK=y +CONFIG_RING_BUFFER=y +CONFIG_EVENT_TRACING=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_TRACING=y +CONFIG_GENERIC_TRACER=y +CONFIG_TRACING_SUPPORT=y +CONFIG_FTRACE=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUNCTION_GRAPH_TRACER=y +# CONFIG_IRQSOFF_TRACER is not set +# CONFIG_PREEMPT_TRACER is not set +# CONFIG_SCHED_TRACER is not set +# CONFIG_FTRACE_SYSCALLS is not set +# CONFIG_TRACER_SNAPSHOT is not set +CONFIG_BRANCH_PROFILE_NONE=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +# CONFIG_PROFILE_ALL_BRANCHES is not set +CONFIG_STACK_TRACER=y +# CONFIG_BLK_DEV_IO_TRACE is not set +# CONFIG_PROBE_EVENTS is not set +CONFIG_DYNAMIC_FTRACE=y +CONFIG_FUNCTION_PROFILER=y +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +# CONFIG_RING_BUFFER_BENCHMARK is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set + +# +# Runtime Testing +# +# CONFIG_LKDTM is not set +# CONFIG_TEST_LIST_SORT is not set +# CONFIG_BACKTRACE_SELF_TEST is not set +# CONFIG_RBTREE_TEST is not set +# CONFIG_INTERVAL_TREE_TEST is not set +# CONFIG_PERCPU_TEST is not set +# CONFIG_ATOMIC64_SELFTEST is not set +# CONFIG_ASYNC_RAID6_TEST is not set +# CONFIG_TEST_STRING_HELPERS is not set +# CONFIG_TEST_KSTRTOX is not set +# CONFIG_DMA_API_DEBUG is not set +# CONFIG_TEST_MODULE is not set +# CONFIG_TEST_USER_COPY is not set +# CONFIG_CHECK_ISR_TIME is not set +# CONFIG_SAMPLES is not set +CONFIG_HAVE_ARCH_KGDB=y +CONFIG_KGDB=y +CONFIG_KGDB_SERIAL_CONSOLE=y +CONFIG_KGDB_TESTS=y +# CONFIG_KGDB_TESTS_ON_BOOT is not set +# CONFIG_KGDB_KDB is not set +CONFIG_EARLY_PRINTK=y +# CONFIG_PID_IN_CONTEXTIDR is not set + +# +# Security options +# +CONFIG_KEYS=y +# CONFIG_PERSISTENT_KEYRINGS is not set +# CONFIG_BIG_KEYS is not set +# CONFIG_ENCRYPTED_KEYS is not set +# CONFIG_KEYS_DEBUG_PROC_KEYS is not set +# CONFIG_SECURITY_DMESG_RESTRICT is not set +# CONFIG_SECURITY_PERF_EVENTS_RESTRICT is not set +CONFIG_SECURITY=y +CONFIG_SECURITYFS=y +CONFIG_SECURITY_NETWORK=y +# CONFIG_SECURITY_NETWORK_XFRM is not set +CONFIG_SECURITY_PATH=y +CONFIG_LSM_MMAP_MIN_ADDR=32768 +CONFIG_SECURITY_SELINUX=y +# CONFIG_SECURITY_SELINUX_BOOTPARAM is not set +# CONFIG_SECURITY_SELINUX_DISABLE is not set +CONFIG_SECURITY_SELINUX_DEVELOP=y +CONFIG_SECURITY_SELINUX_AVC_STATS=y +CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 +# CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX is not set +CONFIG_SECURITY_SMACK=y +# CONFIG_SECURITY_TOMOYO is not set +CONFIG_SECURITY_APPARMOR=y +CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1 +CONFIG_SECURITY_APPARMOR_HASH=y +# CONFIG_SECURITY_YAMA is not set +# CONFIG_IMA is not set +# CONFIG_EVM is not set +# CONFIG_DEFAULT_SECURITY_SELINUX is not set +# CONFIG_DEFAULT_SECURITY_SMACK is not set +CONFIG_DEFAULT_SECURITY_APPARMOR=y +# CONFIG_DEFAULT_SECURITY_DAC is not set +CONFIG_DEFAULT_SECURITY="apparmor" +CONFIG_XOR_BLOCKS=y +CONFIG_ASYNC_CORE=m +CONFIG_ASYNC_MEMCPY=m +CONFIG_ASYNC_XOR=m +CONFIG_ASYNC_PQ=m +CONFIG_ASYNC_RAID6_RECOV=m +CONFIG_CRYPTO=y + +# +# Crypto core or helper +# +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_AEAD=y +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_BLKCIPHER=y +CONFIG_CRYPTO_BLKCIPHER2=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_RNG=y +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_PCOMP=m +CONFIG_CRYPTO_PCOMP2=y +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +CONFIG_CRYPTO_USER=m +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y +CONFIG_CRYPTO_GF128MUL=m +CONFIG_CRYPTO_NULL=m +CONFIG_CRYPTO_PCRYPT=m +CONFIG_CRYPTO_WORKQUEUE=y +CONFIG_CRYPTO_CRYPTD=y +CONFIG_CRYPTO_AUTHENC=y +# CONFIG_CRYPTO_TEST is not set +CONFIG_CRYPTO_ABLK_HELPER=y + +# +# Authenticated Encryption with Associated Data +# +CONFIG_CRYPTO_CCM=y +CONFIG_CRYPTO_GCM=m +CONFIG_CRYPTO_SEQIV=y + +# +# Block modes +# +CONFIG_CRYPTO_CBC=y +CONFIG_CRYPTO_CTR=y +CONFIG_CRYPTO_CTS=m +CONFIG_CRYPTO_ECB=y +CONFIG_CRYPTO_LRW=m +CONFIG_CRYPTO_PCBC=y +CONFIG_CRYPTO_XTS=m + +# +# Hash modes +# +CONFIG_CRYPTO_CMAC=y +CONFIG_CRYPTO_HMAC=y +# CONFIG_CRYPTO_XCBC is not set +# CONFIG_CRYPTO_VMAC is not set + +# +# Digest +# +CONFIG_CRYPTO_CRC32C=y +CONFIG_CRYPTO_CRC32=m +CONFIG_CRYPTO_CRCT10DIF=y +CONFIG_CRYPTO_GHASH=m +CONFIG_CRYPTO_MD4=y +CONFIG_CRYPTO_MD5=y +CONFIG_CRYPTO_MICHAEL_MIC=m +CONFIG_CRYPTO_RMD128=m +CONFIG_CRYPTO_RMD160=m +CONFIG_CRYPTO_RMD256=m +CONFIG_CRYPTO_RMD320=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA512=m +CONFIG_CRYPTO_TGR192=m +CONFIG_CRYPTO_WP512=m + +# +# Ciphers +# +CONFIG_CRYPTO_AES=y +CONFIG_CRYPTO_ANUBIS=m +CONFIG_CRYPTO_ARC4=y +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_BLOWFISH_COMMON=m +CONFIG_CRYPTO_CAMELLIA=m +CONFIG_CRYPTO_CAST_COMMON=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_DES=y +CONFIG_CRYPTO_FCRYPT=m +CONFIG_CRYPTO_KHAZAD=m +CONFIG_CRYPTO_SALSA20=m +CONFIG_CRYPTO_SEED=m +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_COMMON=m + +# +# Compression +# +CONFIG_CRYPTO_DEFLATE=y +CONFIG_CRYPTO_ZLIB=m +CONFIG_CRYPTO_LZO=y +CONFIG_CRYPTO_LZ4=m +CONFIG_CRYPTO_LZ4HC=m + +# +# Random Number Generation +# +CONFIG_CRYPTO_ANSI_CPRNG=m +CONFIG_CRYPTO_USER_API=m +CONFIG_CRYPTO_USER_API_HASH=m +CONFIG_CRYPTO_USER_API_SKCIPHER=m +CONFIG_CRYPTO_HW=y +# CONFIG_ASYMMETRIC_KEY_TYPE is not set +CONFIG_ARM64_CRYPTO=y +CONFIG_CRYPTO_SHA1_ARM64_CE=y +CONFIG_CRYPTO_SHA2_ARM64_CE=y +CONFIG_CRYPTO_GHASH_ARM64_CE=y +CONFIG_CRYPTO_AES_ARM64_CE=y +CONFIG_CRYPTO_AES_ARM64_CE_CCM=y +CONFIG_CRYPTO_AES_ARM64_CE_BLK=y +CONFIG_CRYPTO_AES_ARM64_NEON_BLK=y +CONFIG_BINARY_PRINTF=y + +# +# Library routines +# +CONFIG_RAID6_PQ=y +CONFIG_BITREVERSE=y +CONFIG_RATIONAL=y +CONFIG_GENERIC_STRNCPY_FROM_USER=y +CONFIG_GENERIC_STRNLEN_USER=y +CONFIG_GENERIC_NET_UTILS=y +CONFIG_GENERIC_PCI_IOMAP=y +CONFIG_GENERIC_IOMAP=y +CONFIG_GENERIC_IO=y +CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +CONFIG_CRC_CCITT=y +CONFIG_CRC16=y +CONFIG_CRC_T10DIF=y +CONFIG_CRC_ITU_T=y +CONFIG_CRC32=y +# CONFIG_CRC32_SELFTEST is not set +CONFIG_CRC32_SLICEBY8=y +# CONFIG_CRC32_SLICEBY4 is not set +# CONFIG_CRC32_SARWATE is not set +# CONFIG_CRC32_BIT is not set +CONFIG_CRC7=y +CONFIG_LIBCRC32C=y +# CONFIG_CRC8 is not set +CONFIG_AUDIT_GENERIC=y +# CONFIG_RANDOM32_SELFTEST is not set +CONFIG_ZLIB_INFLATE=y +CONFIG_ZLIB_DEFLATE=y +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y +CONFIG_LZ4_COMPRESS=m +CONFIG_LZ4HC_COMPRESS=m +CONFIG_LZ4_DECOMPRESS=y +CONFIG_XZ_DEC=y +# CONFIG_XZ_DEC_X86 is not set +# CONFIG_XZ_DEC_POWERPC is not set +# CONFIG_XZ_DEC_IA64 is not set +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +# CONFIG_XZ_DEC_SPARC is not set +CONFIG_XZ_DEC_BCJ=y +# CONFIG_XZ_DEC_TEST is not set +CONFIG_DECOMPRESS_GZIP=y +CONFIG_DECOMPRESS_BZIP2=y +CONFIG_DECOMPRESS_LZMA=y +CONFIG_DECOMPRESS_XZ=y +CONFIG_DECOMPRESS_LZO=y +CONFIG_DECOMPRESS_LZ4=y +CONFIG_GENERIC_ALLOCATOR=y +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_KMP=y +CONFIG_TEXTSEARCH_BM=y +CONFIG_TEXTSEARCH_FSM=y +CONFIG_ASSOCIATIVE_ARRAY=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_DMA=y +CONFIG_CPU_RMAP=y +CONFIG_DQL=y +CONFIG_NLATTR=y +CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y +CONFIG_AVERAGE=y +CONFIG_CORDIC=m +# CONFIG_DDR is not set +CONFIG_LIBFDT=y +CONFIG_OID_REGISTRY=y +CONFIG_FONT_SUPPORT=y +# CONFIG_FONTS is not set +CONFIG_FONT_8x8=y +CONFIG_FONT_8x16=y