Автор Тема: Включение i2c, GPIO, SPI и т.д. на A10-OLinuXino-LIME  (Прочитано 608 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Ellissar

  • Новичок форума
  • Topic Author
  • Сообщений: 6
Здравствуйте!
Имеется микрокомпьютер A10-OLinuXino-LIME. На сайте производителя есть образ Debian 3.4.90, но он старый и даже обновить систему с помощью apt-get update и apt-get upgrade не получается. Пробовал обновить ядро, но так как в linux я новичок, то не смог этого сделать корректно - вылезало куча ошибок.
Решил пойти другим путём - установил на микрокомпьютер свежий Debian по руководству https://www.debian.org/releases/stable/armhf/index.html.ru . Система загрузилась, работает нормально, программы обновляются.
Только остался вопрос в том как включать периферию такую как I2C, SPI, GPIO, а в дальнейшем возможно LVDS матрицу?
Я начал копаться в Device Tree (/boot/dtbs/4.9.0-9-armmp/sun4i-a10-olinuxino-lime.dtb). В этом файле описаны I2C и SPI я пробовал поменять status на okay толку никакого, эти интерфейсы не появляются в /dev/. Описания нескольких GPIO там есть, но вообще не понятно как их потом использовать.
Подскажите как всё таки включить эту периферию?

Версия Debian
Spoiler: ShowHide

root@olinuxino:~# uname -a
Linux olinuxino 4.9.0-9-armmp #1 SMP Debian 4.9.168-1+deb9u2 (2019-05-13) armv7l GNU/Linux

Содержимое каталога /dev/
Spoiler: ShowHide

root@olinuxino:/dev# ls
apm_bios         kmsg                port      tty1   tty24  tty39  tty53  ttyS1    vcsa3
autofs           log                 ppp       tty10  tty25  tty4   tty54  ttyS2    vcsa4
block            loop-control        psaux     tty11  tty26  tty40  tty55  ttyS3    vcsa5
btrfs-control    mapper              ptmx      tty12  tty27  tty41  tty56  uhid     vcsa6
bus              mem                 pts       tty13  tty28  tty42  tty57  uinput   vga_arbiter
char             memory_bandwidth    random    tty14  tty29  tty43  tty58  urandom  watchdog
console          mmcblk0             rtc       tty15  tty3   tty44  tty59  vcs      watchdog0
cpu_dma_latency  mmcblk0p1           rtc0      tty16  tty30  tty45  tty6   vcs1     zero
cuse             mmcblk0p2           shm       tty17  tty31  tty46  tty60  vcs2
disk             mmcblk0p3           snapshot  tty18  tty32  tty47  tty61  vcs3
fd               mmcblk0p5           snd       tty19  tty33  tty48  tty62  vcs4
full             mqueue              stderr    tty2   tty34  tty49  tty63  vcs5
fuse             net                 stdin     tty20  tty35  tty5   tty7   vcs6
gpiochip0        network_latency     stdout    tty21  tty36  tty50  tty8   vcsa
initctl          network_throughput  tty       tty22  tty37  tty51  tty9   vcsa1
input            null                tty0      tty23  tty38  tty52  ttyS0  vcsa2

Файл sun4i-a10-olinuxino-lime.dts
Spoiler: ShowHide

/dts-v1/;

/ {
#address-cells = <0x1>;
#size-cells = <0x1>;
interrupt-parent = <0x1>;
model = "Olimex A10-OLinuXino-LIME";
compatible = "olimex,a10-olinuxino-lime", "allwinner,sun4i-a10";

chosen {
#address-cells = <0x1>;
#size-cells = <0x1>;
ranges;
stdout-path = "serial0:115200n8";

framebuffer@0 {
compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
allwinner,pipeline = "de_be0-lcd0-hdmi";
clocks = <0x2 0x24 0x2 0x2b 0x2 0x2c 0x3 0x4 0x5 0x1a>;
status = "disabled";
};

framebuffer@1 {
compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
allwinner,pipeline = "de_fe0-de_be0-lcd0-hdmi";
clocks = <0x2 0x24 0x2 0x2b 0x2 0x2c 0x2 0x2e 0x3 0x6 0x4 0x5 0x19 0x5 0x1a>;
status = "disabled";
};

framebuffer@2 {
compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
allwinner,pipeline = "de_fe0-de_be0-lcd0";
clocks = <0x2 0x24 0x2 0x2c 0x2 0x2e 0x3 0x6 0x7 0x5 0x19 0x5 0x1a>;
status = "disabled";
};

framebuffer@3 {
compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
allwinner,pipeline = "de_fe0-de_be0-lcd0-tve0";
clocks = <0x2 0x22 0x2 0x24 0x2 0x2c 0x2 0x2e 0x3 0x6 0x4 0x5 0x5 0x5 0x19 0x5 0x1a>;
status = "disabled";
};
};

aliases {
ethernet0 = "/soc@01c00000/ethernet@01c0b000";
serial0 = "/soc@01c00000/serial@01c28000";
};

memory {
device_type = "memory";
reg = <0x40000000 0x80000000>;
};

cpus {
#address-cells = <0x1>;
#size-cells = <0x0>;

cpu@0 {
device_type = "cpu";
compatible = "arm,cortex-a8";
reg = <0x0>;
clocks = <0x8>;
clock-latency = <0x3b9b0>;
operating-points = <0xdea80 0x149970 0xd2f00 0x13d620 0x98580 0x1312d0>;
#cooling-cells = <0x2>;
cooling-min-level = <0x0>;
cooling-max-level = <0x2>;
linux,phandle = <0xb>;
phandle = <0xb>;
};
};

thermal-zones {

cpu_thermal {
polling-delay-passive = <0xfa>;
polling-delay = <0x3e8>;
thermal-sensors = <0x9>;

cooling-maps {

map0 {
trip = <0xa>;
cooling-device = <0xb 0xffffffff 0xffffffff>;
};
};

trips {

cpu_alert0 {
temperature = <0xcf850>;
hysteresis = <0x7d0>;
type = "passive";
linux,phandle = <0xa>;
phandle = <0xa>;
};

cpu_crit {
temperature = <0x186a0>;
hysteresis = <0x7d0>;
type = "critical";
};
};
};
};

clocks {
#address-cells = <0x1>;
#size-cells = <0x1>;
ranges;

dummy {
#clock-cells = <0x0>;
compatible = "fixed-clock";
clock-frequency = <0x0>;
linux,phandle = <0x12>;
phandle = <0x12>;
};

clk@01c20050 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-osc-clk";
reg = <0x1c20050 0x4>;
clock-frequency = <0x16e3600>;
clock-output-names = "osc24M";
linux,phandle = <0xc>;
phandle = <0xc>;
};

osc3M_clk {
compatible = "fixed-factor-clock";
#clock-cells = <0x0>;
clock-div = <0x8>;
clock-mult = <0x1>;
clocks = <0xc>;
clock-output-names = "osc3M";
linux,phandle = <0xd>;
phandle = <0xd>;
};

clk@0 {
#clock-cells = <0x0>;
compatible = "fixed-clock";
clock-frequency = <0x8000>;
clock-output-names = "osc32k";
linux,phandle = <0x10>;
phandle = <0x10>;
};

clk@01c20000 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-pll1-clk";
reg = <0x1c20000 0x4>;
clocks = <0xc>;
clock-output-names = "pll1";
linux,phandle = <0x11>;
phandle = <0x11>;
};

clk@01c20008 {
#clock-cells = <0x1>;
compatible = "allwinner,sun4i-a10-pll2-clk";
reg = <0x1c20008 0x8>;
clocks = <0xc>;
clock-output-names = "pll2-1x", "pll2-2x", "pll2-4x", "pll2-8x";
linux,phandle = <0x19>;
phandle = <0x19>;
};

clk@01c20010 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-pll3-clk";
reg = <0x1c20010 0x4>;
clocks = <0xd>;
clock-output-names = "pll3";
linux,phandle = <0xe>;
phandle = <0xe>;
};

