This source file includes following definitions.
- rt_isa_probe
- rt_isa_attach
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 #include <sys/param.h>
36 #include <sys/systm.h>
37 #include <sys/device.h>
38
39 #include <machine/bus.h>
40
41 #include <dev/ic/lm700x.h>
42 #include <dev/isa/isavar.h>
43 #include <dev/isa/rtreg.h>
44 #include <dev/isa/rtvar.h>
45
46 int rt_isa_probe(struct device *, void *, void *);
47 void rt_isa_attach(struct device *, struct device *, void *);
48
49 struct cfattach rt_isa_ca = {
50 sizeof(struct rt_softc), rt_isa_probe, rt_isa_attach
51 };
52
53 int
54 rt_isa_probe(struct device *parent, void *match, void *aux)
55 {
56 struct isa_attach_args *ia = aux;
57 bus_space_handle_t ioh;
58 int iosize = 1;
59
60 if (!RT_BASE_VALID(ia->ia_iobase)) {
61 printf("rt: wrong iobase 0x%x\n", ia->ia_iobase);
62 return (0);
63 }
64
65 if (bus_space_map(ia->ia_iot, ia->ia_iobase, iosize, 0, &ioh))
66 return (0);
67
68
69 bus_space_unmap(ia->ia_iot, ioh, iosize);
70 return (0);
71 #if 0
72 ia->ia_iosize = iosize;
73 return 1;
74 #endif
75 }
76
77 void
78 rt_isa_attach(struct device *parent, struct device *self, void *aux)
79 {
80 struct rt_softc *sc = (void *) self;
81 struct isa_attach_args *ia = aux;
82 bus_space_handle_t ioh;
83
84
85 if (bus_space_map(ia->ia_iot, ia->ia_iobase, ia->ia_iosize, 0, &ioh)) {
86 printf(": bus_space_map() failed\n");
87 return;
88 }
89
90 printf(": AIMS Lab Radiotrack or compatible\n");
91
92 sc->sc_ct = CARD_RADIOTRACK;
93 sc->lm.iot = ia->ia_iot;
94 sc->lm.ioh = ioh;
95
96 rtattach(sc);
97 }