···5252#define ONE_BASED_CHASSIS_NUM 153535454/* register offsets inside the host bridge space */5555-#define PHB_CSR_OFFSET 0x01105555+#define CALGARY_CONFIG_REG 0x01085656+#define PHB_CSR_OFFSET 0x0110 /* Channel Status */5657#define PHB_PLSSR_OFFSET 0x01205758#define PHB_CONFIG_RW_OFFSET 0x01605859#define PHB_IOBASE_BAR_LOW 0x0170···8483#define TAR_VALID 0x0000000000000008UL8584/* CSR (Channel/DMA Status Register) */8685#define CSR_AGENT_MASK 0xffe0ffff8686+/* CCR (Calgary Configuration Register) */8787+#define CCR_2SEC_TIMEOUT 0x000000000000000EUL87888889#define MAX_NUM_OF_PHBS 8 /* how many PHBs in total? */8990#define MAX_NUM_CHASSIS 8 /* max number of chassis */···735732 }736733}737734735735+static void __init calgary_increase_split_completion_timeout(void __iomem *bbar,736736+ unsigned char busnum)737737+{738738+ u64 val64;739739+ void __iomem *target;740740+ unsigned long phb_shift = -1;741741+ u64 mask;742742+743743+ switch (busno_to_phbid(busnum)) {744744+ case 0: phb_shift = (63 - 19);745745+ break;746746+ case 1: phb_shift = (63 - 23);747747+ break;748748+ case 2: phb_shift = (63 - 27);749749+ break;750750+ case 3: phb_shift = (63 - 35);751751+ break;752752+ default:753753+ BUG_ON(busno_to_phbid(busnum));754754+ }755755+756756+ target = calgary_reg(bbar, CALGARY_CONFIG_REG);757757+ val64 = be64_to_cpu(readq(target));758758+759759+ /* zero out this PHB's timer bits */760760+ mask = ~(0xFUL << phb_shift);761761+ val64 &= mask;762762+ val64 |= (CCR_2SEC_TIMEOUT << phb_shift);763763+ writeq(cpu_to_be64(val64), target);764764+ readq(target); /* flush */765765+}766766+738767static void __init calgary_enable_translation(struct pci_dev *dev)739768{740769 u32 val32;···790755791756 writel(cpu_to_be32(val32), target);792757 readl(target); /* flush */758758+759759+ /*760760+ * Give split completion a longer timeout on bus 1 for aic94xx761761+ * http://bugzilla.kernel.org/show_bug.cgi?id=7180762762+ */763763+ if (busnum == 1)764764+ calgary_increase_split_completion_timeout(bbar, busnum);793765794766 init_timer(&tbl->watchdog_timer);795767 tbl->watchdog_timer.function = &calgary_watchdog;
+1-1
arch/x86_64/kernel/time.c
···948948 if (boot_cpu_data.x86_vendor == X86_VENDOR_INTEL) {949949#ifdef CONFIG_ACPI950950 /* But TSC doesn't tick in C3 so don't use it there */951951- if (acpi_fadt.length > 0 && acpi_fadt.plvl3_lat < 100)951951+ if (acpi_fadt.length > 0 && acpi_fadt.plvl3_lat < 1000)952952 return 1;953953#endif954954 return 0;