USB fix
Matthias Drochner <[email protected]> Thu, 03 Apr 2008 17:03:48 +0200
| Newsgroups | gmane.os.netbsd.ports.playstation2 |
|---|---|
| Message-ID | <[email protected]> |
This is a multipart MIME message.
--==_Exmh_823020523600
Content-Type: text/plain; charset=us-ascii
Hi -
could someone please test this patch? It should
update the ohci driver frontend for the device/softc split.
best regards
Matthias
-------------------------------------------------------------------
-------------------------------------------------------------------
Forschungszentrum Juelich GmbH
52425 Juelich
Sitz der Gesellschaft: Juelich
Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498
Vorsitzende des Aufsichtsrats: MinDir'in Baerbel Brumme-Bothe
Geschaeftsfuehrung: Prof. Dr. Achim Bachem (Vorsitzender),
Dr. Ulrich Krafft (stellv. Vorsitzender), Prof. Dr. Harald Bolt,
Dr. Sebastian M. Schmidt
-------------------------------------------------------------------
-------------------------------------------------------------------
--==_Exmh_823020523600
Content-Type: text/plain ; name="ps2.txt"; charset=us-ascii
Content-Description: ps2.txt
Content-Disposition: attachment; filename="ps2.txt"
Index: playstation2/dev/ohci_sbus.c
===================================================================
RCS file: /cvsroot/src/sys/arch/playstation2/dev/ohci_sbus.c,v
retrieving revision 1.7
diff -u -p -r1.7 ohci_sbus.c
--- playstation2/dev/ohci_sbus.c 4 Mar 2007 06:00:30 -0000 1.7
+++ playstation2/dev/ohci_sbus.c 3 Apr 2008 14:59:07 -0000
@@ -110,7 +110,7 @@ struct ohci_sbus_softc {
LIST_HEAD(, ohci_dma_segment) sc_dmaseg_head;
};
-CFATTACH_DECL(ohci_sbus, sizeof(struct ohci_sbus_softc),
+CFATTACH_DECL_NEW(ohci_sbus, sizeof(struct ohci_sbus_softc),
ohci_sbus_match, ohci_sbus_attach, NULL, NULL);
int
@@ -123,11 +123,14 @@ ohci_sbus_match(struct device *parent, s
void
ohci_sbus_attach(struct device *parent, struct device *self, void *aux)
{
- struct ohci_sbus_softc *sc = (void *)self;
+ struct ohci_sbus_softc *sc = device_private(self);
usbd_status result;
printf("\n");
+ sc->sc.sc_dev = self;
+ sc->sc.sc_bus.hci_private = sc;
+
sc->sc.iot = bus_space_create(0, "OHCI I/O space", SBUS_OHCI_REGBASE,
SBUS_OHCI_REGSIZE);
sc->sc.ioh = SBUS_OHCI_REGBASE;
@@ -152,8 +155,7 @@ ohci_sbus_attach(struct device *parent,
}
/* Attach usb device. */
- sc->sc.sc_child = config_found((void *)sc, &sc->sc.sc_bus,
- usbctlprint);
+ sc->sc.sc_child = config_found(self, &sc->sc.sc_bus, usbctlprint);
}
void
--==_Exmh_823020523600--