#
303975 |
|
11-Aug-2016 |
gjb |
Copy stable/11@r303970 to releng/11.0 as part of the 11.0-RELEASE cycle.
Prune svn:mergeinfo from the new branch, and rename it to RC1.
Update __FreeBSD_version.
Use the quarterly branch for the default FreeBSD.conf pkg(8) repo and the dvd1.iso packages population.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
302408 |
|
08-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
#
298586 |
|
25-Apr-2016 |
andrew |
Use the yield instruction in the arm64 cpu_spinwait. This instruction is a hint to the hardware the software is not performing a task.
Sponsored by: ABT Systems Ltd
|
#
297184 |
|
22-Mar-2016 |
andrew |
Use the saved program state register to detect when an exception frame is from userpsace. Previously we could have triggered a panic by trying to jump to a kernel address from userland as the trap handling code thought we received an ast in kernel mode.
Obtained from: ABT Systems Ltd Sponsored by: The FreeBSD Foundation
|
#
292954 |
|
30-Dec-2015 |
andrew |
Decode and print the ID_AA64* registers on boot. These registers hold information on what the core supports. In most cases these will be identical across most CPUs in the SoC, however there may be the case where, with a big.LITTLE setup they may differ. In this case we print the decoded data on all CPUs.
Reviewed by: kib Sponsored by: ABT Systems Ltd Differential Revision: https://reviews.freebsd.org/D4725
|
#
287884 |
|
17-Sep-2015 |
zbb |
Block secondary ITS instances from attaching on ARM64
Currently FreeBSD supports only single PIC controller. Some systems that have more than one (like ThunderX dual-socket) fails to boot. Disable other PICes until proper handling is implemented in the generic interrupt code.
Reviewed by: imp Obtained from: Semihalf Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D3682
|
#
286919 |
|
19-Aug-2015 |
zbb |
Add SMP support to GICv3 and ITS drivers
Introduce supprot for SMP to GICv3 and ITS drivers.
Obtained from: Semihalf Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D3299
|
#
286121 |
|
31-Jul-2015 |
zbb |
Apply erratum for mrs ICC_IAR1_EL1 speculative execution on ThunderX
ERRATUM: 22978, 23154 PASS (rev.): 1.0/1.1
Reviewed by: imp Obtained from: Semihalf Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D3184
|
#
285745 |
|
21-Jul-2015 |
zbb |
Implement get_cyclecount() on ARM64
Use Vritual Counter register associated with Generic Timer to read the cyclecount.
Obtained from: Semihalf Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D3134
|
#
285743 |
|
21-Jul-2015 |
zbb |
Improve ARM64 CPU_MATCH
Add a method to identify CPU based on RAW MIDR value.
Obtained from: Semihalf Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D3117
|
#
285311 |
|
09-Jul-2015 |
zbb |
Rework CPU identification on ARM64
This commit reworks the code responsible for identification of the CPUs during runtime. It is necessary to provide a way for workarounds and erratums to be applied only for certain HW versions.
The copy of MIDR is now stored in pcpu to provide a fast and convenient way for assambly code to read it (pcpu is used quite often so there is a chance it's inside the cache). The MIDR is also better way of identification than using user-friendly cpu_desc structure, because it can be compiled into comparision of single u32 with only one access to the memory - this is crucial for some erratums which are called from performance-critical places.
Changes in cpu_identify makes this function safe to be called on non-boot CPUs.
New function CPU_MATCH was implemented which returns boolean value based on mathing masked MIDR with chip identification. Example of usage:
printf("is thunder: %d\n", CPU_MATCH(CPU_IMPL_MASK | CPU_PART_MASK, CPU_IMPL_CAVIUM, CPU_PART_THUNDER, 0, 0)); printf("is generic: %d\n", CPU_MATCH(CPU_IMPL_MASK | CPU_PART_MASK, CPU_IMPL_ARM, CPU_PART_FOUNDATION, 0, 0));
Reviewed by: andrew Obtained from: Semihalf Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D3030
|
#
280381 |
|
23-Mar-2015 |
emaste |
Renumber clauses to avoid missing 3
|
#
280364 |
|
23-Mar-2015 |
andrew |
Add the start of the arm64 machine headers. This is the subset needed to start getting userland libraries building.
Reviewed by: imp Sponsored by: The FreeBSD Foundation
|