pll3x2_clk {
compatible = "fixed-factor-clock";
#clock-cells = <0x0>;
clock-div = <0x1>;
clock-mult = <0x2>;
clocks = <0xe>;
clock-output-names = "pll3-2x";
linux,phandle = <0x1a>;
phandle = <0x1a>;
};

clk@01c20018 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-pll1-clk";
reg = <0x1c20018 0x4>;
clocks = <0xc>;
clock-output-names = "pll4";
linux,phandle = <0x1c>;
phandle = <0x1c>;
};

clk@01c20020 {
#clock-cells = <0x1>;
compatible = "allwinner,sun4i-a10-pll5-clk";
reg = <0x1c20020 0x4>;
clocks = <0xc>;
clock-output-names = "pll5_ddr", "pll5_other";
linux,phandle = <0x18>;
phandle = <0x18>;
};

clk@01c20028 {
#clock-cells = <0x1>;
compatible = "allwinner,sun4i-a10-pll6-clk";
reg = <0x1c20028 0x4>;
clocks = <0xc>;
clock-output-names = "pll6_sata", "pll6_other", "pll6";
linux,phandle = <0x16>;
phandle = <0x16>;
};

clk@01c20030 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-pll3-clk";
reg = <0x1c20030 0x4>;
clocks = <0xd>;
clock-output-names = "pll7";
linux,phandle = <0xf>;
phandle = <0xf>;
};

pll7x2_clk {
compatible = "fixed-factor-clock";
#clock-cells = <0x0>;
clock-div = <0x1>;
clock-mult = <0x2>;
clocks = <0xf>;
clock-output-names = "pll7-2x";
linux,phandle = <0x1b>;
phandle = <0x1b>;
};

cpu@01c20054 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-cpu-clk";
reg = <0x1c20054 0x4>;
clocks = <0x10 0xc 0x11 0x12>;
clock-output-names = "cpu";
linux,phandle = <0x8>;
phandle = <0x8>;
};

axi@01c20054 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-axi-clk";
reg = <0x1c20054 0x4>;
clocks = <0x8>;
clock-output-names = "axi";
linux,phandle = <0x13>;
phandle = <0x13>;
};

clk@01c2005c {
#clock-cells = <0x1>;
compatible = "allwinner,sun4i-a10-axi-gates-clk";
reg = <0x1c2005c 0x4>;
clocks = <0x13>;
clock-indices = <0x0>;
clock-output-names = "axi_dram";
};

ahb@01c20054 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-ahb-clk";
reg = <0x1c20054 0x4>;
clocks = <0x13>;
clock-output-names = "ahb";
linux,phandle = <0x14>;
phandle = <0x14>;
};

