View | Details | Raw Unified | Return to bug 70261 | Differences between
and this patch

Collapse All | Expand All

(-)a/drivers/pci/hotplug/pciehp_ctrl.c (-11 lines)
Lines 434-441 static void interrupt_event_handler(struct work_struct *work) Link Here
434
		break;
434
		break;
435
	case INT_PRESENCE_ON:
435
	case INT_PRESENCE_ON:
436
	case INT_PRESENCE_OFF:
436
	case INT_PRESENCE_OFF:
437
		if (!HP_SUPR_RM(ctrl))
438
			break;
439
		ctrl_dbg(ctrl, "Surprise Removal\n");
437
		ctrl_dbg(ctrl, "Surprise Removal\n");
440
		handle_surprise_event(p_slot);
438
		handle_surprise_event(p_slot);
441
		break;
439
		break;
Lines 494-508 int pciehp_disable_slot(struct slot *p_slot) Link Here
494
	if (!p_slot->ctrl)
492
	if (!p_slot->ctrl)
495
		return 1;
493
		return 1;
496
494
497
	if (!HP_SUPR_RM(p_slot->ctrl)) {
498
		pciehp_get_adapter_status(p_slot, &getstatus);
499
		if (!getstatus) {
500
			ctrl_info(ctrl, "No adapter on slot(%s)\n",
501
				  slot_name(p_slot));
502
			return -ENODEV;
503
		}
504
	}
505
506
	if (MRL_SENS(p_slot->ctrl)) {
495
	if (MRL_SENS(p_slot->ctrl)) {
507
		pciehp_get_latch_status(p_slot, &getstatus);
496
		pciehp_get_latch_status(p_slot, &getstatus);
508
		if (getstatus) {
497
		if (getstatus) {
(-)a/drivers/pci/hotplug/pciehp_hpc.c (-13 / +7 lines)
Lines 636-656 int pciehp_reset_slot(struct slot *slot, int probe) Link Here
636
	if (probe)
636
	if (probe)
637
		return 0;
637
		return 0;
638
638
639
	if (HP_SUPR_RM(ctrl)) {
639
	pcie_write_cmd(ctrl, 0, PCI_EXP_SLTCTL_PDCE);
640
		pcie_write_cmd(ctrl, 0, PCI_EXP_SLTCTL_PDCE);
640
	if (pciehp_poll_mode)
641
		if (pciehp_poll_mode)
641
		del_timer_sync(&ctrl->poll_timer);
642
			del_timer_sync(&ctrl->poll_timer);
643
	}
644
642
645
	pci_reset_bridge_secondary_bus(ctrl->pcie->port);
643
	pci_reset_bridge_secondary_bus(ctrl->pcie->port);
646
644
647
	if (HP_SUPR_RM(ctrl)) {
645
	pcie_capability_write_word(pdev, PCI_EXP_SLTSTA, PCI_EXP_SLTSTA_PDC);
648
		pcie_capability_write_word(pdev, PCI_EXP_SLTSTA,
646
	pcie_write_cmd(ctrl, PCI_EXP_SLTCTL_PDCE, PCI_EXP_SLTCTL_PDCE);
649
					   PCI_EXP_SLTSTA_PDC);
647
	if (pciehp_poll_mode)
650
		pcie_write_cmd(ctrl, PCI_EXP_SLTCTL_PDCE, PCI_EXP_SLTCTL_PDCE);
648
		int_poll_timeout(ctrl->poll_timer.data);
651
		if (pciehp_poll_mode)
652
			int_poll_timeout(ctrl->poll_timer.data);
653
	}
654
649
655
	return 0;
650
	return 0;
656
}
651
}
657
- 

Return to bug 70261