Revision tags: isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020
|
#
1.28 |
|
06-Oct-2018 |
skrll |
Add the ARM ARM cache operation name in some comments
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202 nick-nhusb-base-20170825
|
#
1.27 |
|
24-Aug-2017 |
jmcneill |
branches: 1.27.2; Do runtime detection of MP extensions to allow using a MULTIPROCESSOR kernel on CPUs without the MP extensions feature (like Cortex-A8).
|
Revision tags: netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226 nick-nhusb-base-20150921
|
#
1.26 |
|
09-Jun-2015 |
skrll |
Use TTBR_[UM]PATTR in a9_mpsubr.S as well as cpufunc_asm_armv7
Prompted by matt@
|
#
1.25 |
|
07-Jun-2015 |
skrll |
Dont use magic number.
No functional change.
|
Revision tags: nick-nhusb-base-20150606
|
#
1.24 |
|
30-May-2015 |
skrll |
Typo in previous
|
#
1.23 |
|
30-May-2015 |
skrll |
Provide a armv7_dcache_l1inv_all
|
#
1.22 |
|
16-May-2015 |
skrll |
Add MULTIPROCESSOR tlb flushes to armv7_tlb_flushID. Also, invalidate the branch predictor.
This function is only used by db_write_bytes and kobj_machdep
|
Revision tags: nick-nhusb-base-20150406 nick-nhusb-base
|
#
1.21 |
|
09-Nov-2014 |
skrll |
branches: 1.21.2; Ensure all memory operations are complete by before wfi. For example, the cpu could have just been in uvm_pageidlezero.
|
#
1.20 |
|
29-Oct-2014 |
skrll |
Add some dsb instructions to avoid Cortex A7 errata
|
#
1.19 |
|
29-Oct-2014 |
skrll |
Don't flush random ASIDs. Instead always assume KERNEL_PID, i.e. 0. All other TLB flushes are done via
pmap_tlb_invalidate_addr -> tlb_invalidate_addr
OK matt@
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.18 |
|
31-Jul-2014 |
matt |
branches: 1.18.2; Remove a leftover _XXX
|
Revision tags: yamt-pagecache-base9 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.17 |
|
10-Apr-2014 |
matt |
Address PR/48710. r3 is not trashed during the routine so the level is preserved. The only two real bugs was not initializing r3 to 0 to start with L1 cache and the invalid fetching the set count from r3. The mov r1, #0 should have been mov r3, #0 and has been corrected. Instead of two shifts, just use ubfx to extract the set bits and then compare them to 0. Add some other minor optimizations that make the code a little clearer.
|
Revision tags: riastradh-xf86-video-intel-2-7-1-pre-2-21-15
|
#
1.16 |
|
28-Mar-2014 |
matt |
branches: 1.16.2; Add ARM_MMU_EXTENDED support
|
Revision tags: riastradh-drm2-base3
|
#
1.15 |
|
24-Feb-2014 |
matt |
Don't need to round since values are N-1.
|
#
1.14 |
|
20-Feb-2014 |
matt |
Add armv7 versions of tlb routines.
|
#
1.13 |
|
20-Feb-2014 |
matt |
for non-of-power-2 sets, we need to round to next power of 2. (which is simply doubling the value and then subtracting 1).
|
#
1.12 |
|
18-Aug-2013 |
matt |
branches: 1.12.2; Move parts of cpu.h that are not needed by MI code in <arm/locore.h> Don't include <machine/cpu.h> or <machine/frame.h>, use <arm/locore.h> Use <arm/asm.h> instead of <machine/arm.h>
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7
|
#
1.11 |
|
21-Nov-2012 |
matt |
branches: 1.11.2; Always supply all registers (don't make one implicit).
|
Revision tags: yamt-pagecache-base6
|
#
1.10 |
|
21-Oct-2012 |
matt |
Implement a "fast" path for IRQ handling out of the idle loop. Since we are in SVC32 already we only need to save a few registers. Processing is also simplified since we know we can't return to user-mode.
|
#
1.9 |
|
19-Oct-2012 |
matt |
Add armv7_drain_writebuf (which is just a dsb).
|
#
1.8 |
|
17-Oct-2012 |
matt |
Add a few more DSBs before flushing cache lines.
|
#
1.7 |
|
07-Oct-2012 |
matt |
Fix range ops to properly flush.
|
#
1.6 |
|
22-Sep-2012 |
matt |
Don't use an asm in pmap_activate to update the TTBR, use cpu_setttb instead but add a second argument to it to indicate whether the TLB/caches need to be flushed. Default cortex to pmap_needs_fixup = 1. But check the MMFR3 field to see if the fixed can be skipped. Use a cf_flag bit 0 to indicate whether the A9 L2 cache should disable (bit 0 = 1) or enabeld (bit = 0).
With these changes, the A9 MMU can use traverse caches to do MMU tablewalks Also, make sure all memory has the shareable bit for the A9.
|
#
1.5 |
|
11-Sep-2012 |
matt |
branches: 1.5.2; Compute cache line size before doing the loop. Map translation table for MP with outer-cache=NONE
|
#
1.4 |
|
06-Sep-2012 |
matt |
Enable "shareable" access to the page table for armv7. PTE_SYNC only does a DSB now on an armv7 cpu and no longer needs to flush the cache line to ram.
|
#
1.3 |
|
29-Aug-2012 |
matt |
Recode armv7_dcache_wbinv_all in asm. Add armv7_dcache_inv_all and armv7_icache_inv_all as well. Use dsb/dmb/isb instructions
|
Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 netbsd-6-1-RC2 netbsd-6-1-RC1 netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 jym-xensuspend-base uebayasi-xip-base3 yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
|
#
1.2 |
|
19-Jun-2010 |
matt |
branches: 1.2.2; 1.2.4; 1.2.6; 1.2.14; 1.2.22; Cleanup the armv7 changes. Add ARM_ARCH_7. Use CPU_CORTEX instead of CPU_CORTEXA8 everywhere since there more types of Cortex than just the A8. CPU_CORTEXA8 still exists but causes CPU_CORTEX to be defined. Add CPU_CORTEXA9 as well. Use .arch armv7a to get us the isb/dsb instructions.
Test booted to root device prompt on a Beagleboard. All ARM kernels successfully test built.
|
#
1.1 |
|
16-Jun-2010 |
jmcneill |
PR port-arm/43299: Support added for igepv2/cortexa8/omap3530
Apply patch from PR, with build fixes. ok skrll, matt
|