clk@01c20060 {
#clock-cells = <0x1>;
compatible = "allwinner,sun4i-a10-ahb-gates-clk";
reg = <0x1c20060 0x8>;
clocks = <0x14>;
clock-indices = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xa 0xb 0xc 0xd 0xe 0x10 0x11 0x12 0x14 0x15 0x16 0x17 0x18 0x19 0x1a 0x20 0x21 0x22 0x23 0x24 0x25 0x28 0x29 0x2b 0x2c 0x2d 0x2e 0x2f 0x32 0x34>;
clock-output-names = "ahb_usb0", "ahb_ehci0", "ahb_ohci0", "ahb_ehci1", "ahb_ohci1", "ahb_ss", "ahb_dma", "ahb_bist", "ahb_mmc0", "ahb_mmc1", "ahb_mmc2", "ahb_mmc3", "ahb_ms", "ahb_nand", "ahb_sdram", "ahb_ace", "ahb_emac", "ahb_ts", "ahb_spi0", "ahb_spi1", "ahb_spi2", "ahb_spi3", "ahb_pata", "ahb_sata", "ahb_gps", "ahb_ve", "ahb_tvd", "ahb_tve0", "ahb_tve1", "ahb_lcd0", "ahb_lcd1", "ahb_csi0", "ahb_csi1", "ahb_hdmi", "ahb_de_be0", "ahb_de_be1", "ahb_de_fe0", "ahb_de_fe1", "ahb_mp", "ahb_mali400";
linux,phandle = <0x2>;
phandle = <0x2>;
};

apb0@01c20054 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-apb0-clk";
reg = <0x1c20054 0x4>;
clocks = <0x14>;
clock-output-names = "apb0";
linux,phandle = <0x15>;
phandle = <0x15>;
};

clk@01c20068 {
#clock-cells = <0x1>;
compatible = "allwinner,sun4i-a10-apb0-gates-clk";
reg = <0x1c20068 0x4>;
clocks = <0x15>;
clock-indices = <0x0 0x1 0x2 0x3 0x5 0x6 0x7 0xa>;
clock-output-names = "apb0_codec", "apb0_spdif", "apb0_ac97", "apb0_iis", "apb0_pio", "apb0_ir0", "apb0_ir1", "apb0_keypad";
linux,phandle = <0x38>;
phandle = <0x38>;
};

clk@01c20058 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-apb1-clk";
reg = <0x1c20058 0x4>;
clocks = <0xc 0x16 0x1 0x10>;
clock-output-names = "apb1";
linux,phandle = <0x17>;
phandle = <0x17>;
};

clk@01c2006c {
#clock-cells = <0x1>;
compatible = "allwinner,sun4i-a10-apb1-gates-clk";
reg = <0x1c2006c 0x4>;
clocks = <0x17>;
clock-indices = <0x0 0x1 0x2 0x4 0x5 0x6 0x7 0x10 0x11 0x12 0x13 0x14 0x15 0x16 0x17>;
clock-output-names = "apb1_i2c0", "apb1_i2c1", "apb1_i2c2", "apb1_can", "apb1_scr", "apb1_ps20", "apb1_ps21", "apb1_uart0", "apb1_uart1", "apb1_uart2", "apb1_uart3", "apb1_uart4", "apb1_uart5", "apb1_uart6", "apb1_uart7";
linux,phandle = <0x3d>;
phandle = <0x3d>;
};

clk@01c20080 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-mod0-clk";
reg = <0x1c20080 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "nand";
linux,phandle = <0x1d>;
phandle = <0x1d>;
};

clk@01c20084 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-mod0-clk";
reg = <0x1c20084 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "ms";
};

clk@01c20088 {
#clock-cells = <0x1>;
compatible = "allwinner,sun4i-a10-mmc-clk";
reg = <0x1c20088 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "mmc0", "mmc0_output", "mmc0_sample";
linux,phandle = <0x24>;
phandle = <0x24>;
};

clk@01c2008c {
#clock-cells = <0x1>;
compatible = "allwinner,sun4i-a10-mmc-clk";
reg = <0x1c2008c 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "mmc1", "mmc1_output", "mmc1_sample";
linux,phandle = <0x29>;
phandle = <0x29>;
};

clk@01c20090 {
#clock-cells = <0x1>;
compatible = "allwinner,sun4i-a10-mmc-clk";
reg = <0x1c20090 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "mmc2", "mmc2_output", "mmc2_sample";
linux,phandle = <0x2a>;
phandle = <0x2a>;
};

clk@01c20094 {
#clock-cells = <0x1>;
compatible = "allwinner,sun4i-a10-mmc-clk";
reg = <0x1c20094 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "mmc3", "mmc3_output", "mmc3_sample";
linux,phandle = <0x2b>;
phandle = <0x2b>;
};

clk@01c20098 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-mod0-clk";
reg = <0x1c20098 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "ts";
};

clk@01c2009c {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-mod0-clk";
reg = <0x1c2009c 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "ss";
linux,phandle = <0x34>;
phandle = <0x34>;
};

clk@01c200a0 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-mod0-clk";
reg = <0x1c200a0 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "spi0";
linux,phandle = <0x1f>;
phandle = <0x1f>;
};

clk@01c200a4 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-mod0-clk";
reg = <0x1c200a4 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "spi1";
linux,phandle = <0x20>;
phandle = <0x20>;
};

clk@01c200a8 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-mod0-clk";
reg = <0x1c200a8 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "spi2";
linux,phandle = <0x35>;
phandle = <0x35>;
};

clk@01c200ac {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-mod0-clk";
reg = <0x1c200ac 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "pata";
};

clk@01c200b0 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-mod0-clk";
reg = <0x1c200b0 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "ir0";
linux,phandle = <0x3a>;
phandle = <0x3a>;
};

clk@01c200b4 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-mod0-clk";
reg = <0x1c200b4 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "ir1";
linux,phandle = <0x3b>;
phandle = <0x3b>;
};

clk@01c200c0 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-mod1-clk";
reg = <0x1c200c0 0x4>;
clocks = <0x19 0x3 0x19 0x2 0x19 0x1 0x19 0x0>;
clock-output-names = "spdif";
linux,phandle = <0x39>;
phandle = <0x39>;
};

