Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

MIPS: BCM63XX: use the new reset helper

Use the new reset helper where appropriate.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Patchwork: http://patchwork.linux-mips.org/patch/4453
Signed-off-by: John Crispin <blogic@openwrt.org>

authored by

Jonas Gorski and committed by
John Crispin
ba00e2e5 799faa62

+11 -27
+5 -14
arch/mips/bcm63xx/clk.c
··· 14 14 #include <bcm63xx_cpu.h> 15 15 #include <bcm63xx_io.h> 16 16 #include <bcm63xx_regs.h> 17 + #include <bcm63xx_reset.h> 17 18 #include <bcm63xx_clk.h> 18 19 19 20 static DEFINE_MUTEX(clocks_mutex); ··· 125 124 CKCTL_6368_SWPKT_USB_EN | 126 125 CKCTL_6368_SWPKT_SAR_EN, enable); 127 126 if (enable) { 128 - u32 val; 129 - 130 127 /* reset switch core afer clock change */ 131 - val = bcm_perf_readl(PERF_SOFTRESET_6368_REG); 132 - val &= ~SOFTRESET_6368_ENETSW_MASK; 133 - bcm_perf_writel(val, PERF_SOFTRESET_6368_REG); 128 + bcm63xx_core_set_reset(BCM63XX_RESET_ENETSW, 1); 134 129 msleep(10); 135 - val |= SOFTRESET_6368_ENETSW_MASK; 136 - bcm_perf_writel(val, PERF_SOFTRESET_6368_REG); 130 + bcm63xx_core_set_reset(BCM63XX_RESET_ENETSW, 0); 137 131 msleep(10); 138 132 } 139 133 } ··· 218 222 CKCTL_6368_SWPKT_SAR_EN, enable); 219 223 220 224 if (enable) { 221 - u32 val; 222 - 223 225 /* reset sar core afer clock change */ 224 - val = bcm_perf_readl(PERF_SOFTRESET_6368_REG); 225 - val &= ~SOFTRESET_6368_SAR_MASK; 226 - bcm_perf_writel(val, PERF_SOFTRESET_6368_REG); 226 + bcm63xx_core_set_reset(BCM63XX_RESET_SAR, 1); 227 227 mdelay(1); 228 - val |= SOFTRESET_6368_SAR_MASK; 229 - bcm_perf_writel(val, PERF_SOFTRESET_6368_REG); 228 + bcm63xx_core_set_reset(BCM63XX_RESET_SAR, 0); 230 229 mdelay(1); 231 230 } 232 231 }
+6 -13
arch/mips/pci/pci-bcm63xx.c
··· 14 14 #include <linux/clk.h> 15 15 #include <asm/bootinfo.h> 16 16 17 + #include <bcm63xx_reset.h> 18 + 17 19 #include "pci-bcm63xx.h" 18 20 19 21 /* ··· 128 126 bcm_misc_writel(val, MISC_SERDES_CTRL_REG); 129 127 130 128 /* reset the PCIe core */ 131 - val = bcm_perf_readl(PERF_SOFTRESET_6328_REG); 132 - 133 - val &= ~SOFTRESET_6328_PCIE_MASK; 134 - val &= ~SOFTRESET_6328_PCIE_CORE_MASK; 135 - val &= ~SOFTRESET_6328_PCIE_HARD_MASK; 136 - val &= ~SOFTRESET_6328_PCIE_EXT_MASK; 137 - bcm_perf_writel(val, PERF_SOFTRESET_6328_REG); 129 + bcm63xx_core_set_reset(BCM63XX_RESET_PCIE, 1); 130 + bcm63xx_core_set_reset(BCM63XX_RESET_PCIE_EXT, 1); 138 131 mdelay(10); 139 132 140 - val |= SOFTRESET_6328_PCIE_MASK; 141 - val |= SOFTRESET_6328_PCIE_CORE_MASK; 142 - val |= SOFTRESET_6328_PCIE_HARD_MASK; 143 - bcm_perf_writel(val, PERF_SOFTRESET_6328_REG); 133 + bcm63xx_core_set_reset(BCM63XX_RESET_PCIE, 0); 144 134 mdelay(10); 145 135 146 - val |= SOFTRESET_6328_PCIE_EXT_MASK; 147 - bcm_perf_writel(val, PERF_SOFTRESET_6328_REG); 136 + bcm63xx_core_set_reset(BCM63XX_RESET_PCIE_EXT, 0); 148 137 mdelay(200); 149 138 } 150 139