Lines Matching +full:ata +full:- +full:generic
1 // SPDX-License-Identifier: GPL-2.0-only
4 * pata-isapnp.c - ISA PnP PATA controller driver.
7 * Based in part on ide-pnp.c by Andrey Panin <pazke@donpac.ru>
17 #include <linux/ata.h>
40 * isapnp_init_one - attach an isapnp interface
57 return -ENODEV; in isapnp_init_one()
65 host = ata_host_alloc(&idev->dev, 1); in isapnp_init_one()
67 return -ENOMEM; in isapnp_init_one()
70 cmd_addr = devm_ioport_map(&idev->dev, pnp_port_start(idev, 0), 8); in isapnp_init_one()
72 return -ENOMEM; in isapnp_init_one()
74 ap = host->ports[0]; in isapnp_init_one()
76 ap->ops = &isapnp_noalt_port_ops; in isapnp_init_one()
77 ap->pio_mask = ATA_PIO0; in isapnp_init_one()
78 ap->flags |= ATA_FLAG_SLAVE_POSS; in isapnp_init_one()
80 ap->ioaddr.cmd_addr = cmd_addr; in isapnp_init_one()
83 ctl_addr = devm_ioport_map(&idev->dev, in isapnp_init_one()
86 return -ENOMEM; in isapnp_init_one()
88 ap->ioaddr.altstatus_addr = ctl_addr; in isapnp_init_one()
89 ap->ioaddr.ctl_addr = ctl_addr; in isapnp_init_one()
90 ap->ops = &isapnp_port_ops; in isapnp_init_one()
93 ata_sff_std_ports(&ap->ioaddr); in isapnp_init_one()
105 * isapnp_remove_one - unplug an isapnp interface
108 * Remove a previously configured PnP ATA port. Called only on module
114 struct device *dev = &idev->dev; in isapnp_remove_one()
121 /* Generic ESDI/IDE/ATA compatible hard disk controller */
137 MODULE_DESCRIPTION("low-level driver for ISA PnP ATA");