2 * arch/arm64/boot/dts/amlogic/gxl_p212_1g.dts
4 * Copyright (C) 2017 Amlogic, Inc. All rights reserved.
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
20 #include "mesongxl.dtsi"
21 #include "partition_mbox_normal.dtsi"
24 amlogic-dt-id = "gxl_p212_1g";
25 compatible = "amlogic, Gxl";
26 interrupt-parent = <&gic>;
39 compatible = "amlogic, ion_dev";
40 memory-region = <&ion_reserved>;
44 device_type = "memory";
45 linux,usable-memory = <0x0 0x0100000 0x0 0x3ff00000>;
52 /* global autoconfigured region for contiguous allocations */
54 defendkey_reserved:linux,defendkey {
55 compatible = "amlogic, defendkey";
56 reg = <0x0 0x08300000 0x0 0x100000>;
59 secmon_reserved:linux,secmon {
60 compatible = "shared-dma-pool";
62 size = <0x0 0x400000>;
63 alignment = <0x0 0x400000>;
64 alloc-ranges = <0x0 0x05000000 0x0 0x400000>;
66 secos_reserved:linux,secos {
68 compatible = "amlogic, aml_secos_memory";
69 reg = <0x0 0x05300000 0x0 0x2000000>;
72 logo_reserved:linux,meson-fb {
73 compatible = "shared-dma-pool";
75 size = <0x0 0x800000>;
76 alignment = <0x0 0x400000>;
77 alloc-ranges = <0x0 0x3f800000 0x0 0x800000>;
79 //don't put other dts in front of logo_reserved
81 //di_reserved:linux,di {
82 // compatible = "amlogic, di-mem";
83 /** 10x3133440=30M(0x1e) support 8bit **/
84 // size = <0x0 0x1e00000>;
87 di_cma_reserved:linux,di_cma {
88 compatible = "shared-dma-pool";
90 /** 10x3133440=30M(0x1e) support 8bit **/
91 size = <0x0 0x2000000>;
92 alignment = <0x0 0x400000>;
94 ion_reserved:linux,ion-dev {
95 compatible = "shared-dma-pool";
97 size = <0x0 0x4C00000>;
98 alignment = <0x0 0x400000>;
102 //vdin0_cma_reserved:linux,vdin0_cma {
103 // compatible = "shared-dma-pool";
104 // linux,phandle = <4>;
106 /* 1920x1080x2x4 =16+4 M */
107 // size = <0x0 0x01400000>;
108 // alignment = <0x0 0x400000>;
111 vdin1_cma_reserved:linux,vdin1_cma {
112 compatible = "shared-dma-pool";
114 /* 1920x1080x2x4 =16 M */
115 size = <0x0 0x01000000>;
116 alignment = <0x0 0x400000>;
118 /* POST PROCESS MANAGER */
119 ppmgr_reserved:linux,ppmgr {
120 compatible = "shared-dma-pool";
124 codec_mm_cma:linux,codec_mm_cma {
125 compatible = "shared-dma-pool";
127 /* ion_codec_mm max can alloc size 80M*/
128 size = <0x0 0xd000000>;
129 alignment = <0x0 0x400000>;
130 linux,contiguous-region;
132 picdec_cma_reserved:linux,picdec {
133 compatible = "shared-dma-pool";
136 alignment = <0x0 0x0>;
137 linux,contiguous-region;
139 /* codec shared reserved */
140 codec_mm_reserved:linux,codec_mm_reserved {
141 compatible = "amlogic, codec-mm-reserved";
143 alignment = <0x0 0x100000>;
148 amlogic_battery:dummy-battery {
149 compatible = "amlogic, dummy-battery";
153 amlogic_charger:dummy-charger {
154 compatible = "amlogic, dummy-charger";
159 compatible = "amlogic, bt-dev";
162 gpio_reset = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
166 compatible = "amlogic, aml_wifi";
167 dev_name = "aml_wifi";
169 interrupt_pin = <&gpio GPIOX_7 GPIO_ACTIVE_HIGH>;
170 irq_trigger_type = "GPIO_IRQ_LOW";
171 dhd_static_buf; //dhd_static_buf support
172 power_on_pin = <&gpio GPIOX_6 GPIO_ACTIVE_HIGH>;
173 pinctrl-names = "default";
174 pinctrl-0 = <&wifi_32k_pins>;
175 pwm_config = <&wifi_pwm_conf>;
178 wifi_pwm_conf:wifi_pwm_conf{
180 pwms = <&pwm_ef MESON_PWM_0 30541 0>;
181 duty-cycle = <15270>;
185 pwms = <&pwm_ef MESON_PWM_2 30500 0>;
186 duty-cycle = <15250>;
191 sd_emmc_c: emmc@d0074000 {
193 compatible = "amlogic, meson-mmc-gxl";
194 reg = <0x0 0xd0074000 0x0 0x2000>;
195 interrupts = <0 218 1>;
196 pinctrl-names = "emmc_clk_cmd_pins", "emmc_all_pins";
197 pinctrl-0 = <&emmc_clk_cmd_pins>;
198 pinctrl-1 = <&emmc_conf_pull_up &emmc_conf_pull_done>;
199 clocks = <&clkc CLKID_SD_EMMC_C>,
200 <&clkc CLKID_SD_EMMC_C_P0_COMP>,
201 <&clkc CLKID_FCLK_DIV2>;
202 clock-names = "core", "clkin0", "clkin1";
210 max-frequency = <200000000>;
215 ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */
216 caps = "MMC_CAP_8_BIT_DATA",
217 "MMC_CAP_MMC_HIGHSPEED",
218 "MMC_CAP_SD_HIGHSPEED",
219 "MMC_CAP_NONREMOVABLE",
224 caps2 = "MMC_CAP2_HS200", "MMC_CAP2_HS400";
227 max_req_size = <0x20000>; /**128KB*/
228 gpio_dat3 = <&gpio BOOT_3 GPIO_ACTIVE_HIGH>;
229 hw_reset = <&gpio BOOT_9 GPIO_ACTIVE_HIGH>;
231 /* 1:mmc card(include eMMC),
232 * 2:sd card(include tSD)
237 sd_emmc_b:sd@d0072000 {
239 compatible = "amlogic, meson-mmc-gxl";
240 reg = <0x0 0xd0072000 0x0 0x2000>;
241 interrupts = <0 217 1>;
242 pinctrl-names = "sd_all_pins",
245 "sd_clk_cmd_uart_pins",
247 "sd_to_ao_uart_pins",
248 "ao_to_sd_uart_pins",
249 "ao_to_sd_jtag_pins",
250 "sd_to_ao_jtag_pins";
251 pinctrl-0 = <&sd_all_pins>;
252 pinctrl-1 = <&sd_clk_cmd_pins>;
253 pinctrl-2 = <&sd_1bit_pins>;
254 pinctrl-3 = <&sd_to_ao_uart_clr_pins
255 &sd_clk_cmd_pins &ao_to_sd_uart_pins>;
256 pinctrl-4 = <&sd_to_ao_uart_clr_pins
257 &sd_1bit_pins &ao_to_sd_uart_pins>;
258 pinctrl-5 = <&sd_all_pins &sd_to_ao_uart_pins>;
259 pinctrl-6 = <&sd_to_ao_uart_clr_pins &ao_to_sd_uart_pins>;
260 pinctrl-7 = <&sd_to_ao_uart_clr_pins &ao_to_sd_uart_pins>;
261 pinctrl-8 = <&sd_all_pins &sd_to_ao_uart_pins>;
262 clocks = <&clkc CLKID_SD_EMMC_B>,
263 <&clkc CLKID_SD_EMMC_B_P0_COMP>,
264 <&clkc CLKID_FCLK_DIV2>;
265 clock-names = "core", "clkin0", "clkin1";
269 max-frequency = <100000000>;
273 ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */
274 caps = "MMC_CAP_4_BIT_DATA",
275 "MMC_CAP_MMC_HIGHSPEED",
276 "MMC_CAP_SD_HIGHSPEED";
277 /* "MMC_CAP_UHS_SDR12",
278 * "MMC_CAP_UHS_SDR25",
279 * "MMC_CAP_UHS_SDR50",
280 * "MMC_CAP_UHS_SDR104";
284 max_req_size = <0x20000>; /**128KB*/
285 gpio_dat3 = <&gpio CARD_4 GPIO_ACTIVE_HIGH>;
286 jtag_pin = <&gpio CARD_0 GPIO_ACTIVE_HIGH>;
287 gpio_cd = <&gpio CARD_6 GPIO_ACTIVE_HIGH>;
290 * 1:mmc card(include eMMC),
291 * 2:sd card(include tSD),
292 * 3:sdio device(ie:sdio-wifi),
293 * 4:SD combo (IO+mem) card,
294 * 5:NON sdio device(means sd/mmc card),
300 sd_emmc_a:sdio@d0070000 {
302 compatible = "amlogic, meson-mmc-gxl";
303 reg = <0x0 0xd0070000 0x0 0x2000>;
304 interrupts = <0 216 4>;
305 pinctrl-names = "sdio_clk_cmd_pins", "sdio_all_pins";
306 pinctrl-0 = <&sdio_clk_cmd_pins>;
307 pinctrl-1 = <&sdio_all_pins>;
308 clocks = <&clkc CLKID_SD_EMMC_A>,
309 <&clkc CLKID_SD_EMMC_A_P0_COMP>,
310 <&clkc CLKID_FCLK_DIV2>;
311 clock-names = "core", "clkin0", "clkin1";
316 max-frequency = <100000000>;
321 ocr_avail = <0x200080>; /**VDD voltage 3.3 ~ 3.4 */
322 caps = "MMC_CAP_4_BIT_DATA",
323 "MMC_CAP_MMC_HIGHSPEED",
324 "MMC_CAP_SD_HIGHSPEED",
325 "MMC_CAP_NONREMOVABLE",
329 "MMC_CAP_UHS_SDR104",
334 max_req_size = <0x20000>; /**128KB*/
336 /* 3:sdio device(ie:sdio-wifi),
337 * 4:SD combo (IO+mem) card
342 compatible = "amlogic, aml_mtd_nand";
343 dev_name = "mtdnand";
345 reg = <0x0 0xd0074800 0x0 0x200>;
346 interrupts = < 0 34 1 >;
347 pinctrl-names = "nand_rb_mod","nand_norb_mod", "nand_cs_only";
348 pinctrl-0 = <&all_nand_pins>;
349 pinctrl-1 = <&all_nand_pins>;
350 pinctrl-2 = <&nand_cs_pins>;
352 plat-names = "bootloader","nandnormal";
354 plat-part-0 = <&bootloader>;
355 plat-part-1 = <&nandnormal>;
356 bootloader: bootloader{
359 timming_mode = "mode5";
360 bch_mode = "bch60_1k";
367 nandnormal: nandnormal{
368 enable_pad ="ce0","ce1";
369 busy_pad = "rb0","rb1";
370 timming_mode = "mode5";
371 bch_mode = "bch60_1k";
372 plane_mode = "twoplane";
377 partition = <&nand_partitions>;
380 nand_partitions:nand_partition{
387 size=<0x0 0x1000000>;
395 size=<0x0 0xDC40000>;
398 offset=<0xffffffff 0xffffffff>;
404 ethmac: ethernet@0xc9410000 {
405 compatible = "amlogic, gxbb-eth-dwmac";
406 reg = <0x0 0xc9410000 0x0 0x10000
407 0x0 0xc8834540 0x0 0x8
408 0x0 0xc8834558 0x0 0xc>;
409 interrupts = <0 8 1>;
410 pinctrl-names = "external_eth_pins";
411 pinctrl-0 = <&external_eth_pins>;
412 rst_pin-gpios = <&gpio GPIOZ_14 0>;
413 GPIOZ4_pin-gpios = <&gpio GPIOZ_4 0>;
414 GPIOZ5_pin-gpios = <&gpio GPIOZ_5 0>;
415 mc_val_internal_phy = <0x1800>;
416 mc_val_external_phy = <0x1621>;
417 cali_val = <0x20000>;
418 interrupt-names = "macirq";
419 clocks = <&clkc CLKID_ETH>;
420 clock-names = "ethclk81";
424 aml_sensor0: aml-sensor@0 {
425 compatible = "amlogic, aml-thermal";
426 device_name = "thermal";
427 #thermal-sensor-cells = <1>;
429 cpufreq_cool_cluster0 {
430 min_state = <1000000>;
433 node_name = "cpufreq_cool0";
434 device_type = "cpufreq";
436 cpucore_cool_cluster0 {
440 node_name = "cpucore_cool0";
441 device_type = "cpucore";
447 node_name = "gpufreq_cool0";
448 device_type = "gpufreq";
454 node_name = "gpucore_cool0";
455 device_type = "gpucore";
458 cpufreq_cool0:cpufreq_cool0 {
459 #cooling-cells = <2>; /* min followed by max */
461 cpucore_cool0:cpucore_cool0 {
462 #cooling-cells = <2>; /* min followed by max */
464 gpufreq_cool0:gpufreq_cool0 {
465 #cooling-cells = <2>; /* min followed by max */
467 gpucore_cool0:gpucore_cool0 {
468 #cooling-cells = <2>; /* min followed by max */
473 polling-delay = <1000>;
474 polling-delay-passive = <100>;
475 sustainable-power = <2150>;
477 thermal-sensors = <&aml_sensor0 3>;
480 switch_on: trip-point@0 {
481 temperature = <70000>;
485 control: trip-point@1 {
486 temperature = <80000>;
491 temperature = <85000>;
495 critical: trip-point@3 {
496 temperature = <260000>;
503 cpufreq_cooling_map {
505 cooling-device = <&cpufreq_cool0 0 4>;
506 contribution = <1024>;
508 cpucore_cooling_map {
510 cooling-device = <&cpucore_cool0 0 3>;
511 contribution = <1024>;
513 gpufreq_cooling_map {
515 cooling-device = <&gpufreq_cool0 0 4>;
516 contribution = <1024>;
518 gpucore_cooling_map {
520 cooling-device = <&gpucore_cool0 0 2>;
521 contribution = <1024>;
527 dwc3: dwc3@c9000000 {
528 compatible = "synopsys, dwc3";
529 reg = <0x0 0xc9000000 0x0 0x100000>;
530 interrupts = <0 30 4>;
531 usb-phy = <&usb2_phy>, <&usb3_phy>;
533 clock-src = "usb3.0";
536 usb2_phy: usb2phy@d0078000 {
537 compatible = "amlogic, amlogic-new-usb2";
539 reg = <0x0 0xd0078000 0x0 0x80
540 0x0 0xc1104408 0x0 0x4>;
543 usb3_phy: usb3phy@d0078080 {
544 compatible = "amlogic, amlogic-new-usb3";
546 reg = <0x0 0xd0078080 0x0 0x20>;
550 compatible = "amlogic, dwc2";
551 device_name = "dwc2_a";
552 reg = <0x0 0xc9100000 0x0 0x40000>;
554 interrupts = <0 31 4>;
555 pl-periph-id = <0>; /** lm name */
556 clock-src = "usb0"; /** clock src */
557 port-id = <0>; /** ref to mach/usb.h */
558 port-type = <2>; /** 0: otg, 1: host, 2: slave */
559 port-speed = <0>; /** 0: default, high, 1: full */
560 port-config = <0>; /** 0: default */
561 port-dma = <0>; /** 0: default ... 6: disable*/
562 port-id-mode = <0>; /** 0: hardware, 1: sw_host, 2: sw_slave*/
565 controller-type = <1>; /** 0: normal, 1: host, 2: device*/
566 phy-reg = <0xd0078000>;
567 phy-reg-size = <0xa0>;
568 clocks = <&clkc CLKID_USB_GENERAL
569 &clkc CLKID_USB1_TO_DDR
571 clock-names = "usb_general",
577 compatible = "amlogic, amvideom";
578 dev_name = "amvideom";
580 interrupts = <0 3 1>;
581 interrupt-names = "vsync";
585 compatible = "amlogic, vout";
588 fr_auto_policy = <0>;
592 compatible = "amlogic, cvbsout-gxl";
593 dev_name = "cvbsout";
595 clocks = <&clkc CLKID_VCLK2_ENCI
596 &clkc CLKID_VCLK2_VENCI0
597 &clkc CLKID_VCLK2_VENCI1
598 &clkc CLKID_DAC_CLK>;
599 clock-names = "venci_top_gate",
604 /* performance: reg_address, reg_value */
606 performance = <0x1bf0 0x9
611 0xffff 0x0>; /* ending flag */
615 compatible = "amlogic, amhdmitx";
616 dev_name = "amhdmitx";
618 vend-data = <&vend_data>;
619 pinctrl-names="hdmitx_hpd", "hdmitx_ddc";
620 pinctrl-0=<&hdmitx_hpd>;
621 pinctrl-1=<&hdmitx_ddc>;
622 /* HPD, 57 + 32 = 89; CEC, 151 + 32 = 183*/
623 interrupts = <0 57 1>;
624 interrupt-names = "hdmitx_hpd";
625 /* 0:M8B 1:GXBB 2:GXTVBB 3:GXL 4:GXM
626 * 5:TXL 6:TXLX 7:AXG 8:GXLX 9:TXHD
629 vend_data: vend_data{ /* Should modified by Customer */
630 vendor_name = "Amlogic"; /* Max Chars: 8 */
631 /* standards.ieee.org/develop/regauth/oui/oui.txt */
632 vendor_id = <0x000000>;
633 product_desc = "MBox Meson Ref"; /* Max Chars: 16 */
638 compatible = "amlogic, amlogic-aocec";
639 device_name = "aocec";
641 vendor_id = <0x000000>;
642 cec_osd_string = "MBox"; /* Max Chars: 14 */
643 cec_version = <5>; /* 5: 1.4, 6: 2.0 */
645 arc_port_mask = <0x0>;
646 interrupts = <0 199 1>;
647 interrupt-names = "hdmi_aocec";
648 pinctrl-names = "default";
649 pinctrl-0=<&hdmitx_aocec>;
650 reg = <0x0 0xc810023c 0x0 0x4
651 0x0 0xc8100000 0x0 0x200>;
652 reg-names = "ao_exit","ao";
656 compatible = "amlogic, sysled";
659 led_gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>;
660 led_active_low = <1>;
664 compatible = "amlogic, codec_io";
669 reg = <0x0 0xC1100000 0x0 0x100000>;
672 reg = <0x0 0xc8820000 0x0 0x10000>;
675 reg = <0x0 0xc883c000 0x0 0x2000>;
678 reg = <0x0 0xc8100000 0x0 0x100000>;
681 reg = <0x0 0xd0100000 0x0 0x40000>;
684 reg = <0x0 0xc8838000 0x0 0x400>;
689 compatible = "amlogic, codec, mm";
690 memory-region = <&codec_mm_cma &codec_mm_reserved>;
691 dev_name = "codec_mm";
697 compatible = "amlogic, meson, canvas";
698 dev_name = "amlogic-canvas";
700 reg = <0x0 0xc8838000 0x0 0x400>;
704 compatible = "amlogic, codec, streambuf";
705 dev_name = "mesonstream";
707 clocks = <&clkc CLKID_DOS_PARSER
712 &clkc CLKID_HCODEC_MUX
713 &clkc CLKID_HEVC_MUX>;
714 clock-names = "parser_top",
724 compatible = "amlogic, vdec";
733 interrupt-names = "vsync",
742 compatible = "amlogic, gpio_keypad";
748 key-gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>;
749 detect_mode = <0>;/*0:polling mode, 1:irq mode*/
752 compatible = "amlogic, meson-gxl";
753 memory-region = <&logo_reserved>;
754 dev_name = "meson-fb";
758 interrupt-names = "viu-vsync", "rdma";
759 mem_size = <0x00800000 0x01800000 0x00100000>;
760 /* uboot logo,fb0/fb1 memory size,if afbcd fb0=0x01851000*/
761 display_mode_default = "1080p60hz";
763 /** 0:VPU free scale 1:OSD free scale 2:OSD super scale */
764 display_size_default = <1920 1080 1920 3240 32>;
765 /*1920*1080*4*3 = 0x17BB000*/
766 logo_addr = "0x3f800000";
769 compatible = "amlogic, ge2d-gxl";
772 interrupts = <0 150 1>;
773 interrupt-names = "ge2d";
774 clocks = <&clkc CLKID_VAPB_MUX>,
776 <&clkc CLKID_GE2D_GATE>;
777 clock-names = "clk_vapb_0",
783 /* AUDIO MESON DEVICES */
785 #sound-dai-cells = <0>;
786 compatible = "amlogic, aml-i2s-dai";
789 <&clkc CLKID_AMCLK_COMP>,
790 <&clkc CLKID_AIU_GLUE>,
791 <&clkc CLKID_IEC958>,
792 <&clkc CLKID_I2S_OUT>,
794 <&clkc CLKID_AIFIFO2>,
796 <&clkc CLKID_MIXER_IFACE>,
798 <&clkc CLKID_AIU_TOP>,
799 <&clkc CLKID_AOCLK_GATE>,
800 <&clkc CLKID_I2S_SPDIF>;
816 /*DMIC;*/ /* I2s Mic or Dmic, default for I2S mic */
819 #sound-dai-cells = <0>;
820 compatible = "aml, aml_snd_dmic";
821 reg = <0x0 0xd0042000 0x0 0x2000>;
827 pinctrl-names = "audio_dmic";
828 pinctrl-0 = <&aml_dmic_pins>;
829 clocks = <&clkc CLKID_PDM_COMP>,
830 <&clkc CLKID_AMCLK_COMP>;
831 clock-names = "pdm", "mclk";
834 #sound-dai-cells = <0>;
835 compatible = "amlogic, aml-spdif-dai";
838 <&clkc CLKID_I958_COMP>,
839 <&clkc CLKID_AMCLK_COMP>,
840 <&clkc CLKID_I958_COMP_SPDIF>,
842 <&clkc CLKID_IEC958>,
843 <&clkc CLKID_IEC958_GATE>;
854 #sound-dai-cells = <0>;
855 compatible = "amlogic, aml-pcm-dai";
856 pinctrl-names = "audio_pcm";
857 pinctrl-0 = <&audio_pcm_pins>;
860 <&clkc CLKID_PCM_MCLK_COMP>,
861 <&clkc CLKID_PCM_SCLK_GATE>;
866 pcm_mode = <1>; /* 0=slave mode, 1=master mode */
868 i2s_plat: i2s_platform {
869 compatible = "amlogic, aml-i2s";
870 interrupts = <0 29 1>;
872 pcm_plat: pcm_platform {
873 compatible = "amlogic, aml-pcm";
875 spdif_codec: spdif_codec{
876 #sound-dai-cells = <0>;
877 compatible = "amlogic, aml-spdif-codec";
878 pinctrl-names = "audio_spdif";
879 pinctrl-0 = <&audio_spdif_pins>;
881 pcm_codec: pcm_codec{
882 #sound-dai-cells = <0>;
883 compatible = "amlogic, pcm2BT-codec";
885 /* endof AUDIO MESON DEVICES */
887 /* AUDIO board specific */
889 #sound-dai-cells = <0>;
890 compatible = "amlogic, aml_dummy_codec";
894 #sound-dai-cells = <0>;
895 compatible = "amlogic, aml_codec_T9015";
896 reg = <0x0 0xc8832000 0x0 0x14>;
900 compatible = "aml, meson-snd-card";
902 aml-sound-card,format = "i2s";
903 aml_sound_card,name = "AML-MESONAUDIO";
908 mute_gpio-gpios = <&gpio GPIOH_5 0>;
911 hp_paraments = <800 300 0 5 1>;
912 pinctrl-names = "audio_i2s";
913 pinctrl-0 = <&audio_i2s_pins>;
914 cpu_list = <&cpudai0 &cpudai1 &cpudai2>;
915 codec_list = <&codec0 &codec1 &codec2>;
916 plat_list = <&i2s_plat &i2s_plat &pcm_plat>;
918 sound-dai = <&i2s_dai>;
921 sound-dai = <&spdif_dai>;
924 sound-dai = <&pcm_dai>;
927 sound-dai = <&amlogic_codec>;
930 sound-dai = <&spdif_codec>;
933 sound-dai = <&pcm_codec>;
936 /* END OF AUDIO board specific */
938 compatible = "amlogic, meson, rdma";
939 dev_name = "amlogic-rdma";
941 interrupts = <0 89 1>;
942 interrupt-names = "rdma";
946 compatible = "amlogic, amvenc_avc";
947 dev_name = "amvenc_avc";
949 interrupts = <0 45 1>;
950 interrupt-names = "mailbox_2";
954 compatible = "cnm, HevcEnc";
955 dev_name = "HevcEnc";
957 interrupts = <0 187 1>;
958 interrupt-names = "wave420l_irq";
963 reg = <0x0 0xc8810000 0x0 0x4000>;
968 compatible = "amlogic, picdec";
969 memory-region = <&picdec_cma_reserved>;
975 compatible = "amlogic, ppmgr";
976 memory-region = <&ppmgr_reserved>;
982 compatible = "amlogic, deinterlace";
984 flag_cma = <1>;/*0:use reserved;1:use cma*/
985 //memory-region = <&di_reserved>;
986 memory-region = <&di_cma_reserved>;
987 interrupts = <0 46 1 0 6 1>;
988 interrupt-names = "de_irq", "timerc";
990 * nr_size(byte) = 1920*544*2(yuv422 8bit) |
991 * 1920*544*2*12/8(yuv422 10bit)
992 * | 1920*544*2*10/8(yuv422 10bit full pack mode)
994 /* mtn_size(byte) = 1920*544/2 */
995 /* count_size(byte) = 1920*544/2 */
996 buffer-size = <3133440>;
1001 compatible = "amlogic, ionvideo";
1002 dev_name = "ionvideo";
1007 compatible = "amlogic, amlvideo";
1008 dev_name = "amlvideo";
1013 compatible = "amlogic, amlvideo2";
1014 dev_name = "amlvideo2";
1021 compatible = "amlogic, amlvideo2";
1022 dev_name = "amlvideo2";
1028 /*if you want to use vdin just modify status to "ok"*/
1030 compatible = "amlogic, vdin";
1031 /*memory-region = <&vdin0_cma_reserved>;*/
1034 reserve-iomap = "true";
1035 flag_cma = <1>;/*1:share with codec_mm;2:cma alone*/
1036 /*MByte, if 10bit disable: 64M(YUV422),
1037 *if 10bit enable: 64*1.5 = 96M(YUV422)
1038 *if support 4K2K-YUV444-10bit-WR:3840*2160*4*4 ~= 128M
1039 *if support 4K2K-YUV422-10bit-wr:3840*2160*3*4 ~= 96M
1040 *if support 4K2K-YUV422-8BIT-WR:3840*2160*2*4 ~= 64M
1041 *if support 1080p-YUV422-8BIT-WR:1920*1080*2*4 ~= 16M
1044 interrupts = <0 83 1>;
1046 /*clocks = <&clock CLK_FPLL_DIV5>,
1047 * <&clock CLK_VDIN_MEAS_CLK>;
1048 *clock-names = "fclk_div5", "cts_vdin_meas_clk";
1051 /*vdin write mem color depth support:
1056 *bit4:support yuv422 10bit full pack mode (from txl new add)
1061 compatible = "amlogic, vdin";
1062 memory-region = <&vdin1_cma_reserved>;
1065 reserve-iomap = "true";
1066 flag_cma = <0>;/*1:share with codec_mm;0:cma alone*/
1067 interrupts = <0 85 1>;
1069 /*clocks = <&clock CLK_FPLL_DIV5>,
1070 * <&clock CLK_VDIN_MEAS_CLK>;
1071 *clock-names = "fclk_div5", "cts_vdin_meas_clk";
1074 /*vdin write mem color depth support:
1084 compatible = "amlogic, vecm";
1085 dev_name = "aml_vecm";
1087 gamma_en = <0>;/*1:enabel ;0:disable*/
1088 wb_en = <0>;/*1:enabel ;0:disable*/
1089 cm_en = <0>;/*1:enabel ;0:disable*/
1090 /*1:enabel osd lut 100 table;0:disable*/
1091 cfg_en_osd_100 = <1>;
1092 /*0: 709/601 1: bt2020*/
1093 tx_op_color_primary = <0>;
1097 compatible = "amlogic, unifykey";
1100 unifykey-num = <16>;
1101 unifykey-index-0 = <&keysn_0>;
1102 unifykey-index-1 = <&keysn_1>;
1103 unifykey-index-2 = <&keysn_2>;
1104 unifykey-index-3 = <&keysn_3>;
1105 unifykey-index-4 = <&keysn_4>;
1106 unifykey-index-5 = <&keysn_5>;
1107 unifykey-index-6 = <&keysn_6>;
1108 unifykey-index-7 = <&keysn_7>;
1109 unifykey-index-8 = <&keysn_8>;
1110 unifykey-index-9 = <&keysn_9>;
1111 unifykey-index-10= <&keysn_10>;
1112 unifykey-index-11= <&keysn_11>;
1113 unifykey-index-12= <&keysn_12>;
1114 unifykey-index-13= <&keysn_13>;
1115 unifykey-index-14= <&keysn_14>;
1116 unifykey-index-15= <&keysn_15>;
1120 key-device = "normal";
1121 key-permit = "read","write","del";
1125 key-device = "normal";
1126 key-permit = "read","write","del";
1130 key-device = "secure";
1132 key-permit = "read","write","del";
1135 key-name = "secure_boot_set";
1136 key-device = "efuse";
1137 key-permit = "write";
1140 key-name = "mac_bt";
1141 key-device = "normal";
1142 key-permit = "read","write","del";
1146 key-name = "mac_wifi";
1147 key-device = "normal";
1148 key-permit = "read","write","del";
1152 key-name = "hdcp2_tx";
1153 key-device = "normal";
1154 key-permit = "read","write","del";
1157 key-name = "hdcp2_rx";
1158 key-device = "normal";
1159 key-permit = "read","write","del";
1162 key-name = "widevinekeybox";
1163 key-device = "secure";
1164 key-permit = "read","write","del";
1167 key-name = "deviceid";
1168 key-device = "normal";
1169 key-permit = "read","write","del";
1172 key-name = "hdcp22_fw_private";
1173 key-device = "secure";
1174 key-permit = "read","write","del";
1177 key-name = "PlayReadykeybox25";
1178 key-device = "secure";
1179 key-permit = "read","write","del";
1182 key-name = "prpubkeybox";// PlayReady
1183 key-device = "secure";
1184 key-permit = "read","write","del";
1187 key-name = "prprivkeybox";// PlayReady
1188 key-device = "secure";
1189 key-permit = "read","write","del";
1192 key-name = "attestationkeybox";// attestation key
1193 key-device = "secure";
1194 key-permit = "read","write","del";
1197 key-name = "region_code";
1198 key-device = "normal";
1199 key-permit = "read","write","del";
1216 status = "disabled";
1217 pinctrl-names = "spicc_pulldown","spicc_pullup";
1218 pinctrl-0 = <&spicc_pulldown_x8x9x11>;
1219 pinctrl-1 = <&spicc_pullup_x8x9x11>;
1220 num_chipselect = <1>;
1221 cs-gpios = <&gpio GPIOX_10 GPIO_ACTIVE_HIGH>;
1223 dma_tx_threshold = <3>;
1224 dma_rx_threshold = <3>;
1225 dma_num_per_read_burst = <3>;
1226 dma_num_per_write_burst = <3>;
1227 delay_control = <0x15>;
1232 memory-region = <&defendkey_reserved>;