summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* Also comment-out options MPC85XX. We don't define CCSRBAR_* without E500.marcel2008-03-041-1/+1
|
* Comment-out cpu E500. We can't yet build it with AIM at the same time.marcel2008-03-041-1/+1
|
* Add the pic_ipi method. While here, eliminate the unused openpic_ocpbus_softcmarcel2008-03-041-9/+4
| | | | struct.
* When unloading kld, don't forget to flush the nat pointers.piso2008-03-031-0/+7
|
* Import the omitted gdb_machdep.c for PowerPC kernel.raj2008-03-031-2/+57
| | | | | Approved by: cognet (mentor) MFp4: e500
* Connect MPC85XX to the PowerPC build.raj2008-03-034-2/+98
| | | | | | | | | | | | | | | | | The kernel config file is KERNCONF=MPC85XX, so the usual procedure applies: 1. make buildworld TARGET_ARCH=powerpc 2. make buildkernel TARGET_ARCH=powerpc TARGET_CPUTYPE=e500 KERNCONF=MPC85XX This default config uses kernel-level FPU emulation. For the soft-float world approach: 1. make buildworld TARGET_ARCH=powerpc TARGET_CPUTYPE=e500 2. disable FPU_EMU option in sys/powerpc/conf/MPC85XX 3. make buildkernel TARGET_ARCH=powerpc TARGET_CPUTYPE=e500 KERNCONF=MPC85XX Approved by: cognet (mentor) MFp4: e500
* Use more compact LIST instead of TAILQ for session hash.mav2008-03-031-62/+32
| | | | | Add all listening hooks into LIST to simplify searches. Use ng_findhook() instead of own equal implementation.
* Support for Freescale integrated Three-Speed Ethernet Controller (TSEC).raj2008-03-033-0/+2287
| | | | | | | | | | | | | | TSEC is the MAC engine offering 10, 100 or 1000 Mbps speed and is found on different Freescale parts (MPC83xx, MPC85xx). Depending on the silicon version there are up to four TSEC units integrated on the chip. This driver also works with the enhanced version of the controller (eTSEC), which is backwards compatible, but doesn't take advantage of its additional features (various off-loading mechanisms) at the moment. Approved by: cognet (mentor) Obtained from: Semihalf MFp4: e500
* Recognize the quad-port Cicada (Vitesse) CS8204 10/100/1000TX PHY.raj2008-03-032-1/+4
| | | | | | | | This PHY is found on many embedded development boards: among others MPC8555CDS evaluation systems use it. Approved by: cognet (mentor) MFp4: e500
* Support for Freescale QUad Integrated Communications Controller.raj2008-03-0311-0/+1456
| | | | | | | | | | | | | The QUICC engine is found on various Freescale parts including MPC85xx, and provides multiple generic time-division serial channel resources, which are in turn muxed/demuxed by the Serial Communications Controller (SCC). Along with core QUICC/SCC functionality a uart(4)-compliant device driver is provided which allows for serial ports over QUICC/SCC. Approved by: cognet (mentor) Obtained from: Juniper MFp4: e500
* Initial support for Freescale PowerQUICC III MPC85xx system-on-chip family.raj2008-03-0326-3/+9576
| | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Rework and extend PowerPC headers definitons towards Book-E/e500 CPUs support.raj2008-03-0310-139/+730
| | | | | | Approved by: cognet (mentor) Obtained from: Juniper, Semihalf MFp4: e500
* Raise a bit ipfw kld priority.piso2008-03-031-1/+1
| | | | Discussed on: net-, ipfw-.
* Convert to be a 2-clause bsd-only license.kevlo2008-03-031-7/+0
| | | | Pointed out by: rwatson
* Don't map memory/IO resource in device probe and just use PCIyongari2008-03-032-83/+51
| | | | | | vendor/revision/sub device id of the hardware to probe it. This is the same way as NetBSD does and it enhances readabilty a lot.
* Don't allow jumbo frame on 8139C+ controller.yongari2008-03-032-3/+13
| | | | While I'm here add a check for minimal MTU length.
* Add KMOD target.kmacy2008-03-031-0/+1
| | | | Discovered by: Takahashi Yoshihiro
* Implement WOL.yongari2008-03-032-1/+147
| | | | Tested by: Fabian Keil ( freebsd-listen AT fabienkeli DOT de )
* Make session ID generator to use session ID hash.mav2008-03-021-40/+37
| | | | Make session ID generator thread-safe.
* Don't auto-start or allow extattrctl for UFS2 file systems, as UFS2 hasrwatson2008-03-021-0/+18
| | | | | | | native extended attributes. This didn't interfere with the operation of UFS2 extended attributes, but the code shouldn't be running for UFS2. MFC after: 2 weeks
* Unbreak after cpuset: initialize td_cpuset in sched_fork_thread().marcel2008-03-021-0/+2
|
* Rather than copying out the full audit trigger record, which includesrwatson2008-03-021-1/+1
| | | | | | | | a queue entry field, just copy out the unsigned int that is the trigger message. In practice, auditd always requested sizeof(unsigned int), so the extra bytes were ignored, but copying them out was not the intent. MFC after: 1 month
* Replace lockmgr lock protecting nwfs vnode hash table with an sx lock.rwatson2008-03-021-12/+15
| | | | MFC after: 1 month
* Replace lockmgr lock protecting smbfs node hash table with sx lock.rwatson2008-03-023-9/+10
| | | | MFC after: 1 month
* Fix bugs when allocating and passing information of current lifetime andbz2008-03-022-6/+29
| | | | | | | | | | | | soft lifetime [1] introduced in rev. 1.21 of key.c. Along with that, fix a related problem in key_debug printing the correct data. While there replace a printf by panic in a sanity check. PR: 120751 Submitted by: Kazuaki ODA (kazuaki aliceblue.jp) [1] MFC after: 5 days
* Unify and generalize PowerPC headers, adjust AIM code accordingly.raj2008-03-0212-105/+240
| | | | | | | | | | | | | | | | | | | | Rework of this area is a pre-requirement for importing e500 support (and other PowerPC core variations in the future). Mainly the following headers are refactored so that we can cover for low-level differences between various machines within PowerPC architecture: <machine/pcpu.h> <machine/pcb.h> <machine/kdb.h> <machine/hid.h> <machine/frame.h> Areas which use the above are adjusted and cleaned up. Credits for this rework go to marcel@ Approved by: cognet (mentor) MFp4: e500
* Return ENOSYS instead of 0 for the unknown futex operations.kib2008-03-021-1/+1
| | | | | Submitted by: rdivacky Reported and tested by: Gary Stanley <gary velocity-servers net>
* Some "cleanup" of tcp_mss():bz2008-03-021-8/+4
| | | | | | | | | | | | | | | - Move the assigment of the socket down before we first need it. No need to do it at the beginning and then drop out the function by one of the returns before using it 100 lines further down. - Use t_maxopd which was assigned the "tcp_mssdflt" for the corrrect AF already instead of another #ifdef ? : #endif block doing the same. - Remove an unneeded (duplicate) assignment of mss to t_maxseg just before we possibly change mss and re-do the assignment without using t_maxseg in between. Reviewed by: silby No objections: net@ (silence) MFC after: 5 days
* Add support for the new cpu topology api:jeff2008-03-021-497/+439
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - When searching for affinity search backwards in the tree from the last cpu we ran on while the thread still has affinity for the group. This can take advantage of knowledge of shared L2 or L3 caches among a group of cores. - When searching for the least loaded cpu find the least loaded cpu via the least loaded path through the tree. This load balances system bus links, individual cache levels, and hyper-threaded/SMT cores. - Make the periodic balancer recursively balance the highest and lowest loaded cpu across each link. Add support for cpusets: - Convert the cpuset to a simple native cpumask_t while the kernel still only supports cpumask. - Pass the derived cpumask down through the cpu_search functions to restrict the result cpus. - Make the various steal functions resilient to failure since all threads can not run on all cpus any longer. General improvements: - Precisely track the lowest priority thread on every runq with tdq_setlowpri(). Before it was more advisory but this ended up having pathological behaviors. - Remove many #ifdef SMP conditions to simplify the code. - Get rid of the old cumbersome tdq_group. This is more naturally expressed via the cpu_group tree. Sponsored by: Nokia Testing by: kris
* - Remove the old smp cpu topology specification with a new, more flexiblejeff2008-03-0213-173/+330
| | | | | | | | | | | | | | | | | tree structure that encodes the level of cache sharing and other properties. - Provide several convenience functions for creating one and two level cpu trees as well as a default flat topology. The system now always has some topology. - On i386 and amd64 create a seperate level in the hierarchy for HTT and multi-core cpus. This will allow the scheduler to intelligently load balance non-uniform cores. Presently we don't detect what level of the cache hierarchy is shared at each level in the topology. - Add a mechanism for testing common topologies that have more information than the MD code is able to provide via the kern.smp.topology tunable. This should be considered a debugging tool only and not a stable api. Sponsored by: Nokia
* - Regen for cpusetjeff2008-03-026-7/+113
| | | | Sponsored by: Nokia
* Add cpuset, an api for thread to cpu binding and cpu resource groupingjeff2008-03-029-2/+1083
| | | | | | | | | | | | | | | | | | | | | | | | and assignment. - Add a reference to a struct cpuset in each thread that is inherited from the thread that created it. - Release the reference when the thread is destroyed. - Add prototypes for syscalls and macros for manipulating cpusets in sys/cpuset.h - Add syscalls to create, get, and set new numbered cpusets: cpuset(), cpuset_{get,set}id() - Add syscalls for getting and setting affinity masks for cpusets or individual threads: cpuid_{get,set}affinity() - Add types for the 'level' and 'which' parameters for the cpuset. This will permit expansion of the api to cover cpu masks for other objects identifiable with an id_t integer. For example, IRQs and Jails may be coming soon. - The root set 0 contains all valid cpus. All thread initially belong to cpuset 1. This permits migrating all threads off of certain cpus to reserve them for special applications. Sponsored by: Nokia Discussed with: arch, rwatson, brooks, davidxu, deischen Reviewed by: antoine
* - Add a new sched_affinity() api to be used in the upcoming cpusetjeff2008-03-023-1/+12
| | | | | | | implementation. - Add empty implementations of sched_affinity() to 4BSD and ULE. Sponsored by: Nokia
* Add the SMI VTOC8 disk label option.marcel2008-03-021-0/+1
|
* Remove makefiles for geom_apple and geom_gpt. These are non-existentmarcel2008-03-022-16/+0
| | | | for while.
* Add geom_part module.marcel2008-03-022-0/+19
|
* Add support for VTOC8 labels (aka sun disk labels). When a label doesmarcel2008-03-024-0/+588
| | | | | | | | not have VTOC information about the partitions, it will be created. This is because the VTOC information is used for the partition type and FreeBSD's sunlabel(8) does not create nor use VTOC information. For this purpose, new tags have been added to support FreeBSD's partition types.
* Make the vm_pmap field of struct vmspace the last field in themarcel2008-03-011-1/+6
| | | | | | | structure. This allows per-CPU variations of struct pmap on a single architecture without affecting the machine-independent fields. As such, the PMAP variations don't affect the ABI. They become part of it.
* Fix indentation (whitespace changes only).bz2008-03-011-4/+4
| | | | MFC after: 6 days
* Split the kernel / userland interface with propert _KERNEL stub.attilio2008-03-011-0/+5
| | | | | This should have been always there, but an userland brekage for the recent lockmgr modifies showed it.
* In est_acpi_info(), initialize count before passing its pointer togibbs2008-03-011-0/+1
| | | | | | | | | | CPUFREQ_DRV_SETTINGS(). The value of count on input is used to prefent overflow of the settings buffer passed into CPUFREQ_DRV_SETTINGS(). This corrects the "est: CPU supports Enhanced Speedstep, but is not recognized." error on my system. MFC after: 1 week
* Bump __FreeBSD_version in order to reflect:attilio2008-03-011-1/+1
| | | | | | | - lockwaiters() axing out - BUF_LOCKWAITERS() axing out - brelvp() prototype changing - lockinit() accepted arguments() range changing
* - Handle buffer lock waiters count directly in the buffer cache insteadattilio2008-03-0113-70/+88
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | than rely on the lockmgr support [1]: * bump the waiters only if the interlock is held * let brelvp() return the waiters count * rely on brelvp() instead than BUF_LOCKWAITERS() in order to check for the waiters number - Remove a namespace pollution introduced recently with lockmgr.h including lock.h by including lock.h directly in the consumers and making it mandatory for using lockmgr. - Modify flags accepted by lockinit(): * introduce LK_NOPROFILE which disables lock profiling for the specified lockmgr * introduce LK_QUIET which disables ktr tracing for the specified lockmgr [2] * disallow LK_SLEEPFAIL and LK_NOWAIT to be passed there so that it can only be used on a per-instance basis - Remove BUF_LOCKWAITERS() and lockwaiters() as they are no longer used This patch breaks KPI so __FreBSD_version will be bumped and manpages updated by further commits. Additively, 'struct buf' changes results in a disturbed ABI also. [2] Really, currently there is no ktr tracing in the lockmgr, but it will be added soon. [1] Submitted by: kib Tested by: pho, Andrea Barberio <insomniac at slackware dot it>
* Add support for the libalias redirect functionality.mav2008-03-012-1/+558
| | | | Submitted by: Vadim Goncharov <vadim_nuclight@mail.ru>
* Add audit_prefixes to two more globally visible functions in the Auditrwatson2008-03-013-7/+7
| | | | | | implementation. MFC after: 1 month
* Rename globally exposed symbol send_trigger() to audit_send_trigger().rwatson2008-03-014-6/+7
| | | | MFC after: 1 month
* Change data formating in debug code.jfv2008-03-011-12/+12
|
* An error in the poll routine turned up during LINT buildjfv2008-03-011-1/+1
|
* Missing braces in link routine.jfv2008-03-011-1/+2
|
* Somehow missed the stanza for 575 in the em driverjfv2008-03-011-2/+0
|
OpenPOWER on IntegriCloud