40 #define DRIVER_NAME "orinoco_tmd"
41 #define PFX DRIVER_NAME ": "
43 #include <linux/module.h>
44 #include <linux/kernel.h>
47 #include <linux/pci.h>
53 #define COR_VALUE (COR_LEVEL_REQ | COR_FUNC_ENA)
54 #define COR_RESET (0x80)
55 #define TMD_RESET_TIME (500)
82 if (reg & HERMES_CMD_BUSY) {
91 static int orinoco_tmd_init_one(
struct pci_dev *pdev,
111 bridge_io = pci_iomap(pdev, 1, 0);
115 goto fail_map_bridge;
118 hermes_io = pci_iomap(pdev, 2, 0);
122 goto fail_map_hermes;
127 orinoco_tmd_cor_reset,
NULL);
147 err = orinoco_tmd_cor_reset(priv);
165 pci_set_drvdata(pdev, priv);
173 pci_set_drvdata(pdev,
NULL);
198 pci_set_drvdata(pdev,
NULL);
213 static struct pci_driver orinoco_tmd_driver = {
215 .id_table = orinoco_tmd_id_table,
216 .probe = orinoco_tmd_init_one,
228 static int __init orinoco_tmd_init(
void)
231 return pci_register_driver(&orinoco_tmd_driver);
234 static void __exit orinoco_tmd_exit(
void)