|
@@ -0,0 +1,133 @@
|
|
|
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
|
+/*
|
|
|
+ * Copyright (c) 2019 BayLibre SAS. All rights reserved.
|
|
|
+ */
|
|
|
+
|
|
|
+/dts-v1/;
|
|
|
+/plugin/;
|
|
|
+
|
|
|
+#include <dt-bindings/phy/phy.h>
|
|
|
+#include <dt-bindings/gpio/gpio.h>
|
|
|
+#include <dt-bindings/gpio/meson-g12a-gpio.h>
|
|
|
+#include <dt-bindings/input/input.h>
|
|
|
+#include <dt-bindings/interrupt-controller/irq.h>
|
|
|
+
|
|
|
+/ {
|
|
|
+ compatible = "khadas,vim3l", "amlogic,sm1";
|
|
|
+ model = "Khadas VIM3L";
|
|
|
+ fragment@101 {
|
|
|
+ target-path = "/";
|
|
|
+ __overlay__ {
|
|
|
+ reserved-memory {
|
|
|
+ #address-cells = <2>;
|
|
|
+ #size-cells = <2>;
|
|
|
+ ramoops@d000000 {
|
|
|
+ compatible = "ramoops";
|
|
|
+ reg = <0x0 0x0d000000 0x0 0x00100000>;
|
|
|
+ record-size = <0x8000>;
|
|
|
+ console-size = <0x8000>;
|
|
|
+ ftrace-size = <0x0>;
|
|
|
+ pmsg-size = <0x8000>;
|
|
|
+ };
|
|
|
+ };
|
|
|
+ };
|
|
|
+ };
|
|
|
+};
|
|
|
+
|
|
|
+&vcc_5v {
|
|
|
+ gpio-open-drain;
|
|
|
+};
|
|
|
+
|
|
|
+&uart_A {
|
|
|
+ bluetooth {
|
|
|
+ interrupt-parent = <&gpio_intc>;
|
|
|
+ interrupts = <95 IRQ_TYPE_LEVEL_HIGH>;
|
|
|
+ interrupt-names = "host-wakeup";
|
|
|
+ };
|
|
|
+};
|
|
|
+
|
|
|
+&uart_C {
|
|
|
+ status = "disabled";
|
|
|
+ pinctrl-0 = <&uart_c_pins>;
|
|
|
+ pinctrl-names = "default";
|
|
|
+};
|
|
|
+
|
|
|
+&emmc_pwrseq{
|
|
|
+ status = "okay";
|
|
|
+};
|
|
|
+
|
|
|
+&sd_emmc_a {
|
|
|
+ /* WiFi firmware requires power to be kept while in suspend */
|
|
|
+ keep-power-in-suspend;
|
|
|
+};
|
|
|
+
|
|
|
+&spicc1 {
|
|
|
+ status = "okay";
|
|
|
+ pinctrl-names = "default";
|
|
|
+ pinctrl-0 = <&spicc1_pins>;
|
|
|
+ cs-gpios = <&gpio GPIOH_6 GPIO_ACTIVE_LOW>;
|
|
|
+ #address-cells = <1>;
|
|
|
+ #size-cells = <0>;
|
|
|
+
|
|
|
+ spidev@0 {
|
|
|
+ compatible = "rohm,dh2228fv";
|
|
|
+ reg = <0>;
|
|
|
+ spi-max-frequency = <500000>;
|
|
|
+ status = "okay";
|
|
|
+ };
|
|
|
+
|
|
|
+ neonkey@0 {
|
|
|
+ compatible = "nanohub";
|
|
|
+ reg = <0>;
|
|
|
+ spi-max-frequency = <500000>;
|
|
|
+
|
|
|
+ sensorhub,nreset-gpio = <&gpio GPIOA_0 0>;
|
|
|
+ sensorhub,boot0-gpio = <&gpio GPIOA_3 0>; /* Fake */
|
|
|
+ sensorhub,wakeup-gpio = <&gpio GPIOA_2 0>; /* A2 -> PB9 */
|
|
|
+ sensorhub,irq1-gpio = <&gpio GPIOA_1 0>; /* A1 -> PB5 */
|
|
|
+ interrupt-parent = <&gpio_intc>;
|
|
|
+ interrupts = <62 IRQ_TYPE_EDGE_RISING>; /* A1 */
|
|
|
+ /* sensorhub,spi-cs-gpio = <&gpio GPIOH_6 GPIO_ACTIVE_LOW>; Optional */
|
|
|
+ sensorhub,bl-addr = <0x08000000>;
|
|
|
+ sensorhub,kernel-addr = <0x0800C000>;
|
|
|
+ sensorhub,shared-addr = <0x08040000>;
|
|
|
+ sensorhub,flash-banks = <0 0x08000000 0x04000>,
|
|
|
+ <3 0x0800C000 0x04000>,
|
|
|
+ <4 0x08010000 0x10000>,
|
|
|
+ <5 0x08020000 0x20000>,
|
|
|
+ <6 0x08040000 0x20000>,
|
|
|
+ <7 0x08060000 0x20000>;
|
|
|
+ sensorhub,num-flash-banks = <6>;
|
|
|
+ status = "disabled";
|
|
|
+ };
|
|
|
+
|
|
|
+ argonkey@0 {
|
|
|
+ compatible = "nanohub";
|
|
|
+ reg = <0>;
|
|
|
+ spi-max-frequency = <500000>;
|
|
|
+ spi-cpol;
|
|
|
+
|
|
|
+ sensorhub,nreset-gpio = <&gpio GPIOA_0 0>;
|
|
|
+ sensorhub,boot0-gpio = <&gpio GPIOA_3 0>;
|
|
|
+ sensorhub,wakeup-gpio = <&gpio GPIOA_1 0>; /* A1 -> PA0 */
|
|
|
+ sensorhub,irq1-gpio = <&gpio GPIOA_2 0>; /* A2 -> PA1 */
|
|
|
+ interrupt-parent = <&gpio_intc>;
|
|
|
+ interrupts = <63 IRQ_TYPE_EDGE_RISING>; /* A2 */
|
|
|
+ sensorhub,bl-addr = <0x08000000>;
|
|
|
+ sensorhub,kernel-addr = <0x0800C000>;
|
|
|
+ sensorhub,num-flash-banks = <4>;
|
|
|
+ sensorhub,flash-banks = <0 0x08000000 0x04000>,
|
|
|
+ <3 0x0800C000 0x04000>,
|
|
|
+ <4 0x08010000 0x10000>,
|
|
|
+ <5 0x08020000 0x20000>;
|
|
|
+ sensorhub,shared-addr = <0x08040000>;
|
|
|
+ sensorhub,num-shared-flash-banks = <6>;
|
|
|
+ sensorhub,shared-flash-banks = <6 0x08040000 0x20000>,
|
|
|
+ <7 0x08060000 0x20000>,
|
|
|
+ <8 0x08080000 0x20000>,
|
|
|
+ <9 0x080A0000 0x20000>,
|
|
|
+ <10 0x080C0000 0x20000>,
|
|
|
+ <11 0x080E0000 0x20000>;
|
|
|
+ status = "disabled";
|
|
|
+ };
|
|
|
+};
|