blob: 4b06bf24fc489498b00a57bebfad180aa4f21dcd [file] [log] [blame]
Kevin Hilman6bac6182021-02-09 17:05:30 -08001// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2019 BayLibre SAS. All rights reserved.
4 */
5
6/dts-v1/;
7/plugin/;
8
9#include <dt-bindings/phy/phy.h>
10#include <dt-bindings/gpio/gpio.h>
11#include <dt-bindings/gpio/meson-g12a-gpio.h>
12#include <dt-bindings/input/input.h>
13#include <dt-bindings/interrupt-controller/irq.h>
14
15/ {
16 compatible = "khadas,vim3l", "amlogic,sm1";
17 model = "Khadas VIM3L";
18 fragment@101 {
19 target-path = "/";
20 __overlay__ {
21 reserved-memory {
22 #address-cells = <2>;
23 #size-cells = <2>;
24 ramoops@d000000 {
25 compatible = "ramoops";
26 reg = <0x0 0x0d000000 0x0 0x00100000>;
27 record-size = <0x8000>;
28 console-size = <0x8000>;
29 ftrace-size = <0x0>;
30 pmsg-size = <0x8000>;
31 };
32 };
33 };
34 };
35};
36
37&vcc_5v {
38 gpio-open-drain;
39};
40
41&uart_A {
42 bluetooth {
43 interrupt-parent = <&gpio_intc>;
44 interrupts = <95 IRQ_TYPE_LEVEL_HIGH>;
45 interrupt-names = "host-wakeup";
46 };
47};
48
49&uart_C {
50 status = "disabled";
51 pinctrl-0 = <&uart_c_pins>;
52 pinctrl-names = "default";
53};
54
55&emmc_pwrseq{
56 status = "okay";
57};
58
59&sd_emmc_a {
60 /* WiFi firmware requires power to be kept while in suspend */
61 keep-power-in-suspend;
62};
63
64&spicc1 {
65 status = "okay";
66 pinctrl-names = "default";
67 pinctrl-0 = <&spicc1_pins>;
68 cs-gpios = <&gpio GPIOH_6 GPIO_ACTIVE_LOW>;
69 #address-cells = <1>;
70 #size-cells = <0>;
71
72 spidev@0 {
73 compatible = "rohm,dh2228fv";
74 reg = <0>;
75 spi-max-frequency = <500000>;
76 status = "okay";
77 };
78
79 neonkey@0 {
80 compatible = "nanohub";
81 reg = <0>;
82 spi-max-frequency = <500000>;
83
84 sensorhub,nreset-gpio = <&gpio GPIOA_0 0>;
85 sensorhub,boot0-gpio = <&gpio GPIOA_3 0>; /* Fake */
86 sensorhub,wakeup-gpio = <&gpio GPIOA_2 0>; /* A2 -> PB9 */
87 sensorhub,irq1-gpio = <&gpio GPIOA_1 0>; /* A1 -> PB5 */
88 interrupt-parent = <&gpio_intc>;
89 interrupts = <62 IRQ_TYPE_EDGE_RISING>; /* A1 */
90 /* sensorhub,spi-cs-gpio = <&gpio GPIOH_6 GPIO_ACTIVE_LOW>; Optional */
91 sensorhub,bl-addr = <0x08000000>;
92 sensorhub,kernel-addr = <0x0800C000>;
93 sensorhub,shared-addr = <0x08040000>;
94 sensorhub,flash-banks = <0 0x08000000 0x04000>,
95 <3 0x0800C000 0x04000>,
96 <4 0x08010000 0x10000>,
97 <5 0x08020000 0x20000>,
98 <6 0x08040000 0x20000>,
99 <7 0x08060000 0x20000>;
100 sensorhub,num-flash-banks = <6>;
101 status = "disabled";
102 };
103
104 argonkey@0 {
105 compatible = "nanohub";
106 reg = <0>;
107 spi-max-frequency = <500000>;
108 spi-cpol;
109
110 sensorhub,nreset-gpio = <&gpio GPIOA_0 0>;
111 sensorhub,boot0-gpio = <&gpio GPIOA_3 0>;
112 sensorhub,wakeup-gpio = <&gpio GPIOA_1 0>; /* A1 -> PA0 */
113 sensorhub,irq1-gpio = <&gpio GPIOA_2 0>; /* A2 -> PA1 */
114 interrupt-parent = <&gpio_intc>;
115 interrupts = <63 IRQ_TYPE_EDGE_RISING>; /* A2 */
116 sensorhub,bl-addr = <0x08000000>;
117 sensorhub,kernel-addr = <0x0800C000>;
118 sensorhub,num-flash-banks = <4>;
119 sensorhub,flash-banks = <0 0x08000000 0x04000>,
120 <3 0x0800C000 0x04000>,
121 <4 0x08010000 0x10000>,
122 <5 0x08020000 0x20000>;
123 sensorhub,shared-addr = <0x08040000>;
124 sensorhub,num-shared-flash-banks = <6>;
125 sensorhub,shared-flash-banks = <6 0x08040000 0x20000>,
126 <7 0x08060000 0x20000>,
127 <8 0x08080000 0x20000>,
128 <9 0x080A0000 0x20000>,
129 <10 0x080C0000 0x20000>,
130 <11 0x080E0000 0x20000>;
131 status = "disabled";
132 };
133};