Lines Matching refs:pdev

197 	struct pci_dev *pdev = to_pci_dev(dev);  in sb800_prefetch()  local
199 pci_read_config_word(pdev, 0x50, &misc); in sb800_prefetch()
201 pci_write_config_word(pdev, 0x50, misc & 0xfcff); in sb800_prefetch()
203 pci_write_config_word(pdev, 0x50, misc | 0x0300); in sb800_prefetch()
289 int usb_hcd_amd_remote_wakeup_quirk(struct pci_dev *pdev) in usb_hcd_amd_remote_wakeup_quirk() argument
295 dev_dbg(&pdev->dev, "QUIRK: Enable AMD remote wakeup fix\n"); in usb_hcd_amd_remote_wakeup_quirk()
463 static int usb_asmedia_wait_write(struct pci_dev *pdev) in usb_asmedia_wait_write() argument
470 pci_read_config_byte(pdev, ASMT_CONTROL_REG, &value); in usb_asmedia_wait_write()
473 dev_err(&pdev->dev, "%s: check_ready ERROR", __func__); in usb_asmedia_wait_write()
483 dev_warn(&pdev->dev, "%s: check_write_ready timeout", __func__); in usb_asmedia_wait_write()
487 void usb_asmedia_modifyflowcontrol(struct pci_dev *pdev) in usb_asmedia_modifyflowcontrol() argument
489 if (usb_asmedia_wait_write(pdev) != 0) in usb_asmedia_modifyflowcontrol()
493 pci_write_config_dword(pdev, ASMT_DATA_WRITE0_REG, ASMT_WRITEREG_CMD); in usb_asmedia_modifyflowcontrol()
494 pci_write_config_dword(pdev, ASMT_DATA_WRITE1_REG, ASMT_FLOWCTL_ADDR); in usb_asmedia_modifyflowcontrol()
495 pci_write_config_byte(pdev, ASMT_CONTROL_REG, ASMT_CONTROL_WRITE_BIT); in usb_asmedia_modifyflowcontrol()
497 if (usb_asmedia_wait_write(pdev) != 0) in usb_asmedia_modifyflowcontrol()
501 pci_write_config_dword(pdev, ASMT_DATA_WRITE0_REG, ASMT_FLOWCTL_DATA); in usb_asmedia_modifyflowcontrol()
502 pci_write_config_dword(pdev, ASMT_DATA_WRITE1_REG, ASMT_PSEUDO_DATA); in usb_asmedia_modifyflowcontrol()
503 pci_write_config_byte(pdev, ASMT_CONTROL_REG, ASMT_CONTROL_WRITE_BIT); in usb_asmedia_modifyflowcontrol()
553 struct pci_dev *pdev; in usb_amd_pt_check_port() local
556 pdev = to_pci_dev(device); in usb_amd_pt_check_port()
557 pci_write_config_word(pdev, PT_ADDR_INDX, PT_SIG_1_ADDR); in usb_amd_pt_check_port()
559 pci_read_config_byte(pdev, PT_READ_INDX, &value); in usb_amd_pt_check_port()
563 pci_write_config_word(pdev, PT_ADDR_INDX, PT_SIG_2_ADDR); in usb_amd_pt_check_port()
565 pci_read_config_byte(pdev, PT_READ_INDX, &value); in usb_amd_pt_check_port()
569 pci_write_config_word(pdev, PT_ADDR_INDX, PT_SIG_3_ADDR); in usb_amd_pt_check_port()
571 pci_read_config_byte(pdev, PT_READ_INDX, &value); in usb_amd_pt_check_port()
575 pci_write_config_word(pdev, PT_ADDR_INDX, PT_SIG_4_ADDR); in usb_amd_pt_check_port()
577 pci_read_config_byte(pdev, PT_READ_INDX, &value); in usb_amd_pt_check_port()
582 switch (pdev->device) { in usb_amd_pt_check_port()
629 pci_write_config_word(pdev, PT_ADDR_INDX, reg); in usb_amd_pt_check_port()
630 pci_read_config_byte(pdev, PT_READ_INDX, &value); in usb_amd_pt_check_port()
640 void uhci_reset_hc(struct pci_dev *pdev, unsigned long base) in uhci_reset_hc() argument
645 pci_write_config_word(pdev, UHCI_USBLEGSUP, UHCI_USBLEGSUP_RWC); in uhci_reset_hc()
656 dev_warn(&pdev->dev, "HCRESET not completed yet!\n"); in uhci_reset_hc()
672 int uhci_check_and_reset_hc(struct pci_dev *pdev, unsigned long base) in uhci_check_and_reset_hc() argument
687 pci_read_config_word(pdev, UHCI_USBLEGSUP, &legsup); in uhci_check_and_reset_hc()
689 dev_dbg(&pdev->dev, "%s: legsup = 0x%04x\n", in uhci_check_and_reset_hc()
697 dev_dbg(&pdev->dev, "%s: cmd = 0x%04x\n", in uhci_check_and_reset_hc()
704 dev_dbg(&pdev->dev, "%s: intr = 0x%04x\n", in uhci_check_and_reset_hc()
711 dev_dbg(&pdev->dev, "Performing full reset\n"); in uhci_check_and_reset_hc()
712 uhci_reset_hc(pdev, base); in uhci_check_and_reset_hc()
717 static inline int io_type_enabled(struct pci_dev *pdev, unsigned int mask) in io_type_enabled() argument
720 return !pci_read_config_word(pdev, PCI_COMMAND, &cmd) && (cmd & mask); in io_type_enabled()
726 static void quirk_usb_handoff_uhci(struct pci_dev *pdev) in quirk_usb_handoff_uhci() argument
731 if (!pio_enabled(pdev)) in quirk_usb_handoff_uhci()
735 if ((pci_resource_flags(pdev, i) & IORESOURCE_IO)) { in quirk_usb_handoff_uhci()
736 base = pci_resource_start(pdev, i); in quirk_usb_handoff_uhci()
741 uhci_check_and_reset_hc(pdev, base); in quirk_usb_handoff_uhci()
744 static int mmio_resource_enabled(struct pci_dev *pdev, int idx) in mmio_resource_enabled() argument
746 return pci_resource_start(pdev, idx) && mmio_enabled(pdev); in mmio_resource_enabled()
749 static void quirk_usb_handoff_ohci(struct pci_dev *pdev) in quirk_usb_handoff_ohci() argument
757 if (!mmio_resource_enabled(pdev, 0)) in quirk_usb_handoff_ohci()
760 base = pci_ioremap_bar(pdev, 0); in quirk_usb_handoff_ohci()
768 if (pdev->vendor == PCI_VENDOR_ID_AL && pdev->device == 0x5237) in quirk_usb_handoff_ohci()
789 dev_warn(&pdev->dev, in quirk_usb_handoff_ohci()
855 static void ehci_bios_handoff(struct pci_dev *pdev, in ehci_bios_handoff() argument
867 if (pdev->vendor == 0x8086 && (pdev->device == 0x283a || in ehci_bios_handoff()
868 pdev->device == 0x27cc)) { in ehci_bios_handoff()
874 dev_dbg(&pdev->dev, "EHCI: BIOS handoff\n"); in ehci_bios_handoff()
885 pci_read_config_dword(pdev, offset + EHCI_USBLEGCTLSTS, &val); in ehci_bios_handoff()
886 pci_write_config_dword(pdev, offset + EHCI_USBLEGCTLSTS, in ehci_bios_handoff()
894 pci_write_config_byte(pdev, offset + 3, 1); in ehci_bios_handoff()
904 pci_read_config_dword(pdev, offset, &cap); in ehci_bios_handoff()
913 dev_warn(&pdev->dev, in ehci_bios_handoff()
916 pci_write_config_byte(pdev, offset + 2, 0); in ehci_bios_handoff()
920 pci_write_config_dword(pdev, offset + EHCI_USBLEGCTLSTS, 0); in ehci_bios_handoff()
929 static void quirk_usb_disable_ehci(struct pci_dev *pdev) in quirk_usb_disable_ehci() argument
936 if (!mmio_resource_enabled(pdev, 0)) in quirk_usb_disable_ehci()
939 base = pci_ioremap_bar(pdev, 0); in quirk_usb_disable_ehci()
953 pci_read_config_dword(pdev, offset, &cap); in quirk_usb_disable_ehci()
957 ehci_bios_handoff(pdev, op_reg_base, cap, offset); in quirk_usb_disable_ehci()
963 dev_warn(&pdev->dev, in quirk_usb_disable_ehci()
970 dev_printk(KERN_DEBUG, &pdev->dev, "EHCI: capability loop?\n"); in quirk_usb_disable_ehci()
1139 static void quirk_usb_handoff_xhci(struct pci_dev *pdev) in quirk_usb_handoff_xhci() argument
1146 int len = pci_resource_len(pdev, 0); in quirk_usb_handoff_xhci()
1148 if (!mmio_resource_enabled(pdev, 0)) in quirk_usb_handoff_xhci()
1151 base = ioremap(pci_resource_start(pdev, 0), len); in quirk_usb_handoff_xhci()
1166 dev_warn(&pdev->dev, "xHCI controller failing to respond"); in quirk_usb_handoff_xhci()
1172 if ((pdev->vendor == PCI_VENDOR_ID_TI && pdev->device == 0x8241) || in quirk_usb_handoff_xhci()
1173 (pdev->vendor == PCI_VENDOR_ID_RENESAS in quirk_usb_handoff_xhci()
1174 && pdev->device == 0x0014)) { in quirk_usb_handoff_xhci()
1189 dev_warn(&pdev->dev, in quirk_usb_handoff_xhci()
1205 if (pdev->vendor == PCI_VENDOR_ID_INTEL) in quirk_usb_handoff_xhci()
1206 usb_enable_intel_xhci_ports(pdev); in quirk_usb_handoff_xhci()
1218 dev_warn(&pdev->dev, in quirk_usb_handoff_xhci()
1233 dev_warn(&pdev->dev, in quirk_usb_handoff_xhci()
1242 static void quirk_usb_early_handoff(struct pci_dev *pdev) in quirk_usb_early_handoff() argument
1250 if (pdev->vendor == 0x184e) /* vendor Netlogic */ in quirk_usb_early_handoff()
1257 if (pdev->vendor == PCI_VENDOR_ID_VIA && pdev->device == 0x3483) { in quirk_usb_early_handoff()
1258 parent = of_get_parent(pdev->bus->dev.of_node); in quirk_usb_early_handoff()
1265 if (pdev->class != PCI_CLASS_SERIAL_USB_UHCI && in quirk_usb_early_handoff()
1266 pdev->class != PCI_CLASS_SERIAL_USB_OHCI && in quirk_usb_early_handoff()
1267 pdev->class != PCI_CLASS_SERIAL_USB_EHCI && in quirk_usb_early_handoff()
1268 pdev->class != PCI_CLASS_SERIAL_USB_XHCI) in quirk_usb_early_handoff()
1271 if (pci_enable_device(pdev) < 0) { in quirk_usb_early_handoff()
1272 dev_warn(&pdev->dev, in quirk_usb_early_handoff()
1276 if (pdev->class == PCI_CLASS_SERIAL_USB_UHCI) in quirk_usb_early_handoff()
1277 quirk_usb_handoff_uhci(pdev); in quirk_usb_early_handoff()
1278 else if (pdev->class == PCI_CLASS_SERIAL_USB_OHCI) in quirk_usb_early_handoff()
1279 quirk_usb_handoff_ohci(pdev); in quirk_usb_early_handoff()
1280 else if (pdev->class == PCI_CLASS_SERIAL_USB_EHCI) in quirk_usb_early_handoff()
1281 quirk_usb_disable_ehci(pdev); in quirk_usb_early_handoff()
1282 else if (pdev->class == PCI_CLASS_SERIAL_USB_XHCI) in quirk_usb_early_handoff()
1283 quirk_usb_handoff_xhci(pdev); in quirk_usb_early_handoff()
1284 pci_disable_device(pdev); in quirk_usb_early_handoff()