On Sat, 26 Dec 2020 11:25:49 +0800 Jiaxun Yang <jiaxun.yang@xxxxxxxxxxx> wrote: > > +#define PIF_RAM 0x1fc007c0 > > +#define REG_BASE ((u32 *) CKSEG1ADDR(0xa4800000)) > > 0xa4800000 sounds like a KSEG1 addr, I think phys should be 0x14800000? > For driver it is common to use ioremap, or at least TO_UNCAC. TO_UNCAC looks like it wouldn't work for vr4300, the manual says uncached 64-bit space is 0xffff ffff a000 0000, when include/asm/mach-generic/spaces.h puts the 64bit space start at 0x9000 0000 0000 0000. ioremap - it looked like needless overhead. Is this a blocker? The 0xa uncached prefix being in the address already is harmless, it is the same on both 32-bit and 64-bit on this cpu. I left it in because it makes it clear to me what kind of address it is, coming from the N64 side. - Lauri