ref: f0217d2c3f31d83bbae91f6f549dc3cfa48e3fc6
parent: ffb28698bf5922f5d89a0d986fc6ab289fd5b6d3
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Sat Jul 22 12:35:13 EDT 2017
usbohci, usbuhci, usbehci: use physical address of registers for matching controllers and printing
--- a/sys/src/9/pc/usbehcipc.c
+++ b/sys/src/9/pc/usbehcipc.c
@@ -180,7 +180,7 @@
p->vid, p->did);
continue;
}
- dprint("usbehci: %#x %#x: port %#p size %#x irq %d\n",
+ print("usbehci: %#x %#x: port %#p size %#x irq %d\n",
p->vid, p->did, io, p->mem[0].size, p->intl);
ctlr = malloc(sizeof(Ctlr));
@@ -239,7 +239,7 @@
for(i = 0; i < Nhcis && ctlrs[i] != nil; i++){
ctlr = ctlrs[i];
if(ctlr->active == 0)
- if(hp->port == 0 || hp->port == (uintptr)ctlr->capio){
+ if(hp->port == 0 || hp->port == PADDR(ctlr->capio)){
ctlr->active = 1;
break;
}
@@ -250,7 +250,7 @@
p = ctlr->pcidev;
hp->aux = ctlr;
- hp->port = (uintptr)ctlr->capio;
+ hp->port = PADDR(ctlr->capio);
hp->irq = p->intl;
hp->tbdf = p->tbdf;
--- a/sys/src/9/pc/usbohci.c
+++ b/sys/src/9/pc/usbohci.c
@@ -2571,7 +2571,7 @@
for(i = 0; i < Nhcis && ctlrs[i] != nil; i++){
ctlr = ctlrs[i];
if(ctlr->active == 0)
- if(hp->port == 0 || hp->port == (uintptr)ctlr->ohci){
+ if(hp->port == 0 || hp->port == PADDR(ctlr->ohci)){
ctlr->active = 1;
break;
}
@@ -2585,7 +2585,7 @@
p = ctlr->pcidev;
hp->aux = ctlr;
- hp->port = (uintptr)ctlr->ohci;
+ hp->port = PADDR(ctlr->ohci);
hp->irq = p->intl;
hp->tbdf = p->tbdf;
ctlr->nports = hp->nports = ctlr->ohci->rhdesca & 0xff;
--- a/sys/src/9/pc/usbuhci.c
+++ b/sys/src/9/pc/usbuhci.c
@@ -2144,7 +2144,7 @@
continue;
}
- dprint("uhci: %#x %#x: port %#ux size %#x irq %d\n",
+ print("uhci: %#x %#x: port %#ux size %#x irq %d\n",
p->vid, p->did, io, p->mem[4].size, p->intl);
ctlr = malloc(sizeof(Ctlr));