Skip to content

Instantly share code, notes, and snippets.

@zerog2k
Created June 20, 2023 00:11
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zerog2k/0db973f4a521f2349a5ae96d92a8dc7b to your computer and use it in GitHub Desktop.
Save zerog2k/0db973f4a521f2349a5ae96d92a8dc7b to your computer and use it in GitHub Desktop.
jens@mars:/tmp/explor$ fdtdump -s boot.img
**** fdtdump is a low-level debugging tool, not meant for general use.
**** If you want to decompile a dtb, you probably want
**** dtc -I dtb -O dts <filename>
boot.img: found fdt at offset 0x776800
/dts-v1/;
// magic: 0xd00dfeed
// totalsize: 0x59ba (22970)
// off_dt_struct: 0x38
// off_dt_strings: 0x5058
// off_mem_rsvmap: 0x28
// version: 17
// last_comp_version: 16
// boot_cpuid_phys: 0x0
// size_dt_strings: 0x962
// size_dt_struct: 0x5020
/ {
amlogic-dt-id = "m8b_m201_1G";
compatible = "AMLOGIC,8726_M8B";
model = "AMLOGIC";
interrupt-parent = <0x00000001>;
#address-cells = <0x00000001>;
#size-cells = <0x00000001>;
cpus {
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
cpu@0 {
device_type = "cpu";
compatible = "arm,cortex-a5";
reg = <0x00000200>;
};
cpu@1 {
device_type = "cpu";
compatible = "arm,cortex-a5";
reg = <0x00000001>;
};
cpu@2 {
device_type = "cpu";
compatible = "arm,cortex-a5";
reg = <0x00000002>;
};
cpu@3 {
device_type = "cpu";
compatible = "arm,cortex-a5";
reg = <0x00000003>;
};
};
cache-controller {
compatible = "arm,meson-pl310-cache";
reg = <0xc4200000 0x00001000>;
arm,data-latency = <0x00000003 0x00000003 0x00000003>;
arm,tag-latency = <0x00000002 0x00000002 0x00000002>;
arm,filter-ranges = <0x00100000 0xc0000000>;
cache-unified;
cache-level = <0x00000002>;
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 = <0x00000007>;
};
memory {
device_type = "memory";
aml_reserved_start = <0x06000000>;
aml_reserved_end = <0x05000000>;
phys_offset = <0x00200000>;
linux,total-memory = <0x3fe00000>;
#address-cells = <0x00000001>;
#size-cells = <0x00000001>;
region@0 {
region_name = "cma_0";
reg = <0x00000000 0x01200000>;
linux,contiguous-region;
linux,phandle = <0x00000002>;
phandle = <0x00000002>;
};
};
interrupt-controller {
compatible = "arm,cortex-a9-gic";
reg = <0xc4301000 0x00001000 0xc4300100 0x00000100>;
interrupt-controller;
#interrupt-cells = <0x00000003>;
#address-cells = <0x00000000>;
linux,phandle = <0x00000001>;
phandle = <0x00000001>;
};
vpu {
compatible = "amlogic,vpu";
dev_name = "vpu";
status = "ok";
clk_level = <0x00000003>;
};
mesonfb {
compatible = "amlogic,mesonfb";
dev_name = "mesonfb";
status = "okay";
reserve-memory = <0x01800000 0x00100000>;
reserve-iomap = "true";
vmode = <0x00000003>;
scale_mode = <0x00000001>;
4k2k_fb = <0x00000000>;
display_size_default = <0x00000780 0x00000438 0x00000780 0x00000ca8 0x00000020>;
};
deinterlace {
compatible = "amlogic,deinterlace";
dev_name = "deinterlace";
status = "ok";
reserve-memory = <0x02100000>;
};
mesonstream {
compatible = "amlogic,mesonstream";
dev_name = "mesonstream.0";
status = "okay";
reserve-memory = <0x02000000>;
reserve-iomap = "true";
};
vdec {
compatible = "amlogic,vdec";
dev_name = "vdec.0";
status = "okay";
reserve-memory = <0x04000000>;
reserve-iomap = "true";
};
ppmgr {
compatible = "amlogic,ppmgr";
dev_name = "ppmgr";
status = "okay";
reserve-memory = <0x01000000>;
};
amvenc_avc {
compatible = "amlogic,amvenc_avc";
dev_name = "amvenc_avc.0";
status = "okay";
linux,contiguous-region = <0x00000002>;
reserve-iomap = "true";
};
ion_dev {
compatible = "amlogic,ion_dev";
dev_name = "ion_dev";
status = "ok";
share-memory-name = "ppmgr0";
share-memory-offset = <0x00000000>;
share-memory-size = <0x01000000>;
};
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 = <0x00000003>;
};
uart_0 {
compatible = "amlogic,aml_uart";
port_name = "uart_a";
status = "okay";
dev_name = "uart_0";
};
uart_1 {
compatible = "amlogic,aml_uart";
port_name = "uart_b";
status = "okay";
dev_name = "uart_1";
pinctrl-names = "default";
pinctrl-0 = <0x00000004>;
};
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 = <0x00000004>;
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_gpio2 = "GPIOX_11";
valid = "low";
};
sdio {
compatible = "amlogic,aml_sdio";
dev_name = "aml_sdio.0";
status = "okay";
reg = <0xc1108c20 0x00000020>;
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";
pinctrl-0 = <0x00000005>;
pinctrl-1 = <0x00000006>;
pinctrl-2 = <0x00000007>;
pinctrl-3 = <0x00000008>;
pinctrl-4 = <0x00000009>;
pinctrl-5 = <0x0000000a>;
pinctrl-6 = <0x0000000b>;
sd {
status = "okay";
port = <0x00000001>;
pinname = "sd";
ocr_avail = <0x00200000>;
caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED";
f_min = <0x000493e0>;
f_max = <0x02faf080>;
f_max_w = <0x02faf080>;
max_req_size = <0x00020000>;
gpio_dat3 = "CARD_4";
jtag_pin = "CARD_0";
gpio_cd = "CARD_6";
irq_in = <0x00000003>;
irq_out = <0x00000005>;
card_type = <0x00000005>;
};
emmc {
status = "ok";
port = <0x00000002>;
pinname = "emmc";
ocr_avail = <0x00200000>;
caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_ERASE", "MMC_CAP_HW_RESET";
f_min = <0x000493e0>;
f_max = <0x02faf080>;
f_max_w = <0x02faf080>;
max_req_size = <0x00020000>;
gpio_dat3 = "BOOT_3";
card_type = <0x00000001>;
};
sdio {
status = "ok";
port = <0x00000000>;
pinname = "sdio";
ocr_avail = <0x00200000>;
caps = "MMC_CAP_4_BIT_DATA", "MMC_CAP_SDIO_IRQ", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE";
f_min = <0x000493e0>;
f_max = <0x02faf080>;
max_req_size = <0x00020000>;
card_type = <0x00000003>;
};
};
sdhc {
compatible = "amlogic,aml_sdhc";
dev_name = "aml_sdhc.0";
status = "okay";
reg = <0xc1108e00 0x0000003c>;
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 = <0x0000000c>;
pinctrl-1 = <0x0000000d>;
pinctrl-2 = <0x0000000e>;
pinctrl-3 = <0x0000000f>;
pinctrl-4 = <0x00000010>;
pinctrl-5 = <0x00000011>;
emmc {
status = "okay";
port = <0x00000005>;
pinname = "emmc";
ocr_avail = <0x00200000>;
caps = "MMC_CAP_8_BIT_DATA", "MMC_CAP_MMC_HIGHSPEED", "MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE", "MMC_CAP_ERASE", "MMC_CAP_HW_RESET";
f_min = <0x000493e0>;
f_max = <0x02faf080>;
max_req_size = <0x00020000>;
gpio_dat3 = "BOOT_3";
card_type = <0x00000001>;
};
};
i2c@c8100500 {
compatible = "amlogic,aml_i2c";
dev_name = "i2c-AO";
status = "ok";
reg = <0xc8100500 0x0000001d>;
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
device_id = <0x00000000>;
pinctrl-names = "default";
pinctrl-0 = <0x00000012>;
use_pio = <0x00000000>;
master_i2c_speed = <0x000186a0>;
};
i2c@c1108500 {
compatible = "amlogic,aml_i2c";
dev_name = "i2c-A";
status = "ok";
reg = <0xc1108500 0x00000020>;
device_id = <0x00000001>;
pinctrl-names = "default";
pinctrl-0 = <0x00000013>;
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
use_pio = <0x00000000>;
master_i2c_speed = <0x000493e0>;
};
i2c@c11087c0 {
compatible = "amlogic,aml_i2c";
dev_name = "i2c-B";
status = "ok";
reg = <0xc11087c0 0x00000020>;
device_id = <0x00000002>;
pinctrl-names = "default";
pinctrl-0 = <0x00000014>;
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
use_pio = <0x00000000>;
master_i2c_speed = <0x000493e0>;
};
i2c@c11087e0 {
compatible = "amlogic,aml_i2c";
dev_name = "i2c-C";
status = "ok";
reg = <0xc11087e0 0x00000020>;
device_id = <0x00000003>;
pinctrl-names = "default";
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
use_pio = <0x00000000>;
master_i2c_speed = <0x000493e0>;
};
i2c@c1108d20 {
compatible = "amlogic,aml_i2c";
dev_name = "i2c-D";
status = "ok";
reg = <0xc1108d20 0x00000020>;
device_id = <0x00000004>;
pinctrl-names = "default";
pinctrl-0 = <0x00000015>;
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
use_pio = <0x00000000>;
master_i2c_speed = <0x000493e0>;
};
dvfs {
compatible = "amlogic, amlogic-dvfs";
#address-cells = <0x00000001>;
#size-cells = <0x00000000>;
status = "ok";
vcck_dvfs {
dvfs_id = <0x00000001>;
table_count = <0x0000000d>;
dvfs_table = <0x00017700 0x000d1f60 0x000d1f60 0x0002ee00 0x000d1f60 0x000d1f60 0x0004c2c0 0x000d1f60 0x000d1f60 0x000639c0 0x000d1f60 0x000d1f60 0x0007b0c0 0x000d1f60 0x000d1f60 0x000927c0 0x000d1f60 0x000d1f60 0x000afc80 0x000d1f60 0x000d1f60 0x000c7380 0x000dbba0 0x000dbba0 0x000f6180 0x000e09c0 0x000e09c0 0x00124f80 0x000ecd10 0x000ecd10 0x00142440 0x0010c8e0 0x0010c8e0 0x0016b480 0x0010c8e0 0x0010c8e0 0x00177000 0x00116520 0x00116520>;
};
};
meson_vcck_dvfs_driver {
compatible = "amlogic, meson_vcck_dvfs";
dev_name = "meson_vcck_dvfs_driver";
status = "ok";
pinctrl-names = "default";
pinctrl-0 = <0x00000016>;
use_pwm = <0x00000001>;
pmw_controller = "PWM_C";
table_count = <0x0000001d>;
cs_voltage_table = <0x001c0000 0x000d1f60 0x001b0001 0x000d4670 0x001a0002 0x000d6d80 0x00190003 0x000d9490 0x00180004 0x000dbba0 0x00170005 0x000de2b0 0x00160006 0x000e09c0 0x00150007 0x000e30d0 0x00140008 0x000e57e0 0x00130009 0x000e7ef0 0x0012000a 0x000ea600 0x0011000b 0x000ecd10 0x0010000c 0x000ef420 0x000f000d 0x000f1b30 0x000e000e 0x000f4240 0x000d000f 0x000f6950 0x000c0010 0x000f9060 0x000b0011 0x000fb770 0x000a0012 0x000fde80 0x00090013 0x00100590 0x00080014 0x00102ca0 0x00070015 0x001053b0 0x00060016 0x00107ac0 0x00050017 0x0010a1d0 0x00040018 0x0010c8e0 0x00030019 0x0010eff0 0x0002001a 0x00111700 0x0001001b 0x00113e10 0x0000001c 0x00116520>;
};
arm_pmu {
compatible = "arm,cortex-a9-pmu";
status = "ok";
interrupts = <0x00000000 0x00000089 0x00000004 0x00000000 0x0000008a 0x00000004 0x00000000 0x00000099 0x00000004 0x00000000 0x0000009a 0x00000004>;
};
usb_con {
lm-compatible = "logicmodule-bus";
usb_b {
lm-compatible = "amlogic,usb";
lm-periph-id = <0x00000001>;
clock-src = "usb1";
port-id = <0x00000001>;
port-type = <0x00000001>;
port-speed = <0x00000000>;
port-config = <0x00000000>;
port-dma = <0x00000000>;
port-id-mode = <0x00000001>;
status = "okay";
};
usb_a {
lm-compatible = "amlogic,usb";
lm-periph-id = <0x00000000>;
clock-src = "usb0";
port-id = <0x00000000>;
port-type = <0x00000001>;
port-speed = <0x00000000>;
port-config = <0x00000000>;
port-dma = <0x00000000>;
port-id-mode = <0x00000000>;
gpio-work-mask = <0x00000001>;
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";
pinctrl-names = "aml_audio_spdif";
pinctrl-0 = <0x00000017>;
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 {
codec_name = "rt5616";
i2c_addr = <0x0000001b>;
i2c_bus = "i2c_bus_d";
id_reg = <0x00000000>;
id_val = <0x00000021>;
capless = <0x00000000>;
status = "disable";
};
rt5631 {
codec_name = "rt5631";
i2c_addr = <0x0000001a>;
i2c_bus = "i2c_bus_b";
id_reg = <0x00000000>;
id_val = <0x00000001>;
capless = <0x00000000>;
status = "disable";
};
wm8960 {
codec_name = "wm8960";
i2c_addr = <0x0000001a>;
i2c_bus = "i2c_bus_b";
capless = <0x00000001>;
status = "disable";
};
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,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;
hp_paraments = <0x00000320 0x0000012c 0x00000000 0x00000005 0x00000001>;
pinctrl-names = "aml_snd_m8";
pinctrl-0 = <0x00000018>;
status = "okay";
};
aml_cams {
compatible = "amlogic,cams_prober";
status = "okay";
pinctrl-names = "gpio", "csi";
pinctrl-0 = <0x00000019>;
pinctrl-1 = <0x0000001a>;
cam_0 {
cam_name = "ar0543";
front_back = <0x00000000>;
i2c_bus = "i2c_bus_d";
gpio_pwdn = "GPIOH_6";
gpio_rst = "GPIOH_4";
mirror_flip = <0x00000000>;
vertical_flip = <0x00000000>;
config_path = "/system/etc/camera_isp_cfg/ar0543_skt";
mclk = <0x00002ee0>;
bt_path = "csi";
interface = "mipi";
clk_channel = "a";
status = "okay";
};
cam_1 {
cam_name = "ov5647";
front_back = <0x00000000>;
i2c_bus = "i2c_bus_d";
gpio_pwdn = "GPIOH_5";
gpio_rst = "GPIOH_4";
mirror_flip = <0x00000000>;
vertical_flip = <0x00000000>;
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 = <0x00000000>;
i2c_bus = "i2c_bus_d";
gpio_pwdn = "GPIOH_6";
gpio_rst = "GPIOH_4";
mirror_flip = <0x00000000>;
vertical_flip = <0x00000000>;
config_path = "/system/etc/camera_isp_cfg/ar0833_skt";
mclk = <0x00002ee0>;
bt_path = "csi";
interface = "mipi";
clk_channel = "a";
status = "okay";
};
};
saradc {
compatible = "amlogic,saradc";
status = "okay";
};
meson-remote {
compatible = "amlogic,aml_remote";
dev_name = "meson-remote";
status = "ok";
ao_baseaddr = <0xf3100480>;
pinctrl-names = "default";
pinctrl-0 = <0x0000001b>;
};
spi@cc000000 {
compatible = "amlogic,apollo_spi_nor";
status = "ok";
reg = <0xcc000000 0x04000000>;
pinctrl-names = "default";
pinctrl-0 = <0x0000001c>;
nr-parts = <0x00000002>;
nr-part-0 = <0x0000001d>;
nr-part-1 = <0x0000001e>;
bootloader {
offset = <0x00000000>;
size = <0x00100000>;
linux,phandle = <0x0000001d>;
phandle = <0x0000001d>;
};
ubootenv {
offset = <0x00100000>;
size = <0x00010000>;
linux,phandle = <0x0000001e>;
phandle = <0x0000001e>;
};
};
nand {
compatible = "amlogic,aml_nand";
dev_name = "nand";
status = "ok";
reg = <0xd0048600 0x00000024>;
pinctrl-names = "nand_rb_mod", "nand_norb_mod";
pinctrl-0 = <0x0000001f 0x00000020 0x00000021 0x00000022>;
pinctrl-1 = <0x0000001f 0x00000020 0x00000021 0x00000022>;
device_id = <0x00000000>;
plat-names = "nandnormal";
plat-num = <0x00000001>;
plat-part-0 = <0x00000023>;
normal {
enable_pad = "ce0", "ce1", "ce2", "ce3";
busy_pad = "rb0";
linux,phandle = <0x00000023>;
phandle = <0x00000023>;
};
};
efuse {
compatible = "amlogic,efuse";
dev_name = "efuse";
status = "okay";
plat-pos = <0x00000000 0x000001c6>;
plat-count = <0x0000003a>;
usid-min = <0x00000008>;
usid-max = <0x0000001f>;
};
thermal {
compatible = "amlogic-thermal";
#thermal-cells = <0x00000007>;
dev_name = "aml_thermal";
trip_point = <0x00000046 0x0016b481 0x0016b481 0x000001ff 0x000001ff 0x00000003 0x00000002 0x00000050 0x00124f81 0x00124f81 0x000001b3 0x000001b3 0x00000002 0x00000002 0x0000005a 0x000c3501 0x000c3501 0x00000148 0x00000148 0x00000001 0x00000001 0x00000104 0xffffffff 0xffffffff 0xffffffff 0xffffffff 0xffffffff 0xffffffff>;
cpu_cali_a = <0x00000000>;
idle_interval = <0x000003e8>;
use_virtual_thermal;
freq_sample_period = <0x0000001e>;
report_time = <0x00000001 0x0000000a 0x0000001e 0x0000003c>;
cpu_virtual = <0x0007a120 0x00000028 0x00000028 0x00000028 0x00000028 0x000927c0 0x0000002d 0x00000037 0x0000003c 0x00000041 0x000c3500 0x00000032 0x0000003c 0x00000041 0x00000046 0x000f4240 0x00000037 0x00000041 0x00000046 0x0000004b 0x00124f80 0x0000003c 0x00000046 0x0000004b 0x00000050 0x00149970 0x00000041 0x0000004b 0x00000050 0x00000055>;
gpu_virtual = <0x000000b7 0x00000028 0x00000028 0x00000028 0x00000028 0x000000fb 0x00000028 0x0000002d 0x00000032 0x00000037 0x0000013f 0x00000032 0x0000003c 0x00000041 0x00000046 0x000001aa 0x00000037 0x00000041 0x00000046 0x0000004b 0x000001ff 0x0000003c 0x00000046 0x0000004b 0x00000050>;
};
securitykey {
compatible = "amlogic,aml_keys";
status = "ok";
};
unifykey {
compatible = "amlogic,unifykey";
status = "ok";
efuse-version = <0x00000014>;
unifykey-num = <0x00000006>;
unifykey-index-0 = <0x00000024>;
unifykey-index-1 = <0x00000025>;
unifykey-index-2 = <0x00000026>;
unifykey-index-3 = <0x00000027>;
unifykey-index-4 = <0x00000028>;
unifykey-index-5 = <0x00000029>;
key_0 {
key-name = "usid";
key-device = "nandkey";
key-dataformat = "allascii";
key-permit = "read", "write", "del";
linux,phandle = <0x00000024>;
phandle = <0x00000024>;
};
key_1 {
key-name = "mac";
key-device = "efusekey";
key-dataformat = "hexdata";
key-permit = "read", "write", "del";
linux,phandle = <0x00000025>;
phandle = <0x00000025>;
};
key_2 {
key-name = "hdcp";
key-device = "nandkey";
key-dataformat = "hexdata";
key-permit = "read", "write", "del";
linux,phandle = <0x00000026>;
phandle = <0x00000026>;
};
key_3 {
key-name = "secure_boot_set";
key-device = "efusekey";
key-dataformat = "hexdata";
key-permit = "read", "write";
linux,phandle = <0x00000027>;
phandle = <0x00000027>;
};
key_4 {
key-name = "mac_bt";
key-device = "nandkey";
key-dataformat = "hexdata";
key-permit = "read", "write", "del";
linux,phandle = <0x00000028>;
phandle = <0x00000028>;
};
key_5 {
key-name = "mac_wifi";
key-device = "nandkey";
key-dataformat = "hexdata";
key-permit = "read", "write", "del";
linux,phandle = <0x00000029>;
phandle = <0x00000029>;
};
};
amhdmitx {
compatible = "amlogic,amhdmitx";
dev_name = "amhdmitx";
status = "ok";
vend-data = <0x0000002a>;
pwr-ctrl = <0x0000002b>;
vend_data {
vendor_name = "Amlogic";
vendor_id = <0x00000000>;
product_desc = "M8 MBox SKTv1";
cec_osd_string = "MBox";
cec_config = <0x0000000f>;
ao_cec = <0x00000001>;
linux,phandle = <0x0000002a>;
phandle = <0x0000002a>;
};
pwr_ctrl {
pwr_5v_on = [00];
pwr_5v_off = [00];
pwr_3v3_on = [00];
pwr_3v3_off = [00];
pwr_hpll_vdd_on = [00];
pwr_hpll_vdd_off = [00];
linux,phandle = <0x0000002b>;
phandle = <0x0000002b>;
};
};
aml_pm {
compatible = "amlogic,pm-m8";
dev_name = "aml_pm_m8";
status = "okay";
};
cpufreq-meson {
compatible = "amlogic,cpufreq-meson";
syspll_fixed;
status = "okay";
};
gpio {
compatible = "amlogic,m8b-gpio";
dev_name = "gpio";
#gpio-cells = <0x00000002>;
};
pinmux {
compatible = "amlogic,pinmux-m8b";
dev_name = "pinmux";
#pinmux-cells = <0x00000002>;
ao_uart {
amlogic,setmask = <0x0000000a 0x00001800>;
amlogic,pins = "GPIOAO_0", "GPIOAO_1";
linux,phandle = <0x00000003>;
phandle = <0x00000003>;
};
b_uart {
amlogic,setmask = <0x00000004 0x000003c0>;
amlogic,pins = "GPIOX_16", "GPIOX_17", "GPIOX_18", "GPIOX_19";
linux,phandle = <0x00000004>;
phandle = <0x00000004>;
};
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 = <0x00000001>;
linux,phandle = <0x0000001f>;
phandle = <0x0000001f>;
};
conf_nand {
amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_4", "BOOT_5", "BOOT_6", "BOOT_7", "BOOT_15";
amlogic,pullup = <0x00000000>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x00000020>;
phandle = <0x00000020>;
};
conf_nand1 {
amlogic,pins = "BOOT_8", "BOOT_10";
amlogic,pullup = <0x00000001>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x00000021>;
phandle = <0x00000021>;
};
nand {
amlogic,setmask = <0x00000002 0x07fe0000>;
amlogic,clrmask = <0x00000005 0x0000000e 0x00000006 0x3f000000 0x00000004 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";
linux,phandle = <0x00000022>;
phandle = <0x00000022>;
};
sdhc_b_pin {
amlogic,setmask = <0x00000002 0x0000fc00>;
amlogic,clrmask = <0x00000002 0x000000f0 0x00000008 0x00000600>;
amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3", "CARD_4", "CARD_5";
};
sdhc_c_pin {
amlogic,setmask = <0x00000006 0x3f000000>;
amlogic,clrmask = <0x00000004 0x6c000000 0x00000002 0x04c00000>;
amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_10", "BOOT_11";
};
sdhc_a_pin {
amlogic,setmask = <0x00000008 0x0000003f>;
amlogic,clrmask = <0x00000005 0x00006c00>;
amlogic,pins = "GPIOX_0", "GPIOX_1", "GPIOX_2", "GPIOX_3", "GPIOX_8", "GPIOX_9";
};
sdio_all_pins {
amlogic,setmask = <0x00000008 0x0000003f>;
amlogic,clrmask = <0x00000006 0x3f000000 0x00000002 0x0000fc00 0x00000005 0x00006c00>;
amlogic,pins = "GPIOX_0", "GPIOX_1", "GPIOX_2", "GPIOX_3", "GPIOX_8", "GPIOX_9";
amlogic,enable-output = <0x00000001>;
amlogic,pullup = <0x00000001>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x0000000a>;
phandle = <0x0000000a>;
};
sdio_clk_cmd_pins {
amlogic,setmask = <0x00000008 0x00000003>;
amlogic,clrmask = <0x00000006 0x3f000000 0x00000002 0x0000fc00 0x00000005 0x00006c00>;
amlogic,pins = "GPIOX_8", "GPIOX_9";
amlogic,enable-output = <0x00000001>;
amlogic,pullup = <0x00000001>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x00000009>;
phandle = <0x00000009>;
};
sd_all_pins {
amlogic,setmask = <0x00000002 0x0000fc00>;
amlogic,clrmask = <0x00000006 0x3f000000 0x00000008 0x0000063f 0x00000002 0x000000f0>;
amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3", "CARD_4", "CARD_5";
amlogic,enable-output = <0x00000001>;
amlogic,pullup = <0x00000001>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x00000006>;
phandle = <0x00000006>;
};
sd_1bit_pins {
amlogic,setmask = <0x00000002 0x00008c00>;
amlogic,clrmask = <0x00000006 0x3f000000 0x00000008 0x0000003f 0x00000002 0x000000f0>;
amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3", "CARD_4", "CARD_5";
amlogic,enable-output = <0x00000001>;
amlogic,pullup = <0x00000001>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x0000000b>;
phandle = <0x0000000b>;
};
sd_clk_cmd_pins {
amlogic,setmask = <0x00000002 0x00000c00>;
amlogic,clrmask = <0x00000006 0x3f000000 0x00000008 0x0000003f 0x00000002 0x000000f0>;
amlogic,pins = "CARD_2", "CARD_3";
amlogic,enable-output = <0x00000001>;
amlogic,pullup = <0x00000001>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x00000005>;
phandle = <0x00000005>;
};
emmc_all_pins {
amlogic,setmask = <0x00000006 0xfc000000>;
amlogic,clrmask = <0x00000002 0x06c2fc00 0x00000008 0x0000003f 0x00000004 0x6c000000>;
amlogic,pins = "BOOT_0", "BOOT_1", "BOOT_2", "BOOT_3", "BOOT_8", "BOOT_10";
amlogic,enable-output = <0x00000001>;
amlogic,pullup = <0x00000001>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x00000008>;
phandle = <0x00000008>;
};
emmc_clk_cmd_pins {
amlogic,setmask = <0x00000006 0xc0000000>;
amlogic,clrmask = <0x00000002 0x06c2fc00 0x00000008 0x0000003f 0x00000007 0x000c0000>;
amlogic,pins = "BOOT_8", "BOOT_10";
amlogic,enable-output = <0x00000001>;
amlogic,pullup = <0x00000001>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x00000007>;
phandle = <0x00000007>;
};
sdhc_sd_clk_cmd_pins {
amlogic,setmask = <0x00000002 0x00000030>;
amlogic,clrmask = <0x00000005 0x00007c00 0x00000004 0x7c000000 0x00000002 0x0000fc00 0x00000008 0x00000600>;
amlogic,pins = "CARD_2", "CARD_3";
amlogic,enable-output = <0x00000001>;
amlogic,pullup = <0x00000001>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x0000000c>;
phandle = <0x0000000c>;
};
sdhc_sd_all_pins {
amlogic,setmask = <0x00000002 0x000000f0>;
amlogic,clrmask = <0x00000005 0x00007c00 0x00000004 0x7c000000 0x00000002 0x0000fc00 0x00000008 0x00000600>;
amlogic,pins = "CARD_0", "CARD_1", "CARD_2", "CARD_3", "CARD_4", "CARD_5";
amlogic,enable-output = <0x00000001>;
amlogic,pullup = <0x00000001>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x0000000d>;
phandle = <0x0000000d>;
};
sdhc_emmc_clk_cmd_pins {
amlogic,setmask = <0x00000007 0x000c0000>;
amlogic,clrmask = <0x00000002 0x04c000f0 0x00000005 0x00007c00 0x00000006 0xff000000>;
amlogic,pins = "BOOT_8", "BOOT_10";
amlogic,enable-output = <0x00000001>;
amlogic,pullup = <0x00000001>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x0000000e>;
phandle = <0x0000000e>;
};
sdhc_emmc_all_pins {
amlogic,setmask = <0x00000004 0x70000000 0x00000007 0x000c0000>;
amlogic,clrmask = <0x00000002 0x04c000f0 0x00000005 0x00007c00 0x00000006 0xff000000>;
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 = <0x00000001>;
amlogic,pullup = <0x00000001>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x0000000f>;
phandle = <0x0000000f>;
};
sdhc_sdio_clk_cmd_pins {
amlogic,setmask = <0x00000005 0x00000c00>;
amlogic,clrmask = <0x00000002 0x058000f0 0x00000004 0x7c000000 0x00000008 0x0000003f>;
amlogic,pins = "GPIOX_8", "GPIOX_9";
amlogic,enable-output = <0x00000001>;
amlogic,pullup = <0x00000001>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x00000010>;
phandle = <0x00000010>;
};
sdhc_sdio_all_pins {
amlogic,setmask = <0x00000005 0x00006c00>;
amlogic,clrmask = <0x00000002 0x058000f0 0x00000004 0x7c000000 0x00000008 0x0000003f>;
amlogic,pins = "GPIOX_0", "GPIOX_1", "GPIOX_2", "GPIOX_3", "GPIOX_8", "GPIOX_9";
amlogic,enable-output = <0x00000001>;
amlogic,pullup = <0x00000001>;
amlogic,pullupen = <0x00000001>;
linux,phandle = <0x00000011>;
phandle = <0x00000011>;
};
aml_cam_gpio_pins {
amlogic,setmask = <0x00000003 0x00080000 0x00000009 0x0000037c>;
amlogic,pins = "GPIOH_9", "GPIOY_6", "GPIOY_7", "GPIOY_8", "GPIOY_9", "GPIOY_10", "GPIOY_11", "GPIOY_12", "GPIOY_13", "GPIOY_14";
linux,phandle = <0x00000019>;
phandle = <0x00000019>;
};
aml_cam_csi_pins {
amlogic,setmask = <0x00000003 0x00080000>;
amlogic,pins = "GPIOH_9";
linux,phandle = <0x0000001a>;
phandle = <0x0000001a>;
};
ao_i2c {
amlogic,setmask = <0x0000000a 0x00000060>;
amlogic,clrmask = <0x0000000a 0x01800006>;
amlogic,pins = "GPIOAO_4", "GPIOAO_5";
linux,phandle = <0x00000012>;
phandle = <0x00000012>;
};
a_i2c {
amlogic,setmask = <0x00000009 0xc0000000>;
amlogic,clrmask = <0x00000000 0x003c0300 0x00000006 0x00c00000 0x00000008 0x01800000>;
amlogic,pins = "GPIODV_24", "GPIODV_25";
linux,phandle = <0x00000013>;
phandle = <0x00000013>;
};
b_i2c {
amlogic,setmask = <0x00000009 0x30000000>;
amlogic,clrmask = <0x00000000 0x00000480 0x00000006 0x00300000 0x00000008 0x10780000>;
amlogic,pins = "GPIODV_26", "GPIODV_27";
linux,phandle = <0x00000014>;
phandle = <0x00000014>;
};
d_i2c {
amlogic,setmask = <0x00000004 0x0000000c>;
amlogic,clrmask = <0x00000006 0x00003000>;
amlogic,pins = "GPIOH_7", "GPIOH_8";
linux,phandle = <0x00000015>;
phandle = <0x00000015>;
};
remote_pin {
amlogic,setmask = <0x0000000a 0x00000001>;
amlogic,pins = "GPIOAO_7";
linux,phandle = <0x0000001b>;
phandle = <0x0000001b>;
};
audio_pin {
amlogic,setmask = <0x0000000a 0x78000008>;
amlogic,clrmask = <0x0000000a 0x80002000>;
amlogic,pins = "GPIOAO_8", "GPIOAO_9", "GPIOAO_10", "GPIOAO_11", "GPIOAO_13";
linux,phandle = <0x00000018>;
phandle = <0x00000018>;
};
audio_pin1 {
amlogic,setmask = <0x00000001 0x00000080>;
amlogic,clrmask = <0x00000001 0x00010000 0x00000003 0x00040000>;
amlogic,pins = "GPIOY_3";
linux,phandle = <0x00000017>;
phandle = <0x00000017>;
};
aml_spi_nor_pins {
amlogic,setmask = <0x00000005 0x0000000f>;
amlogic,clrmask = <0x00000002 0x10380000>;
amlogic,pins = "BOOT_11", "BOOT_12", "BOOT_13", "BOOT_18";
linux,phandle = <0x0000001c>;
phandle = <0x0000001c>;
};
aml_pwm {
amlogic,setmask = <0x00000003 0x01000000>;
amlogic,clrmask = <0x00000000 0x00000048 0x00000007 0x10000020>;
amlogic,pins = "GPIODV_9";
linux,phandle = <0x00000016>;
phandle = <0x00000016>;
};
dvb_p_ts0_pins {
amlogic,setmask = <0x00000003 0x00000037>;
amlogic,clrmask = <0x00000005 0x000000c0 0x00000009 0x0000037c>;
amlogic,pins = "GPIOY_9", "GPIOY_10", "GPIOY_11", "GPIOY_12", "GPIOY_13", "GPIOY_14", "GPIOY_6", "GPIOY_7", "GPIOY_0", "GPIOY_1", "GPIOY_8";
linux,phandle = <0x0000002c>;
phandle = <0x0000002c>;
};
dvb_s_ts0_pins {
amlogic,setmask = <0x00000003 0x00000017>;
amlogic,clrmask = <0x00000009 0x00000378>;
amlogic,pins = "GPIOY_9", "GPIOY_0", "GPIOY_1", "GPIOY_8";
linux,phandle = <0x0000002d>;
phandle = <0x0000002d>;
};
};
meson-eth {
compatible = "amlogic,meson-eth";
dev_name = "meson-eth";
status = "okay";
ethbaseaddr = <0xfe0c0000>;
interruptnum = <0x00000028>;
new_maclogic = <0x00000001>;
};
meson-rng {
compatible = "amlogic,meson-rng";
status = "ok";
};
dvb {
compatible = "amlogic,dvb";
ts0 = "parallel";
ts0_control = <0x00000000>;
ts0_invert = <0x00000000>;
pinctrl-names = "p_ts0", "s_ts0";
pinctrl-0 = <0x0000002c>;
pinctrl-1 = <0x0000002d>;
};
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment