Lines Matching refs:io
54 static int io = -1; /* default to isapnp activation */ variable
57 module_param(io, int, 0);
58 MODULE_PARM_DESC(io, "I/O address of Cadet card (0x330,0x332,0x334,0x336,0x338,0x33a,0x33c,0x33e)");
69 int io; member
122 outb(7, dev->io); /* Select tuner control */ in cadet_getstereo()
123 if ((inb(dev->io + 1) & 0x40) == 0) in cadet_getstereo()
137 outb(7, dev->io); /* Select tuner control */ in cadet_gettune()
138 curvol = inb(dev->io + 1); /* Save current volume/mute setting */ in cadet_gettune()
139 outb(0x00, dev->io + 1); /* Ensure WRITE-ENABLE is LOW */ in cadet_gettune()
146 fifo = (fifo << 1) | ((inb(dev->io + 1) >> 7) & 0x01); in cadet_gettune()
148 outb(0x01, dev->io + 1); in cadet_gettune()
149 dev->tunestat &= inb(dev->io + 1); in cadet_gettune()
150 outb(0x00, dev->io + 1); in cadet_gettune()
157 outb(curvol, dev->io + 1); in cadet_gettune()
194 outb(7, dev->io); /* Select tuner control */ in cadet_settune()
201 outb(7, dev->io); /* Select tuner control */ in cadet_settune()
202 outb(test, dev->io + 1); /* Initialize for write */ in cadet_settune()
205 outb(test, dev->io + 1); in cadet_settune()
207 outb(test, dev->io + 1); in cadet_settune()
210 outb(test, dev->io + 1); in cadet_settune()
248 outb(7, dev->io); /* Select tuner control */ in cadet_setfreq()
249 curvol = inb(dev->io + 1); in cadet_setfreq()
257 outb(7, dev->io); /* Select tuner control */ in cadet_setfreq()
258 outb(curvol, dev->io + 1); in cadet_setfreq()
270 outb(3, dev->io); in cadet_setfreq()
271 outb(inb(dev->io + 1) & 0x7f, dev->io + 1); in cadet_setfreq()
291 outb(0x3, dev->io); /* Select RDS Decoder Control */ in cadet_handler()
292 if ((inb(dev->io + 1) & 0x20) != 0) in cadet_handler()
294 outb(0x80, dev->io); /* Select RDS fifo */ in cadet_handler()
296 while ((inb(dev->io) & 0x80) != 0) { in cadet_handler()
297 dev->rdsbuf[dev->rdsin] = inb(dev->io + 1); in cadet_handler()
320 outb(0x80, dev->io); /* Select RDS fifo */ in cadet_start_rds()
377 outb(3, dev->io); in vidioc_g_tuner()
378 outb(inb(dev->io + 1) & 0x7f, dev->io + 1); in vidioc_g_tuner()
380 outb(3, dev->io); in vidioc_g_tuner()
381 if (inb(dev->io + 1) & 0x80) in vidioc_g_tuner()
442 outb(7, dev->io); /* Select tuner control */ in cadet_s_ctrl()
444 outb(0x00, dev->io + 1); in cadet_s_ctrl()
446 outb(0x20, dev->io + 1); in cadet_s_ctrl()
541 if (io > 0) in cadet_pnp_probe()
547 io = pnp_port_start(dev, 0); in cadet_pnp_probe()
549 printk(KERN_INFO "radio-cadet: PnP reports device at %#x\n", io); in cadet_pnp_probe()
551 return io; in cadet_pnp_probe()
571 dev->io = iovals[i]; in cadet_probe()
572 if (request_region(dev->io, 2, "cadet-probe")) { in cadet_probe()
575 release_region(dev->io, 2); in cadet_probe()
578 release_region(dev->io, 2); in cadet_probe()
581 dev->io = -1; in cadet_probe()
600 if (io < 0) in cadet_init()
602 dev->io = io; in cadet_init()
605 if (dev->io < 0) in cadet_init()
609 if (dev->io < 0) { in cadet_init()
616 if (!request_region(dev->io, 2, "cadet")) in cadet_init()
621 release_region(dev->io, 2); in cadet_init()
653 v4l2_info(v4l2_dev, "ADS Cadet Radio Card at 0x%x\n", dev->io); in cadet_init()
658 release_region(dev->io, 2); in cadet_init()
671 outb(7, dev->io); /* Mute */ in cadet_exit()
672 outb(0x00, dev->io + 1); in cadet_exit()
673 release_region(dev->io, 2); in cadet_exit()