| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097 |
- /dts-v1/;
- /{
- 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 0x02a00000>;
- linux,contiguous-region;
- };
- };
- gic:interrupt-controller{
- compatible = "arm,cortex-a9-gic";
- reg = <0xc4301000 0x1000
- 0xc4300100 0x0100>;
- interrupt-controller;
- #interrupt-cells = <3>;
- #address-cells = <0>;
- };
- meson-rng {
- compatible = "amlogic,meson-rng";
- status = "ok";
- };
- vpu{
- compatible = "amlogic,vpu";
- dev_name = "vpu";
- status = "ok";
- clk_level = <3>;
- };
- mesonfb{
- compatible = "amlogic,mesonfb";
- dev_name = "mesonfb";
- status = "okay";
- reserve-memory = <0x01800000 0x00100000>;
- reserve-iomap = "true";
- vmode = <0>; /**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>; //1920*1080*4*3 = 0x17BB000
- };
- 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 = "okay";
- share-memory-name = "ppmgr0";
- share-memory-offset = <0>;
- share-memory-size = <0x01000000>; //16M
- };
- deinterlace{
- compatible = "amlogic,deinterlace";
- dev_name = "deinterlace";
- status = "okay";
- reserve-memory = <0x02100000>; //10x1920x1088x3/2=33M
- };
- 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_1{
- compatible = "amlogic,aml_uart";
- port_name = "uart_b";
- status = "okay";
- dev_name = "uart_1";
- pinctrl-names = "default";
- pinctrl-0 = <&b_uart_pins>;
- };
- 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>;
- emmc{
- status = "okay";
- port = <2>; /**0:sdio_a, 1:sdio_b, 2:sdio_c, 3:sdhc_a, 4:sdhc_b, 5:sdhc_c */
- pinname = "emmc";
- ocr_avail = <0x200000>; /**VDD voltage 3.3 ~ 3.4 */
- caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED","MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_ERASE", "MMC_CAP_HW_RESET"; // MMC_CAP_NEEDS_POLL -- for detect, MMC_CAP_NONREMOVABLE -- for eMMC/TSD
- caps2 = "MMC_CAP2_BOOTPART_NOACC";
- f_min = <300000>;
- f_max = <50000000>;
- f_max_w = <50000000>;
- max_req_size = <0x20000>; /**128KB*/
- gpio_dat3 = "BOOT_3";
- card_type = <1>; /* 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 */
- };
- 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";
- gpio_cd = "CARD_6";
- gpio_volsw = "GPIOAO_3";
- 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 */
- };
- };
- 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";
- gpio_volsw = "GPIOAO_3";
- 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{
- status = "okay";
- port = <5>; /**0:sdio_a, 1:sdio_b, 2:sdio_c, 3:sdhc_a, 4:sdhc_b, 5:sdhc_c */
- pinname = "emmc";
- ocr_avail = <0x00200080>; /**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"; // MMC_CAP_NEEDS_POLL -- for detect, MMC_CAP_NONREMOVABLE -- for eMMC/TSD
- caps2 = "MMC_CAP2_HS200_1_8V_SDR", "MMC_CAP2_BOOTPART_NOACC";
- f_min = <300000>;
- f_max = <100000000>;
- max_req_size = <0x20000>; /**128KB*/
- gpio_dat3 = "BOOT_3";
- card_type = <1>; /* 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@c1108500{ /*I2C-A*/
- compatible = "amlogic,aml_i2c";
- dev_name = "i2c-A";
- status = "ok";
- reg = <0xc1108500 0x20>;
- device_id = <1>;
- pinctrl-names="default";
- pinctrl-0=<&a_i2c_master>;
- #address-cells = <1>;
- #size-cells = <0>;
- 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 = <100000>;
- /* Hardkernel I2C 3.5" Touchscreen */
- /* drivers/input/sx865x.c */
- sx865x: sx865x@49 {
- status = "okay";
- compatible = "semtech,sx8650";
- reg = <0x49>;
- #clock-cells = <0>;
- /* H/W Pin control setup */
- gpio-pendown = "GPIOX_1";
- gpio-reset = "GPIOX_2";
- /* platform data setup */
- invert-x = <0>;
- invert-y = <1>;
- swap-xy = <1>;
- };
- };
- 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 = <16>; /** must be correct count for dvfs_table */
- /*change-frequent-only;*/
- dvfs_table = <
- /* NOTE: frequent in this table must be ascending order */
- /* frequent(Khz) min_uV max_uV */
- 96000 825000 825000
- 192000 825000 825000
- 312000 825000 825000
- 408000 825000 825000
- 504000 825000 825000
- 600000 825000 825000
- 720000 825000 825000
- 816000 850000 850000
- 1008000 875000 875000
- 1200000 925000 925000
- 1320000 1100000 1100000
- 1488000 1100000 1100000
- 1536000 1140000 1140000
- 1632000 1140000 1140000
- 1728000 1140000 1140000
- 1824000 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 = <
- 0x10f001b 860000
- 0x1050025 870000
- 0x0fc002e 880000
- 0x0f30037 890000
- 0x0ea0040 900000
- 0x0e10049 910000
- 0x0d60054 920000
- 0x0cb005f 930000
- 0x0c0006a 940000
- 0x0b50075 950000
- 0x0aa0080 960000
- 0x0a0008a 970000
- 0x0960094 980000
- 0x08d009d 990000
- 0x07b00af 1000000
- 0x07200b8 1010000
- 0x06900c1 1020000
- 0x06000ca 1030000
- 0x05700d3 1040000
- 0x04e00dc 1050000
- 0x04500e5 1060000
- 0x03c00ee 1070000
- 0x03300f7 1080000
- 0x02a0100 1090000
- 0x0180109 1100000
- 0x00f011b 1110000
- 0x00a0120 1120000
- 0x0050125 1130000
- 0x000012a 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*/
- gpio-hub-rst = "GPIOAO_4";
- 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 = <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";
- 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";
- pinctrl-names = "aml_audio_spdif";
- pinctrl-0 = <&audio_spdif_pins>;
- 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";
- };
- pcm5102{
- compatible = "hardkernel,pcm5102";
- dev_name = "pcm5102.0";
- status = "okay";
- };
- aml_m8_sound_card{
- compatible = "sound_card, aml_snd_m8";
- aml,sound_card = "ODROID-HDMI";
- sleep_time = <130>;
- status = "okay";
- };
- odroid_sound_card{
- compatible = "sound_card, odroid_snd";
- aml,sound_card = "ODROID-DAC";
- pinctrl-names = "odroid_i2s";
- pinctrl-0 = <&audio_pins>;
- status = "okay";
- };
- odroid_hifi2{
- compatible = "sound_card, odroid_dac2";
- aml,sound_card = "ODROID-DAC2";
- pinctrl-names = "odroid_i2s";
- pinctrl-0 = <&audio_pins>;
- status = "okay";
- };
- saradc{
- compatible = "amlogic,saradc";
- status = "okay";
- };
- meson-ir {
- compatible = "amlogic,meson6-ir";
- reg = <0xc8100580 0x20>;
- interrupts = <0 15 1>;
- pinctrl-names = "default";
- pinctrl-0 = <&remote_pins>;
- pulse-inverted;
- status = "ok";
- };
- 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>;
- };
- };
- spi@c1108d80 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "amlogic,spicc";
- dev_name = "spicc";
- status = "okay";
- reg = <0xc1108d80 0x28>;
- pinctrl-names="default";
- pinctrl-0=<&aml_spicc_pins>;
- device_id = <0>;
- num_chipselect = <2>;
- cs_gpios = "GPIOX_20", "GPIOX_21";
- spidev@0 {
- spi-max-frequency = <2000000>;
- compatible = "spidev";
- reg = <0>;
- };
- /* SPI Touch Screen Define */
- ads7846@1 {
- spi-max-frequency = <1000000>;
- /*
- Driver Select : "ti,tsc2046", "ti,ads7843", "ti,ads7845", "ti,ads7846", "ti,ads7873"
- kernel/drivers/hardkernel/ads7846.c
- */
- compatible = "ti,ads7846";
- /*
- SPI Chip Select : (0 ~ 1)
- Chip Select = GPIOX_21 (CS1)
- */
- reg = <1>;
- /* AMLogic Interrupt Define */
- /*
- IRQ Source : (GPIO_IRQ0(0) ~ GPIO_IRQ7(7))
- */
- irq-source = <0>;
- /*
- IRQ Filter Select : (0 ~ 7)
- Value 0 : No Filtering, Value 1 ~ 7 : value * 3 * 111nS(delay)
- */
- irq-filter = <7>; /* 258.741us Delay */
- /*
- IRQ Trigger Select : (0 ~ 3)
- GPIO_IRQ_HIGH = 0, GPIO_IRQ_LOW = 1, GPIO_IRQ_RISING = 2, GPIO_IRQ_FALLING = 3
- */
- irq-trigger = <3>; /* GPIO_IRQ_FALLING (Trigger Interrupt) */
- /* Used Pen Down GPIO(IRQ GPIO) Select */
- pendown-gpio = "GPIOY_8";
- ti,moving-average = <1>;
- ti,mv-avg-length = <20>;
- ti,swap-xy = <1>;
- ti,x-min = <0>;
- ti,x-max = <8000>;
- ti,y-min = <0>;
- ti,y-max = <4800>;
- ti,x-plate-ohms = <40>;
- ti,pressure-min = <0>;
- ti,pressure-max = <255>;
- linux,wakeup;
- };
- };
- 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
- 110 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
- >;
- };
- amhdmitx{
- compatible = "amlogic,amhdmitx";
- dev_name = "amhdmitx";
- status = "ok";
- vend-data = <&vend_data>;
- pwr-ctrl = <&pwr_ctrl>;
- vend_data: vend_data{
- vendor_name = "Hardkernel"; /* Max Chars: 8 */
- vendor_id = <0x000000>; /* Refer to http://standards.ieee.org/develop/regauth/oui/oui.txt */
- product_desc = "ODROID-C1"; /* Max Chars: 16 */
- cec_osd_string = "ODROID-C1"; /* Max Chars: 14 */
- ao_cec = <0x000001>;
- };
- 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";
- amlogic,pullup=<1>;
- amlogic,pullupen=<1>;
- };
- // 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=<4 0x0300>;
- amlogic,pins="GPIOX_16", "GPIOX_17";
- amlogic,pullup=<1>;
- amlogic,pullupen=<1>;
- };
- 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>;
- };
- 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>;
- };
- ao_i2c_master:ao_i2c{
- amlogic,setmask=<10 0x60>;
- amlogic,clrmask=<10 0x1800006>;
- amlogic,pins="GPIOAO_4","GPIOAO_5";
- };
- a_i2c_master:a_i2c{
- amlogic,setmask=<9 0xC0000000>;
- amlogic,clrmask=<0 0x3C0300
- 6 0xC00000
- 8 0x1800000>;
- amlogic,pins="GPIODV_24","GPIODV_25";
- };
- 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,pins="GPIOH_7","GPIOH_8";
- // };
- remote_pins:remote_pin{
- amlogic,setmask=<10 0x1>;
- amlogic,pins="GPIOAO_7";
- };
- audio_spdif_pins:audio_pin1{
- amlogic,setmask=<10 0x00010000>;
- amlogic,clrmask=<10 0x00040000
- 1 0x00002000>;
- amlogic,pins ="GPIOAO_6";
- };
- audio_pins:audio_pin{
- amlogic,setmask=<10 0x78000000>;
- amlogic,pins = "GPIOAO_8","GPIOAO_9","GPIOAO_10","GPIOAO_11";
- };
- aml_spi_nor_pins: aml_spi_nor_pins{
- amlogic,setmask=<5 0xf>;
- amlogic,clrmask=<2 0x380000>;
- amlogic,pins = "BOOT_11","BOOT_12","BOOT_13","BOOT_18";
- };
- aml_spicc_pins: aml_spicc_pins{
- amlogic,setmask=<4 0x03c00000
- >;
- amlogic,clrmask=<3 0x004003C0
- 5 0x00000C00
- 6 0x000F0000
- 7 0x80000000
- 8 0x00000003
- 9 0x00080000>;
- amlogic,pins = "GPIOX_8","GPIOX_9","GPIOX_10";
- };
- aml_pwm_pins:aml_pwm{
- amlogic,setmask=<3 0x1000000>;
- amlogic,clrmask=<0 0x48
- 7 0x10000020>;
- amlogic,pins="GPIODV_9";
- };
- odroid_pwm0:odroid_pwm0{
- amlogic,setmask=<2 0x00000008>; /*GPIOX_11 PWM_B Reg2[3]*/
- amlogic,clrmask=<3 0x00100000
- 7 0x40000000>;
- amlogic,pins="GPIOX_11";
- };
- odroid_pwm1:odroid_pwm1{
- amlogic,setmask=<2 0x00000008 /*GPIOX_11 PWM_B Reg2[3]*/
- 9 0x00080000>; /*GPIOX_10 PWM_E Reg9[19]*/
- amlogic,clrmask=<3 0x00500100
- 4 0x00800000
- 6 0x00020000
- 7 0xc0000000>;
- amlogic,pins="GPIOX_11","GPIOX_10";
- };
- };
- meson-eth{
- compatible = "amlogic,meson-eth";
- dev_name = "meson-eth";
- status = "okay";
- ethbaseaddr = <0xfe0c0000>;
- interruptnum = <40>;
- savepowermode = <0>;
- phy_interface = <0>;
- new_maclogic = <1>;
- reset_pin_enable = <0>;
- reset_pin = "GPI0H_4";
- reset_delay = <100>;
- disable_phyrefclk;
- };
- leds {
- compatible = "gpio-leds";
- /* Blue LED */
- hearbeat {
- label = "blue:heartbeat";
- gpios = "GPIOAO_13";
- default-state = "off";
- linux,default-trigger = "heartbeat";
- };
- };
- pwm{
- compatible = "amlogic, odroid-pwm";
- dev_name = "meson_pwm";
- status = "ok";
- 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 = "ok";
- };
- w1 {
- compatible = "w1-gpio";
- dev_name = "w1";
- status = "ok";
- gpios = "GPIOY_3";
- // linux,open-drain; // .is_open_drain = 1;
- };
- amvideocap{
- compatible = "amlogic,amvideocap";
- dev_name = "amvideocap.0";
- status = "okay";
- reserve-memory = <0x00a00000>; // 1920 * 1088 * 4 = 8,355,840
- reserve-iomap = "true";
- };
- amlogic-watchdog {
- compatible = "amlogic,aml-wdt";
- default_timeout=<10>;
- reset_watchdog_method=<0>;//0:sysfs,1:kernel
- reset_watchdog_time=<2>;
- shutdown_timeout=<10>;
- firmware_timeout=<6>;
- suspend_timeout=<6>;
- };
- }; /* end of / */
|