#
031beb4e |
|
16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: one-line sh pattern Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
|
#
5ae48eb9 |
|
11-Aug-2021 |
Justin Hibbits <jhibbits@FreeBSD.org> |
powerpc/pseries: Allow radix pmap in pseries for ISA 3.0 ISA 3.0 allows for nested radix translations with minimal to no involvement of the hypervisor. This should make pseries signficantly faster on POWER9 pseries instances, as fewer hypercalls are needed to manage pmap now. MFC after: 2 weeks Relnotes: yes
|
#
ffd21bd2 |
|
17-May-2021 |
Justin Hibbits <jhibbits@FreeBSD.org> |
Make ISA_206_ATOMICS a kernel option Summary: To make it easier to build a kernel with PowerISA 2.06 atomics (sub-word atomics), add a kernel config option. User space still needs to specify it as a CFLAG but that seems easier to do than for the kernel config. Reviewed By: luporl Differential Revision: https://reviews.freebsd.org/D29809
|
#
23e0c68a |
|
05-Dec-2020 |
Michal Meloun <mmel@FreeBSD.org> |
Remove remaning definition of GFB_<foo> options. They are not used in source files. This fixes build of some arm boards after r368159. Reported by: mjg
|
#
4efb1ca7 |
|
22-Sep-2020 |
Brandon Bergren <bdragon@FreeBSD.org> |
[PowerPC64LE] Work around qemu TCG bug in mtmsrd emulation. The TCG implementation of mtmsrd in qemu blindly copies the entire register to the MSR, instead of the specific bit positions listed in the ISA. This means that qemu will prematurely switch endian out from under the running code instead of waiting for the rfid, causing an immediate trap as it attempts to interpret the next instruction in the wrong endianness. To work around this, ensure PSL_LE is still set before doing the mtmsrd. In the future, we may wish to just turn off translation and unconditionally use rfid to switch to the ofmsr instead of quasi-switching to the ofmsr. Add a new platform option so this can be disabled. (And so that we can conditonalize additional QEMU-specific hacks in the platform code.) Sponsored by: Tag1 Consulting, Inc.
|
#
b75abea4 |
|
22-Sep-2020 |
Brandon Bergren <bdragon@FreeBSD.org> |
[PowerPC64LE] Set up powerpc.powerpc64le architecture This is the initial set up for PowerPC64LE. The current plan is for this arch to remain experimental for FreeBSD 13. This started as a weekend learning project for me and kinda snowballed from there. (More to follow momentarily.) Reviewed by: imp (earlier version), emaste Sponsored by: Tag1 Consulting, Inc. Differential Revision: https://reviews.freebsd.org/D26399
|
#
889d304b |
|
17-Mar-2020 |
Justin Hibbits <jhibbits@FreeBSD.org> |
powerpc: Axe PPC4xx support. Summary: The support was added almost a decade ago, and never completed. Just axe it. It was also inadvertently broken 5 years ago, and nobody noticed. Reviewed by: bdragon Differential Revision: https://reviews.freebsd.org/D23753
|
#
c5568ba0 |
|
11-Mar-2020 |
Leandro Lupori <luporl@FreeBSD.org> |
Enable ixl device on PowerPC64 The ixl driver now works on PowerPC64 and may be compiled in-kernel and as a module. Reviewed by: alfredo, erj Sponsored by: Eldorado Research Institute (eldorado.org.br) Differential Revision: https://reviews.freebsd.org/D23974
|
#
34ed25a8 |
|
15-Oct-2019 |
Justin Hibbits <jhibbits@FreeBSD.org> |
powerpc: Add AmigaOne platform, a subclass of MPC85xx Summary: The AmigaOne platform, encompassing the X5000 and A1222 at this time, is based on the mpc85xx platform, but includes some things not listed in the device tree. Some custom devices, like CPLD, could be added to the device tree with an overlay, or other means. However, some cannot easily be done, such as the power button interrupt. The directory will also become a location to add AmigaOne platform drivers, such as the aforementioned CPLD, and its children. Reviewed by: bdragon Differential Revision: https://reviews.freebsd.org/D21829
|
#
7c382eea |
|
24-Jul-2019 |
Justin Hibbits <jhibbits@FreeBSD.org> |
powerpc/pmap64: Make moea64 statistics optional Summary: It turns out statistics accounting is very expensive in the pmap driver, and doesn't seem necessary in the common case. Make this optional behind a MOEA64_STATS #define, which one can set if they really need statistics. This saves ~7-8% on buildworld time on a POWER9. Found by bdragon. Reviewed by: luporl Differential Revision: https://reviews.freebsd.org/D20903
|
#
6469bdcd |
|
06-Apr-2018 |
Brooks Davis <brooks@FreeBSD.org> |
Move most of the contents of opt_compat.h to opt_global.h. opt_compat.h is mentioned in nearly 180 files. In-progress network driver compabibility improvements may add over 100 more so this is closer to "just about everywhere" than "only some files" per the guidance in sys/conf/options. Keep COMPAT_LINUX32 in opt_compat.h as it is confined to a subset of sys/compat/linux/*.c. A fake _COMPAT_LINUX option ensure opt_compat.h is created on all architectures. Move COMPAT_LINUXKPI to opt_dontuse.h as it is only used to control the set of compiled files. Reviewed by: kib, cem, jhb, jtl Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D14941
|
#
8fc8068e |
|
15-Jan-2018 |
Wojciech Macek <wma@FreeBSD.org> |
PowerNV: XICS support for PowerNV/OPAL Make XICS to be OPAL-aware. Created by: Nathan Whitehorn <nwhitehorn@freebsd.org> Submitted by: Wojciech Macek <wma@semihalf.com> Sponsored by: FreeBSD Foundation
|
#
fb3855e0 |
|
11-Jan-2018 |
Wojciech Macek <wma@FreeBSD.org> |
PowerNV: initial support for OPAL OPAL is a dedicated firmware acting as a hypervisor. Add generic functions to provide all access. Created by: Nathan Whitehorn <nw@freebsd.org> Submitted by: Wojciech Macek <wma@freebsd.org>
|
#
dc9b124d |
|
21-Oct-2016 |
Justin Hibbits <jhibbits@FreeBSD.org> |
Create a new MACHINE_ARCH for Freescale PowerPC e500v2 Summary: The Freescale e500v2 PowerPC core does not use a standard FPU. Instead, it uses a Signal Processing Engine (SPE)--a DSP-style vector processor unit, which doubles as a FPU. The PowerPC SPE ABI is incompatible with the stock powerpc ABI, so a new MACHINE_ARCH was created to deal with this. Additionaly, the SPE opcodes overlap with Altivec, so these are mutually exclusive. Taking advantage of this fact, a new file, powerpc/booke/spe.c, was created with the same function set as in powerpc/powerpc/altivec.c, so it becomes effectively a drop-in replacement. setjmp/longjmp were modified to save the upper 32-bits of the now-64-bit GPRs (upper 32-bits are only accessible by the SPE). Note: This does _not_ support the SPE in the e500v1, as the e500v1 SPE does not support double-precision floating point. Also, without a new MACHINE_ARCH it would be impossible to provide binary packages which utilize the SPE. Additionally, no work has been done to support ports, work is needed for this. This also means no newer gcc can yet be used. However, gcc's powerpc support has been refactored which would make adding a powerpcspe-freebsd target very easy. Test Plan: This was lightly tested on a RouterBoard RB800 and an AmigaOne A1222 (P1022-based) board, compiled against the new ABI. Base system utilities (/bin/sh, /bin/ls, etc) still function appropriately, the system is able to boot multiuser. Reviewed By: bdrewery, imp Relnotes: yes Differential Revision: https://reviews.freebsd.org/D5683
|
#
6cedae09 |
|
02-Aug-2016 |
Justin Hibbits <jhibbits@FreeBSD.org> |
Merge MPC85XX and QorIQ config options Summary: MPC85XX and QorIQ are very similar. When the DPAA dTSEC driver was added, QORIQ_DPAA was brought in as a config option to support the differences in hardware register settings between QorIQ (e500mc-, e5500- based) SoCs and QUICC (e500v1/e500v2-based) SoCs, particularly in the Local Access Window (LAW) target settings. Unify these settings using macros to hide details and ease porting, and use a new function (mpc85xx_is_qoriq()) to distinguish between QorIQ and QUICC SoCs at runtime. An alternative to using the function could be to use a variable initialized at platform attach time, which may incur less overhead at runtime. Since it's not in the critical path once booted, this optimization doesn't seem necessary at first pass. Reviewed by: nwhitehorn MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D7294
|
#
5d89896c |
|
17-Nov-2015 |
Justin Hibbits <jhibbits@FreeBSD.org> |
Add support for new LAW registers in QorIQ SoCs. QorIQ SoCs (e5500 core, P5 family) have 2 BARs for local access windows, while MPC85XX, and P1/P2 families use only a single BAR register. This also adds the QORIQ_DPAA option, mutually exclusive to MPC85XX, to handle this difference. Obtained from: Semihalf Sponsored by: Alex Perez/Inertial Computing
|
#
6aabc119 |
|
21-Aug-2015 |
Justin Hibbits <jhibbits@FreeBSD.org> |
Create a RouterBoard platform and use it to create a flash map Summary: The RouterBoard uses a predefined partition map which doesn't exist in the fdt. This change allows overriding the fdt slicer with a custom slicer, and uses this custom slicer to define the flash map on the RouterBoard RB800. D3305 converts the mpc85xx platform into a base class, so that systems based on the mpc85xx platform can add their own overrides. This change builds on D3305, and creates a RouterBoard (RB800) platform to initialize the slicer override. Reviewed By: nwhitehorn, imp Differential Revision: https://reviews.freebsd.org/D3345
|
#
29d0137a |
|
09-Feb-2015 |
Rui Paulo <rpaulo@FreeBSD.org> |
Remove FreeBSD/wii. This port failed to gain traction and probably only a couple Wii consoles ran FreeBSD all the way to single user mode with an md(4). IPC support was never implemented, so it was impossible to use any peripheral Any further development, if any, will happen at https://github.com/rpaulo/wii. Discussed with: nathanw (a long time ago), jhibbits
|
#
7a8d25c0 |
|
17-Sep-2013 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Merge in support for PAPR-compliant (Power Architecture Platform Requirements) systems from the projects/pseries branch. This in principle includes all IBM POWER hardware released in the last 15 years with the exception of POWER3-based systems when run in 64-bit mode. The main development target, however, has been the PAPR logical partition support that is the default target in KVM on POWER and QEMU -- mileage may vary on actual hardware at present. Much of the heavy lifting here was done by Andreas Tobler. Approved by: re (kib)
|
#
31ec0f7a |
|
21-Aug-2012 |
Adrian Chadd <adrian@FreeBSD.org> |
Initial support for running FreeBSD on the Nintendo Wii. We're able to reach single user mode using a memory disk device as the file system. This port includes the framebuffer driver, the PIC driver, a platform driver and the GPIO driver. The IPC driver (to talk to IOS kernels) is not yet written but there's a placeholder for it. There are still some MMU problems and to get a working system you need to patch locore32.S. Since we haven't found the best way yet to address that problem, we're not committing those changes yet. The problem is related to the different BAT layout on the Wii and to the fact that the Homebrew loader doesn't clean up the special registers (including the 8 BATs) before passing control to us. You'll need a Wii with Homebrew loader and a TV that can do NTSC (for now). Submitted by: Margarida Gouveia
|
#
17f4cae4 |
|
27-May-2012 |
Rafal Jaworowski <raj@FreeBSD.org> |
Let us manage differences of Book-E PowerPC variations i.e. vendor / implementation specific vs. the common architecture definition. Bring PPC4XX defines (PSL, SPR, TLB). Note the new definitions under BOOKE_PPC4XX are not used in the code yet. This change set is not supposed to affect existing E500 support, it's just another reorg step before bringing support for E500mc, E5500 and PPC465. Obtained from: AppliedMicro, Freescale, Semihalf
|
#
03479763 |
|
05-Jan-2011 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Import support for the Sony Playstation 3 using the OtherOS feature available on firmwares 3.15 and earlier. Caveats: Support for the internal SATA controller is currently missing, as is support for framebuffer resolutions other than 720x480. These deficiencies will be remedied soon. Special thanks to Peter Grehan for providing the hardware that made this port possible, and thanks to Geoff Levand of Sony Computer Entertainment for advice on the LV1 hypervisor.
|
#
50fd2a5b |
|
31-Oct-2010 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Add a driver for the Apple Uninorth AGP host bridge found in all PowerPC Macintoshes with an AGP bus.
|
#
a7d5f7eb |
|
19-Oct-2010 |
Jamie Gritton <jamie@FreeBSD.org> |
A new jail(8) with a configuration file, to replace the work currently done by /etc/rc.d/jail.
|
#
2c16c8d7 |
|
31-Jul-2010 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Add support for the IBM Full-System Simulator (Mambo). This code has been developed against the 970 and Cell simulators.
|
#
c3e289e1 |
|
12-Jul-2010 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
MFppc64: Kernel sources for 64-bit PowerPC, along with build-system changes to keep 32-bit kernels compiling (build system changes for 64-bit kernels are coming later). Existing 32-bit PowerPC kernel configurations must be updated after this change to specify their architecture.
|
#
98bb3177 |
|
11-Jul-2010 |
Rafal Jaworowski <raj@FreeBSD.org> |
Sort platform options.
|
#
d7f03759 |
|
19-Oct-2008 |
Ulf Lilleengen <lulf@FreeBSD.org> |
- Import the HEAD csup code which is the basis for the cvsmode work.
|
#
6b7ba544 |
|
03-Mar-2008 |
Rafal Jaworowski <raj@FreeBSD.org> |
Initial support for Freescale PowerQUICC III MPC85xx system-on-chip family. The PQ3 is a high performance integrated communications processing system based on the e500 core, which is an embedded RISC processor that implements the 32-bit Book E definition of the PowerPC architecture. For details refer to: http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MPC8555E This port was tested and successfully run on the following members of the PQ3 family: MPC8533, MPC8541, MPC8548, MPC8555. The following major integrated peripherals are supported: * On-chip peripherals bus * OpenPIC interrupt controller * UART * Ethernet (TSEC) * Host/PCI bridge * QUICC engine (SCC functionality) This commit brings the main functionality and will be followed by individual drivers that are logically separate from this base. Approved by: cognet (mentor) Obtained from: Juniper, Semihalf MFp4: e500
|
#
4bbf0886 |
|
23-Feb-2008 |
Marcel Moolenaar <marcel@FreeBSD.org> |
Hook-up the FPU emulator. It's optional upon FPU_EMU.
|
#
5d8dd7e6 |
|
15-Dec-2007 |
Marcel Moolenaar <marcel@FreeBSD.org> |
Rename OEA to AIM. The former means nothing as it applies to all processors (it's the PowerPC Operating Environment Architecture). AIM designates the processors made by the Apple-IBM-Motorola alliance and those we typically support. While here, remove the NetBSD option IPKDB. It's not an option used by us. Also, PPC_HAVE_FPU is not used by us either. Remove that too. Obtained from: Juniper, Semihalf
|
#
a4d9d1bc |
|
25-Jun-2004 |
Peter Grehan <grehan@FreeBSD.org> |
Catch up with sparc64 OFWCONS_POLL_HZ change
|
#
e723eedf |
|
20-Jan-2004 |
Peter Grehan <grehan@FreeBSD.org> |
Add required GFB options as well as one for ofw/syscons.
|
#
ed9adee7 |
|
12-Apr-2003 |
Dag-Erling Smørgrav <des@FreeBSD.org> |
Options that go into homonymous headers shouldn't specify the header name. Submitted by: Hiten Pandya <hiten@unixdaemons.com>
|
#
c31c2645 |
|
05-Feb-2003 |
Benno Rice <benno@FreeBSD.org> |
Not all cpus are MPC750s. Replace the MPC750 cpu option with OEA. This stands for Operating Environment Architecture and is the specification that all of the MPC6xx, MPC7xx, MPC7xxx and IBM7xx CPUs adhere to.
|
#
5f07565b |
|
17-Nov-2002 |
Juli Mallett <jmallett@FreeBSD.org> |
Move SHOW_BUSYBUFS and PANIC_REBOOT_WAIT_TIME into the MI options file, since MI code uses them, and every platform provides them (except x86_64 whose options file was lacking one). Reviewed by: bde, rwatson
|
#
5f705a14 |
|
18-Sep-2002 |
Peter Grehan <grehan@FreeBSD.org> |
psim device support Approved by: benno
|
#
98f8e6c0 |
|
09-Jul-2002 |
Benno Rice <benno@FreeBSD.org> |
Driver for the Apple UniNorth Host-PCI bridge. This is in a PowerMac-specific subdirectory as it is hoped that we will support more than just the PowerMac platform.
|
#
b2c17e33 |
|
02-Aug-2001 |
Peter Wemm <peter@FreeBSD.org> |
Add a cosmetic comment.
|
#
c585bae1 |
|
17-Jun-2001 |
Benno Rice <benno@FreeBSD.org> |
The final commit for the first phase of PowerPC support. This adds the config stuff needed to build kernels. Reviewed by: obrien
|