add zero and berry
This commit is contained in:
parent
0700508922
commit
017c9a43c2
402
README.md
402
README.md
@ -1,15 +1,15 @@
|
||||
## How to download wiringOP
|
||||
## How to download wiringPi
|
||||
|
||||
```
|
||||
# apt-get update
|
||||
# apt-get install -y git
|
||||
# git clone https://github.com/orangepi-xunlong/wiringOP.git
|
||||
# git clone https://github.com/BigQubot/wiringPi.git
|
||||
```
|
||||
|
||||
## How to build wiringOP
|
||||
## How to build wiringPi
|
||||
|
||||
```
|
||||
# cd wiringOP
|
||||
# cd wiringPi
|
||||
# ./build clean
|
||||
# ./build
|
||||
```
|
||||
@ -17,374 +17,36 @@
|
||||
---
|
||||
## The output of the gpio readall command
|
||||
|
||||
## Allwinner H2+
|
||||
## Allwinner H618
|
||||
|
||||
### Orange Pi Zero/R1
|
||||
### Banana Pi M4Berry / M4Zero
|
||||
|
||||
```
|
||||
+------+-----+----------+------+---+ OPi H2 +---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| | | 3.3V | | | 1 || 2 | | | 5V | | |
|
||||
| 12 | 0 | SDA.0 | ALT2 | 0 | 3 || 4 | | | 5V | | |
|
||||
| 11 | 1 | SCL.0 | ALT2 | 0 | 5 || 6 | | | GND | | |
|
||||
| 6 | 2 | PWM.1 | OFF | 0 | 7 || 8 | 0 | ALT2 | TXD.1 | 3 | 198 |
|
||||
| | | GND | | | 9 || 10 | 0 | ALT2 | RXD.1 | 4 | 199 |
|
||||
| 1 | 5 | RXD.2 | ALT2 | 0 | 11 || 12 | 0 | OFF | PA07 | 6 | 7 |
|
||||
| 0 | 7 | TXD.2 | ALT2 | 0 | 13 || 14 | | | GND | | |
|
||||
| 3 | 8 | CTS.2 | OFF | 0 | 15 || 16 | 0 | ALT3 | SDA.1 | 9 | 19 |
|
||||
| | | 3.3V | | | 17 || 18 | 0 | ALT3 | SCK.1 | 10 | 18 |
|
||||
| 15 | 11 | MOSI.1 | ALT2 | 1 | 19 || 20 | | | GND | | |
|
||||
| 16 | 12 | MISO.1 | ALT2 | 0 | 21 || 22 | 0 | OFF | RTS.2 | 13 | 2 |
|
||||
| 14 | 14 | SCLK.1 | ALT2 | 0 | 23 || 24 | 0 | ALT2 | CE.1 | 15 | 13 |
|
||||
| | | GND | | | 25 || 26 | 0 | OFF | PA10 | 16 | 10 |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+ OPi H2 +---+------+----------+-----+------+
|
||||
+------+-----+----------+--------+---+BPI-M4B/Z +---+--------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+--------+---+----++----+---+--------+----------+-----+------+
|
||||
| | | 3.3V | | | 1 || 2 | | | 5V | | |
|
||||
| 208 | 0 | SDA.4 | OFF | 0 | 3 || 4 | | | 5V | | |
|
||||
| 207 | 1 | SCL.4 | OFF | 0 | 5 || 6 | | | GND | | |
|
||||
| 211 | 2 | PWM.1 | OFF | 0 | 7 || 8 | 0 | ALT2 | TXD.1 | 3 | 198 |
|
||||
| | | GND | | | 9 || 10 | 0 | ALT2 | RXD.1 | 4 | 199 |
|
||||
| 226 | 5 | TXD.5 | ALT2 | 0 | 11 || 12 | 0 | OFF | PCM_BCLK | 6 | 203 |
|
||||
| 227 | 7 | RXD.5 | ALT2 | 0 | 13 || 14 | | | GND | | |
|
||||
| 194 | 8 | PG02 | OFF | 0 | 15 || 16 | 0 | OFF | RTS.1 | 9 | 200 |
|
||||
| | | 3.3V | | | 17 || 18 | 0 | OFF | CTS.1 | 10 | 201 |
|
||||
| 231 | 11 | MOSI.1 | ALT4 | 0 | 19 || 20 | | | GND | | |
|
||||
| 232 | 12 | MISO.1 | ALT4 | 0 | 21 || 22 | 0 | OFF | PG01 | 13 | 193 |
|
||||
| 230 | 14 | SCLK.1 | ALT4 | 0 | 23 || 24 | 0 | OFF | CS0.1 | 15 | 229 |
|
||||
| | | GND | | | 25 || 26 | 0 | ALT4 | CS1.1 | 16 | 233 |
|
||||
| 210 | 17 | SDA.3 | OFF | 0 | 27 || 28 | 0 | OFF | SCL.3 | 18 | 209 |
|
||||
| 195 | 19 | PG03 | OFF | 0 | 29 || 30 | | | GND | | |
|
||||
| 196 | 20 | PG04 | OFF | 0 | 31 || 32 | 0 | OFF | PG00 | 21 | 192 |
|
||||
| 197 | 22 | PG05 | OFF | 0 | 33 || 34 | | | GND | | |
|
||||
| 204 | 23 | PCM_LRCK | OFF | 0 | 35 || 36 | 0 | OFF | SPDIF | 24 | 228 |
|
||||
| 202 | 25 | PCM_MCLK | OFF | 0 | 37 || 38 | 0 | OFF | PCM_IN | 26 | 206 |
|
||||
| | | GND | | | 39 || 40 | 0 | OFF | PCM_OUT | 27 | 205 |
|
||||
+------+-----+----------+--------+---+----++----+---+--------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+--------+---+BPI-M4B/Z +---+--------+----------+-----+------+
|
||||
```
|
||||
|
||||
## Allwinner H3
|
||||
|
||||
### Orange Pi Zero Plus 2
|
||||
|
||||
```
|
||||
+------+-----+----------+------+---+ZEROPLUS 2+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| | | 3.3V | | | 1 || 2 | | | 5V | | |
|
||||
| 12 | 0 | SDA.0 | ALT2 | 0 | 3 || 4 | | | 5V | | |
|
||||
| 11 | 1 | SCL.0 | ALT2 | 0 | 5 || 6 | | | GND | | |
|
||||
| 6 | 2 | PA6 | OFF | 0 | 7 || 8 | 0 | ALT2 | TXD.2 | 3 | 0 |
|
||||
| | | GND | | | 9 || 10 | 0 | ALT2 | RXD.2 | 4 | 1 |
|
||||
| 352 | 5 | S-SCL | ALT2 | 0 | 11 || 12 | 0 | OFF | PD11 | 6 | 107 |
|
||||
| 353 | 7 | S-SDA | ALT2 | 0 | 13 || 14 | | | GND | | |
|
||||
| 3 | 8 | CTS.2 | OFF | 0 | 15 || 16 | 0 | ALT3 | SDA.1 | 9 | 19 |
|
||||
| | | 3.3V | | | 17 || 18 | 0 | ALT3 | SCL.1 | 10 | 18 |
|
||||
| 15 | 11 | MOSI.1 | ALT2 | 0 | 19 || 20 | | | GND | | |
|
||||
| 16 | 12 | MISO.1 | ALT2 | 0 | 21 || 22 | 0 | OFF | RTS.2 | 13 | 2 |
|
||||
| 14 | 14 | SCLK.1 | ALT2 | 0 | 23 || 24 | 0 | ALT2 | CE.1 | 15 | 13 |
|
||||
| | | GND | | | 25 || 26 | 0 | OFF | PD14 | 16 | 110 |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+ZEROPLUS 2+---+------+----------+-----+------+
|
||||
```
|
||||
|
||||
### OrangePi One/Lite/Pc/Plus/PcPlus/Plus2e
|
||||
|
||||
```
|
||||
+------+-----+----------+------+---+OrangePiH3+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| | | 3.3V | | | 1 || 2 | | | 5V | | |
|
||||
| 12 | 0 | SDA.0 | OUT | 0 | 3 || 4 | | | 5V | | |
|
||||
| 11 | 1 | SCL.0 | OUT | 0 | 5 || 6 | | | GND | | |
|
||||
| 6 | 2 | PA6 | OUT | 0 | 7 || 8 | 0 | OUT | TXD.3 | 3 | 13 |
|
||||
| | | GND | | | 9 || 10 | 0 | OUT | RXD.3 | 4 | 14 |
|
||||
| 1 | 5 | RXD.2 | OUT | 0 | 11 || 12 | 0 | OUT | PD14 | 6 | 110 |
|
||||
| 0 | 7 | TXD.2 | OUT | 0 | 13 || 14 | | | GND | | |
|
||||
| 3 | 8 | CTS.2 | OUT | 0 | 15 || 16 | 0 | OUT | PC04 | 9 | 68 |
|
||||
| | | 3.3V | | | 17 || 18 | 0 | OUT | PC07 | 10 | 71 |
|
||||
| 64 | 11 | MOSI.0 | OUT | 0 | 19 || 20 | | | GND | | |
|
||||
| 65 | 12 | MISO.0 | OUT | 0 | 21 || 22 | 0 | OUT | RTS.2 | 13 | 2 |
|
||||
| 66 | 14 | SCLK.0 | OUT | 0 | 23 || 24 | 0 | OUT | CE.0 | 15 | 67 |
|
||||
| | | GND | | | 25 || 26 | 0 | OUT | PA21 | 16 | 21 |
|
||||
| 19 | 17 | SDA.1 | OUT | 0 | 27 || 28 | 0 | OUT | SCL.1 | 18 | 18 |
|
||||
| 7 | 19 | PA07 | OUT | 0 | 29 || 30 | | | GND | | |
|
||||
| 8 | 20 | PA08 | OUT | 0 | 31 || 32 | 0 | OUT | RTS.1 | 21 | 200 |
|
||||
| 9 | 22 | PA09 | OUT | 0 | 33 || 34 | | | GND | | |
|
||||
| 10 | 23 | PA10 | OUT | 0 | 35 || 36 | 0 | OUT | CTS.1 | 24 | 201 |
|
||||
| 20 | 25 | PA20 | OUT | 0 | 37 || 38 | 0 | OUT | TXD.1 | 26 | 198 |
|
||||
| | | GND | | | 39 || 40 | 0 | OUT | RXD.1 | 27 | 199 |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+OrangePiH3+---+------+----------+-----+------+
|
||||
```
|
||||
|
||||
## Allwinner H5
|
||||
|
||||
### Orange Pi Zero Plus
|
||||
|
||||
```
|
||||
+------+-----+----------+------+---+ ZEROPLUS +---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| | | 3.3V | | | 1 || 2 | | | 5V | | |
|
||||
| 12 | 0 | SDA.0 | ALT2 | 0 | 3 || 4 | | | 5V | | |
|
||||
| 11 | 1 | SCL.0 | ALT2 | 0 | 5 || 6 | | | GND | | |
|
||||
| 6 | 2 | PA6 | OFF | 0 | 7 || 8 | 0 | ALT2 | TXD.1 | 3 | 198 |
|
||||
| | | GND | | | 9 || 10 | 0 | ALT2 | RXD.1 | 4 | 199 |
|
||||
| 1 | 5 | RXD.2 | ALT2 | 0 | 11 || 12 | 0 | OFF | PA07 | 6 | 7 |
|
||||
| 0 | 7 | TXD.2 | ALT2 | 0 | 13 || 14 | | | GND | | |
|
||||
| 3 | 8 | CTS.2 | OFF | 0 | 15 || 16 | 0 | ALT3 | SDA.1 | 9 | 19 |
|
||||
| | | 3.3V | | | 17 || 18 | 0 | ALT3 | SCL.1 | 10 | 18 |
|
||||
| 15 | 11 | MOSI.1 | ALT2 | 0 | 19 || 20 | | | GND | | |
|
||||
| 16 | 12 | MISO.1 | ALT2 | 0 | 21 || 22 | 0 | OFF | RTS.2 | 13 | 2 |
|
||||
| 14 | 14 | SCLK.1 | ALT2 | 0 | 23 || 24 | 0 | ALT2 | CE.1 | 15 | 13 |
|
||||
| | | GND | | | 25 || 26 | 0 | OFF | PA10 | 16 | 10 |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+ ZEROPLUS +---+------+----------+-----+------+
|
||||
```
|
||||
|
||||
### Orange Pi Zero Plus 2
|
||||
|
||||
```
|
||||
+------+-----+----------+------+---+ZEROPLUS 2+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| | | 3.3V | | | 1 || 2 | | | 5V | | |
|
||||
| 12 | 0 | SDA.0 | ALT2 | 0 | 3 || 4 | | | 5V | | |
|
||||
| 11 | 1 | SCL.0 | ALT2 | 0 | 5 || 6 | | | GND | | |
|
||||
| 6 | 2 | PA6 | OFF | 0 | 7 || 8 | 0 | ALT2 | TXD.2 | 3 | 0 |
|
||||
| | | GND | | | 9 || 10 | 0 | ALT2 | RXD.2 | 4 | 1 |
|
||||
| 352 | 5 | S-SCL | ALT2 | 0 | 11 || 12 | 0 | OFF | PD11 | 6 | 107 |
|
||||
| 353 | 7 | S-SDA | ALT2 | 0 | 13 || 14 | | | GND | | |
|
||||
| 3 | 8 | CTS.2 | OFF | 0 | 15 || 16 | 0 | ALT3 | SDA.1 | 9 | 19 |
|
||||
| | | 3.3V | | | 17 || 18 | 0 | ALT3 | SCL.1 | 10 | 18 |
|
||||
| 15 | 11 | MOSI.1 | ALT2 | 0 | 19 || 20 | | | GND | | |
|
||||
| 16 | 12 | MISO.1 | ALT2 | 0 | 21 || 22 | 0 | OFF | RTS.2 | 13 | 2 |
|
||||
| 14 | 14 | SCLK.1 | ALT2 | 0 | 23 || 24 | 0 | ALT2 | CE.1 | 15 | 13 |
|
||||
| | | GND | | | 25 || 26 | 0 | OFF | PD14 | 16 | 110 |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+ZEROPLUS 2+---+------+----------+-----+------+
|
||||
```
|
||||
|
||||
### Orange Pi Pc 2
|
||||
|
||||
```
|
||||
+------+-----+----------+------+---+ OPi PC2 +---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| | | 3.3V | | | 1 || 2 | | | 5V | | |
|
||||
| 12 | 0 | SDA.0 | ALT2 | 0 | 3 || 4 | | | 5V | | |
|
||||
| 11 | 1 | SCL.0 | ALT2 | 0 | 5 || 6 | | | GND | | |
|
||||
| 6 | 2 | PWM.1 | OFF | 0 | 7 || 8 | 0 | OFF | PC05 | 3 | 69 |
|
||||
| | | GND | | | 9 || 10 | 0 | OFF | PC06 | 4 | 70 |
|
||||
| 1 | 5 | RXD.2 | ALT2 | 0 | 11 || 12 | 0 | OFF | PD14 | 6 | 110 |
|
||||
| 0 | 7 | TXD.2 | ALT2 | 0 | 13 || 14 | | | GND | | |
|
||||
| 3 | 8 | CTS.2 | ALT2 | 0 | 15 || 16 | 0 | OFF | PC04 | 9 | 68 |
|
||||
| | | 3.3V | | | 17 || 18 | 0 | OFF | PC07 | 10 | 71 |
|
||||
| 15 | 11 | MOSI.1 | ALT2 | 0 | 19 || 20 | | | GND | | |
|
||||
| 16 | 12 | MISO.1 | ALT2 | 0 | 21 || 22 | 0 | ALT2 | RTS.2 | 13 | 2 |
|
||||
| 14 | 14 | SCLK.1 | ALT2 | 0 | 23 || 24 | 0 | ALT2 | CE.1 | 15 | 13 |
|
||||
| | | GND | | | 25 || 26 | 0 | OFF | PA21 | 16 | 21 |
|
||||
| 19 | 17 | SDA.1 | ALT3 | 0 | 27 || 28 | 0 | ALT3 | SCL.1 | 18 | 18 |
|
||||
| 7 | 19 | PA07 | OFF | 0 | 29 || 30 | | | GND | | |
|
||||
| 8 | 20 | PA08 | OFF | 0 | 31 || 32 | 0 | ALT2 | RTS.1 | 21 | 200 |
|
||||
| 9 | 22 | PA09 | OFF | 0 | 33 || 34 | | | GND | | |
|
||||
| 10 | 23 | PA10 | OFF | 0 | 35 || 36 | 0 | ALT2 | CTS.1 | 24 | 201 |
|
||||
| 107 | 25 | PD11 | OFF | 0 | 37 || 38 | 0 | ALT2 | TXD.1 | 26 | 198 |
|
||||
| | | GND | | | 39 || 40 | 0 | ALT2 | RXD.1 | 27 | 199 |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+ OPi PC2 +---+------+----------+-----+------+
|
||||
```
|
||||
|
||||
### Orange Pi Prime
|
||||
|
||||
```
|
||||
+------+-----+----------+------+---+ PRIME +---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| | | 3.3V | | | 1 || 2 | | | 5V | | |
|
||||
| 12 | 0 | SDA.0 | ALT2 | 0 | 3 || 4 | | | 5V | | |
|
||||
| 11 | 1 | SCL.0 | ALT2 | 0 | 5 || 6 | | | GND | | |
|
||||
| 6 | 2 | PWM.1 | OFF | 0 | 7 || 8 | 0 | OFF | PC05 | 3 | 69 |
|
||||
| | | GND | | | 9 || 10 | 0 | OFF | PC06 | 4 | 70 |
|
||||
| 1 | 5 | RXD.2 | ALT2 | 0 | 11 || 12 | 0 | OFF | PD14 | 6 | 110 |
|
||||
| 0 | 7 | TXD.2 | ALT2 | 0 | 13 || 14 | | | GND | | |
|
||||
| 3 | 8 | CTS.2 | ALT2 | 0 | 15 || 16 | 0 | OFF | PC04 | 9 | 68 |
|
||||
| | | 3.3V | | | 17 || 18 | 0 | OFF | PC07 | 10 | 71 |
|
||||
| 15 | 11 | MOSI.1 | ALT2 | 0 | 19 || 20 | | | GND | | |
|
||||
| 16 | 12 | MISO.1 | ALT2 | 0 | 21 || 22 | 0 | ALT2 | RTS.2 | 13 | 2 |
|
||||
| 14 | 14 | SCLK.1 | ALT2 | 0 | 23 || 24 | 0 | ALT2 | CE.1 | 15 | 13 |
|
||||
| | | GND | | | 25 || 26 | 0 | OFF | PC08 | 16 | 72 |
|
||||
| 19 | 17 | SDA.1 | ALT3 | 0 | 27 || 28 | 0 | ALT3 | SCL.1 | 18 | 18 |
|
||||
| 7 | 19 | PA07 | OFF | 0 | 29 || 30 | | | GND | | |
|
||||
| 8 | 20 | PA08 | OFF | 0 | 31 || 32 | 0 | OFF | PC09 | 21 | 73 |
|
||||
| 9 | 22 | PA09 | OFF | 0 | 33 || 34 | | | GND | | |
|
||||
| 10 | 23 | PA10 | OFF | 0 | 35 || 36 | 0 | OFF | PC10 | 24 | 74 |
|
||||
| 107 | 25 | PD11 | OFF | 0 | 37 || 38 | 0 | OFF | PC11 | 26 | 75 |
|
||||
| | | GND | | | 39 || 40 | 0 | OFF | PC12 | 27 | 76 |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+ PRIME +---+------+----------+-----+------+
|
||||
```
|
||||
|
||||
## Allwinner A64
|
||||
|
||||
### Orange Pi Win/Winplus
|
||||
|
||||
```
|
||||
+------+-----+----------+------+---+ OPi Win +---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| | | 3.3V | | | 1 || 2 | | | 5V | | |
|
||||
| 227 | 0 | SDA.1 | ALT2 | 0 | 3 || 4 | | | 5V | | |
|
||||
| 226 | 1 | SCL.1 | ALT2 | 0 | 5 || 6 | | | GND | | |
|
||||
| 362 | 2 | PL10 | OFF | 0 | 7 || 8 | 0 | ALT2 | PL02 | 3 | 354 |
|
||||
| | | GND | | | 9 || 10 | 0 | ALT2 | PL03 | 4 | 355 |
|
||||
| 229 | 5 | RXD.3 | ALT2 | 0 | 11 || 12 | 0 | OFF | PD04 | 6 | 100 |
|
||||
| 228 | 7 | TXD.3 | ALT2 | 0 | 13 || 14 | | | GND | | |
|
||||
| 231 | 8 | CTS.3 | OUT | 0 | 15 || 16 | 0 | OFF | PL09 | 9 | 361 |
|
||||
| | | 3.3V | | | 17 || 18 | 0 | OFF | PC04 | 10 | 68 |
|
||||
| 98 | 11 | MOSI.1 | ALT4 | 0 | 19 || 20 | | | GND | | |
|
||||
| 99 | 12 | MISO.1 | ALT4 | 0 | 21 || 22 | 0 | OFF | RTS.3 | 13 | 230 |
|
||||
| 97 | 14 | SCLK.1 | ALT4 | 0 | 23 || 24 | 0 | ALT4 | CE.1 | 15 | 96 |
|
||||
| | | GND | | | 25 || 26 | 0 | OFF | PD06 | 16 | 102 |
|
||||
| 143 | 17 | SDA.2 | ALT3 | 0 | 27 || 28 | 0 | ALT3 | SCL.2 | 18 | 142 |
|
||||
| 36 | 19 | PB04 | OFF | 0 | 29 || 30 | | | GND | | |
|
||||
| 37 | 20 | PB05 | OFF | 0 | 31 || 32 | 0 | ALT2 | RTS.2 | 21 | 34 |
|
||||
| 38 | 22 | PB06 | OFF | 0 | 33 || 34 | | | GND | | |
|
||||
| 39 | 23 | PB07 | OFF | 0 | 35 || 36 | 0 | ALT2 | CTS.2 | 24 | 35 |
|
||||
| 101 | 25 | PD05 | OFF | 0 | 37 || 38 | 0 | ALT2 | TXD.2 | 26 | 32 |
|
||||
| | | GND | | | 39 || 40 | 0 | ALT2 | RXD.2 | 27 | 33 |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+ OPi Win +---+------+----------+-----+------+
|
||||
```
|
||||
|
||||
## Allwinner H6
|
||||
|
||||
### Orange Pi 3/3 LTS
|
||||
|
||||
```
|
||||
+------+-----+----------+------+---+ OPi 3 +---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| | | 3.3V | | | 1 || 2 | | | 5V | | |
|
||||
| 122 | 0 | SDA.0 | OFF | 0 | 3 || 4 | | | 5V | | |
|
||||
| 121 | 1 | SCL.0 | OFF | 0 | 5 || 6 | | | GND | | |
|
||||
| 118 | 2 | PWM.0 | OFF | 0 | 7 || 8 | 0 | OFF | PL02 | 3 | 354 |
|
||||
| | | GND | | | 9 || 10 | 0 | OFF | PL03 | 4 | 355 |
|
||||
| 120 | 5 | RXD.3 | ALT4 | 0 | 11 || 12 | 0 | OFF | PD18 | 6 | 114 |
|
||||
| 119 | 7 | TXD.3 | ALT4 | 0 | 13 || 14 | | | GND | | |
|
||||
| 362 | 8 | PL10 | OFF | 0 | 15 || 16 | 0 | OFF | PD15 | 9 | 111 |
|
||||
| | | 3.3V | | | 17 || 18 | 0 | OFF | PD16 | 10 | 112 |
|
||||
| 229 | 11 | MOSI.1 | ALT2 | 0 | 19 || 20 | | | GND | | |
|
||||
| 230 | 12 | MISO.1 | ALT2 | 0 | 21 || 22 | 0 | OFF | PD21 | 13 | 117 |
|
||||
| 228 | 14 | SCLK.1 | ALT2 | 0 | 23 || 24 | 0 | ALT2 | CE.1 | 15 | 227 |
|
||||
| | | GND | | | 25 || 26 | 0 | OFF | PL08 | 16 | 360 |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+ OPi 3 +---+------+----------+-----+------+
|
||||
```
|
||||
|
||||
### Orange Pi Lite2/OnePlus
|
||||
|
||||
```
|
||||
+------+-----+----------+------+---+ OPi H6 +---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| | | 3.3V | | | 1 || 2 | | | 5V | | |
|
||||
| 230 | 0 | SDA.1 | OFF | 0 | 3 || 4 | | | 5V | | |
|
||||
| 229 | 1 | SCL.1 | OFF | 0 | 5 || 6 | | | GND | | |
|
||||
| 228 | 2 | PWM1 | OFF | 0 | 7 || 8 | 0 | OFF | PD21 | 3 | 117 |
|
||||
| | | GND | | | 9 || 10 | 0 | OFF | PD22 | 4 | 118 |
|
||||
| 120 | 5 | RXD.3 | ALT4 | 0 | 11 || 12 | 0 | OFF | PC09 | 6 | 73 |
|
||||
| 119 | 7 | TXD.3 | ALT4 | 0 | 13 || 14 | | | GND | | |
|
||||
| 122 | 8 | CTS.3 | OFF | 0 | 15 || 16 | 0 | OFF | PC08 | 9 | 72 |
|
||||
| | | 3.3V | | | 17 || 18 | 0 | OFF | PC07 | 10 | 71 |
|
||||
| 66 | 11 | MOSI.0 | ALT4 | 0 | 19 || 20 | | | GND | | |
|
||||
| 67 | 12 | MISO.0 | ALT4 | 0 | 21 || 22 | 0 | OFF | RTS.3 | 13 | 121 |
|
||||
| 64 | 14 | SCLK.0 | ALT4 | 0 | 23 || 24 | 0 | ALT4 | CE.0 | 15 | 69 |
|
||||
| | | GND | | | 25 || 26 | 0 | OFF | PH03 | 16 | 227 |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+ OPi H6 +---+------+----------+-----+------+
|
||||
```
|
||||
|
||||
## Allwinner H616
|
||||
|
||||
### Orange Pi Zero2/Zero2 LTS/Zero2 B
|
||||
|
||||
```
|
||||
+------+-----+----------+------+---+ Zero 2 +---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| | | 3.3V | | | 1 || 2 | | | 5V | | |
|
||||
| 229 | 0 | SDA.3 | OFF | 0 | 3 || 4 | | | 5V | | |
|
||||
| 228 | 1 | SCL.3 | OFF | 0 | 5 || 6 | | | GND | | |
|
||||
| 73 | 2 | PC9 | OFF | 0 | 7 || 8 | 0 | ALT2 | TXD.5 | 3 | 226 |
|
||||
| | | GND | | | 9 || 10 | 0 | ALT2 | RXD.5 | 4 | 227 |
|
||||
| 70 | 5 | PC6 | ALT5 | 0 | 11 || 12 | 0 | OFF | PC11 | 6 | 75 |
|
||||
| 69 | 7 | PC5 | ALT5 | 0 | 13 || 14 | | | GND | | |
|
||||
| 72 | 8 | PC8 | OFF | 0 | 15 || 16 | 0 | OFF | PC15 | 9 | 79 |
|
||||
| | | 3.3V | | | 17 || 18 | 0 | OFF | PC14 | 10 | 78 |
|
||||
| 231 | 11 | MOSI.1 | ALT4 | 0 | 19 || 20 | | | GND | | |
|
||||
| 232 | 12 | MISO.1 | ALT4 | 0 | 21 || 22 | 0 | OFF | PC7 | 13 | 71 |
|
||||
| 230 | 14 | SCLK.1 | ALT4 | 0 | 23 || 24 | 0 | ALT4 | CE.1 | 15 | 233 |
|
||||
| | | GND | | | 25 || 26 | 0 | OFF | PC10 | 16 | 74 |
|
||||
| 65 | 17 | PC1 | OFF | 0 | 27 || 28 | | | | | |
|
||||
| 272 | 18 | PI16 | OFF | 0 | 29 || 30 | | | | | |
|
||||
| 262 | 19 | PI6 | OFF | 0 | 31 || 32 | | | | | |
|
||||
| 234 | 20 | PH10 | ALT3 | 0 | 33 || 34 | | | | | |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+ Zero 2 +---+------+----------+-----+------+
|
||||
```
|
||||
|
||||
## RockChip RK3399
|
||||
|
||||
### Orange Pi RK3399
|
||||
|
||||
```
|
||||
+------+-----+----------+------+---+OPi RK3399+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| | | 3.3V | | | 1 || 2 | | | 5V | | |
|
||||
| 43 | 0 | SDA.0 | ALT2 | 1 | 3 || 4 | | | 5V | | |
|
||||
| 44 | 1 | SCL.0 | ALT2 | 1 | 5 || 6 | | | GND | | |
|
||||
| 64 | 2 | GPIO4 | ALT3 | 0 | 7 || 8 | 0 | ALT2 | Tx | 3 | 148 |
|
||||
| | | GND | | | 9 || 10 | 1 | ALT2 | Rx | 4 | 147 |
|
||||
| 80 | 5 | GPIO17 | ALT2 | 0 | 11 || 12 | 0 | ALT3 | GPIO18 | 6 | 65 |
|
||||
| 81 | 7 | GPIO27 | ALT2 | 0 | 13 || 14 | | | GND | | |
|
||||
| 82 | 8 | GPIO22 | ALT2 | 0 | 15 || 16 | 0 | IN | GPIO23 | 9 | 66 |
|
||||
| | | 3.3V | | | 17 || 18 | 0 | IN | GPIO24 | 10 | 67 |
|
||||
| 39 | 11 | MOSI | ALT2 | 1 | 19 || 20 | | | GND | | |
|
||||
| 40 | 12 | MISO | ALT2 | 1 | 21 || 22 | 0 | ALT2 | GPIO25 | 13 | 83 |
|
||||
| 41 | 14 | SCLK | ALT3 | 1 | 23 || 24 | 1 | ALT3 | CS0 | 15 | 42 |
|
||||
| | | GND | | | 25 || 26 | 0 | ALT2 | CS1 | 16 | 133 |
|
||||
| 154 | 17 | DNP1 | IN | 0 | 27 || 28 | 1 | IN | DNP2 | 18 | 50 |
|
||||
| 68 | 19 | GPIO5 | OUT | 1 | 29 || 30 | | | GND | | |
|
||||
| 69 | 20 | GPIO6 | OUT | 1 | 31 || 32 | 1 | OUT | GPIO12 | 21 | 76 |
|
||||
| 70 | 22 | GPIO13 | OUT | 1 | 33 || 34 | | | GND | | |
|
||||
| 71 | 23 | GPIO19 | OUT | 1 | 35 || 36 | 1 | OUT | GPIO16 | 24 | 73 |
|
||||
| 72 | 25 | GPIO26 | OUT | 1 | 37 || 38 | 0 | IN | GPIO20 | 26 | 74 |
|
||||
| | | GND | | | 39 || 40 | 0 | ALT4 | GPIO21 | 27 | 75 |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+OPi RK3399+---+------+----------+-----+------+
|
||||
```
|
||||
|
||||
### Orange Pi 4/4B/4 LTS
|
||||
|
||||
```
|
||||
+------+-----+----------+------+---+OrangePi 4+---+---+--+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| | | 3.3V | | | 1 || 2 | | | 5V | | |
|
||||
| 64 | 0 | I2C2_SDA | ALT3 | 0 | 3 || 4 | | | 5V | | |
|
||||
| 65 | 1 | I2C2_SCL | ALT3 | 0 | 5 || 6 | | | GND | | |
|
||||
| 150 | 2 | PWM1 | IN | 0 | 7 || 8 | 1 | ALT2 | I2C3_SCL | 3 | 145 |
|
||||
| | | GND | | | 9 || 10 | 1 | ALT2 | I2C3_SDA | 4 | 144 |
|
||||
| 33 | 5 | GPIO1_A1 | IN | 0 | 11 || 12 | 1 | IN | GPIO1_C2 | 6 | 50 |
|
||||
| 35 | 7 | GPIO1_A3 | OUT | 0 | 13 || 14 | | | GND | | |
|
||||
| 92 | 8 | GPIO2_D4 | OUT | 1 | 15 || 16 | 0 | IN | GPIO1_C6 | 9 | 54 |
|
||||
| | | 3.3V | | | 17 || 18 | 0 | IN | GPIO1_C7 | 10 | 55 |
|
||||
| 40 | 11 | SPI1_TXD | ALT2 | 1 | 19 || 20 | | | GND | | |
|
||||
| 39 | 12 | SPI1_RXD | ALT2 | 1 | 21 || 22 | 0 | IN | GPIO1_D0 | 13 | 56 |
|
||||
| 41 | 14 | SPI1_CLK | ALT3 | 1 | 23 || 24 | 1 | ALT3 | SPI1_CS | 15 | 42 |
|
||||
| | | GND | | | 25 || 26 | 0 | IN | GPIO4_C5 | 16 | 149 |
|
||||
| 64 | 17 | I2C2_SDA | ALT3 | 0 | 27 || 28 | 0 | ALT3 | I2C2_SCL | 18 | 65 |
|
||||
| | | I2S0_RX | | | 29 || 30 | | | GND | | |
|
||||
| | | I2S0_TX | | | 31 || 32 | | | I2S_CLK | | |
|
||||
| | | I2S0_SCK | | | 33 || 34 | | | GND | | |
|
||||
| | | I2S0_SI0 | | | 35 || 36 | | | I2S0_SO0 | | |
|
||||
| | | I2S0_SI1 | | | 37 || 38 | | | I2S0_SI2 | | |
|
||||
| | | GND | | | 39 || 40 | | | I2S0_SI3 | | |
|
||||
+------+-----+----------+------+---+----++----+---+------+----------+-----+------+
|
||||
| GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |
|
||||
+------+-----+----------+------+---+OrangePi 4+---+---+--+----------+-----+------+
|
||||
```
|
||||
|
||||
@ -5,9 +5,6 @@
|
||||
* SSD1306 demo of block and font drawing.
|
||||
*/
|
||||
|
||||
//
|
||||
// fixed for OrangePiZero by HypHop
|
||||
//
|
||||
|
||||
#include <errno.h>
|
||||
#include <string.h>
|
||||
@ -28,7 +25,7 @@ int oled_demo(struct display_info *disp) {
|
||||
oled_putstrto(disp, 0, 9+1, "Welcome to");
|
||||
disp->font = font1;
|
||||
// oled_putstrto(disp, 0, 18+2, "Spnd tmp 53 C");
|
||||
oled_putstrto(disp, 0, 18+2, "----OrangePi----");
|
||||
oled_putstrto(disp, 0, 18+2, "----BananaPi----");
|
||||
disp->font = font2;
|
||||
// oled_putstrto(disp, 0, 27+3, "DrvX tmp 64 C");
|
||||
oled_putstrto(disp, 0, 27+3, "This is 0.96OLED");
|
||||
|
||||
@ -60,7 +60,7 @@ void speedTest (int pin, int maxCount)
|
||||
|
||||
int main (void)
|
||||
{
|
||||
printf ("OrangePi Pi wiringPi GPIO speed test program\n") ;
|
||||
printf ("Banana Pi wiringPi GPIO speed test program\n") ;
|
||||
printf ("=============================================\n") ;
|
||||
|
||||
// Start the standard way
|
||||
|
||||
57
gpio/gpio.c
57
gpio/gpio.c
@ -63,7 +63,7 @@ extern void doQmode (int argc, char *argv []) ;
|
||||
|
||||
int wpMode ;
|
||||
|
||||
#ifdef CONFIG_ORANGEPI
|
||||
#ifdef CONFIG_BANANAPI
|
||||
const char *piModelNames[6] =
|
||||
{
|
||||
"Unknown",
|
||||
@ -71,16 +71,10 @@ const char *piModelNames[6] =
|
||||
"Model B",
|
||||
"Model B+",
|
||||
"Compute Module",
|
||||
#ifdef CONFIG_ORANGEPI_2G_IOT
|
||||
"OrangePi 2G-IOT",
|
||||
#elif CONFIG_ORANGEPI_PC2 || CONFIG_ORANGEPI_ZEROPLUS2_H5 || CONFIG_ORANGEPI_ZEROPLUS || CONFIG_ORANGEPI_PRIME
|
||||
"OrangePi PC2",
|
||||
#elif CONFIG_ORANGEPI_A64
|
||||
"OrangePi Win/Winplus",
|
||||
#elif CONFIG_ORANGEPI_H3 || CONFIG_ORANGEPI_ZEROPLUS2_H3
|
||||
"OrangePi H3 family",
|
||||
#elif CONFIG_ORANGEPI_ZERO
|
||||
"OrangePi Zero",
|
||||
#ifdef CONFIG_BANANAPI_M4_BERRY
|
||||
"BananaPi M4 Berry",
|
||||
#elif CONFIG_BANANAPI_M4_ZERO
|
||||
"BananaPi M4 Zero",
|
||||
#endif
|
||||
};
|
||||
#endif
|
||||
@ -402,7 +396,7 @@ static void doI2Cdetect (UNU int argc, char *argv [])
|
||||
return ;
|
||||
}
|
||||
|
||||
#ifndef CONFIG_ORANGEPI
|
||||
#ifndef CONFIG_BANANAPI
|
||||
if (!moduleLoaded ("i2c_dev"))
|
||||
{
|
||||
fprintf (stderr, "%s: The I2C kernel module(s) are not loaded.\n", argv [0]) ;
|
||||
@ -486,7 +480,7 @@ static void doExports (UNU int argc, UNU char *argv [])
|
||||
char fName [128] ;
|
||||
char buf [16] ;
|
||||
|
||||
#ifdef CONFIG_ORANGEPI
|
||||
#ifdef CONFIG_BANANAPI
|
||||
for (first = 0, j = 0 ; j < 64 ; ++j) // Crude, but effective
|
||||
#else
|
||||
for (first = 0, i = 0 ; i < 64 ; ++i) // Crude, but effective
|
||||
@ -494,11 +488,8 @@ static void doExports (UNU int argc, UNU char *argv [])
|
||||
{
|
||||
|
||||
// Try to read the direction
|
||||
#ifdef CONFIG_ORANGEPI
|
||||
i = pinToGpioOrangePi[j];
|
||||
#ifdef CONFIG_ORANGEPI_RK3399
|
||||
i += 1000;
|
||||
#endif
|
||||
#ifdef CONFIG_BANANAPI
|
||||
i = pinToGpioBananaPi[j];
|
||||
|
||||
#endif
|
||||
|
||||
@ -587,11 +578,8 @@ void doExport (int argc, char *argv [])
|
||||
}
|
||||
|
||||
pin = atoi (argv [2]) ;
|
||||
#ifdef CONFIG_ORANGEPI
|
||||
pin = pinToGpioOrangePi[pin];
|
||||
#ifdef CONFIG_ORANGEPI_RK3399
|
||||
pin += 1000;
|
||||
#endif
|
||||
#ifdef CONFIG_BANANAPI
|
||||
pin = pinToGpioBananaePi[pin];
|
||||
|
||||
#endif
|
||||
|
||||
@ -708,11 +696,8 @@ void doEdge (int argc, char *argv [])
|
||||
}
|
||||
|
||||
pin = atoi (argv [2]) ;
|
||||
#ifdef CONFIG_ORANGEPI
|
||||
pin = pinToGpioOrangePi[pin];
|
||||
#ifdef CONFIG_ORANGEPI_RK3399
|
||||
pin += 1000;
|
||||
#endif
|
||||
#ifdef CONFIG_BANANAPI
|
||||
pin = pinToGpioBananaPi[pin];
|
||||
|
||||
#endif
|
||||
mode = argv [3] ;
|
||||
@ -786,11 +771,8 @@ void doUnexport (int argc, char *argv [])
|
||||
}
|
||||
|
||||
pin = atoi (argv [2]) ;
|
||||
#ifdef CONFIG_ORANGEPI
|
||||
pin = pinToGpioOrangePi[pin];
|
||||
#ifdef CONFIG_ORANGEPI_RK3399
|
||||
pin += 1000;
|
||||
#endif
|
||||
#ifdef CONFIG_BANANAPI
|
||||
pin = pinToGpioBananaPi[pin];
|
||||
|
||||
#endif
|
||||
|
||||
@ -821,11 +803,8 @@ void doUnexportall (char *progName)
|
||||
|
||||
for (pin = 0 ; pin < 63 ; ++pin)
|
||||
{
|
||||
#ifdef CONFIG_ORANGEPI
|
||||
i = pinToGpioOrangePi[pin];
|
||||
#ifdef CONFIG_ORANGEPI_RK3399
|
||||
i += 1000;
|
||||
#endif
|
||||
#ifdef CONFIG_BANANAPI
|
||||
i = pinToGpioBananaPi[pin];
|
||||
|
||||
#endif
|
||||
if ((fd = fopen ("/sys/class/gpio/unexport", "w")) == NULL)
|
||||
@ -1444,7 +1423,7 @@ int main (int argc, char *argv [])
|
||||
|
||||
if ((strcmp (argv [1], "-R") == 0) || (strcmp (argv [1], "-V") == 0))
|
||||
{
|
||||
printf ("wiringPi for Orange Pi\n") ;
|
||||
printf ("wiringPi for Banana Pi\n") ;
|
||||
exit (EXIT_SUCCESS) ;
|
||||
}
|
||||
|
||||
|
||||
1353
gpio/readall.c
1353
gpio/readall.c
File diff suppressed because it is too large
Load Diff
4342
wiringPi/wiringPi.c
4342
wiringPi/wiringPi.c
File diff suppressed because it is too large
Load Diff
@ -93,7 +93,7 @@ typedef struct {
|
||||
#define GPIO_PWM GPIO_PWM_OP
|
||||
|
||||
//sunxi_pwm
|
||||
#ifdef OPI
|
||||
#ifdef BPI
|
||||
#define SUNXI_PWM_BASE (0x01c21400)
|
||||
#define SUNXI_PWM_CTRL_REG (SUNXI_PWM_BASE)
|
||||
#define SUNXI_PWM_CH0_PERIOD (SUNXI_PWM_BASE + 0x4)
|
||||
@ -182,409 +182,6 @@ typedef struct {
|
||||
#define SUNXI_PUD_DOWN 2
|
||||
|
||||
|
||||
/*********** Rockchip RK3588 *************/
|
||||
|
||||
//gpio0~gpio4 register base addr
|
||||
#define RK3588_GPIO0_BASE 0xfd8a0000U
|
||||
#define RK3588_GPIO1_BASE 0xfec20000U
|
||||
#define RK3588_GPIO2_BASE 0xfec30000U
|
||||
#define RK3588_GPIO3_BASE 0xfec40000U
|
||||
#define RK3588_GPIO4_BASE 0xfec50000U
|
||||
|
||||
//gpio offset
|
||||
#define RK3588_GPIO_SWPORT_DR_L_OFFSET 0x00U
|
||||
#define RK3588_GPIO_SWPORT_DR_H_OFFSET 0x04U
|
||||
#define RK3588_GPIO_SWPORT_DDR_L_OFFSET 0x08U
|
||||
#define RK3588_GPIO_SWPORT_DDR_H_OFFSET 0x0cU
|
||||
#define RK3588_GPIO_EXT_PORT_OFFSET 0x70U
|
||||
|
||||
//CRU clock-controller base addr
|
||||
#define RK3588_CRU_BASE 0xfd7c0000U
|
||||
#define RK3588_CRU_GATE_CON16_OFFSET 0x0840U //for gpio1 bit 14 15 30 31
|
||||
#define RK3588_CRU_GATE_CON17_OFFSET 0x0844U //for gpio2/3/4 - bit 0 1 2 3 4 5 16 17 18 19 20 21
|
||||
|
||||
#define RK3588_PMU1CRU_BASE 0xfd7f0000U
|
||||
#define RK3588_PMU1CRU_GATE_CON5_OFFSET 0x0814U //for gpio0 - bit 5 6 21 22
|
||||
|
||||
#define RK3588_GPIO_NUM (0x40)
|
||||
#define RK3588_GPIO_BIT(x) (1UL << (x))
|
||||
|
||||
//gpio iomux
|
||||
#define RK3588_PMU1_IOC_BASE 0xfd5f0000U
|
||||
#define RK3588_PMU1_IOC_GPIO0A_IOMUX_SEL_L 0x00U //gpio0a0~gpio0b3
|
||||
#define RK3588_PMU1_IOC_GPIO0A_IOMUX_SEL_H 0x04U //gpio0a4~gpio0b7
|
||||
#define RK3588_PMU1_IOC_GPIO0B_IOMUX_SEL_L 0x08U //gpio0b0~gpio0b3
|
||||
|
||||
#define RK3588_PMU2_IOC_BASE 0xfd5f4000U
|
||||
#define RK3588_PMU2_IOC_GPIO0B_IOMUX_SEL_H 0x00U //gpio0a5~gpio0b7
|
||||
#define RK3588_PMU2_IOC_GPIO0C_IOMUX_SEL_L 0x04U //gpio0a0~gpio0b3
|
||||
#define RK3588_PMU2_IOC_GPIO0C_IOMUX_SEL_H 0x08U //gpio0a4~gpio0b7
|
||||
#define RK3588_PMU2_IOC_GPIO0D_IOMUX_SEL_L 0x0cU //gpio0a0~gpio0b3
|
||||
#define RK3588_PMU2_IOC_GPIO0D_IOMUX_SEL_H 0x10U //gpio0a4~gpio0b6
|
||||
|
||||
#define RK3588_BUS_IOC_BASE 0xfd5f8000U
|
||||
|
||||
//gpio pull up/down
|
||||
#define RK3588_VCCIO1_4_IOC_BASE 0xfd5f9000U
|
||||
#define RK3588_VCCIO3_5_IOC_BASE 0xfd5fa000U
|
||||
#define RK3588_VCCIO6_IOC_BASE 0xfd5fc000U
|
||||
|
||||
#define RK3588_PMU1_IOC_GPIO0A_P 0x0020U
|
||||
#define RK3588_PMU1_IOC_GPIO0B_P 0x0024U
|
||||
#define RK3588_PMU2_IOC_GPIO0B_P 0x0028U
|
||||
#define RK3588_PMU2_IOC_GPIO0C_P 0x002cU
|
||||
#define RK3588_PMU2_IOC_GPIO0D_P 0x0030U
|
||||
#define RK3588_VCCIO1_4_IOC_GPIO1A_P 0x0110U
|
||||
#define RK3588_VCCIO3_5_IOC_GPIO2A_P 0x0120U
|
||||
#define RK3588_VCCIO6_IOC_GPIO4A_P 0x0140U
|
||||
|
||||
//pwm register base addr
|
||||
//#define RK3588_CRU_BASE 0xfd7c0000U
|
||||
//#define RK3588_PMU1CRU_BASE 0xfd7f0000U
|
||||
#define RK3588_PWM0_BASE 0xfd8b0000U
|
||||
#define RK3588_PWM1_BASE 0xfe8d0000U
|
||||
#define RK3588_PWM2_BASE 0xfebe0000U
|
||||
#define RK3588_PWM3_BASE 0xfebf0000U
|
||||
|
||||
//cru
|
||||
#define RK3588_CRU_GATE_CON19 (RK3588_CRU_BASE + 0x084CU) //for busioc_clk_en
|
||||
#define RK3588_CRU_GATE_CON15 (RK3588_CRU_BASE + 0x083CU) //for pwm123_clk_en
|
||||
#define RK3588_PMU1CRU_GATE_CON1 (RK3588_PMU1CRU_BASE +0x0804U) //for pmu1pwm_clk_en
|
||||
|
||||
//CH0
|
||||
#define RK3588_CH0_PERIOD_HPR (RK3588_PWM_BASE + 0x04)
|
||||
#define RK3588_CH0_DUTY_LPR (RK3588_PWM_BASE + 0x08)
|
||||
#define RK3588_CH0_CTRL (RK3588_PWM_BASE + 0x0C)
|
||||
|
||||
//CH1
|
||||
#define RK3588_CH1_PERIOD_HPR (RK3588_PWM_BASE + 0x14)
|
||||
#define RK3588_CH1_DUTY_LPR (RK3588_PWM_BASE + 0x18)
|
||||
#define RK3588_CH1_CTRL (RK3588_PWM_BASE + 0x1C)
|
||||
|
||||
//CH2
|
||||
#define RK3588_CH2_PERIOD_HPR (RK3588_PWM_BASE + 0x24)
|
||||
#define RK3588_CH2_DUTY_LPR (RK3588_PWM_BASE + 0x28)
|
||||
#define RK3588_CH2_CTRL (RK3588_PWM_BASE + 0x2C)
|
||||
|
||||
//CH3
|
||||
#define RK3588_CH3_PERIOD_HPR (RK3588_PWM_BASE + 0x34)
|
||||
#define RK3588_CH3_DUTY_LPR (RK3588_PWM_BASE + 0x38)
|
||||
#define RK3588_CH3_CTRL (RK3588_PWM_BASE + 0x3C)
|
||||
|
||||
//for short——pwm
|
||||
#define RK3588_PWM_BASE (rk3588_soc_info_t.pwm_base)
|
||||
#define RK3588_PWM_MUX (rk3588_soc_info_t.pwm_mux)
|
||||
#define RK3588_PWM_MUX_VAL (rk3588_soc_info_t.pwm_mux_val)
|
||||
#define RK3588_PWM_MUX_OFFSET (rk3588_soc_info_t.pwm_mux_offset)
|
||||
#define RK3588_CH_PERIOD_HPR (rk3588_soc_info_t.ch_period_hpr)
|
||||
#define RK3588_CH_DUTY_LPR (rk3588_soc_info_t.ch_duty_lpr)
|
||||
#define RK3588_CH_CTRL (rk3588_soc_info_t.ch_crtl)
|
||||
|
||||
//pwm_ctrl_offset
|
||||
#define RK3588_RPT (24) // 24 ~ 31
|
||||
#define RK3588_SCALE (16) // 16 ~ 23
|
||||
#define RK3588_PRESCALE (12) // 12 ~ 14
|
||||
#define RK3588_CLK_SRC_SEL (10)
|
||||
#define RK3588_CLK_SEL (9)
|
||||
#define RK3588_FORCE_CLK_EN (8)
|
||||
#define RK3588_CH_CNT_EN (7)
|
||||
#define RK3588_CONLOCK (6)
|
||||
#define RK3588_OUTPUT_MODE (5)
|
||||
#define RK3588_INACTIVE_POL (4)
|
||||
#define RK3588_DUTY_POL (3)
|
||||
#define RK3588_PWM_MODE (1) // 1 ~ 2
|
||||
#define RK3588_PWM_EN (0)
|
||||
|
||||
typedef struct {
|
||||
unsigned int * gpio0_base;
|
||||
unsigned int * gpio1_base;
|
||||
unsigned int * gpio2_base;
|
||||
unsigned int * gpio3_base;
|
||||
unsigned int * gpio4_base;
|
||||
|
||||
unsigned int * pmu1_ioc_base;
|
||||
unsigned int * pmu2_ioc_base;
|
||||
unsigned int * bus_ioc_base;
|
||||
|
||||
unsigned int * cur_base;
|
||||
unsigned int * pmu1cur_base;
|
||||
|
||||
unsigned int * vccio1_4_ioc_base;
|
||||
unsigned int * vccio3_5_ioc_base;
|
||||
unsigned int * vccio6_ioc_base;
|
||||
|
||||
unsigned int * pwm0_base;
|
||||
unsigned int * pwm1_base;
|
||||
unsigned int * pwm2_base;
|
||||
unsigned int * pwm3_base;
|
||||
unsigned int pwm_base;
|
||||
unsigned int pwm_mux;
|
||||
unsigned int pwm_mux_val;
|
||||
unsigned int pwm_mux_offset;
|
||||
unsigned int ch_period_hpr;
|
||||
unsigned int ch_duty_lpr;
|
||||
unsigned int ch_crtl;
|
||||
} rk3588_soc_info;
|
||||
|
||||
/*********** Rockchip RK3588 *************/
|
||||
|
||||
/*********** Rockchip RK3566 *************/
|
||||
|
||||
//gpio0~gpio4 register base addr
|
||||
#define RK3566_GPIO0_BASE 0xfdd60000U
|
||||
#define RK3566_GPIO1_BASE 0xfe740000U
|
||||
#define RK3566_GPIO2_BASE 0xfe750000U
|
||||
#define RK3566_GPIO3_BASE 0xfe760000U
|
||||
#define RK3566_GPIO4_BASE 0xfe770000U
|
||||
|
||||
//gpio offset
|
||||
#define RK3566_GPIO_SWPORT_DR_L_OFFSET 0x00U
|
||||
#define RK3566_GPIO_SWPORT_DR_H_OFFSET 0x04U
|
||||
#define RK3566_GPIO_SWPORT_DDR_L_OFFSET 0x08U
|
||||
#define RK3566_GPIO_SWPORT_DDR_H_OFFSET 0x0cU
|
||||
#define RK3566_GPIO_EXT_PORT_OFFSET 0x70U
|
||||
|
||||
#define RK3566_PMU_GRF_BASE 0xfdc20000U
|
||||
#define RK3566_SYS_GRF_BASE 0xfdc60000U
|
||||
#define RK3566_PMU_CRU_BASE 0xfdd00000U
|
||||
#define RK3566_CRU_BASE 0xFdd20000U
|
||||
|
||||
//clock
|
||||
#define RK3566_CRU_GATE_CON31_OFFSET 0x37CU
|
||||
#define RK3566_CRU_GATE_CON31 (RK3566_CRU_BASE + 0x37CU)
|
||||
#define RK3566_CRU_GATE_CON32_OFFSET 0x380U
|
||||
#define RK3566_CRU_GATE_CON32 (RK3566_CRU_BASE + 0x380U)
|
||||
#define RK3566_PMUCRU_PMUGATE_CON01_OFFSET 0x184U //bit 9 bit10 0 enable
|
||||
|
||||
//iomux + pull up/down
|
||||
#define RK3566_GRF_GPIO1A_IOMUX_L_OFFSET 0x00U
|
||||
#define RK3566_GRF_GPIO1A_P_OFFSET 0x80U
|
||||
#define RK3566_PMU_GRF_GPIO0A_IOMUX_L_OFFSET 0x00U
|
||||
#define RK3566_PMU_GRF_GPIO0A_P_OFFSET 0x20U
|
||||
|
||||
//pwm mux register
|
||||
#define RK3566_PWM_MUX_REG (RK3566_SYS_GRF_BASE + 0x70)
|
||||
|
||||
//pwm register base addr
|
||||
#define RK3566_PWM2_BASE 0xfe6f0000U
|
||||
#define RK3566_PWM3_BASE 0xfe700000U
|
||||
|
||||
//CH3
|
||||
#define RK3566_CH3_PERIOD_HPR (RK3566_PWM_BASE + 0x34)
|
||||
#define RK3566_CH3_DUTY_LPR (RK3566_PWM_BASE + 0x38)
|
||||
#define RK3566_CH3_CTRL (RK3566_PWM_BASE + 0x3C)
|
||||
|
||||
//for short——pwm
|
||||
#define RK3566_CRU_GATE_CON (rk3566_soc_info_t.cru_gate_con)
|
||||
#define RK3566_CRU_GATE_CON_OFFSET (rk3566_soc_info_t.cru_gate_con_offset)
|
||||
#define RK3566_PWM_BASE (rk3566_soc_info_t.pwm_base)
|
||||
#define RK3566_PWM_MUX (rk3566_soc_info_t.pwm_mux)
|
||||
#define RK3566_PWM_MUX_VAL (rk3566_soc_info_t.pwm_mux_val)
|
||||
#define RK3566_PWM_MUX_OFFSET (rk3566_soc_info_t.pwm_mux_offset)
|
||||
#define RK3566_CH_PERIOD_HPR (rk3566_soc_info_t.ch_period_hpr)
|
||||
#define RK3566_CH_DUTY_LPR (rk3566_soc_info_t.ch_duty_lpr)
|
||||
#define RK3566_CH_CTRL (rk3566_soc_info_t.ch_crtl)
|
||||
|
||||
//pwm_ctrl_offset
|
||||
#define RK3566_RPT (24) // 24 ~ 31
|
||||
#define RK3566_SCALE (16) // 16 ~ 23
|
||||
#define RK3566_PRESCALE (12) // 12 ~ 14
|
||||
#define RK3566_CLK_SRC_SEL (10)
|
||||
#define RK3566_CLK_SEL (9)
|
||||
#define RK3566_FORCE_CLK_EN (8)
|
||||
#define RK3566_CH_CNT_EN (7)
|
||||
#define RK3566_CONLOCK (6)
|
||||
#define RK3566_OUTPUT_MODE (5)
|
||||
#define RK3566_INACTIVE_POL (4)
|
||||
#define RK3566_DUTY_POL (3)
|
||||
#define RK3566_PWM_MODE (1) // 1 ~ 2
|
||||
#define RK3566_PWM_EN (0)
|
||||
|
||||
typedef struct {
|
||||
unsigned int * gpio0_base;
|
||||
unsigned int * gpio1_base;
|
||||
unsigned int * gpio2_base;
|
||||
unsigned int * gpio3_base;
|
||||
unsigned int * gpio4_base;
|
||||
|
||||
unsigned int * pmu_grf_base;
|
||||
unsigned int * sys_grf_base;
|
||||
|
||||
unsigned int * cru_base;
|
||||
unsigned int * pmu_cru_base;
|
||||
|
||||
unsigned int * pwm2_base;
|
||||
unsigned int * pwm3_base;
|
||||
unsigned int cru_gate_con;
|
||||
unsigned int cru_gate_con_offset;
|
||||
unsigned int pwm_base;
|
||||
unsigned int pwm_mux;
|
||||
unsigned int pwm_mux_val;
|
||||
unsigned int pwm_mux_offset;
|
||||
unsigned int ch_period_hpr;
|
||||
unsigned int ch_duty_lpr;
|
||||
unsigned int ch_crtl;
|
||||
} rk3566_soc_info;
|
||||
|
||||
/*********** Rockchip RK3566 *************/
|
||||
|
||||
|
||||
/*********** Rockchip RK3399 *************/
|
||||
|
||||
#define RK3399_GPIO1_BASE 0xff730000U
|
||||
#define RK3399_GPIO2_BASE 0xff780000U
|
||||
#define RK3399_GPIO4_BASE 0xff790000U
|
||||
#define RK3399_GPIO_NUM (0x40)
|
||||
#define RK3399_GPIO_BIT(x) (1UL << (x))
|
||||
#define RK3399_GPIO_SWPORTA_DR_OFFSET 0x00U
|
||||
#define RK3399_GPIO_SWPORTA_DDR_OFFSET 0x04U
|
||||
#define RK3399_GPIO_EXT_PORTA_OFFSET 0x50U
|
||||
|
||||
#define RK3399_GRF_GPIO2_3_4_P_OFFSET 0x00040U
|
||||
#define RK3399_PMUGRF_GPIO0_1_P_OFFSET 0x00040U
|
||||
|
||||
#define RK3399_PMUGRF_BASE 0xff320000U
|
||||
#define RK3399_GRF_BASE 0xff77e000U
|
||||
#define RK3399_CRU_BASE 0xff760000U
|
||||
#define RK3399_PMUCRU_BASE 0xff750000U
|
||||
#define RK3399_CRU_CLKGATE_CON31_OFFSET 0x037cU //bit 3 4 5
|
||||
#define RK3399_PMUCRU_CLKGATE_CON1_OFFSET 0x0104U
|
||||
|
||||
typedef struct {
|
||||
unsigned int * gpio2_base;
|
||||
|
||||
unsigned int * grf_base;
|
||||
unsigned int * cru_base;
|
||||
unsigned int * pmucru_base;
|
||||
unsigned int * pmugrf_base;
|
||||
unsigned int * gpio1_base;
|
||||
unsigned int * gpio4_base;
|
||||
} rk3399_soc_info;
|
||||
|
||||
/*********** Rockchip RK3399 *************/
|
||||
|
||||
|
||||
/*********** Rockchip RK3328 *************/
|
||||
|
||||
#define RK3328_GPIO2_BASE 0xff230000
|
||||
#define RK3328_GPIO3_BASE 0xff240000
|
||||
#define RK3328_GPIO_NUM (0x40)
|
||||
#define RK3328_GPIO_SWPORTA_DR_OFFSET 0x00
|
||||
#define RK3328_GPIO_SWPORTA_DDR_OFFSET 0x04
|
||||
#define RK3328_GPIO_EXT_PORTA_OFFSET 0x50
|
||||
#define RK3328_GRF_BASE 0xff100000
|
||||
#define RK3328_CRU_BASE 0xff440000
|
||||
#define RK3328_CRU_CLKGATE_CON16_OFFSET 0x0240 //bit 7 8 9 10 9877
|
||||
|
||||
typedef struct {
|
||||
unsigned int * gpio2_base;
|
||||
unsigned int * gpio3_base;
|
||||
unsigned int * cru_base;
|
||||
unsigned int * grf_base;
|
||||
} rk3328_soc_info;
|
||||
|
||||
/*********** Rockchip RK3328 *************/
|
||||
|
||||
|
||||
/*************** S905D3 ******************/
|
||||
|
||||
#define S905D3_GPIO_BASE 0xFF634000
|
||||
#define S905D3_GPIO_AO_BASE 0xFF800000
|
||||
#define S905D3_GPIO_PWM_BASE 0xFFD19000
|
||||
#define S905D3_GPIO_PWM_AO_BASE 0xFF802000
|
||||
|
||||
//GPIOA
|
||||
#define S905D3_GPIOA_OUT_EN_REG (S905D3_GPIO_BASE + 0x120)
|
||||
#define S905D3_GPIOA_OUT_REG (S905D3_GPIO_BASE + 0x121)
|
||||
#define S905D3_GPIOA_IN_REG (S905D3_GPIO_BASE + 0x122)
|
||||
#define S905D3_GPIOA_PUPD_REG (S905D3_GPIO_BASE + 0x13F)
|
||||
#define S905D3_GPIOA_PUEN_REG (S905D3_GPIO_BASE + 0x14D)
|
||||
#define S905D3_GPIOA_MUX_REG1 (S905D3_GPIO_BASE + 0x1BD)
|
||||
#define S905D3_GPIOA_MUX_REG2 (S905D3_GPIO_BASE + 0x1BE)
|
||||
|
||||
//GPIOC
|
||||
#define S905D3_GPIOC_OUT_EN_REG (S905D3_GPIO_BASE + 0x113)
|
||||
#define S905D3_GPIOC_OUT_REG (S905D3_GPIO_BASE + 0x114)
|
||||
#define S905D3_GPIOC_IN_REG (S905D3_GPIO_BASE + 0x115)
|
||||
#define S905D3_GPIOC_PUPD_REG (S905D3_GPIO_BASE + 0x13B)
|
||||
#define S905D3_GPIOC_PUEN_REG (S905D3_GPIO_BASE + 0x149)
|
||||
#define S905D3_GPIOC_MUX_REG (S905D3_GPIO_BASE + 0x1B9)
|
||||
|
||||
//GPIOH
|
||||
#define S905D3_GPIOH_OUT_EN_REG (S905D3_GPIO_BASE + 0x119)
|
||||
#define S905D3_GPIOH_OUT_REG (S905D3_GPIO_BASE + 0x11A)
|
||||
#define S905D3_GPIOH_IN_REG (S905D3_GPIO_BASE + 0x11B)
|
||||
#define S905D3_GPIOH_PUPD_REG (S905D3_GPIO_BASE + 0x13D)
|
||||
#define S905D3_GPIOH_PUEN_REG (S905D3_GPIO_BASE + 0x14B)
|
||||
#define S905D3_GPIOH_MUX_REG1 (S905D3_GPIO_BASE + 0x1BB)
|
||||
#define S905D3_GPIOH_MUX_REG2 (S905D3_GPIO_BASE + 0x1BC)
|
||||
|
||||
//GPIOAO
|
||||
#define S905D3_GPIOAO_OUT_EN_REG (S905D3_GPIO_AO_BASE + 0x109)
|
||||
#define S905D3_GPIOAO_OUT_REG (S905D3_GPIO_AO_BASE + 0x10D)
|
||||
#define S905D3_GPIOAO_IN_REG (S905D3_GPIO_AO_BASE + 0x10A)
|
||||
#define S905D3_GPIOAO_PUPD_REG (S905D3_GPIO_AO_BASE + 0x10B)
|
||||
#define S905D3_GPIOAO_PUEN_REG (S905D3_GPIO_AO_BASE + 0x10C)
|
||||
#define S905D3_GPIOAO_MUX_REG1 (S905D3_GPIO_AO_BASE + 0x105)
|
||||
#define S905D3_GPIOAO_MUX_REG2 (S905D3_GPIO_AO_BASE + 0x106)
|
||||
|
||||
//for short——gpio
|
||||
#define S905D3_GPIO_OUT_EN (s905d3_gpio_info_t.gpio_out_en)
|
||||
#define S905D3_GPIO_OUT (s905d3_gpio_info_t.gpio_out)
|
||||
#define S905D3_GPIO_IN (s905d3_gpio_info_t.gpio_in)
|
||||
#define S905D3_GPIO_PUPD (s905d3_gpio_info_t.gpio_pupd)
|
||||
#define S905D3_GPIO_PUEN (s905d3_gpio_info_t.gpio_puen)
|
||||
#define S905D3_GPIO_MUX (s905d3_gpio_info_t.gpio_mux)
|
||||
#define S905D3_GPIO_OUT_EN_OFFSET (s905d3_gpio_info_t.gpio_out_en_offset)
|
||||
#define S905D3_GPIO_OUT_OFFSET (s905d3_gpio_info_t.gpio_out_offset)
|
||||
#define S905D3_GPIO_IN_OFFSET (s905d3_gpio_info_t.gpio_in_offset)
|
||||
#define S905D3_GPIO_PUPD_OFFSET (s905d3_gpio_info_t.gpio_pupd_offset)
|
||||
#define S905D3_GPIO_PUEN_OFFSET (s905d3_gpio_info_t.gpio_puen_offset)
|
||||
#define S905D3_GPIO_MUX_OFFSET (s905d3_gpio_info_t.gpio_mux_offset)
|
||||
|
||||
//PWM
|
||||
#define S905D3_PWM_DUTY_CYCLE_F_REG (S905D3_GPIO_PWM_BASE + 0x01)
|
||||
#define S905D3_PWM_MISC_EF_REG (S905D3_GPIO_PWM_BASE + 0x02)
|
||||
#define S905D3_PWM_DUTY_CYCLE_AO_C_REG (S905D3_GPIO_PWM_AO_BASE)
|
||||
#define S905D3_PWM_MISC_AO_CD_REG (S905D3_GPIO_PWM_AO_BASE + 0x02)
|
||||
|
||||
//for short——pwm
|
||||
#define S905D3_PWM_DUTY_CYCLE (s905d3_gpio_info_t.pwm_duty_cycle)
|
||||
#define S905D3_PWM_MISC (s905d3_gpio_info_t.pwm_misc)
|
||||
|
||||
//PWM_MISC_OFFSET
|
||||
#define S905D3_PWM_CLK_EN_1 (23)
|
||||
#define S905D3_PWM_CLK_DIV_1 (16) // 22 ~ 16
|
||||
#define S905D3_PWM_CLK_EN_0 (15)
|
||||
#define S905D3_PWM_CLK_DIV_0 (8) // 8 ~ 14
|
||||
#define S905D3_PWM_CLK_SEL_1 (6) // 7 ~ 6
|
||||
#define S905D3_PWM_CLK_SEL_0 (4) // 5 ~ 4
|
||||
#define S905D3_PWM_EN_1 (1)
|
||||
#define S905D3_PWM_EN_0 (0)
|
||||
|
||||
typedef struct {
|
||||
unsigned int * gpio_base;
|
||||
unsigned int * gpio_ao_base;
|
||||
unsigned int * gpio_pwm_base;
|
||||
unsigned int * gpio_pwm_ao_base;
|
||||
unsigned int gpio_out_en;
|
||||
unsigned int gpio_out;
|
||||
unsigned int gpio_in;
|
||||
unsigned int gpio_pupd;
|
||||
unsigned int gpio_puen;
|
||||
unsigned int gpio_mux;
|
||||
unsigned int gpio_out_en_offset;
|
||||
unsigned int gpio_out_offset;
|
||||
unsigned int gpio_in_offset;
|
||||
unsigned int gpio_pupd_offset;
|
||||
unsigned int gpio_puen_offset;
|
||||
unsigned int gpio_mux_offset;
|
||||
unsigned int pwm_duty_cycle;
|
||||
unsigned int pwm_misc;
|
||||
} s905d3_gpio_info;
|
||||
|
||||
/*************** S905D3 ******************/
|
||||
|
||||
|
||||
// Mask for the bottom 64 pins which belong to the Raspberry Pi
|
||||
// The others are available for the other devices
|
||||
@ -639,51 +236,10 @@ extern int wiringPiDebug;
|
||||
// Pi model types and version numbers
|
||||
// Intended for the GPIO program Use at your own risk.
|
||||
|
||||
/* Allwinner H6 */
|
||||
#define PI_MODEL_3 0
|
||||
#define PI_MODEL_LTIE_2 1
|
||||
/* Allwinner H618 */
|
||||
#define PI_MODEL_ZERO 0
|
||||
#define PI_MODEL_BERRY 1
|
||||
|
||||
/* Allwinner H2+ */
|
||||
#define PI_MODEL_ZERO 2
|
||||
|
||||
/* Allwinner H3 */
|
||||
#define PI_MODEL_H3 3
|
||||
#define PI_MODEL_ZERO_PLUS_2 4
|
||||
|
||||
/* Allwinner A64 */
|
||||
#define PI_MODEL_WIN 5
|
||||
|
||||
/* Allwinner H5 */
|
||||
#define PI_MODEL_PRIME 6
|
||||
#define PI_MODEL_PC_2 7
|
||||
#define PI_MODEL_ZERO_PLUS 8
|
||||
|
||||
/* Allwinner H616 */
|
||||
#define PI_MODEL_ZERO_2 9
|
||||
#define PI_MODEL_ZERO_2_W 10
|
||||
|
||||
|
||||
/* Rockchip RK3399 */
|
||||
#define PI_MODEL_800 15
|
||||
#define PI_MODEL_4 16
|
||||
#define PI_MODEL_4_LTS 17
|
||||
#define PI_MODEL_RK3399 18
|
||||
|
||||
/* Rockchip RK3328 */
|
||||
#define PI_MODEL_R1_PLUS 22
|
||||
|
||||
/* Rockchip RK3588(s) */
|
||||
#define PI_MODEL_900 23
|
||||
#define PI_MODEL_5 24
|
||||
#define PI_MODEL_5B 25
|
||||
#define PI_MODEL_5_PLUS 26
|
||||
|
||||
/* Rockchip RK3566 */
|
||||
#define PI_MODEL_CM4 27
|
||||
#define PI_MODEL_3B 28
|
||||
|
||||
/* S905D3 */
|
||||
#define PI_MODEL_3_PLUS 29
|
||||
|
||||
extern const char *piModelNames [16] ;
|
||||
|
||||
@ -760,7 +316,7 @@ extern "C" {
|
||||
|
||||
// Internal
|
||||
|
||||
#ifdef CONFIG_ORANGEPI
|
||||
#ifdef CONFIG_BANANAPI
|
||||
extern void piGpioLayoutOops (const char *why);
|
||||
#endif
|
||||
|
||||
@ -802,9 +358,6 @@ extern int physPinToGpio(int physPin) ;
|
||||
extern void setPadDrive(int group, int value) ;
|
||||
extern int getAlt(int pin) ;
|
||||
extern void H618_set_pwm_reg(int pin,sunxi_gpio_info *sunxi_gpio_info_ptr) ;
|
||||
extern void s905d3_set_gpio_reg(int pin,s905d3_gpio_info *s905d3_gpio_info_ptr) ;
|
||||
extern void rk3588_set_pwm_reg(int pin,rk3588_soc_info *rk3588_soc_info_ptr) ;
|
||||
extern void rk3566_set_pwm_reg(int pin,rk3566_soc_info *rk3566_soc_info_ptr) ;
|
||||
extern void sunxi_pwm_set_enable(int en) ;
|
||||
extern void pwmToneWrite(int pin, int freq) ;
|
||||
extern void pwmSetMode(int pin,int mode) ;
|
||||
@ -841,12 +394,12 @@ extern unsigned int micros (void) ;
|
||||
|
||||
extern unsigned int readR(unsigned int addr);
|
||||
extern void writeR(unsigned int val, unsigned int addr);
|
||||
extern int OrangePi_get_gpio_mode(int pin);
|
||||
extern int OrangePi_set_gpio_mode(int pin, int mode);
|
||||
extern int OrangePi_digitalRead(int pin);
|
||||
extern int OrangePi_digitalWrite(int pin, int value);
|
||||
extern int OrangePi_set_gpio_alt(int pin, int mode);
|
||||
extern void OrangePi_set_gpio_pullUpDnControl (int pin, int pud);
|
||||
extern int BananaPi_get_gpio_mode(int pin);
|
||||
extern int BananaPi_set_gpio_mode(int pin, int mode);
|
||||
extern int BananaPi_digitalRead(int pin);
|
||||
extern int BananaPi_digitalWrite(int pin, int value);
|
||||
extern int BananaPi_set_gpio_alt(int pin, int mode);
|
||||
extern void BananaPi_set_gpio_pullUpDnControl (int pin, int pud);
|
||||
extern void sunxi_pwm_set_act(int pin,int act_cys);
|
||||
extern void sunxi_pwm_set_period(int pin,unsigned int period_cys);
|
||||
extern void sunxi_pwm_set_clk(int pin,int clk);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user