Module Name: src
Committed By: cegger
Date: Thu May 7 06:08:02 UTC 2009
Modified Files:
src/sys/dev/pci: esm.c esmvar.h
Log Message:
device_t/softc split
patch presented on tech-kern@, no comments on it
To generate a diff of this commit:
cvs rdiff -u -r1.48 -r1.49 src/sys/dev/pci/esm.c
cvs rdiff -u -r1.16 -r1.17 src/sys/dev/pci/esmvar.h
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/pci/esm.c
diff -u src/sys/dev/pci/esm.c:1.48 src/sys/dev/pci/esm.c:1.49
--- src/sys/dev/pci/esm.c:1.48 Tue May 5 21:47:49 2009
+++ src/sys/dev/pci/esm.c Thu May 7 06:08:02 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: esm.c,v 1.48 2009/05/05 21:47:49 cegger Exp $ */
+/* $NetBSD: esm.c,v 1.49 2009/05/07 06:08:02 cegger Exp $ */
/*-
* Copyright (c) 2002, 2003 Matt Fredette
@@ -66,7 +66,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: esm.c,v 1.48 2009/05/05 21:47:49 cegger Exp $");
+__KERNEL_RCSID(0, "$NetBSD: esm.c,v 1.49 2009/05/07 06:08:02 cegger Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -159,7 +159,7 @@
struct esm_dma *);
-CFATTACH_DECL2(esm, sizeof(struct esm_softc),
+CFATTACH_DECL2_NEW(esm, sizeof(struct esm_softc),
esm_match, esm_attach, esm_detach, NULL, NULL, esm_childdet);
const struct audio_hw_if esm_hw_if = {
@@ -287,7 +287,7 @@
{
int i;
- printf("%s registers:", device_xname(&ess->sc_dev));
+ printf("%s registers:", device_xname(ess->sc_dev));
for (i = 0; i < (sizeof dump_regs / sizeof dump_regs[0]); i++) {
if (i % 5 == 0)
printf("\n");
@@ -336,7 +336,7 @@
}
if (t == 20)
printf("%s: esm_read_codec() PROGLESS timed out.\n",
- device_xname(&ess->sc_dev));
+ device_xname(ess->sc_dev));
bus_space_write_1(ess->st, ess->sh, PORT_CODEC_CMD,
CODEC_CMD_READ | regno);
@@ -352,7 +352,7 @@
if (t == 20)
/* Timed out, but perform dummy read. */
printf("%s: esm_read_codec() RW_DONE timed out.\n",
- device_xname(&ess->sc_dev));
+ device_xname(ess->sc_dev));
*result = bus_space_read_2(ess->st, ess->sh, PORT_CODEC_REG);
@@ -376,7 +376,7 @@
if (t == 20) {
/* Timed out. Abort writing. */
printf("%s: esm_write_codec() PROGLESS timed out.\n",
- device_xname(&ess->sc_dev));
+ device_xname(ess->sc_dev));
return -1;
}
@@ -431,7 +431,7 @@
bus_space_write_2(ess->st, ess->sh, PORT_DSP_DATA, reg);
}
if (t == 1000)
- printf("%s: apu_setindex() timed out.\n", device_xname(&ess->sc_dev));
+ printf("%s: apu_setindex() timed out.\n", device_xname(ess->sc_dev));
}
static inline uint16_t
@@ -461,7 +461,7 @@
bus_space_write_2(ess->st, ess->sh, PORT_DSP_DATA, data);
}
if (t == 1000)
- printf("%s: wp_wrapu() timed out.\n", device_xname(&ess->sc_dev));
+ printf("%s: wp_wrapu() timed out.\n", device_xname(ess->sc_dev));
}
static inline void
@@ -599,7 +599,7 @@
delay(21);
/* Try cold reset. */
- printf("%s: will perform cold reset.\n", device_xname(&ess->sc_dev));
+ printf("%s: will perform cold reset.\n", device_xname(ess->sc_dev));
data = bus_space_read_2(ess->st, ess->sh, PORT_GPIO_DIR);
if (pci_conf_read(ess->pc, ess->tag, 0x58) & 1)
data |= 0x10;
@@ -697,14 +697,14 @@
p = &ess->sc_dma;
if ((char *)start != (char *)p->addr + MAESTRO_PLAYBUF_OFF) {
printf("%s: esm_init_output: bad addr %p\n",
- device_xname(&ess->sc_dev), start);
+ device_xname(ess->sc_dev), start);
return EINVAL;
}
ess->pch.base = DMAADDR(p) + MAESTRO_PLAYBUF_OFF;
DPRINTF(ESM_DEBUG_DMA, ("%s: pch.base = 0x%x\n",
- device_xname(&ess->sc_dev), ess->pch.base));
+ device_xname(ess->sc_dev), ess->pch.base));
return 0;
}
@@ -719,7 +719,7 @@
p = &ess->sc_dma;
if ((char *)start != (char *)p->addr + MAESTRO_RECBUF_OFF) {
printf("%s: esm_init_input: bad addr %p\n",
- device_xname(&ess->sc_dev), start);
+ device_xname(ess->sc_dev), start);
return EINVAL;
}
@@ -733,7 +733,7 @@
}
DPRINTF(ESM_DEBUG_DMA, ("%s: rch.base = 0x%x\n",
- device_xname(&ess->sc_dev), ess->rch.base));
+ device_xname(ess->sc_dev), ess->rch.base));
return 0;
}
@@ -764,7 +764,7 @@
#ifdef DIAGNOSTIC
if (ess->pactive) {
printf("%s: esm_trigger_output: already running",
- device_xname(&ess->sc_dev));
+ device_xname(ess->sc_dev));
return EINVAL;
}
#endif
@@ -774,7 +774,7 @@
p = &ess->sc_dma;
if ((char *)start != (char *)p->addr + MAESTRO_PLAYBUF_OFF) {
printf("%s: esm_trigger_output: bad addr %p\n",
- device_xname(&ess->sc_dev), start);
+ device_xname(ess->sc_dev), start);
return EINVAL;
}
@@ -880,7 +880,7 @@
#ifdef DIAGNOSTIC
if (ess->ractive) {
printf("%s: esm_trigger_input: already running",
- device_xname(&ess->sc_dev));
+ device_xname(ess->sc_dev));
return EINVAL;
}
#endif
@@ -890,7 +890,7 @@
p = &ess->sc_dma;
if ((char *)start != (char *)p->addr + MAESTRO_RECBUF_OFF) {
printf("%s: esm_trigger_input: bad addr %p\n",
- device_xname(&ess->sc_dev), start);
+ device_xname(ess->sc_dev), start);
return EINVAL;
}
@@ -1602,6 +1602,7 @@
int error;
ess = device_private(self);
+ ess->sc_dev = self;
pa = (struct pci_attach_args *)aux;
pc = pa->pa_pc;
tag = pa->pa_tag;
@@ -1619,7 +1620,7 @@
/* Map I/O register */
if (pci_mapreg_map(pa, PCI_CBIO, PCI_MAPREG_TYPE_IO, 0,
&ess->st, &ess->sh, NULL, &ess->sz)) {
- aprint_error_dev(&ess->sc_dev, "can't map i/o space\n");
+ aprint_error_dev(ess->sc_dev, "can't map i/o space\n");
return;
}
@@ -1633,24 +1634,24 @@
DPRINTF(ESM_DEBUG_PCI,
("%s: sub-system vendor 0x%4.4x, product 0x%4.4x\n",
- device_xname(&ess->sc_dev),
+ device_xname(ess->sc_dev),
PCI_VENDOR(ess->subid), PCI_PRODUCT(ess->subid)));
/* Map and establish the interrupt. */
if (pci_intr_map(pa, &ih)) {
- aprint_error_dev(&ess->sc_dev, "can't map interrupt\n");
+ aprint_error_dev(ess->sc_dev, "can't map interrupt\n");
return;
}
intrstr = pci_intr_string(pc, ih);
ess->ih = pci_intr_establish(pc, ih, IPL_AUDIO, esm_intr, self);
if (ess->ih == NULL) {
- aprint_error_dev(&ess->sc_dev, "can't establish interrupt");
+ aprint_error_dev(ess->sc_dev, "can't establish interrupt");
if (intrstr != NULL)
aprint_normal(" at %s", intrstr);
aprint_normal("\n");
return;
}
- aprint_normal_dev(&ess->sc_dev, "interrupting at %s\n",
+ aprint_normal_dev(ess->sc_dev, "interrupting at %s\n",
intrstr);
/*
@@ -1660,7 +1661,7 @@
/* power up chip */
if ((error = pci_activate(pa->pa_pc, pa->pa_tag, self,
pci_activate_null)) && error != EOPNOTSUPP) {
- aprint_error_dev(&ess->sc_dev, "cannot activate %d\n",
+ aprint_error_dev(ess->sc_dev, "cannot activate %d\n",
error);
return;
}
@@ -1684,7 +1685,7 @@
esm_read_codec(ess, 0, &codec_data);
if (codec_data == 0x80) {
- aprint_error_dev(&ess->sc_dev, "PT101 codec detected!\n");
+ aprint_error_dev(ess->sc_dev, "PT101 codec detected!\n");
return;
}
@@ -1713,7 +1714,7 @@
/* allocate our DMA region */
if (esm_allocmem(ess, MAESTRO_DMA_SZ, MAESTRO_DMA_ALIGN,
&ess->sc_dma)) {
- aprint_error_dev(&ess->sc_dev, "couldn't allocate memory!\n");
+ aprint_error_dev(ess->sc_dev, "couldn't allocate memory!\n");
return;
}
ess->rings_alloced = 0;
@@ -1723,7 +1724,7 @@
wc_wrreg(ess, pcmbar,
DMAADDR(&ess->sc_dma) >> WAVCACHE_BASEADDR_SHIFT);
- audio_attach_mi(&esm_hw_if, self, &ess->sc_dev);
+ audio_attach_mi(&esm_hw_if, self, ess->sc_dev);
if (!pmf_device_register(self, esm_suspend, esm_resume))
aprint_error_dev(self, "couldn't establish power handler\n");
@@ -1806,7 +1807,7 @@
#if 0
if (mixer_reinit(dev)) {
printf("%s: unable to reinitialize the mixer\n",
- device_xname(&ess->sc_dev));
+ device_xname(ess->sc_dev));
return ENXIO;
}
#endif
Index: src/sys/dev/pci/esmvar.h
diff -u src/sys/dev/pci/esmvar.h:1.16 src/sys/dev/pci/esmvar.h:1.17
--- src/sys/dev/pci/esmvar.h:1.16 Sat Feb 23 02:17:16 2008
+++ src/sys/dev/pci/esmvar.h Thu May 7 06:08:02 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: esmvar.h,v 1.16 2008/02/23 02:17:16 dyoung Exp $ */
+/* $NetBSD: esmvar.h,v 1.17 2009/05/07 06:08:02 cegger Exp $ */
/*-
* Copyright (c) 2002, 2003 Matt Fredette
@@ -150,7 +150,7 @@
};
struct esm_softc {
- struct device sc_dev;
+ device_t sc_dev;
bus_space_tag_t st;
bus_space_handle_t sh;