mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-04 14:16:41 +07:00
ARM: OMAP: Remove __REG access for multi-omap
This does not play nicely with multi-omap as it cannot be replaced by a function in io.c for omaps with different IO bases. Signed-off-by: Tony Lindgren <tony@atomide.com>
This commit is contained in:
parent
f35ae63468
commit
e1f80bfca8
@ -183,35 +183,12 @@
|
||||
#define omap_writew(v,a) (*(volatile unsigned short *)IO_ADDRESS(a) = (v))
|
||||
#define omap_writel(v,a) (*(volatile unsigned int *)IO_ADDRESS(a) = (v))
|
||||
|
||||
/* 16 bit uses LDRH/STRH, base +/- offset_8 */
|
||||
typedef struct { volatile u16 offset[256]; } __regbase16;
|
||||
#define __REGV16(vaddr) ((__regbase16 *)((vaddr)&~0xff)) \
|
||||
->offset[((vaddr)&0xff)>>1]
|
||||
#define __REG16(paddr) __REGV16(io_p2v(paddr))
|
||||
|
||||
/* 8/32 bit uses LDR/STR, base +/- offset_12 */
|
||||
typedef struct { volatile u8 offset[4096]; } __regbase8;
|
||||
#define __REGV8(vaddr) ((__regbase8 *)((vaddr)&~4095)) \
|
||||
->offset[((vaddr)&4095)>>0]
|
||||
#define __REG8(paddr) __REGV8(io_p2v(paddr))
|
||||
|
||||
typedef struct { volatile u32 offset[4096]; } __regbase32;
|
||||
#define __REGV32(vaddr) ((__regbase32 *)((vaddr)&~4095)) \
|
||||
->offset[((vaddr)&4095)>>2]
|
||||
#define __REG32(paddr) __REGV32(io_p2v(paddr))
|
||||
|
||||
extern void omap1_map_common_io(void);
|
||||
extern void omap1_init_common_hw(void);
|
||||
|
||||
extern void omap2_map_common_io(void);
|
||||
extern void omap2_init_common_hw(void);
|
||||
|
||||
#else
|
||||
|
||||
#define __REG8(paddr) io_p2v(paddr)
|
||||
#define __REG16(paddr) io_p2v(paddr)
|
||||
#define __REG32(paddr) io_p2v(paddr)
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user