Besides - here are the CPU types that are checked in OrangePi.c of WiringPi:
I see a difference to your patch with sun50iw1p1 ?
/*
* Probe OrangePi Platform.
*/
int isOrangePi(void)
{
FILE *cpuFd;
char line [120];
char *d;
#ifdef CONFIG_ORANGEPI_2G_IOT
/* Support: OrangePi 2G-IOT and OrangePi i96 */
char *OrangePi_string = "rda8810";
#elif CONFIG_ORANGEPI_PC2
/* Support: OrangePi PC2 */
char *OrangePi_string = "sun50iw2";
#elif CONFIG_ORANGEPI_A64
/* Support: OrangePi Win/Win plus */
char *OrangePi_string = "sun50iw1";
#elif CONFIG_ORANGEPI_H3
/* Support: OrangePi Win/Win plus */
char *OrangePi_string = "sun8iw7";
#elif CONFIG_ORANGEPI_ZERO
/* Support: OrangePi zero */
char *OrangePi_string = "sun8iw7";
#else
/* Non-support */
char *OrangePi_string = "none";
#endif
if ((cpuFd = fopen("/proc/cpuinfo", "r")) == NULL)
piBoardRevOops ("Unable to open /proc/cpuinfo") ;
while (fgets(line, 120, cpuFd) != NULL) {
if (strncmp(line, "Hardware", 8) == 0)
break;
}
fclose(cpuFd);
if (strncmp(line, "Hardware", 8) != 0)
piBoardRevOops("No \"Hardware\" line");