#
609cdb12 |
| 26-Jun-2024 |
Mitchell Horne <mhorne@FreeBSD.org> |
ofw: convert boolean_t to bool
Most of these already treat it as a proper bool, i.e. using true/false. Also fix-up callers of OF_install().
No functional change intended.
Reviewed by: andrew, emas
ofw: convert boolean_t to bool
Most of these already treat it as a proper bool, i.e. using true/false. Also fix-up callers of OF_install().
No functional change intended.
Reviewed by: andrew, emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45733
show more ...
|
Revision tags: release/14.1.0, release/13.3.0 |
|
#
b52dceb8 |
| 27-Feb-2024 |
Shawn Anastasio <sanastasio@raptorengineering.com> |
powerpc: Bump maximum number of FDT reserved mem entries
Newer firmware on POWER systems, including v2.10 of the Talos II and Blackbird firmware can end up reserving more than 32 memory regions in t
powerpc: Bump maximum number of FDT reserved mem entries
Newer firmware on POWER systems, including v2.10 of the Talos II and Blackbird firmware can end up reserving more than 32 memory regions in the device tree, which exceeded an assumption made by ofw_machdep.c's excise_fdt_reserved(). Bump the maximum number of FDT reservations to the next power of 2 in order to fix booting on newer firmware.
PR: 277097 Reviewed by: jhibbits Differential Revision: https://reviews.freebsd.org/D44015
show more ...
|
Revision tags: release/14.0.0 |
|
#
685dc743 |
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: one-line .c pattern
Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
|
Revision tags: release/13.2.0 |
|
#
429ba161 |
| 26-Feb-2023 |
Piotr Kubaj <pkubaj@FreeBSD.org> |
powerpc: fix warning: a function declaration without a prototype is deprecated in all versions of C
Reviewers: #powerpc Approved by: alfredo
Subscribers: imp, jhibbits
Differential Revision: https
powerpc: fix warning: a function declaration without a prototype is deprecated in all versions of C
Reviewers: #powerpc Approved by: alfredo
Subscribers: imp, jhibbits
Differential Revision: https://reviews.freebsd.org/D38787
show more ...
|
Revision tags: release/12.4.0, release/13.1.0, release/12.3.0, release/13.0.0, release/12.2.0 |
|
#
a6625592 |
| 23-Sep-2020 |
Brandon Bergren <bdragon@FreeBSD.org> |
[PowerPC64LE] LE bringup work: locore / machdep / platform
This is the initial LE changes required in the machdep code to get as far as platform attachment on qemu pseries.
Sponsored by: Tag1 Consu
[PowerPC64LE] LE bringup work: locore / machdep / platform
This is the initial LE changes required in the machdep code to get as far as platform attachment on qemu pseries.
Sponsored by: Tag1 Consulting, Inc.
show more ...
|
#
b64b3133 |
| 01-Sep-2020 |
Mateusz Guzik <mjg@FreeBSD.org> |
powerpc: clean up empty lines in .c and .h files
|
Revision tags: release/11.4.0 |
|
#
53d2936c |
| 20-Jan-2020 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r356848 through r356919.
|
#
490ebb8f |
| 18-Jan-2020 |
Justin Hibbits <jhibbits@FreeBSD.org> |
powerpc: Fix the NUMA domain list on powernv
Summary: Consolidate the NUMA associativity handling into a platform function. Non-NUMA platforms will just fall back to the default (0). Currently only
powerpc: Fix the NUMA domain list on powernv
Summary: Consolidate the NUMA associativity handling into a platform function. Non-NUMA platforms will just fall back to the default (0). Currently only implemented for powernv, which uses a lookup table to map the device tree associativity into a system NUMA domain.
Fixes hangs on powernv after r356534, and corrects a fairly longstanding bug in powernv's NUMA handling, which ended up using domains 1 and 2 for devices and memory on power9, while CPUs were bound to domains 0 and 1.
Reviewed by: bdragon, luporl Differential Revision: https://reviews.freebsd.org/D23220
show more ...
|
#
12fe21a3 |
| 27-Dec-2019 |
Brandon Bergren <bdragon@FreeBSD.org> |
[PowerPC] Ignore fortify-source warning in trap vector copy
Due to a bug in clang 9.0.0 source tracking, the trap vector copying will always trigger a fortify-source warning.
The destination buffer
[PowerPC] Ignore fortify-source warning in trap vector copy
Due to a bug in clang 9.0.0 source tracking, the trap vector copying will always trigger a fortify-source warning.
The destination buffers are 0x2f00 bytes, and the bcopy region is 0x2e00 bytes, so there is not an overflow here.
(I have been running with this patch since September.)
show more ...
|
Revision tags: release/12.1.0 |
|
#
f2c7768c |
| 22-Oct-2019 |
Leandro Lupori <luporl@FreeBSD.org> |
[PPC] Avoid underflows in NUMA domains
On POWER8 systems with only one memory domain, the "ibm,associativity" number that corresponds to it is 0, unlike POWER9 systems with two or more domains, in w
[PPC] Avoid underflows in NUMA domains
On POWER8 systems with only one memory domain, the "ibm,associativity" number that corresponds to it is 0, unlike POWER9 systems with two or more domains, in which the minimum value is 1.
In POWER8 case, subtracting 1 causes an underflow on the unsigned domain variable and a subsequent index out-of-bounds access.
Reviewed by: jhibbits Tested by: bdragon, luporl
show more ...
|
Revision tags: release/11.3.0 |
|
#
0269ae4c |
| 06-Jun-2019 |
Alan Somers <asomers@FreeBSD.org> |
MFHead @348740
Sponsored by: The FreeBSD Foundation
|
#
e2e050c8 |
| 20-May-2019 |
Conrad Meyer <cem@FreeBSD.org> |
Extract eventfilter declarations to sys/_eventfilter.h
This allows replacing "sys/eventfilter.h" includes with "sys/_eventfilter.h" in other header files (e.g., sys/{bus,conf,cpu}.h) and reduces hea
Extract eventfilter declarations to sys/_eventfilter.h
This allows replacing "sys/eventfilter.h" includes with "sys/_eventfilter.h" in other header files (e.g., sys/{bus,conf,cpu}.h) and reduces header pollution substantially.
EVENTHANDLER_DECLARE and EVENTHANDLER_LIST_DECLAREs were moved out of .c files into appropriate headers (e.g., sys/proc.h, powernv/opal.h).
As a side effect of reduced header pollution, many .c files and headers no longer contain needed definitions. The remainder of the patch addresses adding appropriate includes to fix those files.
LOCK_DEBUG and LOCK_FILE_LINE_ARG are moved to sys/_lock.h, as required by sys/mutex.h since r326106 (but silently protected by header pollution prior to this change).
No functional change (intended). Of course, any out of tree modules that relied on header pollution for sys/eventhandler.h, sys/lock.h, or sys/mutex.h inclusion need to be fixed. __FreeBSD_version has been bumped.
show more ...
|
#
7648bc9f |
| 13-May-2019 |
Alan Somers <asomers@FreeBSD.org> |
MFHead @347527
Sponsored by: The FreeBSD Foundation
|
#
49d9a597 |
| 13-Apr-2019 |
Justin Hibbits <jhibbits@FreeBSD.org> |
Add NUMA support to powerpc
Summary: Initial NUMA support: - associate CPU with domain - associate memory ranges with domain - identify domain for devices - limit device interrupt bi
Add NUMA support to powerpc
Summary: Initial NUMA support: - associate CPU with domain - associate memory ranges with domain - identify domain for devices - limit device interrupt binding to appropriate domain
- Additionally fixes a bug in the setting of Maxmem which led to only memory attached to the first socket being enabled for DMA
A pmap variant can opt in to numa support by by calling `numa_mem_regions` at the end of pmap_bootstrap - registering the corresponding ranges with the VM.
This yields a ~20% improvement in build times of llvm on dual socket POWER9 over non-NUMA.
Original patch by mmacy.
Differential Revision: https://reviews.freebsd.org/D17933
show more ...
|
Revision tags: release/12.0.0 |
|
#
01d4e214 |
| 05-Oct-2018 |
Glen Barber <gjb@FreeBSD.org> |
MFH r338661 through r339200.
Sponsored by: The FreeBSD Foundation
|
#
ce44d808 |
| 27-Sep-2018 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r338731 through r338987.
|
#
fd8cf3be |
| 25-Sep-2018 |
Justin Hibbits <jhibbits@FreeBSD.org> |
powerpc: Blacklist the top 64kB range of the lower 4GB PA space
The PHB4 host bridge used by the POWER9 uses a 64kB range in 32-bit space at the address 0xffff0000-0xffffffff. Reserve this range so
powerpc: Blacklist the top 64kB range of the lower 4GB PA space
The PHB4 host bridge used by the POWER9 uses a 64kB range in 32-bit space at the address 0xffff0000-0xffffffff. Reserve this range so that DMA memory cannot be allocated within this range. This fixes seemingly random crashes on a POWER9 system. Ideally this range will have been reserved by the firmware, but as of now this is not the case.
Submitted by: git_bdragon.rtk0.net Reviewed by: nwhitehorn Approved by: re(kib) Differential Revision: https://reviews.freebsd.org/D17183
show more ...
|
Revision tags: release/11.2.0 |
|
#
6d645c57 |
| 07-Jun-2018 |
Breno Leitao <leitao@FreeBSD.org> |
Fix excise_initrd_region() to support 32- and 64-bit initrd params.
Changed excise_initrd_region to support both 32- and 64-bit values for linux,initrd-start and linux,initrd-end.
This fixes the bo
Fix excise_initrd_region() to support 32- and 64-bit initrd params.
Changed excise_initrd_region to support both 32- and 64-bit values for linux,initrd-start and linux,initrd-end.
This fixes the boot problem on some machines after rS334485.
Submitted by: Luis Pires <lffpires@ruabrasil.org> Reviewed by: jhibbits, leitao Approved by: jhibbits (mentor) Differential Revision: https://reviews.freebsd.org/D15667
show more ...
|
#
48f64992 |
| 01-Jun-2018 |
Breno Leitao <leitao@FreeBSD.org> |
powerpc64: Avoid overwriting initrd area
Currently kexec loads an initrd file into the main memory but does not mark that region as reserved, thus the area is not protected.
If any initrd/md file i
powerpc64: Avoid overwriting initrd area
Currently kexec loads an initrd file into the main memory but does not mark that region as reserved, thus the area is not protected.
If any initrd/md file is loaded from kexec/petitboot, the region might become corarupted/overwritten since FreeBSD does not know the region is 'reserved'.
This patch simply adds the initrd area as a reserved memory region.
Approved by: jhibbits Differential Revision: https://reviews.freebsd.org/D15610
show more ...
|
#
c07c77a3 |
| 19-May-2018 |
Justin Hibbits <jhibbits@FreeBSD.org> |
Fix a manual copy from the original diff for r333825
The 'else' was in the original diff.
Submitted by: Breno Leitao
|
#
876f3b92 |
| 19-May-2018 |
Justin Hibbits <jhibbits@FreeBSD.org> |
Add yet another option for gathering available memory
On some POWER9 systems, 'reg' denotes the full memory in the system, while 'linux,usable-memory' denotes the usable memory. Some memory is rese
Add yet another option for gathering available memory
On some POWER9 systems, 'reg' denotes the full memory in the system, while 'linux,usable-memory' denotes the usable memory. Some memory is reserved for NVLink usage, so is partitioned off.
Submitted by: Breno Leitao
show more ...
|
#
42ca1d5c |
| 25-Apr-2018 |
Justin Hibbits <jhibbits@FreeBSD.org> |
Increase the fdtmemreserv array limit to boot on POWER9
Discussing with others, this needs to be at least 20 to boot on some POWER9 nodes. Linux made a similar change for the same reason, so increa
Increase the fdtmemreserv array limit to boot on POWER9
Discussing with others, this needs to be at least 20 to boot on some POWER9 nodes. Linux made a similar change for the same reason, so increase to 32 to give us some extra breathing room as well. The input and output arrays are sized at 256, so much greater than the increase in the property array size.
show more ...
|
#
35feca37 |
| 11-Mar-2018 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Make FDT-using parts of ofw_machdep.c condition on options FDT. This fixes the kernel build when options FDT is absent.
|
#
f9edb09d |
| 07-Mar-2018 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Move the powerpc64 direct map base address from zero to high memory. This accomplishes a few things: - Makes NULL an invalid address in the kernel, which is useful for catching bugs. - Lays groundw
Move the powerpc64 direct map base address from zero to high memory. This accomplishes a few things: - Makes NULL an invalid address in the kernel, which is useful for catching bugs. - Lays groundwork for radix-tree translation on POWER9, which requires the direct map be at high memory. - Similarly lays groundwork for a direct map on 64-bit Book-E.
The new base address is chosen as the base of the fourth radix quadrant (the minimum kernel address in this translation mode) and because all supported CPUs ignore at least the first two bits of addresses in real mode, allowing direct-map addresses to be used in real-mode handlers. This is required by Linux and is part of the architecture standard starting in POWER ISA 3, so can be relied upon.
Reviewed by: jhibbits, Breno Leitao Differential Revision: D14499
show more ...
|
#
72bfb31a |
| 13-Jan-2018 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r327886 through r327930.
|