On Thu, Sep 20, 2018 at 08:48:37PM +0000, Paul Burton wrote:
Speaking of nanoMIPS, what is your plan for the syscall ABI there? I can see two ways of approaching it:
a) keep all the MIPSisms in the data structures, and just use a subset of o32 that drops all the obsolete entry points b) start over and stay as close as possible to the generic ABI, using the asm-generic versions of both the syscall table and the uapi header files instead of the traditional version.
We've taken option b in our current downstream kernel & that's what I hope we'll get upstream too. There's no expectation that we'll ever need to mix pre-nanoMIPS & nanoMIPS ISAs or their associated ABIs across the kernel/user boundary so it's felt like a great opportunity to clean up & standardise.
Getting nanoMIPS/p32 support submitted upstream is on my to-do list, but there's a bunch of prep work to get in first & of course that to-do list is forever growing. Hopefully in the next couple of cycles.
p32 is just the ABI name for nanoMIPS or yet another MIPS ABI?
Either way, І think if there is yet another ABI even on an existing port we should always aim for the asm-generic syscall table indeed.
Especially for mips where o32 has a rather awkward ABI only explained by odd decisions more than 20 years ago.