From 4c16ef29b96a2e5d704bd3d8e0667ebd0516cc23 Mon Sep 17 00:00:00 2001 From: leeboby Date: Thu, 27 Feb 2020 16:50:01 +0800 Subject: [PATCH] Support Orange Pi Zero Plus 2 (H3&H5) --- build | 2 +- examples/blink.c | 4 +- examples/w25q64_test.c | 4 +- gpio/Makefile | 18 ++- gpio/OrangePi.c | 271 +++++++++++++++++++++-------------------- gpio/gpio.c | 4 +- wiringPi/Makefile | 18 ++- wiringPi/OrangePi.c | 12 +- wiringPi/OrangePi.h | 6 +- wiringPi/wiringPi.c | 2 +- wiringPi/wiringPiSPI.c | 2 +- 11 files changed, 184 insertions(+), 159 deletions(-) diff --git a/build b/build index 0db9185..e004b7c 100755 --- a/build +++ b/build @@ -49,7 +49,7 @@ select_boards() local choice local call=${1} - boards=("OrangePi_PC2" "OrangePi_ZEROPLUS" "OrangePi_PRIME" "OrangePi_A64" "OrangePi_ZERO" "OrangePi_H3" "OrangePi_LITE2" "OrangePi_H3_ZEROPLUS2" "OrangePi_3" "OrangePi_RK3399" "OrangePi_ONEPLUS" "OrangePi_4") + boards=("OrangePi_R1" "OrangePi_ZERO" "OrangePi_H3" "OrangePi_ZEROPLUS2_H3" "OrangePi_PC2" "OrangePi_PRIME" "OrangePi_ZEROPLUS" "OrangePi_ZEROPLUS2_H5" "OrangePi_A64" "OrangePi_3" "OrangePi_LITE2" "OrangePi_ONEPLUS" "OrangePi_4" "OrangePi_RK3399") printf "All available boards:\n" for var in ${boards[@]} ; do diff --git a/examples/blink.c b/examples/blink.c index 8e10710..d031b47 100644 --- a/examples/blink.c +++ b/examples/blink.c @@ -1,8 +1,8 @@ #include #include -//#define NUM 17 -#define NUM 28 +#define NUM 17 +//#define NUM 28 int main (void) { diff --git a/examples/w25q64_test.c b/examples/w25q64_test.c index 7cb31af..5d0245e 100644 --- a/examples/w25q64_test.c +++ b/examples/w25q64_test.c @@ -13,8 +13,8 @@ #include #include "w25q64.h" -#define SPI_CHANNEL 0 // /dev/spidev0.0 -//#define SPI_CHANNEL 1 // /dev/spidev0.1 +//#define SPI_CHANNEL 0 // /dev/spidev0.0 +#define SPI_CHANNEL 1 // /dev/spidev0.1 // // 書込みデータのダンプリスト diff --git a/gpio/Makefile b/gpio/Makefile index c68541d..a85bc4f 100755 --- a/gpio/Makefile +++ b/gpio/Makefile @@ -50,7 +50,8 @@ ifeq ($(PLATFORM),) #PLATFORM = OrangePi_H3 #PLATFORM = OrangePi_LITE2 PLATFORM = OrangePi_ONEPLUS - #PLATFORM = OrangePi_H3_ZEROPLUS2 + #PLATFORM = OrangePi_ZEROPLUS2_H3 + #PLATFORM = OrangePi_ZEROPLUS2_H5 #PLATFORM = OrangePi_3 #PLATFORM = OrangePi_RK3399 endif @@ -105,8 +106,13 @@ EXTRA_CFLAGS = -DCONFIG_ORANGEPI_3 EXTRA_CFLAGS += -DCONFIG_ORANGEPI endif -ifeq ($(PLATFORM), OrangePi_H3_ZEROPLUS2) -EXTRA_CFLAGS = -DCONFIG_ORANGEPI_H3_ZEROPLUS2 +ifeq ($(PLATFORM), OrangePi_ZEROPLUS2_H3) +EXTRA_CFLAGS = -DCONFIG_ORANGEPI_ZEROPLUS2_H3 +EXTRA_CFLAGS += -DCONFIG_ORANGEPI +endif + +ifeq ($(PLATFORM), OrangePi_ZEROPLUS2_H5) +EXTRA_CFLAGS = -DCONFIG_ORANGEPI_ZEROPLUS2_H5 EXTRA_CFLAGS += -DCONFIG_ORANGEPI endif @@ -165,7 +171,11 @@ ifeq ($(PLATFORM), OrangePi_3) SRC += OrangePi.c endif -ifeq ($(PLATFORM), OrangePi_H3_ZEROPLUS2) +ifeq ($(PLATFORM), OrangePi_ZEROPLUS2_H3) + SRC += OrangePi.c +endif + +ifeq ($(PLATFORM), OrangePi_ZEROPLUS2_H5) SRC += OrangePi.c endif diff --git a/gpio/OrangePi.c b/gpio/OrangePi.c index d2b28aa..21bf26a 100755 --- a/gpio/OrangePi.c +++ b/gpio/OrangePi.c @@ -37,26 +37,26 @@ char *physNames[64] = { NULL, - " 3.3v", "5v ", - " SDA.0", "5v ", + " 3.3V", "5V ", + " SDA.0", "5V ", " SCL.0", "GND ", - " PWM1", "PC05 ", + " PWM.1", "PC05 ", " GND", "PC06 ", - " RxD.2", "PD14 ", - " TxD.2", "GND ", + " RXD.2", "PD14 ", + " TXD.2", "GND ", " CTS.2", "PC04 ", - " 3.3v", "PC07 ", + " 3.3V", "PC07 ", " MOSI.1", "GND ", " MISO.1", "RTS.2 ", - " SCLK.1", "CS.1 ", + " SCLK.1", "CE.1 ", " GND", "PA21 ", " SDA.1", "SCL.1 ", " PA07", "GND ", " PA08", "RTS.1 ", " PA09", "GND ", " PA10", "CTS.1 ", - " PD11", "TxD.1 ", - " GND", "RxD.1 ", + " PD11", "TXD.1 ", + " GND", "RXD.1 ", NULL, NULL, NULL, NULL, NULL, NULL, @@ -101,18 +101,18 @@ char *physNames[64] = { NULL, - " 3.3v", "5v ", - " SDA.0", "5v ", + " 3.3V", "5V ", + " SDA.0", "5V ", " SCL.0", "GND ", - " PWM1", "PC05 ", + " PWM.1", "PC05 ", " GND", "PC06 ", - " RxD.2", "PD14 ", - " TxD.2", "GND ", + " RXD.2", "PD14 ", + " TXD.2", "GND ", " CTS.2", "PC04 ", - " 3.3v", "PC07 ", + " 3.3V", "PC07 ", " MOSI.1", "GND ", " MISO.1", "RTS.2 ", - " SCLK.1", "CS.1 ", + " SCLK.1", "CE.1 ", " GND", "PC08 ", " SDA.1", "SCL.1 ", " PA07", "GND ", @@ -168,18 +168,18 @@ char *physNames[64] = { NULL, - " 3.3v", "5v ", - " SDA.0", "5v ", + " 3.3V", "5V ", + " SDA.0", "5V ", " SCL.0", "GND ", - " PA6", "TxD.1 ", - " GND", "RxD.1 ", + " PA6", "TXD.1 ", + " GND", "RXD.1 ", " RXD.2", "PA07 ", " TXD.2", "GND ", " CTS.2", "SDA.1 ", - " 3.3v", "SCL.1 ", + " 3.3V", "SCL.1 ", " MOSI.1", "GND ", " MISO.1", "RTS.2 ", - " SCLK.1", "CS.1 ", + " SCLK.1", "CE.1 ", " GND", "PA10 ", NULL, NULL, @@ -208,26 +208,26 @@ char *physNames[64] = { NULL, - " 3.3v", "5v ", + " 3.3V", "5V ", " SDA.0", "5V ", - " SCL.0", "0v ", - " GPIO.7", "TxD2 ", - " 0v", "RxD2 ", - " RxD1", "GPIO.1 ", - " TxD1", "0v ", - " CTS1", "GPIO.4 ", - " 3.3v", "GPIO.5 ", - " SPI2_DI", "0v ", - "SPI2_DIO", "RTS1 ", - "SPI2_CLK", "SPI2_CS0", - " 0v", "SPI2_CS1", + " SCL.0", "GND ", + " GPIO.7", "TXD.2 ", + " GND", "RXD.2 ", + " RXD.1", "GPIO.1 ", + " TXD.1", "GND ", + " CTS.1", "GPIO.4 ", + " 3.3V", "GPIO.5 ", + " SDI.2", "GND ", + " SDIO.2", "RTS1 ", + " SCLK.2", "CE.0 ", + " GND", "CE.1 ", " SDA.1", "SCL.1 ", - " GPIO.21", "0v ", - " GPIO.22", "RTS2 ", - " GPIO.23", "0v ", - " GPIO.24", "CTS2 ", + " GPIO.21", "GND ", + " GPIO.22", "RTS.2 ", + " GPIO.23", "GND ", + " GPIO.24", "CTS.2 ", " GPIO.25", "SCL.2 ", - " 0v", "SDA.2 ", + " GND", "SDA.2 ", NULL, NULL, NULL, NULL, NULL, NULL, @@ -271,26 +271,26 @@ char *physNames [64] = { NULL, - " 3.3v", "5v ", + " 3.3V", "5V ", " SDA.1", "5V ", - " SCL.1", "0v ", + " SCL.1", "GND ", " GPIO.7", "S_TX ", - " 0v", "S_RX ", - " RxD3", "GPIO.1 ", - " TxD3", "0v ", + " GND", "S_RX ", + " RXD3", "GPIO.1 ", + " TXD3", "GND ", " CTS3", "GPIO.4 ", - " 3.3v", "GPIO.5 ", - " MOSI", "0v ", + " 3.3V", "GPIO.5 ", + " MOSI", "GND ", " MISO", "RTS3 ", " SCLK", "CE0 ", - " 0v", "GPIO.11 ", + " GND", "GPIO.11 ", " SDA.2", "SCL.2 ", - " GPIO.21", "0v ", + " GPIO.21", "GND ", " GPIO.22", "RTS2 ", - " GPIO.23", "0v ", + " GPIO.23", "GND ", " GPIO.24", "CTS2 ", - " GPIO.25", "TxD2 ", - " 0v", "RxD2 ", + " GPIO.25", "TXD2 ", + " GND", "RXD2 ", NULL, NULL, NULL, NULL, NULL, NULL, @@ -365,38 +365,38 @@ char *physNames[64] = { NULL, - " 3.3v", "5v ", + " 3.3V", "5V ", " SDA.0", "5V ", - " SCL.0", "0v ", - " PA6", "TxD3 ", - " 0v", "RxD3 ", - " RxD2", "PD14 ", - " TxD2", "0v ", - " CTS2", "PC04 ", - " 3.3v", "PC07 ", - " MOSI", "0v ", - " MISO", "RTS2 ", - " SCLK", "CE0 ", - " 0v", "PA21 ", + " SCL.0", "GND ", + " PA6", "TXD.3 ", + " GND", "RXD.3 ", + " RXD.2", "PD14 ", + " TXD.2", "GND ", + " CTS.2", "PC04 ", + " 3.3V", "PC07 ", + " MOSI.0", "GND ", + " MISO.0", "RTS.2 ", + " SCLK.0", "CE.0 ", + " GND", "PA21 ", " SDA.1", "SCL.1 ", - " PA07", "0v ", - " PA08", "RTS1 ", - " PA09", "0v ", - " PA10", "CTS1 ", - " PA20", "TxD1 ", - " 0v", "RxD1 ", + " PA07", "GND ", + " PA08", "RTS.1 ", + " PA09", "GND ", + " PA10", "CTS.1 ", + " PA20", "TXD.1 ", + " GND", "RXD.1 ", " PA04", "PA05 ", NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL, + NULL, NULL, NULL, NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, }; #endif -#ifdef CONFIG_ORANGEPI_H3_ZEROPLUS2 +#if CONFIG_ORANGEPI_ZEROPLUS2_H3 || CONFIG_ORANGEPI_ZEROPLUS2_H5 int physToWpi [64] = //return wiringPI pin { -1, // 0 @@ -432,19 +432,19 @@ char *physNames[64] = { NULL, - " 3.3v", "5v ", - " SDA.0", "5v ", - " SCL.0", "0v ", - " PA6", "TxD2 ", - " 0v", "RxD2 ", - " S-TWI", "PD11 ", - " S-SDA", "0v ", - " CTS2", "SDA.1 ", - " 3.3v", "SCL.1 ", - " MOSI.1", "0v ", - " MISO.1", "RTS2 ", - " SCLK.1", "CS.1 ", - " 0v", "PD14 ", + " 3.3V", "5V ", + " SDA.0", "5V ", + " SCL.0", "GND ", + " PA6", "TXD.2 ", + " GND", "RXD.2 ", + " S-SCL", "PD11 ", + " S-SDA", "GND ", + " CTS.2", "SDA.1 ", + " 3.3V", "SCL.1 ", + " MOSI.1", "GND ", + " MISO.1", "RTS.2 ", + " SCLK.1", "CE.1 ", + " GND", "PD14 ", NULL, NULL, NULL, NULL, @@ -465,7 +465,7 @@ char *physNames[64] = NULL, NULL, NULL, }; -#endif +#endif /* ZERO_PLUS2 */ #ifdef CONFIG_ORANGEPI_ZERO @@ -502,15 +502,15 @@ char *physNames[64] = { NULL, - " 3.3v", "5v ", + " 3.3V", "5V ", " SDA.0", "5V ", - " SCL.0", "0v ", + " SCL.0", "GND ", " PWM.1", "TXD.1 ", - " GND", "RxD.1 ", - " RxD.2", "PA07 ", - " TxD.2", "GND ", + " GND", "RXD.1 ", + " RXD.2", "PA07 ", + " TXD.2", "GND ", " CTS.2", "SDA.1 ", - " 3.3v", "SCK.1 ", + " 3.3V", "SCK.1 ", " MOSI.1", "GND ", " MISO.1", "RTS.2 ", " SCLK.1", "CS.1 ", @@ -565,19 +565,19 @@ char *physNames [64] = { NULL, - " 3.3v", "5v ", + " 3.3V", "5V ", " SDA.1", "5V ", - " SCL.1", "0v ", + " SCL.1", "GND ", " PWM1", "PD21 ", - " 0v", "PD22 ", - " RxD3", "PC09 ", - " TxD3", "0v ", + " GND", "PD22 ", + " RXD3", "PC09 ", + " TXD3", "GND ", " CTS3", "PC08 ", - " 3.3v", "PC07 ", - " MOSI.0", "0v ", + " 3.3V", "PC07 ", + " MOSI.0", "GND ", " MISO.0", "RTS3 ", " SCLK.0", "CE.0 ", - " 0v", "PH03 ", + " GND", "PH03 ", NULL, NULL, NULL, NULL, @@ -628,19 +628,19 @@ char *physNames [64] = { NULL, - " 3.3v", "5v ", + " 3.3V", "5V ", " SDA.0", "5V ", - " SCL.0", "0v ", + " SCL.0", "GND ", " PWM0", "PL02 ", - " 0v", "PL03 ", - " RxD3", "PD18 ", - " TxD3", "0v ", + " GND", "PL03 ", + " RXD3", "PD18 ", + " TXD3", "GND ", " PL10", "PD15 ", - " 3.3v", "PD16 ", - " MOSI.1", "0v ", + " 3.3V", "PD16 ", + " MOSI.1", "GND ", " MISO.1", "PD21 ", " SCLK.1", "CE.1 ", - " 0v", "PL08 ", + " GND", "PL08 ", NULL, NULL, NULL, NULL, @@ -721,26 +721,26 @@ int physToWpi[64] = char *physNames[64] = { NULL, - " 3.3v", "5v ", + " 3.3V", "5V ", " SDA.0", "5V ", - " SCL.0", "0v ", + " SCL.0", "GND ", " GPIO4", "Tx ", - " 0v", "Rx ", + " GND", "Rx ", " GPIO17", "GPIO18 ", - " GPIO27", "0v ", + " GPIO27", "GND ", " GPIO22", "GPIO23 ", - " 3.3v", "GPIO24 ", - " MOSI", "0v ", + " 3.3V", "GPIO24 ", + " MOSI", "GND ", " MISO", "GPIO25 ", " SCLK", "CS0 ", - " 0v", "CS1 ", + " GND", "CS1 ", " DNP1", "DNP2 ", - " GPIO5", "0v ", + " GPIO5", "GND ", " GPIO6", "GPIO12 ", - " GPIO13", "0v ", + " GPIO13", "GND ", " GPIO19", "GPIO16 ", " GPIO26", "GPIO20 ", - " 0v", "GPIO21 ", + " GND", "GPIO21 ", NULL, NULL, NULL, NULL, NULL, NULL, @@ -813,26 +813,26 @@ int physToWpi[64] = char *physNames[64] = { NULL, - " 3.3v", "5v ", + " 3.3V", "5V ", "I2C2_SDA", "5V ", - "I2C2_SCL", "0v ", + "I2C2_SCL", "GND ", " PWM1", "I2C3_SCL", - " 0v", "I2C3_SDA", + " GND", "I2C3_SDA", "GPIO1_A1", "GPIO1_C2", - "GPIO1_A3", "0v ", + "GPIO1_A3", "GND ", "GPIO2_D4", "GPIO1_C6", - " 3.3v", "GPIO1_C7", - "SPI1_TXD", "0v ", + " 3.3V", "GPIO1_C7", + "SPI1_TXD", "GND ", "SPI1_RXD", "GPIO1_D0", "SPI1_CLK", "SPI1_CS ", - " 0v", "GPIO4_C5", + " GND", "GPIO4_C5", "I2C2_SDA", "I2C2_SCL", - " I2S0_RX", "0v ", + " I2S0_RX", "GND ", " I2S0_TX", "I2S_CLK ", - "I2S0_SCK", "0v ", + "I2S0_SCK", "GND ", "I2S0_SI0", "I2S0_SO0", "I2S0_SI1", "I2S0_SI2", - " 0v", "I2S0_SI3", + " GND", "I2S0_SI3", NULL, NULL, NULL, NULL, NULL, NULL, @@ -861,10 +861,14 @@ void OrangePiReadAll(void) printf (" +------+-----+----------+------+---+ PRIME +---+------+----------+-----+------+\n"); #elif CONFIG_ORANGEPI_ZEROPLUS printf (" +------+-----+----------+------+---+ ZEROPLUS +---+------+----------+-----+------+\n"); +#elif CONFIG_ORANGEPI_ZEROPLUS2_H5 + printf (" +------+-----+----------+------+---+ZEROPLUS 2+---+------+----------+-----+------+\n"); #elif CONFIG_ORANGEPI_2G_IOT printf (" +-----+-----+----------+------+---+OrangePi 2G-IOT+---+---+------+---------+-----+--+\n"); -#elif CONFIG_ORANGEPI_H3 || CONFIG_ORANGEPI_H3_ZEROPLUS2 +#elif CONFIG_ORANGEPI_H3 printf (" +------+-----+----------+------+---+OrangePiH3+---+------+----------+-----+------+\n"); +#elif CONFIG_ORANGEPI_ZEROPLUS2_H3 + printf (" +------+-----+----------+------+---+ZEROPLUS 2+---+------+----------+-----+------+\n"); #elif CONFIG_ORANGEPI_ZERO printf (" +------+-----+----------+------+---+OrangePi Zero+---+---+------+---------+-----+--+\n"); #elif CONFIG_ORANGEPI_A64 @@ -880,10 +884,10 @@ void OrangePiReadAll(void) printf (" | GPIO | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | GPIO |\n"); printf (" +------+-----+----------+------+---+----++----+---+------+----------+-----+------+\n"); -#if defined CONFIG_ORANGEPI_H3 || defined CONFIG_ORANGEPI_RK3399 || CONFIG_ORANGEPI_4 || CONFIG_ORANGEPI_PC2 || CONFIG_ORANGEPI_PRIME +#if defined CONFIG_ORANGEPI_H3 || defined CONFIG_ORANGEPI_RK3399 || CONFIG_ORANGEPI_4 || CONFIG_ORANGEPI_PC2 || CONFIG_ORANGEPI_PRIME || CONFIG_ORANGEPI_A64 for (pin = 1 ; pin <= 40; pin += 2) -#elif CONFIG_ORANGEPI_LITE2 || CONFIG_ORANGEPI_H3_ZEROPLUS2 || CONFIG_ORANGEPI_3 || CONFIG_ORANGEPI_ZERO || CONFIG_ORANGEPI_ZEROPLUS || CONFIG_ORANGEPI_H5_ZEROPLUS2 || CONFIG_ORANGEPI_R1 +#elif CONFIG_ORANGEPI_LITE2 || CONFIG_ORANGEPI_ZEROPLUS2_H3 || CONFIG_ORANGEPI_3 || CONFIG_ORANGEPI_ZERO || CONFIG_ORANGEPI_ZEROPLUS || CONFIG_ORANGEPI_R1 || CONFIG_ORANGEPI_ZEROPLUS2_H5 for (pin = 1 ; pin <= 26; pin += 2) #endif readallPhys(pin); @@ -896,10 +900,14 @@ void OrangePiReadAll(void) printf (" +------+-----+----------+------+---+ PRIME +---+------+----------+-----+------+\n"); #elif CONFIG_ORANGEPI_ZEROPLUS printf (" +------+-----+----------+------+---+ ZEROPLUS +---+------+----------+-----+------+\n"); +#elif CONFIG_ORANGEPI_ZEROPLUS2_H5 + printf (" +------+-----+----------+------+---+ZEROPLUS 2+---+------+----------+-----+------+\n"); #elif CONFIG_ORANGEPI_2G_IOT printf (" +------+-----+----------+------+---+OrangePi 2G-IOT+---+------+----------+-----+-----+\n"); -#elif CONFIG_ORANGEPI_H3 || CONFIG_ORANGEPI_H3_ZEROPLUS2 +#elif CONFIG_ORANGEPI_H3 printf (" +------+-----+----------+------+---+OrangePiH3+---+------+----------+-----+------+\n"); +#elif CONFIG_ORANGEPI_ZEROPLUS2_H3 + printf (" +------+-----+----------+------+---+ZEROPLUS 2+---+------+----------+-----+------+\n"); #elif CONFIG_ORANGEPI_ZERO printf (" +------+-----+----------+------+---+OrangePi Zero+---+------+----------+-----+-----+\n"); #elif CONFIG_ORANGEPI_A64 @@ -911,7 +919,6 @@ void OrangePiReadAll(void) #elif CONFIG_ORANGEPI_4 printf (" +------+-----+----------+------+---+OrangePi 4---+---+------+---------+-----+--+\n"); - #endif wiringPiDebug = tmp; } diff --git a/gpio/gpio.c b/gpio/gpio.c index 0d092de..79428f1 100755 --- a/gpio/gpio.c +++ b/gpio/gpio.c @@ -77,11 +77,11 @@ const char *piModelNames[6] = "Compute Module", #ifdef CONFIG_ORANGEPI_2G_IOT "OrangePi 2G-IOT", -#elif CONFIG_ORANGEPI_PC2 +#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_H3_ZEROPLUS2 +#elif CONFIG_ORANGEPI_H3 || CONFIG_ORANGEPI_ZEROPLUS2_H3 "OrangePi H3 family", #elif CONFIG_ORANGEPI_ZERO "OrangePi Zero", diff --git a/wiringPi/Makefile b/wiringPi/Makefile index 7dcfbce..6e9f12d 100755 --- a/wiringPi/Makefile +++ b/wiringPi/Makefile @@ -54,7 +54,8 @@ ifeq ($(PLATFORM),) #PLATFORM = OrangePi_LITE2 PLATFORM = OrangePi_ONEPLUS #PLATFORM = OrangePi_ZERO - #PLATFORM = OrangePi_H3_ZEROPLUS2 + #PLATFORM = OrangePi_ZEROPLUS2_H3 + #PLATFORM = OrangePi_ZEROPLUS2_H5 #PLATFORM = OrangePi_3 #PLATFORM = OrangePi_RK3399 endif @@ -109,8 +110,13 @@ EXTRA_CFLAGS = -DCONFIG_ORANGEPI_3 EXTRA_CFLAGS += -DCONFIG_ORANGEPI endif -ifeq ($(PLATFORM), OrangePi_H3_ZEROPLUS2) -EXTRA_CFLAGS = -DCONFIG_ORANGEPI_H3_ZEROPLUS2 +ifeq ($(PLATFORM), OrangePi_ZEROPLUS2_H3) +EXTRA_CFLAGS = -DCONFIG_ORANGEPI_ZEROPLUS2_H3 +EXTRA_CFLAGS += -DCONFIG_ORANGEPI +endif + +ifeq ($(PLATFORM), OrangePi_ZEROPLUS2_H5) +EXTRA_CFLAGS = -DCONFIG_ORANGEPI_ZEROPLUS2_H5 EXTRA_CFLAGS += -DCONFIG_ORANGEPI endif @@ -185,7 +191,11 @@ ifeq ($(PLATFORM), OrangePi_3) SRC += OrangePi.c endif -ifeq ($(PLATFORM), OrangePi_H3_ZEROPLUS2) +ifeq ($(PLATFORM), OrangePi_ZEROPLUS2_H3) +SRC += OrangePi.c +endif + +ifeq ($(PLATFORM), OrangePi_ZEROPLUS2_H5) SRC += OrangePi.c endif diff --git a/wiringPi/OrangePi.c b/wiringPi/OrangePi.c index e427e00..38d6ef1 100755 --- a/wiringPi/OrangePi.c +++ b/wiringPi/OrangePi.c @@ -599,7 +599,7 @@ int ORANGEPI_PIN_MASK[9][32] = //[BANK] [INDEX] }; #endif -#ifdef CONFIG_ORANGEPI_H3_ZEROPLUS2 +#if CONFIG_ORANGEPI_ZEROPLUS2_H3 || CONFIG_ORANGEPI_ZEROPLUS2_H5 int pinToGpioOrangePi [64] = { 12, 11, 6, 0, 1, 352, 107, 353, 3, // From the Original Wiki - GPIO 0 through 7: wpi 0 - 7 @@ -612,8 +612,6 @@ int pinToGpioOrangePi [64] = -1, -1, // wpi 26, 27 -1, -1, //PA4, PA5(PWM0) wpi 28, 29 - -1, -1, // B+ wpi 30, 31 - // Padding: -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, // ... 47 @@ -1185,11 +1183,11 @@ const char *piModelNames[6] = "Compute Module", #ifdef CONFIG_ORANGEPI_2G_IOT "OrangePi 2G-IOT", -#elif CONFIG_ORANGEPI_PC2 || CONFIG_ORANGEPI_ZEROPLUS || CONFIG_ORANGEPI_H5_ZEROPLUS2 || CONFIG_ORANGEPI_PRIME +#elif CONFIG_ORANGEPI_PC2 || CONFIG_ORANGEPI_ZEROPLUS || CONFIG_ORANGEPI_ZEROPLUS2_H5 || CONFIG_ORANGEPI_PRIME "OrangePi H5 family", #elif CONFIG_ORANGEPI_A64 "OrangePi Win/Winplus", -#elif CONFIG_ORANGEPI_H3 || CONFIG_ORANGEPI_H3_ZEROPLUS2 +#elif CONFIG_ORANGEPI_H3 || CONFIG_ORANGEPI_ZEROPLUS2_H3 "OrangePi H3 family", #elif CONFIG_ORANGEPI_ZERO "OrangePi H2+ family", @@ -1854,13 +1852,13 @@ int isOrangePi(void) #ifdef CONFIG_ORANGEPI_2G_IOT /* Support: OrangePi 2G-IOT and OrangePi i96 */ char *OrangePi_string = "rda8810"; -#elif CONFIG_ORANGEPI_PC2 || CONFIG_ORANGEPI_ZEROPLUS || CONFIG_ORANGEPI_H5_ZEROPLUS2 || CONFIG_ORANGEPI_PRIME +#elif CONFIG_ORANGEPI_PC2 || CONFIG_ORANGEPI_ZEROPLUS || CONFIG_ORANGEPI_ZEROPLUS2_H5 || CONFIG_ORANGEPI_PRIME /* Support: OrangePi PC2 */ char *OrangePi_string = "sun50iw2"; #elif CONFIG_ORANGEPI_A64 /* Support: OrangePi Win/Win plus */ char *OrangePi_string = "sun50iw1"; -#elif CONFIG_ORANGEPI_H3 || CONFIG_ORANGEPI_H3_ZEROPLUS2 +#elif CONFIG_ORANGEPI_H3 || CONFIG_ORANGEPI_ZEROPLUS2_H3 /* Support: OrangePi Win/Win plus */ char *OrangePi_string = "sun8i"; #elif CONFIG_ORANGEPI_ZERO diff --git a/wiringPi/OrangePi.h b/wiringPi/OrangePi.h index 5b19f0b..8b0fdb0 100755 --- a/wiringPi/OrangePi.h +++ b/wiringPi/OrangePi.h @@ -30,7 +30,7 @@ #endif /* CONFIG_ORANGEPI_2G_IOT */ -#if CONFIG_ORANGEPI_PC2 || CONFIG_ORANGEPI_ZEROPLUS || CONFIG_ORANGEPI_H5_ZEROPLUS2 || CONFIG_ORANGEPI_PRIME +#if CONFIG_ORANGEPI_PC2 || CONFIG_ORANGEPI_ZEROPLUS || CONFIG_ORANGEPI_ZEROPLUS2_H5 || CONFIG_ORANGEPI_PRIME /************** OrangePi H5 ***********************/ #define GPIOA_BASE (0x01C20000) #define GPIO_NUM (0x40) @@ -55,7 +55,7 @@ #endif /************** OrangePi H3 ***********************/ -#if CONFIG_ORANGEPI_H3 || CONFIG_ORANGEPI_H3_ZEROPLUS2 || CONFIG_ORANGEPI_ZERO +#if CONFIG_ORANGEPI_H3 || CONFIG_ORANGEPI_ZEROPLUS2_H3 || CONFIG_ORANGEPI_ZERO #define GPIOA_BASE (0x01C20000) #define GPIO_NUM (0x40) #define GPIO_BASE_MAP (0x01C20800) @@ -209,7 +209,7 @@ extern int ORANGEPI_PIN_MASK[9][32]; extern int ORANGEPI_PIN_MASK[12][32]; #elif CONFIG_ORANGEPI_H3 extern int ORANGEPI_PIN_MASK[9][32]; -#elif CONFIG_ORANGEPI_ZERO || CONFIG_ORANGEPI_H3_ZEROPLUS2 || CONFIG_ORANGEPI_ZEROPLUS || CONFIG_ORANGEPI_H5_ZEROPLUS2 +#elif CONFIG_ORANGEPI_ZERO || CONFIG_ORANGEPI_ZEROPLUS2_H3 || CONFIG_ORANGEPI_ZEROPLUS || CONFIG_ORANGEPI_ZEROPLUS2_H5 extern int ORANGEPI_PIN_MASK[12][32]; #elif CONFIG_ORANGEPI_RK3399 extern int ORANGEPI_PIN_MASK[5][32]; diff --git a/wiringPi/wiringPi.c b/wiringPi/wiringPi.c index aaa11fd..acc0b42 100755 --- a/wiringPi/wiringPi.c +++ b/wiringPi/wiringPi.c @@ -2377,7 +2377,7 @@ int wiringPiSetup (void) return wiringPiFailure (WPI_ALMOST, "wiringPiSetup: mmap (PWM) failed: %s\n", strerror (errno)) ; -#if CONFIG_ORANGEPI_A64 || CONFIG_ORANGEPI_H3_ZEROPLUS2 || CONFIG_ORANGEPI_3 || CONFIG_ORANGEPI_H5_ZEROPLUS2 +#if CONFIG_ORANGEPI_A64 || CONFIG_ORANGEPI_ZEROPLUS2_H3 || CONFIG_ORANGEPI_3 || CONFIG_ORANGEPI_ZEROPLUS2_H5 /* GPIOC connect CPU with Modem */ OrangePi_gpioC = (uint32_t *)mmap(0, BLOCK_SIZE, PROT_READ | PROT_WRITE, MAP_SHARED, fd, GPIOL_BASE_MAP); diff --git a/wiringPi/wiringPiSPI.c b/wiringPi/wiringPiSPI.c index 022b99f..f806071 100644 --- a/wiringPi/wiringPiSPI.c +++ b/wiringPi/wiringPiSPI.c @@ -40,7 +40,7 @@ // Variables as they need to be passed as pointers later on static const char *spiDev0 = "/dev/spidev0.0" ; -static const char *spiDev1 = "/dev/spidev0.1" ; +static const char *spiDev1 = "/dev/spidev1.0" ; static const uint8_t spiBPW = 8 ; static const uint16_t spiDelay = 0 ;