Lines Matching +full:big +full:- +full:endian +full:- +full:regs
1 // SPDX-License-Identifier: GPL-1.0+
6 * (C) Copyright 2000-2002 David Brownell <dbrownell@users.sourceforge.net>
26 #include "pci-quirks.h"
30 static const char hcd_name[] = "ohci-pci";
33 /*-------------------------------------------------------------------------*/
37 device_init_wakeup(&hcd->self.root_hub->dev, 0); in broken_suspend()
48 ohci->flags = OHCI_QUIRK_AMD756; in ohci_quirk_amd756()
74 struct pci_dev *pdev = to_pci_dev(hcd->self.controller); in ohci_quirk_ns()
77 b = pci_get_slot (pdev->bus, PCI_DEVFN (PCI_SLOT (pdev->devfn), 1)); in ohci_quirk_ns()
78 if (b && b->device == PCI_DEVICE_ID_NS_87560_LIO in ohci_quirk_ns()
79 && b->vendor == PCI_VENDOR_ID_NS) { in ohci_quirk_ns()
82 ohci->flags |= OHCI_QUIRK_SUPERIO; in ohci_quirk_ns()
91 * delays before control or bulk queues get re-activated
98 ohci->flags |= OHCI_QUIRK_ZFMICRO; in ohci_quirk_zfmicro()
104 /* Check for Toshiba SCC OHCI which has big endian registers
105 * and little endian in memory data structures
117 ohci->flags |= OHCI_QUIRK_BE_MMIO; in ohci_quirk_toshiba_scc()
118 ohci_dbg (ohci, "enabled big endian Toshiba quirk\n"); in ohci_quirk_toshiba_scc()
121 ohci_err (ohci, "unsupported big endian Toshiba quirk\n"); in ohci_quirk_toshiba_scc()
122 return -ENXIO; in ohci_quirk_toshiba_scc()
144 ohci->flags |= OHCI_QUIRK_NEC; in ohci_quirk_nec()
145 INIT_WORK(&ohci->nec_work, ohci_quirk_nec_worker); in ohci_quirk_nec()
156 ohci->flags |= OHCI_QUIRK_AMD_PLL; in ohci_quirk_amd700()
158 /* SB800 needs pre-fetch fix */ in ohci_quirk_amd700()
160 ohci->flags |= OHCI_QUIRK_AMD_PREFETCH; in ohci_quirk_amd700()
164 ohci->flags |= OHCI_QUIRK_GLOBAL_SUSPEND; in ohci_quirk_amd700()
170 struct pci_dev *pdev = to_pci_dev(hcd->self.controller); in ohci_quirk_loongson()
175 * as legacy PS2-compatible keyboard/mouse interface. in ohci_quirk_loongson()
181 if (pdev->revision == 0x2) in ohci_quirk_loongson()
182 hcd->regs += SZ_4K; /* SZ_4K = 0x1000 */ in ohci_quirk_loongson()
191 ohci->flags |= OHCI_QUIRK_QEMU; in ohci_quirk_qemu()
264 struct pci_dev *pdev = to_pci_dev(hcd->self.controller); in ohci_pci_reset()
267 if (hcd->self.controller) { in ohci_pci_reset()
273 quirk = (void *)quirk_id->driver_data; in ohci_pci_reset()
281 * After ohci setup RWC may not be set for add-in PCI cards. in ohci_pci_reset()
284 if (device_can_wakeup(&pdev->dev)) in ohci_pci_reset()
285 ohci->hc_control |= OHCI_CTRL_RWC; in ohci_pci_reset()
336 return -ENODEV; in ohci_pci_init()