Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: [netbsd-9] src/sys/arch/powerpc



Module Name:    src
Committed By:   martin
Date:           Mon Mar  9 10:36:42 UTC 2020

Modified Files:
        src/sys/arch/powerpc/ibm4xx [netbsd-9]: pmap.c
        src/sys/arch/powerpc/include/ibm4xx [netbsd-9]: pmap.h tlb.h

Log Message:
Pull up following revision(s) (requested by rin in ticket #773):

        sys/arch/powerpc/ibm4xx/pmap.c: revision 1.81
        sys/arch/powerpc/ibm4xx/pmap.c: revision 1.82
        sys/arch/powerpc/ibm4xx/pmap.c: revision 1.83
        sys/arch/powerpc/ibm4xx/pmap.c: revision 1.84
        sys/arch/powerpc/ibm4xx/pmap.c: revision 1.85
        sys/arch/powerpc/include/ibm4xx/tlb.h: revision 1.6
        sys/arch/powerpc/include/ibm4xx/pmap.h: revision 1.20

Misc non-critical fixes.
- __asm --> __asm volatile for sure
- turn DEBUG code in __asm into DIAGNOSTIC code in C
- style

ppc4xx_tlb_enter(): invalidate entry after clearing MSR for sure.

pmap_procwr(): use dcbst instead of dcbf as a tiny optimization.

Retire tlbpid_t (u_short):
- PID (ctx, ASID) is 8-bit length, not half word.
- For struct pmap, no need to use integer types smaller than word as
  pm_ctx because of alignment.
- For ppc4xx_tlb_enter(), we need word-length storage for pid (and msr).
XXX
Better to rewrite pmap module with more suggestive integer types rather
than char, int, long, and so on.

Fix pmap_procwr().
While we need to turn off IMMU, DMMU should be kept on. Otherwise,
dcbst (and also icbi probably, though not documented clearly both
for 405 and 403) should not work correctly.


To generate a diff of this commit:
cvs rdiff -u -r1.76.20.1 -r1.76.20.2 src/sys/arch/powerpc/ibm4xx/pmap.c
cvs rdiff -u -r1.19 -r1.19.2.1 src/sys/arch/powerpc/include/ibm4xx/pmap.h
cvs rdiff -u -r1.5 -r1.5.6.1 src/sys/arch/powerpc/include/ibm4xx/tlb.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index