Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /dts-v1/;
- /{
- amlogic-dt-id = "m8b_m201_1G";
- compatible = "AMLOGIC,8726_M8B";
- model = "AMLOGIC";
- interrupt-parent = <&gic>;
- #address-cells = <1>;
- #size-cells = <1>;
- cpus {
- #address-cells = <1>;
- #size-cells = <0>;
- cpu@0 {
- device_type = "cpu";
- compatible = "arm,cortex-a5";
- reg = <0x200>;
- };
- cpu@1 {
- device_type = "cpu";
- compatible = "arm,cortex-a5";
- reg = <0x1>;
- };
- cpu@2 {
- device_type = "cpu";
- compatible = "arm,cortex-a5";
- reg = <0x2>;
- };
- cpu@3 {
- device_type = "cpu";
- compatible = "arm,cortex-a5";
- reg = <0x3>;
- };
- };
- cache-controller {
- compatible = "arm,meson-pl310-cache";
- reg = <0xc4200000 0x1000>;
- arm,data-latency = <3 3 3>;
- arm,tag-latency = <2 2 2>;
- arm,filter-ranges = <0x100000 0xc0000000>;
- cache-unified;
- cache-level = <2>;
- aux-instruction_prefetch;
- aux-data_prefetch;
- aux-ns_lockdown;
- aux-force_no_write_alloc;
- aux-cache_replace_policy_round_robin;
- aux-early_write_response;
- aux-full_line_of_zero;
- aux-ns_int_ctrl;
- aux-share_override;
- prefetch-double_line_fill;
- prefetch-prefetch_drop;
- prefetch-prefetch_offset = <7>;
- };
- memory{
- device_type = "memory";
- aml_reserved_start = <0x06000000>; /**reserved memory start */
- aml_reserved_end = <0x05000000>;/**reserved memory end : dtb start for uboot*/
- phys_offset = <0x00200000>;
- linux,total-memory = <0x3fe00000>;
- #address-cells = <1>;
- #size-cells = <1>;
- cma_0:region@0 {
- region_name = "cma_0";
- reg = <0 0x01200000>;
- linux,contiguous-region;
- };
- };
- gic:interrupt-controller{
- compatible = "arm,cortex-a9-gic";
- reg = <0xc4301000 0x1000
- 0xc4300100 0x0100>;
- interrupt-controller;
- #interrupt-cells = <3>;
- #address-cells = <0>;
- };
- vpu{
- compatible = "amlogic,vpu";
- dev_name = "vpu";
- status = "ok";
- clk_level = <3>;
- /** 0: 106.25M 1: 127.5M 2: 159.375M
- 3: 182.15M 4: 212.5M */
- };
- mesonfb{
- compatible = "amlogic,mesonfb";
- dev_name = "mesonfb";
- status = "okay";
- reserve-memory = <0x00800000 0x00100000>;
- reserve-iomap = "true";
- vmode = <3>; /**0:VMODE_720P 1:VMODE_LCD 2:VMODE_LVDS_1080P 3:VMODE_1080P*/
- scale_mode = <1>; /*0:default 1:new*/
- 4k2k_fb = <0>;
- display_size_default = <1280 720 1280 1440 32>; // osd0:8M, osd1:1m 1280*720*4*3 = 11,059,200
- };
- deinterlace{
- compatible = "amlogic,deinterlace";
- dev_name = "deinterlace";
- status = "ok";
- reserve-memory = <0x02100000>; //10x1920x1088x3/2=33M
- };
- mesonstream{
- compatible = "amlogic,mesonstream";
- dev_name = "mesonstream.0";
- status = "okay";
- reserve-memory = <0x02000000>; // 32M
- reserve-iomap = "true";
- };
- vdec{
- compatible = "amlogic,vdec";
- dev_name = "vdec.0";
- status = "okay";
- reserve-memory = <0x04000000>; // 64M
- reserve-iomap = "true";
- };
- ppmgr{
- compatible = "amlogic,ppmgr";
- dev_name = "ppmgr";
- status = "okay";
- reserve-memory = <0x01000000>; // 16M
- };
- amvenc_avc{
- compatible = "amlogic,amvenc_avc";
- dev_name = "amvenc_avc.0";
- status = "okay";
- linux,contiguous-region = <&cma_0>;
- reserve-iomap = "true";
- };
- //
- ion_dev{
- compatible = "amlogic,ion_dev";
- dev_name = "ion_dev";
- status = "ok";
- share-memory-name = "ppmgr0";
- share-memory-offset = <0>;
- share-memory-size = <0x01000000>; //16M
- };
- mesonvout{
- compatible = "amlogic,mesonvout";
- dev_name = "mesonvout";
- status = "okay";
- };
- rtc{
- compatible = "amlogic,aml_rtc";
- status = "okay";
- };
- uart_ao{
- compatible = "amlogic,aml_uart";
- port_name = "uart_ao";
- status = "okay";
- dev_name = "uart_ao";
- pinctrl-names = "default";
- pinctrl-0 = <&ao_uart_pins>;
- };
- uart_0{
- compatible = "amlogic,aml_uart";
- port_name = "uart_a";
- status = "okay";
- dev_name = "uart_0";
- // pinctrl-names = "default";
- // pinctrl-0 = <&a_uart_pins>;
- };
- uart_1{
- compatible = "amlogic,aml_uart";
- port_name = "uart_b";
- status = "okay";
- dev_name = "uart_1";
- pinctrl-names = "default";
- pinctrl-0 = <&b_uart_pins>;
- };
- uart_2{
- compatible = "amlogic,aml_uart";
- port_name = "uart_c";
- status = "disabled";
- dev_name = "uart_2";
- };
- uart_3{
- compatible = "amlogic,aml_uart";
- port_name = "uart_d";
- status = "ok";
- dev_name = "uart_3";
- };
- bt-dev{
- compatible = "amlogic,bt-dev";
- dev_name = "bt-dev";
- status = "ok";
- gpio_reset = "GPIOX_20";
- };
- wifi{
- compatible = "amlogic,aml_broadcm_wifi";
- dev_name = "aml_broadcm_wifi";
- status = "okay";
- interrupt_pin = "GPIOX_21";
- irq_num = <4>;
- irq_trigger_type = "GPIO_IRQ_HIGH";
- power_on_pin = "GPIOAO_6";
- power_on_pin2 = "GPIOX_11";
- clock_32k_pin = "GPIOX_10";
- };
- wifi_power{
- compatible = "amlogic,wifi_power";
- dev_name = "wifi_power";
- status = "okay";
- power_gpio = "GPIOAO_6";
- power_gpio2 = "GPIOX_11";
- };
- sdio{
- compatible = "amlogic,aml_sdio";
- dev_name = "aml_sdio.0";
- status = "okay";
- reg = <0xc1108c20 0x20>;
- pinctrl-names = "sd_clk_cmd_pins", "sd_all_pins", "emmc_clk_cmd_pins", "emmc_all_pins", "sdio_clk_cmd_pins", "sdio_all_pins","sd_1bit_pins"; // "jtag_pin", "uartao_default";
- pinctrl-0 = <&sd_clk_cmd_pins>;
- pinctrl-1 = <&sd_all_pins>;
- pinctrl-2 = <&emmc_clk_cmd_pins>;
- pinctrl-3 = <&emmc_all_pins>;
- pinctrl-4 = <&sdio_clk_cmd_pins>;
- pinctrl-5 = <&sdio_all_pins>;
- pinctrl-6 = <&sd_1bit_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 = <0x200000>; /**VDD voltage 3.3 ~ 3.4 */
- caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED","MMC_CAP_SD_HIGHSPEED";
- f_min = <300000>;
- f_max = <50000000>;
- f_max_w = <50000000>;
- max_req_size = <0x20000>; /**128KB*/
- gpio_dat3 = "CARD_4";
- jtag_pin = "CARD_0";
- gpio_cd = "CARD_6";
- // gpio_ro = "GPIODV_25";
- 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{
- status = "ok";
- port = <0>; /*0:sdio_a, 1:sdio_b, 2:sdio_c, 3:sdhc_a, 4:sdhc_b, 5:sdhc_c */
- pinname = "sdio";
- ocr_avail = <0x200000>; /*VDD voltage 3.3 ~ 3.4 */
- caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_SDIO_IRQ","MMC_CAP_MMC_HIGHSPEED","MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE";
- f_min = <300000>;
- f_max = <50000000>;
- 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 */
- };
- };
- // L2 PROP_CHOICE "sdhc_pin_6_match" = "pinctrl-6"
- sdhc{
- compatible = "amlogic,aml_sdhc";
- dev_name = "aml_sdhc.0";
- status = "okay";
- reg = <0xc1108e00 0x3c>;
- pinctrl-names = "sdhc_sd_clk_cmd_pins", "sdhc_sd_all_pins", "sdhc_emmc_clk_cmd_pins", "sdhc_emmc_all_pins", "sdhc_sdio_clk_cmd_pins", "sdhc_sdio_all_pins";
- pinctrl-0 = <&sdhc_sd_clk_cmd_pins>;
- pinctrl-1 = <&sdhc_sd_all_pins>;
- pinctrl-2 = <&sdhc_emmc_clk_cmd_pins>;
- pinctrl-3 = <&sdhc_emmc_all_pins>;
- pinctrl-4 = <&sdhc_sdio_clk_cmd_pins>;
- pinctrl-5 = <&sdhc_sdio_all_pins>;
- //pinctrl-6 = <&sd_1bit_pins>;
- // sd{
- // status = "okay";
- // port = <4>; /**0:sdhc_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 = <300000>;
- // f_max = <100000000>;
- // max_req_size = <0x20000>; /**128KB*/
- // gpio_dat3 = "CARD_4";
- // //jtag_pin = "CARD_0";
- // gpio_cd = "CARD_6";
- // //gpio_ro = "GPIOZ_0";
- // 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{
- // status = "okay";
- // port = <3>; /**0:sdio_a, 1:sdio_b, 2:sdio_c, 3:sdhc_a, 4:sdhc_b, 5:sdhc_c */
- // 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";
- // 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 */
- // };
- };
- i2c@c8100500{ /*I2C-AO*/
- compatible = "amlogic,aml_i2c";
- dev_name = "i2c-AO";
- status = "disable";
- reg = <0xc8100500 0x1d>;
- #address-cells = <1>;
- #size-cells = <0>;
- device_id = <0>;
- pinctrl-names="default";
- pinctrl-0=<&ao_i2c_master>;
- use_pio = <0>;
- master_i2c_speed = <100000>;
- };
- i2c@c11087c0{ /*I2C-B*/
- compatible = "amlogic,aml_i2c";
- dev_name = "i2c-B";
- status = "ok";
- reg = <0xc11087c0 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>;
- };
- i2c@c11087e0{ /*I2C-C*/
- compatible = "amlogic,aml_i2c";
- dev_name = "i2c-C";
- status = "ok";
- reg = <0xc11087e0 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>;
- };
- i2c@c1108d20{ /*I2C-D*/
- compatible = "amlogic,aml_i2c";
- dev_name = "i2c-D";
- status = "ok";
- reg = <0xc1108d20 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>;
- };
- dvfs {
- compatible = "amlogic, amlogic-dvfs"; /** fixed for driver, don't change */
- #address-cells = <1>;
- #size-cells = <0>;
- status = "ok";
- vcck_dvfs {
- dvfs_id = <1>; /** must be value of (1 << n) */
- table_count = <13>; /** must be correct count for dvfs_table */
- dvfs_table = <
- /* NOTE: frequent in this table must be ascending order */
- /* frequent(Khz) min_uV max_uV
- 96000 860000 860000
- 192000 860000 860000
- 312000 860000 860000
- 408000 860000 860000
- 504000 860000 860000
- 600000 860000 860000
- 720000 860000 860000
- 816000 900000 900000
- 1008000 920000 920000
- 1200000 970000 970000
- 1320000 1100000 1100000
- 1488000 1100000 1100000
- 1536000 1140000 1140000*/
- 96000 1020000 1020000
- 192000 1020000 1020000
- 312000 1020000 1020000
- 408000 1020000 1020000
- 504000 1020000 1020000
- 600000 1020000 1020000
- 720000 1020000 1020000
- 816000 1020000 1020000
- 1008000 1140000 1140000
- 1200000 1140000 1140000
- 1320000 1140000 1140000
- 1488000 1140000 1140000
- 1536000 1140000 1140000
- >;
- };
- };
- meson_vcck_dvfs_driver{
- compatible = "amlogic, meson_vcck_dvfs";
- dev_name = "meson_vcck_dvfs_driver";
- status = "ok";
- pinctrl-names = "default";
- pinctrl-0 = <&aml_pwm_pins>;
- use_pwm = <1>;
- pmw_controller = "PWM_C";
- table_count = <29>;
- cs_voltage_table = <
- /*
- * Note: This table is hardware depended, If your hardware use PWM method,
- * then first line in this table is PWM register value, second line is
- * voltage of VCCK according this PWM register value. If your platform use
- * constant-current source to adjust vcck voltage, then the first line should
- * set to 0, means not valid, member 'use_pwm' in this node should set to 0.
- *
- * ---- This table must be in ascending order by voltage ----
- *
- * PWM value VCCK voltage
- */
- 0x1c0000 860000
- 0x1b0001 870000
- 0x1a0002 880000
- 0x190003 890000
- 0x180004 900000
- 0x170005 910000
- 0x160006 920000
- 0x150007 930000
- 0x140008 940000
- 0x130009 950000
- 0x12000a 960000
- 0x11000b 970000
- 0x10000c 980000
- 0x0f000d 990000
- 0x0e000e 1000000
- 0x0d000f 1010000
- 0x0c0010 1020000
- 0x0b0011 1030000
- 0x0a0012 1040000
- 0x090013 1050000
- 0x080014 1060000
- 0x070015 1070000
- 0x060016 1080000
- 0x050017 1090000
- 0x040018 1100000
- 0x030019 1110000
- 0x02001a 1120000
- 0x01001b 1130000
- 0x00001c 1140000
- >;
- };
- arm_pmu {
- compatible = "arm,cortex-a9-pmu";
- status = "ok";
- interrupts = <0 137 0x04
- 0 138 0x04
- 0 153 0x04
- 0 154 0x04>;
- };
- usb_con {
- lm-compatible = "logicmodule-bus";
- usb_b{
- lm-compatible = "amlogic,usb";
- lm-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*/
- status = "okay";
- };
- usb_a{
- lm-compatible = "amlogic,usb";
- lm-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 = "GPIOZ_1";
- gpio-work-mask = <1>; /**0: work on pulldown,1:work on pullup*/
- status = "okay";
- };
- };
- audio_platform{
- compatible = "amlogic,aml-i2s";
- dev_name = "aml-i2s.0";
- status = "okay";
- };
- audio_dai{
- compatible = "amlogic,aml-i2s-dai";
- dev_name = "aml-i2s-dai.0";
- status = "okay";
- };
- audio_spdif_dai{
- compatible = "amlogic,aml-spdif-dai";
- dev_name = "aml-spdif-dai.0";
- status = "okay";
- };
- audio_spdif_codec{
- compatible = "amlogic,aml-spdif-codec";
- dev_name = "spdif-dit.0";
- status = "okay";
- };
- audio_pcm2BT_codec{
- compatible = "amlogic,pcm2BT-codec";
- dev_name = "pcm2bt.0";
- status = "okay";
- };
- audio_pcm_dai{
- compatible = "amlogic,aml-pcm-dai";
- dev_name = "aml-pcm-dai.0";
- status = "okay";
- };
- audio_pcm{
- compatible = "amlogic,aml-pcm";
- dev_name = "aml-pcm.0";
- status = "okay";
- };
- audio_m8_audio{
- compatible = "amlogic,m8_audio_codec";
- dev_name = "aml_m8_codec.0";
- status = "disable";
- };
- dummy_codec{
- compatible = "amlogic,aml_dummy_codec";
- dev_name = "dummy_codec.0";
- status = "okay";
- };
- aml_audio_codec{
- compatible = "amlogic,audio_codec";
- rt5616:rt5616{
- codec_name = "rt5616";
- i2c_addr = <0x1B>;
- i2c_bus = "i2c_bus_d";
- id_reg = <0x00>;
- id_val = <0x21>;
- capless = <0>;
- status = "disable";
- };
- rt5631:rt5631{
- codec_name = "rt5631";
- i2c_addr = <0x1A>;
- i2c_bus = "i2c_bus_b";
- id_reg = <0x00>;
- id_val = <0x01>;
- capless = <0>;
- status = "disable";
- };
- wm8960:wm8960{
- codec_name = "wm8960";
- i2c_addr = <0x1A>;
- i2c_bus = "i2c_bus_b";
- capless = <1>;
- status = "disable";
- };
- dummy:dummy{
- codec_name = "dummy_codec";
- status = "okay";
- };
- };
- aml_m8_sound_card{
- compatible = "sound_card, aml_snd_m8";
- aml,sound_card = "AML-M8AUDIO";
- aml,codec_dai = "AML-M8","rt5616-aif1","rt5631-hifi","wm8960-hifi","dummy_codec";
- //aml,codec_name = "aml_m8_codec.0","rt5616.4-001b";
- //aml,audio-codec = <&rt5616>;
- aml,audio-routing-rt5616 =
- "Ext Spk","LOUTL",
- "Ext Spk","LOUTR",
- "HP","HPOL",
- "HP","HPOR",
- "micbias1","MAIN MIC",
- "IN2P","micbias1";
- aml,audio-routing-amlm8 =
- "Ext Spk","LINEOUTL",
- "Ext Spk","LINEOUTR",
- "HP","HP_L",
- "HP","HP_R",
- "MICBIAS","MAIN MIC",
- "LINPUT1","MICBIAS";
- aml,audio-routing-dummy=
- "Ext Spk","LOUTL",
- "Ext Spk","LOUTR";
- mute_gpio = "GPIO_BSD_EN";
- hp_disable;
- //mute_inv;
- hp_paraments = <800 300 0 5 1>;
- pinctrl-names = "aml_snd_m8";
- pinctrl-0 = <&audio_pins>;
- status = "okay";
- };
- aml_cams{
- compatible = "amlogic,cams_prober";
- status = "okay";
- pinctrl-names = "gpio","csi";
- pinctrl-0 = <&aml_cam_gpio_pins> ;
- pinctrl-1 = <&aml_cam_csi_pins> ;
- cam_0{
- cam_name = "ar0543";
- front_back = <0>;
- i2c_bus = "i2c_bus_d";
- gpio_pwdn = "GPIOH_6";
- gpio_rst = "GPIOH_4";
- mirror_flip = <0>;
- vertical_flip = <0>;
- config_path = "/system/etc/camera_isp_cfg/ar0543_skt";
- mclk = <12000>;
- bt_path = "csi";
- interface = "mipi";
- clk_channel = "a";
- status = "okay";
- };
- cam_1{
- cam_name = "ov5647";
- front_back = <0>;
- i2c_bus = "i2c_bus_d";
- gpio_pwdn = "GPIOH_5";
- gpio_rst = "GPIOH_4";
- mirror_flip = <0>;
- vertical_flip = <0>;
- config_path = "/system/etc/camera_isp_cfg/ov5647_cw0767";
- bt_path = "csi";
- interface = "mipi";
- clk_channel = "b";
- status = "okay";
- };
- cam_2{
- cam_name = "ar0833";
- front_back = <0>;
- i2c_bus = "i2c_bus_d";
- gpio_pwdn = "GPIOH_6";
- gpio_rst = "GPIOH_4";
- mirror_flip = <0>;
- vertical_flip = <0>;
- config_path = "/system/etc/camera_isp_cfg/ar0833_skt";
- mclk = <12000>;
- bt_path = "csi";
- interface = "mipi";
- clk_channel = "a";
- status = "okay";
- };
- };
- gpio_keypad{
- compatible = "amlogic,gpio_keypad";
- status = "okay";
- scan_period = <20>;
- key_num = <1>;
- key_name = "power";
- key_code = <116>;
- key_pin = "GPIOAO_3";
- irq_keyup = <6>;
- irq_keydown = <7>;
- };
- saradc{
- compatible = "amlogic,saradc";
- status = "okay";
- };
- /* 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 468>; //voltage=0/252/478/692/824mV, val=voltage/1800mV*1023
- key_tolerance = <40 40 40 40 40>;
- };
- */
- meson-remote{
- compatible = "amlogic,aml_remote";
- dev_name = "meson-remote";
- status = "ok";
- ao_baseaddr = <0xf3100480>;
- pinctrl-names="default";
- pinctrl-0=<&remote_pins>;
- };
- spi@cc000000{
- compatible = "amlogic,apollo_spi_nor";
- status = "ok";
- reg = <0xcc000000 0x04000000>;
- pinctrl-names = "default";
- pinctrl-0 = <&aml_spi_nor_pins>;
- nr-parts = <2>;
- nr-part-0 = <&bootloader>;
- nr-part-1 = <&ubootenv>;
- bootloader:bootloader{
- name = "bootloader";
- offset = <0>;
- size = <0x100000>;
- };
- ubootenv:ubootenv{
- name = "ubootenv";
- offset = <0x100000>;
- size = <0x10000>;
- };
- };
- nand{
- compatible = "amlogic,aml_nand";
- dev_name = "nand";
- status = "ok";
- reg = <0xd0048600 0x24>;
- pinctrl-names = "nand_rb_mod","nand_norb_mod";
- pinctrl-0 = <&nand_input_state &conf_nand_state &conf_nand_state1 &nand_base>;
- pinctrl-1 = <&nand_input_state &conf_nand_state &conf_nand_state1 &nand_base>;
- device_id = <0>;
- plat-names = "nandnormal";
- plat-num = <1>;
- plat-part-0 = <&normal>;
- normal: normal{
- enable_pad ="ce0","ce1","ce2","ce3";
- busy_pad = "rb0";
- };
- };
- efuse{
- compatible = "amlogic,efuse";
- dev_name = "efuse";
- status = "okay";
- plat-pos = <0 454>;
- plat-count = <58>;
- usid-min = <8>; /*reserved*/
- usid-max = <31>; /*reserved*/
- };
- thermal{
- compatible = "amlogic-thermal";
- #thermal-cells=<7>;
- dev_name = "aml_thermal";
- trip_point=<70 1488001 1488001 511 511 3 2
- 80 1200001 1200001 435 435 2 2
- 90 800001 800001 328 328 1 1
- 260 0xffffffff 0xffffffff 0xffffffff 0xffffffff 0xffffffff 0xffffffff>;
- cpu_cali_a=<0>;
- idle_interval=<1000>;
- use_virtual_thermal;
- freq_sample_period=<30>;
- report_time=<1 10 30 60>; /* based on freq_sample_period */
- cpu_virtual=<
- 500000 40 40 40 40
- 600000 45 55 60 65
- 800000 50 60 65 70
- 1000000 55 65 70 75
- 1200000 60 70 75 80
- 1350000 65 75 80 85
- >;
- gpu_virtual=<
- 183 40 40 40 40
- 251 40 45 50 55
- 319 50 60 65 70
- 426 55 65 70 75
- 511 60 70 75 80
- >;
- };
- securitykey{
- compatible = "amlogic,aml_keys";
- status = "ok";
- };
- unifykey{
- compatible = "amlogic,unifykey";
- status = "ok";
- /*efuse-version = <20>;*/ /*m6 efuse version 2,m3 efuse version 1, not config efuse version in default*/
- unifykey-num = <6>;
- unifykey-index-0 = <&keysn_0>;
- unifykey-index-1 = <&keysn_1>;
- unifykey-index-2 = <&keysn_2>;
- unifykey-index-3 = <&keysn_3>;
- unifykey-index-4 = <&keysn_4>;
- unifykey-index-5 = <&keysn_5>;
- keysn_0: key_0{
- key-name = "usid";
- key-device = "nandkey";
- key-dataformat = "allascii";
- key-permit = "read","write","del";
- };
- keysn_1:key_1{
- key-name = "mac";
- key-device = "nandkey";
- key-dataformat = "hexdata";
- key-permit = "read","write","del";
- };
- keysn_2:key_2{
- key-name = "hdcp";
- key-device = "nandkey";
- key-dataformat = "hexdata";
- key-permit = "read","write","del";
- };
- keysn_3:key_3{
- key-name = "secure_boot_set";
- key-device = "efusekey";
- key-dataformat = "hexdata";
- key-permit = "read","write";
- };
- keysn_4:key_4{
- key-name = "mac_bt";
- key-device = "nandkey";
- key-dataformat = "hexdata";
- key-permit = "read","write","del";
- };
- keysn_5:key_5{
- key-name = "mac_wifi";
- key-device = "nandkey";
- key-dataformat = "hexdata";
- key-permit = "read","write","del";
- };
- };
- amhdmitx{
- compatible = "amlogic,amhdmitx";
- dev_name = "amhdmitx";
- status = "ok";
- vend-data = <&vend_data>;
- pwr-ctrl = <&pwr_ctrl>;
- vend_data: vend_data{
- vendor_name = "Amlogic"; /* Max Chars: 8 */
- vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */
- product_desc = "M8 MBox SKTv1"; /* Max Chars: 16 */
- cec_osd_string = "MBox"; /* Max Chars: 14 */
- cec_config = <0x00000f>; /* 4 bytes: use to control cec switch on/off; distinguish between Mbox and Tablet. <0x00000f>:Mbox; <0x000000> or no this value:Tablet*/
- ao_cec = <0x000001>; /* switch between ao-cec and ee-cec:: 1: ao-cec; 0: ee-cec */
- };
- pwr_ctrl: pwr_ctrl{
- pwr_5v_on = "";
- pwr_5v_off = "";
- pwr_3v3_on = "";
- pwr_3v3_off = "";
- pwr_hpll_vdd_on = "";
- pwr_hpll_vdd_off = "";
- };
- };
- aml_pm{
- compatible = "amlogic,pm-m8";
- dev_name = "aml_pm_m8";
- status = "okay";
- };
- cpufreq-meson{
- compatible = "amlogic,cpufreq-meson";
- syspll_fixed;
- status = "okay";
- };
- // crypto_device{
- // compatible = "amlogic,crypto-device";
- // dev_name = "crypto_device";
- // };
- gpio:gpio{
- compatible = "amlogic,m8b-gpio";
- dev_name = "gpio";
- #gpio-cells=<2>;
- };
- pinmux{
- compatible = "amlogic,pinmux-m8b";
- dev_name = "pinmux";
- #pinmux-cells=<2>;
- ao_uart_pins:ao_uart{
- amlogic,setmask=<10 0x1800>;
- amlogic,pins="GPIOAO_0", "GPIOAO_1";
- };
- b_uart_pins:b_uart{
- amlogic,setmask=<4 0x03c0>;
- amlogic,pins="GPIOX_16", "GPIOX_17", "GPIOX_18", "GPIOX_19";
- };
- nand_input_state:nand_input{
- amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_4",
- "BOOT_5","BOOT_6","BOOT_7","BOOT_12","BOOT_13",
- "BOOT_8","BOOT_9","BOOT_10","BOOT_11",
- "BOOT_14","BOOT_15","BOOT_16","BOOT_17";
- amlogic,enable-output=<1>;
- };
- conf_nand_state: conf_nand{
- 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_state1: conf_nand1{
- amlogic,pins = "BOOT_8", "BOOT_10";
- amlogic,pullup=<1>;
- amlogic,pullupen=<1>;
- };
- nand_base: nand{
- amlogic,setmask=<2 0x7fe0000>;
- amlogic,clrmask=< 5 0xe
- 6 0x3f000000
- 4 0x7c000000>;
- 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_12","BOOT_13",
- "BOOT_14","BOOT_15","BOOT_16","BOOT_17";
- };
- sdhc_b_pins:sdhc_b_pin{
- amlogic,setmask=<2 0xfc00>;
- amlogic,clrmask=<2 0xf0 8 0x600>;
- amlogic,pins="CARD_0","CARD_1","CARD_2","CARD_3","CARD_4","CARD_5";
- };
- sdhc_c_pins:sdhc_c_pin{
- amlogic,setmask=<6 0x3f000000>;
- amlogic,clrmask=<4 0x6c000000 2 0x4c00000>;
- amlogic,pins="BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_10","BOOT_11";
- };
- sdhc_a_pins:sdhc_a_pin{
- amlogic,setmask=<8 0x3f>;
- amlogic,clrmask=<5 0x6c00 >;
- amlogic,pins="GPIOX_0","GPIOX_1","GPIOX_2","GPIOX_3","GPIOX_8","GPIOX_9";
- };
- sdio_all_pins:sdio_all_pins{
- amlogic,setmask=<8 0x0000003f>; /*sdio a*/
- amlogic,clrmask=<6 0x3f000000 /*sdio c*/
- 2 0x0000fc00 /*sdio b*/
- 5 0x00006c00>; /*sdhc a*/
- amlogic,pins = "GPIOX_0","GPIOX_1","GPIOX_2","GPIOX_3","GPIOX_8","GPIOX_9";
- 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>; /*sdio a*/
- amlogic,clrmask=<6 0x3f000000 /*sdio c*/
- 2 0x0000fc00 /*sdio b*/
- 5 0x00006c00>; /*sdhc a*/
- amlogic,pins = "GPIOX_8","GPIOX_9"; /** GPIOX_8:CLK, GPIOX_9: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>; /*sdio b*/
- amlogic,clrmask=<6 0x3f000000 /*sdio c*/
- 8 0x0000063f /*sdio a, UART*/
- 2 0x000000f0>; /*sdhc b*/
- 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>; /*sdio b*/
- amlogic,clrmask=<6 0x3f000000 /*sdio c*/
- 8 0x0000003f /*sdio a*/
- 2 0x000000f0>; /*sdhc b*/
- 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_clk_cmd_pins:sd_clk_cmd_pins{
- amlogic,setmask=<2 0x00000c00>; /*sdio b*/
- amlogic,clrmask=<6 0x3f000000 /*sdio c*/
- 8 0x0000003f /*sdio a*/
- 2 0x000000f0>; /*sdhc b*/
- 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>;
- };
- emmc_all_pins:emmc_all_pins{
- amlogic,setmask=<6 0xfc000000>; /*sdio c*/
- amlogic,clrmask=<2 0x06c2fc00 /*sdio b & nand*/
- 8 0x0000003f /*sdio a*/
- 4 0x6c000000>; /*sdhc c*/
- amlogic,pins = "BOOT_0","BOOT_1","BOOT_2","BOOT_3","BOOT_8","BOOT_10";
- amlogic,enable-output=<1>; /** 0:output, 1:input */
- amlogic,pullup=<1>;
- amlogic,pullupen=<1>;
- };
- emmc_clk_cmd_pins:emmc_clk_cmd_pins{
- amlogic,setmask=<6 0xc0000000>; /*bit[30-31] */
- amlogic,clrmask=<2 0x06c2fc00 /*sdio b & nand nand bit17 bit25*/
- 8 0x0000003f /*sdio a*/
- 7 0xc0000>; /*sdhc c bit 18-19*/
- 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>;
- };
- sdhc_sd_clk_cmd_pins:sdhc_sd_clk_cmd_pins{
- amlogic,setmask=<2 0x00000030>; /*sdhc b*/
- amlogic,clrmask=<5 0x00007c00 /*sdhc a*/
- 4 0x7c000000 /*sdhc c*/
- 2 0x0000fc00 /*sdio b*/
- 8 0x00000600>; /*UART*/
- 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>;
- };
- sdhc_sd_all_pins:sdhc_sd_all_pins{
- amlogic,setmask=<2 0x000000f0>; /*sdhc b*/
- amlogic,clrmask=<5 0x00007c00 /*sdhc a*/
- 4 0x7c000000 /*sdhc c*/
- 2 0x0000fc00 /*sdio b*/
- 8 0x00000600>; /*UART*/
- 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>;
- };
- sdhc_emmc_clk_cmd_pins:sdhc_emmc_clk_cmd_pins{
- amlogic,setmask=<7 0xc0000>; /*bit[18-19] */
- amlogic,clrmask=<2 0x04c000f0 /*sdhc b & nand*/
- 5 0x00007c00 /*sdhc a*/
- 6 0xff000000>; /*sdio c*/
- 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>;
- };
- sdhc_emmc_all_pins:sdhc_emmc_all_pins{
- amlogic,setmask=<4 0x70000000
- 7 0xc0000>; /*sdhc c*/
- amlogic,clrmask=<2 0x04c000f0 /*sdhc b & nand*/
- 5 0x00007c00 /*sdhc a*/
- 6 0xff000000>; /*sdio 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>;
- };
- sdhc_sdio_clk_cmd_pins:sdhc_sdio_clk_cmd_pins{
- amlogic,setmask=<5 0x00000c00>; /*sdhc a bit[10-11] */
- amlogic,clrmask=<2 0x058000f0 /*sdhc b*/
- 4 0x7c000000 /*sdhc c */
- 8 0x0000003f>; /*sdio a*/
- amlogic,pins = "GPIOX_8","GPIOX_9"; /** BOOT_16:CMD, BOOT_17:CLK */
- amlogic,enable-output=<1>; /** 0:output, 1:input */
- amlogic,pullup=<1>;
- amlogic,pullupen=<1>;
- };
- sdhc_sdio_all_pins:sdhc_sdio_all_pins{
- amlogic,setmask=<5 0x00006c00>; /*sdhc a*/
- amlogic,clrmask=<2 0x058000f0 /*sdhc b*/
- 4 0x7c000000 /*sdhc c */
- 8 0x0000003f>; /*sdio a*/
- amlogic,pins = "GPIOX_0","GPIOX_1","GPIOX_2","GPIOX_3","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=<3 0x80000
- 9 0x37c>;
- amlogic,pins = "GPIOH_9","GPIOY_6","GPIOY_7","GPIOY_8","GPIOY_9","GPIOY_10","GPIOY_11","GPIOY_12","GPIOY_13","GPIOY_14";
- };
- aml_cam_csi_pins: aml_cam_csi_pins{
- amlogic,setmask=<3 0x80000>;
- amlogic,pins = "GPIOH_9";
- };
- ao_i2c_master:ao_i2c{
- amlogic,setmask=<10 0x60>;
- amlogic,clrmask=<10 0x1800006>;
- amlogic,pins="GPIOAO_4","GPIOAO_5";
- };
- b_i2c_master:b_i2c{
- amlogic,setmask=<9 0x30000000>;
- amlogic,clrmask=<0 0x480
- 6 0x300000
- 8 0x10780000>;
- amlogic,pins="GPIODV_26","GPIODV_27";
- };
- // MATCH "I2C_D_pin_match" = "&d_i2c_master"
- // L2 PROP_U32 2 = "amlogic,setmask"
- // L2 PROP_STR 2 = "amlogic,pins"
- d_i2c_master:d_i2c{
- amlogic,setmask=<4 0xc>;
- amlogic,clrmask=<6 0x3000>;
- amlogic,pins="GPIOH_7","GPIOH_8";
- };
- remote_pins:remote_pin{
- amlogic,setmask=<10 0x1>;
- amlogic,pins="GPIOAO_7";
- };
- audio_pins:audio_pin{
- amlogic,setmask=<10 0x78000000
- 1 0x80>;
- amlogic,clrmask=<10 0x80002008
- 1 0x10000
- 3 0x40000>;
- amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11","GPIOAO_13","GPIOY_3";
- };
- aml_spi_nor_pins: aml_spi_nor_pins{
- amlogic,setmask=<5 0xf>;
- amlogic,clrmask=<2 0x10380000>;
- amlogic,pins = "BOOT_11","BOOT_12","BOOT_13","BOOT_18";
- };
- aml_pwm_pins:aml_pwm{
- amlogic,setmask=<3 0x1000000>;
- amlogic,clrmask=<0 0x48
- 7 0x10000020>;
- amlogic,pins="GPIODV_9";
- };
- dvb_p_ts0_pins: dvb_p_ts0_pins {
- amlogic,setmask = <3 0x37>;
- amlogic,clrmask = <5 0xC0
- 9 0x37C>;
- amlogic,pins = "GPIOY_9","GPIOY_10","GPIOY_11","GPIOY_12","GPIOY_13","GPIOY_14","GPIOY_6","GPIOY_7","GPIOY_0","GPIOY_1","GPIOY_8";
- };
- dvb_s_ts0_pins: dvb_s_ts0_pins {
- amlogic,setmask = <3 0x17>;
- amlogic,clrmask = <9 0x378>;
- amlogic,pins = "GPIOY_9","GPIOY_0","GPIOY_1","GPIOY_8";
- };
- };
- meson-eth{
- compatible = "amlogic,meson-eth";
- dev_name = "meson-eth";
- status = "okay";
- ethbaseaddr = <0xfe0c0000>;
- interruptnum = <40>;
- new_maclogic = <1>;
- };
- meson-rng{
- compatible = "amlogic,meson-rng";
- status = "ok";
- };
- dvb{
- compatible = "amlogic,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>;
- };
- dvbfe{
- compatible = "amlogic,dvbfe";
- dtv_demod0 = "Si2168";
- dtv_demod0_i2c_adap_id = <2>;
- dtv_demod0_i2c_addr = <0x64>;
- dtv_demod0_reset_value = <0>;
- dtv_demod0_reset_gpio = "GPIOY_6";
- fe0_dtv_demod = <0>;
- fe0_ts = <0>;
- fe0_dev = <0>;
- };
- /* dvbfe{
- compatible = "amlogic,dvbfe";
- dtv_demod0 = "Mxl101";
- dtv_demod0_i2c_adap_id = <4>;
- dtv_demod0_i2c_addr = <0x60>;
- dtv_demod0_reset_value = <0>;
- dtv_demod0_reset_gpio = "GPIOY_3";
- fe0_dtv_demod = <0>;
- fe0_ts = <0>;
- fe0_dev = <0>;
- };
- */
- }; /* end of / */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement