On 05/13/2014 01:21 PM, Stefan Kristiansson wrote: > Ok, fair enough. The only reservation I have against implementing it > fully in hardware, > is that you are then forced to involve the SR[CID] connection back > into not only the register file, > but also into the MMU. (This is the heavy weightiness I've been > speaking about earlier). > > Otoh, there might be interest in the CID stuff for the MMU as well...
Ick... yes, maybe. But this is probably a pretty big change to make... > >> The problem is rather the way FCS is spec'ed: >> >> i) We _do_ need to access user-context regs from exception-context >> (apparently this is possible now...) >> >> ii) Nested exceptions really don't want to switch to a new register >> file.. you really only want to switch between user-context regs and >> supervisor context regs. >> >> I don't know if that's in the scope of FCS... > > I think that should be possible to achieve by turning off the CE bit > on userspace->kernel transition and turn it back on on > kernel->userspace transition OK, that's probably doable. Try to keep in mind that whatever change we make needs to play reasonably nicely with systems without FCS (given that it's optional)... I see this going down the road of two substantially different codebases selected by a config option that will need to be maintained. Deciding that r30 and r31 be used as kernel-only regs (in the spirit of mips k0 and k1) is something that works for _all_ implementations of OR1K, even if it's an ABI break. /Jonas _______________________________________________ OpenRISC mailing list [email protected] http://lists.openrisc.net/listinfo/openrisc
