ar71xx: flush DDR writeback buffers for WMAC and PCIe on AR934X
SVN-Revision: 29108
This commit is contained in:
parent
3104d70552
commit
e52269364a
2 changed files with 7 additions and 6 deletions
|
@ -239,14 +239,15 @@ static void ar934x_ip2_irq_dispatch(unsigned int irq, struct irq_desc *desc)
|
|||
|
||||
status = ar71xx_reset_rr(AR934X_RESET_REG_PCIE_WMAC_INT_STATUS);
|
||||
|
||||
if (status & AR934X_PCIE_WMAC_INT_PCIE_ALL)
|
||||
if (status & AR934X_PCIE_WMAC_INT_PCIE_ALL) {
|
||||
ar71xx_ddr_flush(AR934X_DDR_REG_FLUSH_PCIE);
|
||||
generic_handle_irq(AR934X_IP2_IRQ_PCIE);
|
||||
|
||||
else if (status & AR934X_PCIE_WMAC_INT_WMAC_ALL)
|
||||
} else if (status & AR934X_PCIE_WMAC_INT_WMAC_ALL) {
|
||||
ar71xx_ddr_flush(AR934X_DDR_REG_FLUSH_WMAC);
|
||||
generic_handle_irq(AR934X_IP2_IRQ_WMAC);
|
||||
|
||||
else
|
||||
} else {
|
||||
spurious_interrupt();
|
||||
}
|
||||
|
||||
enable_irq(irq);
|
||||
}
|
||||
|
@ -297,7 +298,6 @@ static void ar933x_ip2_handler(void)
|
|||
|
||||
static void ar934x_ip2_handler(void)
|
||||
{
|
||||
ar71xx_ddr_flush(AR934X_DDR_REG_FLUSH_PCIE);
|
||||
do_IRQ(AR71XX_CPU_IRQ_IP2);
|
||||
}
|
||||
|
||||
|
|
|
@ -533,6 +533,7 @@ void ar71xx_gpio_function_setup(u32 set, u32 clear);
|
|||
#define AR934X_DDR_REG_FLUSH_GE1 0xa0
|
||||
#define AR934X_DDR_REG_FLUSH_USB 0xa4
|
||||
#define AR934X_DDR_REG_FLUSH_PCIE 0xa8
|
||||
#define AR934X_DDR_REG_FLUSH_WMAC 0xac
|
||||
|
||||
|
||||
#define PCI_WIN0_OFFS 0x10000000
|
||||
|
|
Loading…
Reference in a new issue