MIPS: Alchemy: introduce helpers to access SYS register block.
This patch changes all absolute SYS_XY registers to offsets from the SYS block base, prefixes them with AU1000 to avoid silent failures due to changed addresses, and introduces helper functions to read/write them. No functional changes, comparing assembly of a few select functions shows no differences. Signed-off-by: Manuel Lauss <manuel.lauss@gmail.com> Cc: Linux-MIPS <linux-mips@linux-mips.org> Patchwork: https://patchwork.linux-mips.org/patch/7464/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:

committed by
Ralf Baechle

parent
2ef1bb9911
commit
1d09de7dc7
@@ -31,16 +31,16 @@
|
||||
static void __init db1550_hw_setup(void)
|
||||
{
|
||||
void __iomem *base;
|
||||
unsigned long v;
|
||||
|
||||
/* complete SPI setup: link psc0_intclk to a 48MHz source,
|
||||
* and assign GPIO16 to PSC0_SYNC1 (SPI cs# line) as well as PSC1_SYNC
|
||||
* for AC97 on PB1550.
|
||||
*/
|
||||
base = (void __iomem *)SYS_CLKSRC;
|
||||
__raw_writel(__raw_readl(base) | 0x000001e0, base);
|
||||
base = (void __iomem *)SYS_PINFUNC;
|
||||
__raw_writel(__raw_readl(base) | 1 | SYS_PF_PSC1_S1, base);
|
||||
wmb();
|
||||
v = alchemy_rdsys(AU1000_SYS_CLKSRC);
|
||||
alchemy_wrsys(v | 0x000001e0, AU1000_SYS_CLKSRC);
|
||||
v = alchemy_rdsys(AU1000_SYS_PINFUNC);
|
||||
alchemy_wrsys(v | 1 | SYS_PF_PSC1_S1, AU1000_SYS_PINFUNC);
|
||||
|
||||
/* reset the AC97 codec now, the reset time in the psc-ac97 driver
|
||||
* is apparently too short although it's ridiculous as it is.
|
||||
|
Reference in New Issue
Block a user