clk@01c200cc {
#clock-cells = <0x1>;
#reset-cells = <0x1>;
compatible = "allwinner,sun4i-a10-usb-clk";
reg = <0x1c200cc 0x4>;
clocks = <0x16 0x1>;
clock-output-names = "usb_ohci0", "usb_ohci1", "usb_phy";
linux,phandle = <0x2e>;
phandle = <0x2e>;
};

clk@01c200d4 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-mod0-clk";
reg = <0x1c200d4 0x4>;
clocks = <0xc 0x16 0x1 0x18 0x1>;
clock-output-names = "spi3";
linux,phandle = <0x37>;
phandle = <0x37>;
};

clk@01c20100 {
#clock-cells = <0x1>;
compatible = "allwinner,sun4i-a10-dram-gates-clk";
reg = <0x1c20100 0x4>;
clocks = <0x18 0x0>;
clock-indices = <0x0 0x1 0x2 0x3 0x4 0x5 0x6 0xf 0x18 0x19 0x1a 0x1b 0x1c 0x1d>;
clock-output-names = "dram_ve", "dram_csi0", "dram_csi1", "dram_ts", "dram_tvd", "dram_tve0", "dram_tve1", "dram_output", "dram_de_fe1", "dram_de_fe0", "dram_de_be0", "dram_de_be1", "dram_de_mp", "dram_ace";
linux,phandle = <0x5>;
phandle = <0x5>;
};

clk@01c20104 {
#clock-cells = <0x0>;
#reset-cells = <0x0>;
compatible = "allwinner,sun4i-a10-display-clk";
reg = <0x1c20104 0x4>;
clocks = <0xe 0xf 0x18 0x1>;
clock-output-names = "de-be0";
linux,phandle = <0x3>;
phandle = <0x3>;
};

clk@01c20108 {
#clock-cells = <0x0>;
#reset-cells = <0x0>;
compatible = "allwinner,sun4i-a10-display-clk";
reg = <0x1c20108 0x4>;
clocks = <0xe 0xf 0x18 0x1>;
clock-output-names = "de-be1";
};

clk@01c2010c {
#clock-cells = <0x0>;
#reset-cells = <0x0>;
compatible = "allwinner,sun4i-a10-display-clk";
reg = <0x1c2010c 0x4>;
clocks = <0xe 0xf 0x18 0x1>;
clock-output-names = "de-fe0";
linux,phandle = <0x6>;
phandle = <0x6>;
};

clk@01c20110 {
#clock-cells = <0x0>;
#reset-cells = <0x0>;
compatible = "allwinner,sun4i-a10-display-clk";
reg = <0x1c20110 0x4>;
clocks = <0xe 0xf 0x18 0x1>;
clock-output-names = "de-fe1";
};

clk@01c20118 {
#clock-cells = <0x0>;
#reset-cells = <0x1>;
compatible = "allwinner,sun4i-a10-tcon-ch0-clk";
reg = <0x1c20118 0x4>;
clocks = <0xe 0xf 0x1a 0x1b>;
clock-output-names = "tcon0-ch0-sclk";
linux,phandle = <0x7>;
phandle = <0x7>;
};

clk@01c2011c {
#clock-cells = <0x0>;
#reset-cells = <0x1>;
compatible = "allwinner,sun4i-a10-tcon-ch1-clk";
reg = <0x1c2011c 0x4>;
clocks = <0xe 0xf 0x1a 0x1b>;
clock-output-names = "tcon1-ch0-sclk";
};

clk@01c2012c {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-tcon-ch0-clk";
reg = <0x1c2012c 0x4>;
clocks = <0xe 0xf 0x1a 0x1b>;
clock-output-names = "tcon0-ch1-sclk";
linux,phandle = <0x4>;
phandle = <0x4>;
};

clk@01c20130 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-tcon-ch1-clk";
reg = <0x1c20130 0x4>;
clocks = <0xe 0xf 0x1a 0x1b>;
clock-output-names = "tcon1-ch1-sclk";
};

clk@01c2013c {
#clock-cells = <0x0>;
#reset-cells = <0x0>;
compatible = "allwinner,sun4i-a10-ve-clk";
reg = <0x1c2013c 0x4>;
clocks = <0x1c>;
clock-output-names = "ve";
};

clk@01c20140 {
#clock-cells = <0x0>;
compatible = "allwinner,sun4i-a10-codec-clk";
reg = <0x1c20140 0x4>;
clocks = <0x19 0x0>;
clock-output-names = "codec";
linux,phandle = <0x3c>;
phandle = <0x3c>;
};
};

