Module Name: src
Committed By: martin
Date: Sat Nov 16 15:38:43 UTC 2019
Modified Files:
src/sys/dev/isa: nct.c
Log Message:
PR port-i386/54701: deal with missing pmf platform keys.
To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/sys/dev/isa/nct.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/isa/nct.c
diff -u src/sys/dev/isa/nct.c:1.1 src/sys/dev/isa/nct.c:1.2
--- src/sys/dev/isa/nct.c:1.1 Fri Oct 25 17:39:57 2019
+++ src/sys/dev/isa/nct.c Sat Nov 16 15:38:43 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: nct.c,v 1.1 2019/10/25 17:39:57 martin Exp $ */
+/* $NetBSD: nct.c,v 1.2 2019/11/16 15:38:43 martin Exp $ */
/*-
* Copyright (c) 2019 The NetBSD Foundation, Inc.
@@ -44,7 +44,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: nct.c,v 1.1 2019/10/25 17:39:57 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nct.c,v 1.2 2019/11/16 15:38:43 martin Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -241,6 +241,7 @@ nct_match(device_t parent, cfdata_t matc
int nioaddr, i;
u_int8_t low, high;
u_int16_t id;
+ const char *vendor, *product;
/*
* Allow override of I/O base address. If no I/O base address is
@@ -249,11 +250,15 @@ nct_match(device_t parent, cfdata_t matc
if (ia->ia_nio > 0 && ia->ia_io[0].ir_addr != ISA_UNKNOWN_PORT) {
ioaddrs[0] = ia->ia_io[0].ir_addr;
nioaddr = 1;
- } else if ((strcmp(pmf_get_platform("system-vendor"), "PC Engines") |
- strcmp(pmf_get_platform("system-product"), "APU")) == 0) {
- nioaddr = __arraycount(ioaddrs);
} else {
- nioaddr = 0;
+ vendor = pmf_get_platform("system-vendor");
+ product = pmf_get_platform("system-product");
+ if (vendor != NULL && strcmp(vendor, "PC Engines") == 0 &&
+ product != NULL && strcmp(product, "APU") == 0) {
+ nioaddr = __arraycount(ioaddrs);
+ } else {
+ nioaddr = 0;
+ }
}
/*