summaryrefslogtreecommitdiffstats
path: root/sys/isa/atkbd_isa.c
diff options
context:
space:
mode:
authoryokota <yokota@FreeBSD.org>1999-08-22 09:52:33 +0000
committeryokota <yokota@FreeBSD.org>1999-08-22 09:52:33 +0000
commitc9a6c5e45ee0200a3cfb5349733d904c3bb9339f (patch)
treec863c8a9db1db731c5f9cddf215957eab25b7c1f /sys/isa/atkbd_isa.c
parentae67da834bc3aff6bb01df8bccc2d8f0ff8b97c9 (diff)
downloadFreeBSD-src-c9a6c5e45ee0200a3cfb5349733d904c3bb9339f.zip
FreeBSD-src-c9a6c5e45ee0200a3cfb5349733d904c3bb9339f.tar.gz
- Remove cdevsw entry points in individual keyboard drivers;
instead, use generic entry points for all drivers. - Eliminate bogus makedev(). - Eliminate softc in the lower drivers, as it is no longer necessary. Submitted (95%) by: phk
Diffstat (limited to 'sys/isa/atkbd_isa.c')
-rw-r--r--sys/isa/atkbd_isa.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/sys/isa/atkbd_isa.c b/sys/isa/atkbd_isa.c
index 8942681..a8d6381 100644
--- a/sys/isa/atkbd_isa.c
+++ b/sys/isa/atkbd_isa.c
@@ -23,7 +23,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: atkbd_isa.c,v 1.3 1999/04/16 21:22:34 peter Exp $
+ * $Id: atkbd_isa.c,v 1.4 1999/05/08 21:59:28 dfr Exp $
*/
#include "atkbd.h"
@@ -64,7 +64,7 @@ static device_method_t atkbd_methods[] = {
static driver_t atkbd_driver = {
ATKBD_DRIVER_NAME,
atkbd_methods,
- sizeof(atkbd_softc_t),
+ 1,
};
static int
@@ -88,7 +88,7 @@ atkbdprobe(device_t dev)
static int
atkbdattach(device_t dev)
{
- atkbd_softc_t *sc;
+ keyboard_t *kbd;
uintptr_t port;
uintptr_t irq;
uintptr_t flags;
@@ -97,13 +97,11 @@ atkbdattach(device_t dev)
int zero = 0;
int error;
- sc = (atkbd_softc_t *)device_get_softc(dev);
-
BUS_READ_IVAR(device_get_parent(dev), dev, KBDC_IVAR_PORT, &port);
BUS_READ_IVAR(device_get_parent(dev), dev, KBDC_IVAR_IRQ, &irq);
BUS_READ_IVAR(device_get_parent(dev), dev, KBDC_IVAR_FLAGS, &flags);
- error = atkbd_attach_unit(device_get_unit(dev), sc, port, irq, flags);
+ error = atkbd_attach_unit(device_get_unit(dev), &kbd, port, irq, flags);
if (error)
return error;
@@ -111,7 +109,7 @@ atkbdattach(device_t dev)
res = bus_alloc_resource(dev, SYS_RES_IRQ, &zero, irq, irq, 1,
RF_SHAREABLE | RF_ACTIVE);
BUS_SETUP_INTR(device_get_parent(dev), dev, res, INTR_TYPE_TTY,
- atkbd_isa_intr, sc, &ih);
+ atkbd_isa_intr, kbd, &ih);
return 0;
}
@@ -119,10 +117,10 @@ atkbdattach(device_t dev)
static void
atkbd_isa_intr(void *arg)
{
- atkbd_softc_t *sc;
+ keyboard_t *kbd;
- sc = (atkbd_softc_t *)arg;
- (*kbdsw[sc->kbd->kb_index]->intr)(sc->kbd, NULL);
+ kbd = (keyboard_t *)arg;
+ (*kbdsw[kbd->kb_index]->intr)(kbd, NULL);
}
DRIVER_MODULE(atkbd, atkbdc, atkbd_driver, atkbd_devclass, 0, 0);
OpenPOWER on IntegriCloud