soc@01c00000 {
compatible = "simple-bus";
#address-cells = <0x1>;
#size-cells = <0x1>;
ranges;

sram-controller@01c00000 {
compatible = "allwinner,sun4i-a10-sram-controller";
reg = <0x1c00000 0x30>;
#address-cells = <0x1>;
#size-cells = <0x1>;
ranges;

sram@00000000 {
compatible = "mmio-sram";
reg = <0x0 0xc000>;
#address-cells = <0x1>;
#size-cells = <0x1>;
ranges = <0x0 0x0 0xc000>;

sram-section@8000 {
compatible = "allwinner,sun4i-a10-sram-a3-a4";
reg = <0x8000 0x4000>;
status = "okay";
linux,phandle = <0x21>;
phandle = <0x21>;
};
};

sram@00010000 {
compatible = "mmio-sram";
reg = <0x10000 0x1000>;
#address-cells = <0x1>;
#size-cells = <0x1>;
ranges = <0x0 0x10000 0x1000>;

sram-section@0000 {
compatible = "allwinner,sun4i-a10-sram-d";
reg = <0x0 0x1000>;
status = "okay";
linux,phandle = <0x2d>;
phandle = <0x2d>;
};
};
};

dma-controller@01c02000 {
compatible = "allwinner,sun4i-a10-dma";
reg = <0x1c02000 0x1000>;
interrupts = <0x1b>;
clocks = <0x2 0x6>;
#dma-cells = <0x2>;
linux,phandle = <0x1e>;
phandle = <0x1e>;
};

nand@01c03000 {
compatible = "allwinner,sun4i-a10-nand";
reg = <0x1c03000 0x1000>;
interrupts = <0x25>;
clocks = <0x2 0xd 0x1d>;
clock-names = "ahb", "mod";
dmas = <0x1e 0x1 0x3>;
dma-names = "rxtx";
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
};

spi@01c05000 {
compatible = "allwinner,sun4i-a10-spi";
reg = <0x1c05000 0x1000>;
interrupts = <0xa>;
clocks = <0x2 0x14 0x1f>;
clock-names = "ahb", "mod";
dmas = <0x1e 0x1 0x1b 0x1e 0x1 0x1a>;
dma-names = "rx", "tx";
status = "okay";
#address-cells = <0x1>;
#size-cells = <0x0>;
};

spi@01c06000 {
compatible = "allwinner,sun4i-a10-spi";
reg = <0x1c06000 0x1000>;
interrupts = <0xb>;
clocks = <0x2 0x15 0x20>;
clock-names = "ahb", "mod";
dmas = <0x1e 0x1 0x9 0x1e 0x1 0x8>;
dma-names = "rx", "tx";
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
};

ethernet@01c0b000 {
compatible = "allwinner,sun4i-a10-emac";
reg = <0x1c0b000 0x1000>;
interrupts = <0x37>;
clocks = <0x2 0x11>;
allwinner,sram = <0x21 0x1>;
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <0x22>;
phy = <0x23>;
};

mdio@01c0b080 {
compatible = "allwinner,sun4i-a10-mdio";
reg = <0x1c0b080 0x14>;
status = "okay";
#address-cells = <0x1>;
#size-cells = <0x0>;

ethernet-phy@1 {
reg = <0x1>;
linux,phandle = <0x23>;
phandle = <0x23>;
};
};

mmc@01c0f000 {
compatible = "allwinner,sun4i-a10-mmc";
reg = <0x1c0f000 0x1000>;
clocks = <0x2 0x8 0x24 0x0 0x24 0x1 0x24 0x2>;
clock-names = "ahb", "mmc", "output", "sample";
interrupts = <0x20>;
status = "okay";
#address-cells = <0x1>;
#size-cells = <0x0>;
pinctrl-names = "default";
pinctrl-0 = <0x25 0x26>;
vmmc-supply = <0x27>;
bus-width = <0x4>;
cd-gpios = <0x28 0x7 0x1 0x0>;
cd-inverted;
};

mmc@01c10000 {
compatible = "allwinner,sun4i-a10-mmc";
reg = <0x1c10000 0x1000>;
clocks = <0x2 0x9 0x29 0x0 0x29 0x1 0x29 0x2>;
clock-names = "ahb", "mmc", "output", "sample";
interrupts = <0x21>;
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
};

mmc@01c11000 {
compatible = "allwinner,sun4i-a10-mmc";
reg = <0x1c11000 0x1000>;
clocks = <0x2 0xa 0x2a 0x0 0x2a 0x1 0x2a 0x2>;
clock-names = "ahb", "mmc", "output", "sample";
interrupts = <0x22>;
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
};

mmc@01c12000 {
compatible = "allwinner,sun4i-a10-mmc";
reg = <0x1c12000 0x1000>;
clocks = <0x2 0xb 0x2b 0x0 0x2b 0x1 0x2b 0x2>;
clock-names = "ahb", "mmc", "output", "sample";
interrupts = <0x23>;
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
};

usb@01c13000 {
compatible = "allwinner,sun4i-a10-musb";
reg = <0x1c13000 0x400>;
clocks = <0x2 0x0>;
interrupts = <0x26>;
interrupt-names = "mc";
phys = <0x2c 0x0>;
phy-names = "usb";
extcon = <0x2c 0x0>;
allwinner,sram = <0x2d 0x1>;
status = "okay";
dr_mode = "otg";
};

phy@01c13400 {
#phy-cells = <0x1>;
compatible = "allwinner,sun4i-a10-usb-phy";
reg = <0x1c13400 0x10 0x1c14800 0x4 0x1c1c800 0x4>;
reg-names = "phy_ctrl", "pmu1", "pmu2";
clocks = <0x2e 0x8>;
clock-names = "usb_phy";
resets = <0x2e 0x0 0x2e 0x1 0x2e 0x2>;
reset-names = "usb0_reset", "usb1_reset", "usb2_reset";
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <0x2f 0x30>;
usb0_id_det-gpio = <0x28 0x7 0x4 0x0>;
usb0_vbus_det-gpio = <0x28 0x7 0x5 0x0>;
usb0_vbus-supply = <0x31>;
usb1_vbus-supply = <0x32>;
usb2_vbus-supply = <0x33>;
linux,phandle = <0x2c>;
phandle = <0x2c>;
};

usb@01c14000 {
compatible = "allwinner,sun4i-a10-ehci", "generic-ehci";
reg = <0x1c14000 0x100>;
interrupts = <0x27>;
clocks = <0x2 0x1>;
phys = <0x2c 0x1>;
phy-names = "usb";
status = "okay";
};

usb@01c14400 {
compatible = "allwinner,sun4i-a10-ohci", "generic-ohci";
reg = <0x1c14400 0x100>;
interrupts = <0x40>;
clocks = <0x2e 0x6 0x2 0x2>;
phys = <0x2c 0x1>;
phy-names = "usb";
status = "okay";
};

crypto-engine@01c15000 {
compatible = "allwinner,sun4i-a10-crypto";
reg = <0x1c15000 0x1000>;
interrupts = <0x56>;
clocks = <0x2 0x5 0x34>;
clock-names = "ahb", "mod";
};

spi@01c17000 {
compatible = "allwinner,sun4i-a10-spi";
reg = <0x1c17000 0x1000>;
interrupts = <0xc>;
clocks = <0x2 0x16 0x35>;
clock-names = "ahb", "mod";
dmas = <0x1e 0x1 0x1d 0x1e 0x1 0x1c>;
dma-names = "rx", "tx";
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
};

sata@01c18000 {
compatible = "allwinner,sun4i-a10-ahci";
reg = <0x1c18000 0x1000>;
interrupts = <0x38>;
clocks = <0x16 0x0 0x2 0x19>;
status = "okay";
target-supply = <0x36>;
};

usb@01c1c000 {
compatible = "allwinner,sun4i-a10-ehci", "generic-ehci";
reg = <0x1c1c000 0x100>;
interrupts = <0x28>;
clocks = <0x2 0x3>;
phys = <0x2c 0x2>;
phy-names = "usb";
status = "okay";
};

usb@01c1c400 {
compatible = "allwinner,sun4i-a10-ohci", "generic-ohci";
reg = <0x1c1c400 0x100>;
interrupts = <0x41>;
clocks = <0x2e 0x7 0x2 0x4>;
phys = <0x2c 0x2>;
phy-names = "usb";
status = "okay";
};

spi@01c1f000 {
compatible = "allwinner,sun4i-a10-spi";
reg = <0x1c1f000 0x1000>;
interrupts = <0x32>;
clocks = <0x2 0x17 0x37>;
clock-names = "ahb", "mod";
dmas = <0x1e 0x1 0x1f 0x1e 0x1 0x1e>;
dma-names = "rx", "tx";
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
};

interrupt-controller@01c20400 {
compatible = "allwinner,sun4i-a10-ic";
reg = <0x1c20400 0x400>;
interrupt-controller;
#interrupt-cells = <0x1>;
linux,phandle = <0x1>;
phandle = <0x1>;
};

pinctrl@01c20800 {
compatible = "allwinner,sun4i-a10-pinctrl";
reg = <0x1c20800 0x400>;
interrupts = <0x1c>;
clocks = <0x38 0x5>;
gpio-controller;
interrupt-controller;
#interrupt-cells = <0x3>;
#gpio-cells = <0x3>;
linux,phandle = <0x28>;
phandle = <0x28>;

emac0@0 {
allwinner,pins = "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16";
allwinner,function = "emac";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
linux,phandle = <0x22>;
phandle = <0x22>;
};

i2c0@0 {
allwinner,pins = "PB0", "PB1";
allwinner,function = "i2c0";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
linux,phandle = <0x3f>;
phandle = <0x3f>;
};

i2c1@0 {
allwinner,pins = "PB18", "PB19";
allwinner,function = "i2c1";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
linux,phandle = <0x40>;
phandle = <0x40>;
};

i2c2@0 {
allwinner,pins = "PB20", "PB21";
allwinner,function = "i2c2";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

ir0@0 {
allwinner,pins = "PB4";
allwinner,function = "ir0";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

ir0@1 {
allwinner,pins = "PB3";
allwinner,function = "ir0";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

ir1@0 {
allwinner,pins = "PB23";
allwinner,function = "ir1";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

ir1@1 {
allwinner,pins = "PB22";
allwinner,function = "ir1";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

mmc0@0 {
allwinner,pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5";
allwinner,function = "mmc0";
allwinner,drive = <0x2>;
allwinner,pull = <0x0>;
linux,phandle = <0x25>;
phandle = <0x25>;
};

mmc0_cd_pin@0 {
allwinner,pins = "PH1";
allwinner,function = "gpio_in";
allwinner,drive = <0x0>;
allwinner,pull = <0x1>;
linux,phandle = <0x26>;
phandle = <0x26>;
};

ps20@0 {
allwinner,pins = "PI20", "PI21";
allwinner,function = "ps2";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

ps21@0 {
allwinner,pins = "PH12", "PH13";
allwinner,function = "ps2";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

pwm0@0 {
allwinner,pins = "PB2";
allwinner,function = "pwm";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

pwm1@0 {
allwinner,pins = "PI3";
allwinner,function = "pwm";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

spdif@0 {
allwinner,pins = "PB13";
allwinner,function = "spdif";
allwinner,drive = <0x0>;
allwinner,pull = <0x1>;
};

spi0@0 {
allwinner,pins = "PI11", "PI12", "PI13";
allwinner,function = "spi0";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

spi0_cs0@0 {
allwinner,pins = "PI10";
allwinner,function = "spi0";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

spi1@0 {
allwinner,pins = "PI17", "PI18", "PI19";
allwinner,function = "spi1";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

spi1_cs0@0 {
allwinner,pins = "PI16";
allwinner,function = "spi1";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

spi2@0 {
allwinner,pins = "PC20", "PC21", "PC22";
allwinner,function = "spi2";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

spi2@1 {
allwinner,pins = "PB15", "PB16", "PB17";
allwinner,function = "spi2";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

spi2_cs0@0 {
allwinner,pins = "PC19";
allwinner,function = "spi2";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

spi2_cs0@1 {
allwinner,pins = "PB14";
allwinner,function = "spi2";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

uart0@0 {
allwinner,pins = "PB22", "PB23";
allwinner,function = "uart0";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
linux,phandle = <0x3e>;
phandle = <0x3e>;
};

uart0@1 {
allwinner,pins = "PF2", "PF4";
allwinner,function = "uart0";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

uart1@0 {
allwinner,pins = "PA10", "PA11";
allwinner,function = "uart1";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

ahci_pwr_pin@0 {
allwinner,pins = "PB8";
allwinner,function = "gpio_out";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
};

usb0_vbus_pin@0 {
allwinner,pins = "PB9";
allwinner,function = "gpio_out";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
linux,phandle = <0x42>;
phandle = <0x42>;
};

usb1_vbus_pin@0 {
allwinner,pins = "PH6";
allwinner,function = "gpio_out";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
linux,phandle = <0x43>;
phandle = <0x43>;
};

usb2_vbus_pin@0 {
allwinner,pins = "PH3";
allwinner,function = "gpio_out";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
linux,phandle = <0x44>;
phandle = <0x44>;
};

ahci_pwr_pin@1 {
allwinner,pins = "PC3";
allwinner,function = "gpio_out";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
linux,phandle = <0x41>;
phandle = <0x41>;
};

led_pins@0 {
allwinner,pins = "PH2";
allwinner,function = "gpio_out";
allwinner,drive = <0x1>;
allwinner,pull = <0x0>;
linux,phandle = <0x45>;
phandle = <0x45>;
};

usb0_id_detect_pin@0 {
allwinner,pins = "PH4";
allwinner,function = "gpio_in";
allwinner,drive = <0x0>;
allwinner,pull = <0x1>;
linux,phandle = <0x2f>;
phandle = <0x2f>;
};

usb0_vbus_detect_pin@0 {
allwinner,pins = "PH5";
allwinner,function = "gpio_in";
allwinner,drive = <0x0>;
allwinner,pull = <0x2>;
linux,phandle = <0x30>;
phandle = <0x30>;
};
};

timer@01c20c00 {
compatible = "allwinner,sun4i-a10-timer";
reg = <0x1c20c00 0x90>;
interrupts = <0x16>;
clocks = <0xc>;
};

watchdog@01c20c90 {
compatible = "allwinner,sun4i-a10-wdt";
reg = <0x1c20c90 0x10>;
};

rtc@01c20d00 {
compatible = "allwinner,sun4i-a10-rtc";
reg = <0x1c20d00 0x20>;
interrupts = <0x18>;
};

pwm@01c20e00 {
compatible = "allwinner,sun4i-a10-pwm";
reg = <0x1c20e00 0xc>;
clocks = <0xc>;
#pwm-cells = <0x3>;
status = "disabled";
};

spdif@01c21000 {
#sound-dai-cells = <0x0>;
compatible = "allwinner,sun4i-a10-spdif";
reg = <0x1c21000 0x400>;
interrupts = <0xd>;
clocks = <0x38 0x1 0x39>;
clock-names = "apb", "spdif";
dmas = <0x1e 0x0 0x2 0x1e 0x0 0x2>;
dma-names = "rx", "tx";
status = "disabled";
};

ir@01c21800 {
compatible = "allwinner,sun4i-a10-ir";
clocks = <0x38 0x6 0x3a>;
clock-names = "apb", "ir";
interrupts = <0x5>;
reg = <0x1c21800 0x40>;
status = "disabled";
};

ir@01c21c00 {
compatible = "allwinner,sun4i-a10-ir";
clocks = <0x38 0x7 0x3b>;
clock-names = "apb", "ir";
interrupts = <0x6>;
reg = <0x1c21c00 0x40>;
status = "disabled";
};

lradc@01c22800 {
compatible = "allwinner,sun4i-a10-lradc-keys";
reg = <0x1c22800 0x100>;
interrupts = <0x1f>;
status = "disabled";
};

codec@01c22c00 {
#sound-dai-cells = <0x0>;
compatible = "allwinner,sun4i-a10-codec";
reg = <0x1c22c00 0x40>;
interrupts = <0x1e>;
clocks = <0x38 0x0 0x3c>;
clock-names = "apb", "codec";
dmas = <0x1e 0x0 0x13 0x1e 0x0 0x13>;
dma-names = "rx", "tx";
status = "disabled";
};

eeprom@01c23800 {
compatible = "allwinner,sun4i-a10-sid";
reg = <0x1c23800 0x10>;
};

rtp@01c25000 {
compatible = "allwinner,sun4i-a10-ts";
reg = <0x1c25000 0x100>;
interrupts = <0x1d>;
#thermal-sensor-cells = <0x0>;
linux,phandle = <0x9>;
phandle = <0x9>;
};

serial@01c28000 {
compatible = "snps,dw-apb-uart";
reg = <0x1c28000 0x400>;
interrupts = <0x1>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x3d 0x10>;
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <0x3e>;
};

serial@01c28400 {
compatible = "snps,dw-apb-uart";
reg = <0x1c28400 0x400>;
interrupts = <0x2>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x3d 0x11>;
status = "disabled";
};

serial@01c28800 {
compatible = "snps,dw-apb-uart";
reg = <0x1c28800 0x400>;
interrupts = <0x3>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x3d 0x12>;
status = "okay";
};

serial@01c28c00 {
compatible = "snps,dw-apb-uart";
reg = <0x1c28c00 0x400>;
interrupts = <0x4>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x3d 0x13>;
status = "disabled";
};

serial@01c29000 {
compatible = "snps,dw-apb-uart";
reg = <0x1c29000 0x400>;
interrupts = <0x11>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x3d 0x14>;
status = "disabled";
};

serial@01c29400 {
compatible = "snps,dw-apb-uart";
reg = <0x1c29400 0x400>;
interrupts = <0x12>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x3d 0x15>;
status = "disabled";
};

serial@01c29800 {
compatible = "snps,dw-apb-uart";
reg = <0x1c29800 0x400>;
interrupts = <0x13>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x3d 0x16>;
status = "disabled";
};

serial@01c29c00 {
compatible = "snps,dw-apb-uart";
reg = <0x1c29c00 0x400>;
interrupts = <0x14>;
reg-shift = <0x2>;
reg-io-width = <0x4>;
clocks = <0x3d 0x17>;
status = "disabled";
};

i2c@01c2ac00 {
compatible = "allwinner,sun4i-a10-i2c";
reg = <0x1c2ac00 0x400>;
interrupts = <0x7>;
clocks = <0x3d 0x0>;
status = "okay";
#address-cells = <0x1>;
#size-cells = <0x0>;
pinctrl-names = "default";
pinctrl-0 = <0x3f>;

pmic@34 {
compatible = "x-powers,axp209";
reg = <0x34>;
interrupts = <0x0>;
interrupt-controller;
#interrupt-cells = <0x1>;
};
};

i2c@01c2b000 {
compatible = "allwinner,sun4i-a10-i2c";
reg = <0x1c2b000 0x400>;
interrupts = <0x8>;
clocks = <0x3d 0x1>;
status = "okay";
#address-cells = <0x1>;
#size-cells = <0x0>;
pinctrl-names = "default";
pinctrl-0 = <0x40>;

eeprom@50 {
compatible = "atmel,24c16";
reg = <0x50>;
pagesize = <0x10>;
};
};

i2c@01c2b400 {
compatible = "allwinner,sun4i-a10-i2c";
reg = <0x1c2b400 0x400>;
interrupts = <0x9>;
clocks = <0x3d 0x2>;
status = "disabled";
#address-cells = <0x1>;
#size-cells = <0x0>;
};

ps2@01c2a000 {
compatible = "allwinner,sun4i-a10-ps2";
reg = <0x1c2a000 0x400>;
interrupts = <0x3e>;
clocks = <0x3d 0x6>;
status = "disabled";
};

ps2@01c2a400 {
compatible = "allwinner,sun4i-a10-ps2";
reg = <0x1c2a400 0x400>;
interrupts = <0x3f>;
clocks = <0x3d 0x7>;
status = "disabled";
};
};

ahci-5v {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <0x41>;
regulator-name = "ahci-5v";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
regulator-boot-on;
enable-active-high;
gpio = <0x28 0x2 0x3 0x0>;
status = "okay";
linux,phandle = <0x36>;
phandle = <0x36>;
};

usb0-vbus {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <0x42>;
regulator-name = "usb0-vbus";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
enable-active-high;
gpio = <0x28 0x1 0x9 0x0>;
status = "okay";
linux,phandle = <0x31>;
phandle = <0x31>;
};

usb1-vbus {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <0x43>;
regulator-name = "usb1-vbus";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
regulator-boot-on;
enable-active-high;
gpio = <0x28 0x7 0x6 0x0>;
status = "okay";
linux,phandle = <0x32>;
phandle = <0x32>;
};

usb2-vbus {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <0x44>;
regulator-name = "usb2-vbus";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
regulator-boot-on;
enable-active-high;
gpio = <0x28 0x7 0x3 0x0>;
status = "okay";
linux,phandle = <0x33>;
phandle = <0x33>;
};

vcc3v0 {
compatible = "regulator-fixed";
regulator-name = "vcc3v0";
regulator-min-microvolt = <0x2dc6c0>;
regulator-max-microvolt = <0x2dc6c0>;
};

vcc3v3 {
compatible = "regulator-fixed";
regulator-name = "vcc3v3";
regulator-min-microvolt = <0x325aa0>;
regulator-max-microvolt = <0x325aa0>;
linux,phandle = <0x27>;
phandle = <0x27>;
};

vcc5v0 {
compatible = "regulator-fixed";
regulator-name = "vcc5v0";
regulator-min-microvolt = <0x4c4b40>;
regulator-max-microvolt = <0x4c4b40>;
};

leds {
compatible = "gpio-leds";
pinctrl-names = "default";
pinctrl-0 = <0x45>;

green {
label = "a10-olinuxino-lime:green:usr";
gpios = <0x28 0x7 0x2 0x0>;
default-state = "on";
};
};
};

Ссылка на файл sun4i-a10-olinuxino-lime.dts https://cloud.mail.ru/public/3o7z/482Jofs3Q
« Последнее редактирование: 16 Июнь 2019, 20:34:51 от Ellissar »
 


Оффлайн G_r_i_g_a

  • Местный житель
  • ***
  • Сообщений: 303
Re: Включение i2c, GPIO, SPI и т.д. на A10-OLinuXino-LIME
« Ответ #1 : 16 Июнь 2019, 22:07:50 »
1. Установи пакет
apt install i2c-tools2. Посмотри что там есть
i2cdetect -l
 

Оффлайн Ellissar

  • Новичок форума
  • Topic Author
  • Сообщений: 6
Re: Включение i2c, GPIO, SPI и т.д. на A10-OLinuXino-LIME
« Ответ #2 : 17 Июнь 2019, 16:22:34 »
2. Посмотри что там есть

Ничего не выводит.
root@olinuxino:~# i2cdetect -l
root@olinuxino:~#
 

 

Включение поддержки 3G модема

Автор Moonshiner

Ответов: 10
Просмотров: 2884
Последний ответ 23 Ноябрь 2012, 13:45:28
от Moonshiner
Обработка событий на включение USB флэшек

Автор PbI6A

Ответов: 1
Просмотров: 1128
Последний ответ 15 Декабрь 2015, 18:19:43
от slava
Автоматическое включение после аварийного выключения

Автор Nyancat

Ответов: 17
Просмотров: 2826
Последний ответ 07 Февраль 2018, 13:19:40
от ek-nfn