summaryrefslogtreecommitdiffstats
path: root/sys/conf/files.powerpc
Commit message (Collapse)AuthorAgeFilesLines
* Compile in in_cksum* implementations for both IPv6 and IPv6.bz2011-04-201-1/+1
| | | | | | | | | | | | | | | While in_pseudo() etc. is often used in offloading feature support, in_cksum() is mostly used to fix some broken hardware. Keeping both around for the moment allows us to compile NIC drivers even in an IPv6 only environment without the need to mangle them with #ifdef INETs in a way they are not prepared for. This will leave some dead code paths that will not be exercised for IPv6. Reviewed by: gnn Sponsored by: The FreeBSD Foundation Sponsored by: iXsystems MFC after: 3 days
* Add reader/writer lock around mem_range_attr_get() and mem_range_attr_set().jkim2011-01-171-1/+0
| | | | | | | | | Compile sys/dev/mem/memutil.c for all supported platforms and remove now unnecessary dev_mem_md_init(). Consistently define mem_range_softc from mem.c for all platforms. Add missing #include guards for machine/memdev.h and sys/memrange.h. Clean up some nearby style(9) nits. MFC after: 1 month
* Import support for the Sony Playstation 3 using the OtherOS featurenwhitehorn2011-01-061-0/+9
| | | | | | | | | | | | 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.
* Add an abstraction layer to the 64-bit AIM MMU's page table manipulationnwhitehorn2010-12-041-0/+2
| | | | | | | | | logic to support modifying the page table through a hypervisor. This uses KOBJ inheritance to provide subclasses of the base 64-bit AIM MMU class with additional methods for page table manipulation. Many thanks to Peter Grehan for suggesting this design and implementing the MMU KOBJ inheritance mechanism.
* Provide a simple IOMMU framework on PowerPC, which is required to supportnwhitehorn2010-12-031-0/+1
| | | | PPC hypervisors.
* Remove use of a separate ofw_pmap on 32-bit CPUs. Many Open Firmwarenwhitehorn2010-11-121-1/+1
| | | | | | | | | | mappings need to end up in the kernel anyway since the kernel begins executing in OF context. Separating them adds needless complexity, especially since the powerpc64 and mmu_oea64 code gave up on it a long time ago. As a side effect, the PPC ofw_machdep code is no longer AIM-specific, so move it to powerpc/ofw.
* Add a driver for the Apple Uninorth AGP host bridge found in all PowerPCnwhitehorn2010-10-311-0/+1
| | | | Macintoshes with an AGP bus.
* Add three new drivers for fan control and temperature reading on theandreast2010-10-151-0/+3
| | | | | | | | | | | | | | | | PowerMac7,2. - The fcu driver lets us read and write the fan RPMs for all fans in the PowerMac7,2. This driver is PowerMac specific. - The ds1775 is a driver to read the temperature for the drive bay sensor. - The max6690 is another driver to read temperatures. Here it is used to read the inlet, the backside and the U3 heatsink temperature. An additional driver, the ad7417, will follow later. Thanks to nwhitehorn for guiding me through this driver development. Approved by: nwhitehorn (mentor)
* Add a memory-range interface to /dev/mem on PowerPC using PAT attributes.nwhitehorn2010-10-031-0/+1
| | | | | | | | | Unlike actual MTRR, this only controls the mapping attributes for subsequent mmap() of /dev/mem. Nonetheless, the support is sufficiently MTRR-like that Xorg can use it, which translates into an enormous increase in graphics performance on PowerPC. MFC after: 2 weeks
* Update PowerPC event timer code to use new event timers infrastructure.mav2010-09-111-0/+1
| | | | | | Reviewed by: nwitehorn Tested by: andreast H/W donated by: Gheorghe Ardelean
* Restructure how reset and poweroff are handled on PowerPC systems, sincenwhitehorn2010-08-311-1/+1
| | | | | | | | | | | | | | | | | the existing code was very platform specific, and broken for SMP systems trying to reboot from KDB. - Add a new PLATFORM_RESET() method to the platform KOBJ interface, and migrate existing reset functions into platform modules. - Modify the OF_reboot() routine to submit the request by hand to avoid the IPIs involved in the regular openfirmware() routine. This fixes reboot from KDB on SMP machines. - Move non-KDB reset and poweroff functions on the Powermac platform into the relevant power control drivers (cuda, pmu, smu), instead of using them through the Open Firmware backdoor. - Rename platform_chrp to platform_powermac since it has become increasingly Powermac specific. When we gain support for IBM systems, we will grow a new platform_chrp.
* FPU EMU is 32-bit only for now, so mark it as a powerpc-only feature.nwhitehorn2010-08-201-9/+9
| | | | This fixes powerpc64 LINT.
* Add support for the IBM Full-System Simulator (Mambo). This code has beennwhitehorn2010-07-311-0/+5
| | | | developed against the 970 and Cell simulators.
* MFppc64:nwhitehorn2010-07-131-15/+26
| | | | | | | 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.
* Unify ABI-related bits of the Book-E and AIM machdep routinesnwhitehorn2010-07-121-0/+1
| | | | | | | | (exec_setregs, etc.) in order to simplify the addition of 64-bit support, and possible future extension of the Book-E code to handle hard floating point and Altivec. MFC after: 1 month
* Convert Freescale PowerPC platforms to FDT convention.raj2010-07-111-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | | The following systems are affected: - MPC8555CDS - MPC8572DS This overhaul covers the following major changes: - All integrated peripherals drivers for Freescale MPC85XX SoC, which are currently in the FreeBSD source tree are reworked and adjusted so they derive config data out of the device tree blob (instead of hard coded / tabelarized values). - This includes: LBC, PCI / PCI-Express, I2C, DS1553, OpenPIC, TSEC, SEC, QUICC, UART, CFI. - Thanks to the common FDT infrastrucutre (fdtbus, simplebus) we retire ocpbus(4) driver, which was based on hard-coded config data. Note that world for these platforms has to be built WITH_FDT. Reviewed by: imp Sponsored by: The FreeBSD Foundation
* Add a driver for the CPU temperature sensors attached over I2C on thenwhitehorn2010-06-051-0/+1
| | | | PowerMac 11,2.
* Add support for the U4 PCI-Express bridge chipset used in late-generationnwhitehorn2010-05-161-1/+2
| | | | | | | | | | Powermac G5 systems. MSI and several other things are not presently supported. The U3/U4 internal device support portions of this change were contributed by Andreas Tobler. MFC after: 1 week
* Move libteken out of the syscons directory.ed2009-09-031-1/+0
| | | | | | | | | | I initially committed libteken to sys/dev/syscons/teken, but now that I'm working on a console driver myself, I noticed this was not a good decision. Move it to sys/teken to make it easier for other drivers to use a terminal emulator. Also list teken.c in sys/conf/files, instead of listing it in all the files.arch files separately.
* Add cpufreq support on the PowerPC G5, along with a skeleton SMU drivernwhitehorn2009-06-231-4/+6
| | | | | in order to slew CPU voltage during frequency changes. The OpenBSD SMU driver was an extremely helpful reference for this.
* Keep file list sorted.raj2009-06-221-1/+1
|
* DS1553 RTC module driver. On the MPC8555CDS system it hangs off of the LBC bus.raj2009-06-221-0/+2
| | | | Obtained from: Semihalf
* Integrated I2C controller driver (found in MPC85xx and other SOC parts).raj2009-06-221-0/+1
| | | | Obtained from: Freescale, Semihalf
* Initial version of the sec(4) driver for the integrated security engine foundraj2009-06-061-0/+1
| | | | | | | | | | | in Freescale system-on-chip devices. The following algorithms and schemes are currently supported: - 3DES, AES, DES - MD5, SHA1, SHA256, SHA384, SHA512 Reviewed by: philip Obtained from: Freescale, Semihalf
* Introduce support for cpufreq on PowerPC with the dynamic frequencynwhitehorn2009-05-311-0/+3
| | | | switching capabilities of the MPC7447A and MPC7448.
* Initial support for SMP on PowerPC MPC85xx.raj2009-05-211-0/+1
| | | | | | Tested with Freescale dual-core MPC8572DS development system. Obtained from: Freescale, Semihalf
* Factor out platform dependent things unrelated to device drivers into anwhitehorn2009-05-141-0/+4
| | | | | | | | | | new platform module. These are probed in early boot, and have the responsibility of determining the layout of physical memory, determining the CPU timebase frequency, and handling the zoo of SMP mechanisms found on PowerPC. Reviewed by: marcel, raj Book-E parts by: raj
* Add suppport for ISA and ISA interrupts to make the ATAmarcel2009-04-241-0/+2
| | | | | | | controller in the VIA southbridge functional in the CDS (Configurable Development System) for MPC85XX. The embedded USB controllers look operational but the interrupt steering is still wrong.
* Add an Open Firmware access module for real-mode OF accesses to the PowerPCnwhitehorn2009-04-051-0/+1
| | | | | build. This is required for the IBM Mambo simulator, as well as a variety of non-Apple PowerPC hardware.
* Modularize the Macintosh built-in ATA along the lines of the rest of thenwhitehorn2009-04-041-3/+3
| | | | | | | ATA system as an optional atamacio device. PR: powerpc/133161 Submitted by: Bruce Cran
* PowerPC, meet kernel core dumps. The support is basedmarcel2009-04-041-0/+1
| | | | | | | | | | | | | | | | | | on a generic dumper that creates an ELF core file and uses PMAP functions to scan and iterate over memory chunks, as well as handle memory mappings used during dumping. the PMAP layer can choose to return physical memory chunks or virtual memory chunks. For minidumps, the chunks should be virtual. The default MMU I/F implementation for the scan_md() method returns NULL. Thus, when a PMAP implementation does not implement the required methods, an empty core file is created. Here, empty means having an ELF header only. Obtained from: Juniper Networks
* Add support for 64-bit PowerPC CPUs operating in the 64-bit bridge modenwhitehorn2009-04-041-2/+3
| | | | | | | | | | provided, for example, on the PowerPC 970 (G5), as well as on related CPUs like the POWER3 and POWER4. This also adds support for various built-in hardware found on Apple G5 hardware (e.g. the IBM CPC925 northbridge). Reviewed by: grehan
* Add memmove() to the kernel, making the kernel compile with Clang.ed2009-02-281-0/+1
| | | | | | | | | | | | When copying big structures, LLVM generates calls to memmove(), because it may not be able to figure out whether structures overlap. This caused linker errors to occur. memmove() is now implemented using bcopy(). Ideally it would be the other way around, but that can be solved in the future. On ARM we don't do add anything, because it already has memmove(). Discussed on: arch@ Reviewed by: rdivacky
* Include altivec.c, missed on previous commit r188860. This should unbreak thenwhitehorn2009-02-211-0/+1
| | | | build.
* Add support for the I2S and davbus audio controllers found in Apple PowerPCnwhitehorn2009-01-251-0/+5
| | | | | | hardware. Submitted by: Marco Trillo
* Driver for Apple Keywest I2C controllers found in MacIO ASICs. Used fornwhitehorn2009-01-151-0/+1
| | | | | | | | power and thermal control, as well as GPIOs on Xserves and controlling sound codecs for Apple built-in audio. Submitted by: Marco Trillo Obtained from: NetBSD
* Import an Open Firmware I2C bus module. This attaches firmware device treenwhitehorn2009-01-151-0/+1
| | | | | | | | indicated I2C devices, and provides an ofw_bus interface for driver probing. This should be MI, but is currently provided only on PowerPC due to lack of sparc64 hardware with an I2C controller. Discussed on: freebsd-arch
* Rework BookE pmap towards multi-core support.raj2009-01-131-1/+0
| | | | | | | | | | | | | | | | | | | | | | | o Eliminate tlb0[] (a s/w copy of TLB0) - The table contents cannot be maintained reliably in multiple MMU environments, where asynchronous events (invalidations from other cores) can change our local TLB0 contents underneath. - Simplify and optimize TLB flushing: system wide invalidations are performed using tlbivax instruction (propagates to other cores), for local MMU invalidations a new optimized routine (assembly) is introduced. o Improve and simplify TID allocation and management. - Let each core keep track of its TID allocations. - Simplify TID recycling, eliminate dead code. - Drop the now unused powerpc/booke/support.S file. o Improve page tables management logic. o Simplify TLB1 manipulation routines. o Other improvements and polishing. Obtained from: Freescale, Semihalf
* Replace syscons terminal renderer by a new renderer that uses libteken.ed2009-01-011-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some time ago I started working on a library called libteken, which is terminal emulator. It does not buffer any screen contents, but only keeps terminal state, such as cursor position, attributes, etc. It should implement all escape sequences that are implemented by the cons25 terminal emulator, but also a fair amount of sequences that are present in VT100 and xterm. A lot of random notes, which could be of interest to users/developers: - Even though I'm leaving the terminal type set to `cons25', users can do experiments with placing `xterm-color' in /etc/ttys. Because we only implement a subset of features of xterm, this may cause artifacts. We should consider extending libteken, because in my opinion xterm is the way to go. Some missing features: - Keypad application mode (DECKPAM) - Character sets (SCS) - libteken is filled with a fair amount of assertions, but unfortunately we cannot go into the debugger anymore if we fail them. I've done development of this library almost entirely in userspace. In sys/dev/syscons/teken there are two applications that can be helpful when debugging the code: - teken_demo: a terminal emulator that can be started from a regular xterm that emulates a terminal using libteken. This application can be very useful to debug any rendering issues. - teken_stress: a stress testing application that emulates random terminal output. libteken has literally survived multiple terabytes of random input. - libteken also includes support for UTF-8, but unfortunately our input layer and font renderer don't support this. If users want to experiment with UTF-8 support, they can enable `TEKEN_UTF8' in teken.h. If you recompile your kernel or the teken_demo application, you can hold some nice experiments. - I've left PC98 the way it is right now. The PC98 platform has a custom syscons renderer, which supports some form of localised input. Maybe we should port PC98 to libteken by the time syscons supports UTF-8? - I've removed the `dumb' terminal emulator. It has been broken for years. It hasn't survived the `struct proc' -> `struct thread' conversion. - To prevent confusion among people that want to hack on libteken: unlike syscons, the state machines that parse the escape sequences are machine generated. This means that if you want to add new escape sequences, you have to add an entry to the `sequences' file. This will cause new entries to be added to `teken_state.h'. - Any rendering artifacts that didn't occur prior to this commit are by accident. They should be reported to me, so I can fix them. Discussed on: current@, hackers@ Discussed with: philip (at 25C3)
* Modularize the Open Firmware client interface to allow run-time switchingnwhitehorn2008-12-201-0/+2
| | | | | | | | | | | | of OFW access semantics, in order to allow future support for real-mode OF access and flattened device frees. OF client interface modules are implemented using KOBJ, in a similar way to the PPC PMAP modules. Because we need Open Firmware to be available before mutexes can be used on sparc64, changes are also included to allow KOBJ to be used very early in the boot process by only using the mutex once we know it has been initialized. Reviewed by: marius, grehan
* Switch to ath hal source code. Note this removes the ath_halsam2008-12-011-10/+0
| | | | | | | | | | | | | | | | | module; the ath module now brings in the hal support. Kernel config files are almost backwards compatible; supplying device ath_hal gives you the same chip support that the binary hal did but you must also include options AH_SUPPORT_AR5416 to enable the extended format descriptors used by 11n parts. It is now possible to control the chip support included in a build by specifying exactly which chips are to be supported in the config file; consult ath_hal(4) for information.
* Add ADB support. This provides support for the external ADB bus on the PowerMacnwhitehorn2008-10-261-0/+8
| | | | | | | | G3 as well as the internal ADB keyboard and mice in PowerBooks and iBooks. This also brings in Mac GPIO support, for which we should eventually have a better interface. Obtained from: NetBSD (CUDA and PMU drivers)
* Add a driver for flash memory that implements to the Common Flashmarcel2008-10-251-0/+1
| | | | | | | | | | Memory Interface (CFI). The flash memory can be read and written to through /dev/cfi# and an ioctl() exists so processes can read the query information. The driver supports the AMD and Intel command set, though only the AMD command has been tested. Obtained from: Juniper Networks, Inc.
* Add a driver for the Local Bus Controller.marcel2008-10-251-0/+1
| | | | Obtained from: Juniper Networks, Inc.
* Convert PowerPC AIM PCI and nexus busses to standard OFW bus interface. Thisnwhitehorn2008-10-141-1/+1
| | | | | | | | | | | simplifies certain device attachments (Kauai ATA, for instance), and makes possible others on new hardware. On G5 systems, there are several otherwise standard PCI devices (Serverworks SATA) that will not allow their interrupt properties to be written, so this information must be supplied directly from Open Firmware. Obtained from: sparc64
* Add DMA support for Apple built-in ATA controllers.nwhitehorn2008-09-271-0/+1
| | | | | Tested by: grehan, marcotrillo@gmail.com MFC after: 1 month
* tsec: Refactor driver's structure.raj2008-08-261-0/+1
| | | | | | | | | | | | Split the driver into the core functionality part (sys/dev/tsec/if_tsec.c) and the bus attachment (sys/dev/tsec/if_tsec_ocp.c). This lets better integrate and maintain the driver in other environments with different attachment abstractions (there is at least one other FreeBSD port -- MPC83xx -- which uses this TSEC driver, but with different local bus model i.e. some OF derivative). While there, clean up and fix minor cosmetics. Obtained from: Semihalf
* Add support for the Apple Big Mac (BMAC) Ethernet controller,marcel2008-06-071-0/+1
| | | | | | found on various Apple G3 models. Submitted by: Nathan Whitehorn
* Add support for Apple's Descriptor-Based DMA (DBDMA) engine. The DMAmarcel2008-06-071-0/+1
| | | | | | | engine is usful to various existing drivers, such as ata(4) and scc(4), and is used bhy the soon to be added bm(4). Submitted by: Nathan Whitehorn
* mp_machdep.c is only conditional upon smp, not aim. If booke growsmarcel2008-04-301-1/+1
| | | | support for smp, mp_machdep.c needs to be included as well.
OpenPOWER on IntegriCloud