hc
2024-05-10 37f49e37ab4cb5d0bc4c60eb5c6d4dd57db767bb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
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";
   };
};