summaryrefslogtreecommitdiffstats
path: root/sys/conf/files.amd64
Commit message (Collapse)AuthorAgeFilesLines
* Add /dev/speaker support to amd64.ru2005-11-111-0/+1
| | | | | | | | The following repo-copies were made (by Mark Murray): sys/i386/isa/spkr.c -> sys/dev/speaker/spkr.c sys/i386/include/speaker.h -> sys/dev/speaker/speaker.h share/man/man4/man4.i386/spkr.4 -> share/man/man4/spkr.4
* Hook up the hptmv driver for amd64.scottl2005-09-081-0/+10
| | | | MFC After: 3 days
* MFi386: add vpd driver (vital product data.. model & serial numbers etc)peter2005-07-211-0/+1
|
* Add the ed driver for lint building. The PCI instances are still useful.peter2005-07-211-0/+6
| | | | | In theory, there are no isa slots on any amd64/em64t systems, but it doesn't hurt to keep these tiny fragments compiling.
* Fix smbios(4) and add support for amd64jkim2005-07-211-0/+1
| | | | Approved by: anholt (mentor)
* Build p4tcc and est cpu frequency modules on amd64.ps2005-07-191-0/+2
| | | | Reviewed by: njl
* Jumbo-commit to enhance 32 bit application support on 64 bit kernels.peter2005-06-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | This is good enough to be able to run a RELENG_4 gdb binary against a RELENG_4 application, along with various other tools (eg: 4.x gcore). We use this at work. ia32_reg.[ch]: handle the 32 bit register file format, used by ptrace, procfs and core dumps. procfs_*regs.c: vary the format of proc/XXX/*regs depending on the client and target application. procfs_map.c: Don't print a 64 bit value to 32 bit consumers, or their sscanf fails. They expect an unsigned long. imgact_elf.c: produce a valid 32 bit coredump for 32 bit apps. sys_process.c: handle 32 bit consumers debugging 32 bit targets. Note that 64 bit consumers can still debug 32 bit targets. IA64 has got stubs for ia32_reg.c. Known limitations: a 5.x/6.x gdb uses get/setcontext(), which isn't implemented in the 32/64 wrapper yet. We also make a tiny patch to gdb pacify it over conflicting formats of ld-elf.so.1. Approved by: re
* Sync i386->amd64.peter2005-06-301-0/+1
| | | | | | | | | | | * Add ichwd (The Intel EM64T folks have an ICH) * Cosmetic comment syncs * Merge cpufreq change over to NOTES * add pbio (it compiles, but isn't useful since no boxes have ISA slots) * copy ath settings (note: wlan disabled here since its in global NOTES) * copy profiling, including fixing a previous i386->amd64 merge typo. Approved by: re (blanket i386 <-> amd64 sync/convergence)
* Include the puc(4) bus frontend for ppc(4) when both ppc and puc aremarcel2005-06-141-0/+1
| | | | | | | | | configured. PR: kern/80737 Submitted by: David Taylor &lt davidt-fbsd at yadt dot co dot uk &gt Approved by: re (scottl) MFC after: 5 days
* Refactor the NETSMBCRYPTO option so that it does the same on allmarcel2005-06-121-2/+0
| | | | | | | | platforms. ARM is excluded as it doesn't yet have any crypto sources. Approved by: re (dwhite) MFC after: 1 day
* - Hook up the new locations of the atkbdc(4), atkbd(4) and psm(4) sourcemarius2005-06-101-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | files after they were repo-copied to sys/dev/atkbdc. The sources of atkbdc(4) and its children were moved to the new location in preparation for adding an EBus front-end to atkbdc(4) for use on sparc64; i.e. in order to not further scatter them over the whole tree which would have been the result of adding atkbdc_ebus.c in e.g. sys/sparc64/ebus. Another reason for the repo-copies was that some of the sources were misfiled, e.g. sys/isa/atkbd_isa.c wasn't ISA-specific at all but for hanging atkbd(4) off of atkbdc(4) and was renamed to atkbd_atkbdc.c accordingly. Most of sys/isa/psm.c, i.e. expect for its PSMC PNP part, also isn't ISA-specific. - Separate the parts of atkbdc_isa.c which aren't actually ISA-specific but are shareable between different atkbdc(4) bus front-ends into atkbdc_subr.c (repo-copied from atkbdc_isa.c). While here use bus_generic_rl_alloc_resource() and bus_generic_rl_release_resource() respectively in atkbdc_isa.c instead of rolling own versions. - Add sparc64 MD bits to atkbdc(4) and atkbd(4) and an EBus front-end for atkbdc(4). PS/2 controllers and input devices are used on a couple of Sun OEM boards and occur on either the EBus or the ISA bus. Depending on the board it's either the only on-board mean to connect a keyboard and mouse or an alternative to either RS232 or USB devices. - Wrap the PSMC PNP part of psm.c in #ifdef DEV_ISA so it can be compiled without isa(4) (e.g. for EBus-only machines). This ISA-specific part isn't separated into its own source file, yet, as it requires more work than was feasible for 6.0 in order to do it in a clean way. Actually philip@ is working on a rewrite of psm(4) so a more comprehensive clean-up and separation of hardware dependent and independent parts is expected to happen after 6.0. Tested on: i386, sparc64 (AX1105, AXe and AXi boards) Reviewed by: philip
* MFP4:jkoshy2005-06-091-0/+2
| | | | | | | | | | | | | | | | - Implement sampling modes and logging support in hwpmc(4). - Separate MI and MD parts of hwpmc(4) and allow sharing of PMC implementations across different architectures. Add support for P4 (EMT64) style PMCs to the amd64 code. - New pmcstat(8) options: -E (exit time counts) -W (counts every context switch), -R (print log file). - pmc(3) API changes, improve our ability to keep ABI compatibility in the future. Add more 'alias' names for commonly used events. - bug fixes & documentation.
* Update the file.* entries for the new home of hwpmcscottl2005-04-291-1/+1
|
* Throw the switch on the new driver generation/loading mechanism. Fromwpaul2005-04-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | here on in, if_ndis.ko will be pre-built as a module, and can be built into a static kernel (though it's not part of GENERIC). Drivers are created using the new ndisgen(8) script, which uses ndiscvt(8) under the covers, along with a few other tools. The result is a driver module that can be kldloaded into the kernel. A driver with foo.inf and foo.sys files will be converted into foo_sys.ko (and foo_sys.o, for those who want/need to make static kernels). This module contains all of the necessary info from the .INF file and the driver binary image, converted into an ELF module. You can kldload this module (or add it to /boot/loader.conf) to have it loaded automatically. Any required firmware files can be bundled into the module as well (or converted/loaded separately). Also, add a workaround for a problem in NdisMSleep(). During system bootstrap (cold == 1), msleep() always returns 0 without actually sleeping. The Intel 2200BG driver uses NdisMSleep() to wait for the NIC's firmware to come to life, and fails to load if NdisMSleep() doesn't actually delay. As a workaround, if msleep() (and hence ndis_thsuspend()) returns 0, use a hard DELAY() to sleep instead). This is not really the right thing to do, but we can't really do much else. At the very least, this makes the Intel driver happy. There are probably other drivers that fail in this way during bootstrap. Unfortunately, the only workaround for those is to avoid pre-loading them and kldload them once the system is running instead.
* Clean generated os+%DIKED-nve.h.ru2005-04-221-1/+2
|
* Bring a working snapshot of hwpmc(4), its associated libraries, userland ↵jkoshy2005-04-191-0/+1
| | | | | | | | | | utilities and documentation into -CURRENT. Bump FreeBSD_version. Reviewed by: alc, jhb (kernel changes)
* Divorce critical sections from spinlocks. Critical sections as denoted byjhb2005-04-041-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | critical_enter() and critical_exit() are now solely a mechanism for deferring kernel preemptions. They no longer have any affect on interrupts. This means that standalone critical sections are now very cheap as they are simply unlocked integer increments and decrements for the common case. Spin mutexes now use a separate KPI implemented in MD code: spinlock_enter() and spinlock_exit(). This KPI is responsible for providing whatever MD guarantees are needed to ensure that a thread holding a spin lock won't be preempted by any other code that will try to lock the same lock. For now all archs continue to block interrupts in a "spinlock section" as they did formerly in all critical sections. Note that I've also taken this opportunity to push a few things into MD code rather than MI. For example, critical_fork_exit() no longer exists. Instead, MD code ensures that new threads have the correct state when they are created. Also, we no longer try to fixup the idlethreads for APs in MI code. Instead, each arch sets the initial curthread and adjusts the state of the idle thread it borrows in order to perform the initial context switch. This change is largely a big NOP, but the cleaner separation it provides will allow for more efficient alternative locking schemes in other parts of the kernel (bare critical sections rather than per-CPU spin mutexes for per-CPU data for example). Reviewed by: grehan, cognet, arch@, others Tested on: i386, alpha, sparc64, powerpc, arm, possibly more
* FIx a botch with the addition of the arcmsr driver.scottl2005-04-011-1/+1
|
* Glue the arcmsr driver into the tree.scottl2005-03-311-0/+1
|
* Add powernow to kernel build target.njl2005-03-271-0/+1
|
* FreeBSD consumer bits of the nForce MCP NIC binary blob.obrien2005-03-121-0/+11
| | | | | | | Demanded by: DES Encouraged by: scottl Obtained from: q@onthenet.com.au (partially) KNF'ed by: obrien
* - Correct one aspect of the driver_object/device_object/IRP framework:wpaul2005-02-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when we create a PDO, the driver_object associated with it is that of the parent driver, not the driver we're trying to attach. For example, if we attach a PCI device, the PDO we pass to the NdisAddDevice() function should contain a pointer to fake_pci_driver, not to the NDIS driver itself. For PCI or PCMCIA devices this doesn't matter because the child never needs to talk to the parent bus driver, but for USB, the child needs to be able to send IRPs to the parent USB bus driver, and for that to work the parent USB bus driver has to be hung off the PDO. This involves modifying windrv_lookup() so that we can search for bus drivers by name, if necessary. Our fake bus drivers attach themselves as "PCI Bus," "PCCARD Bus" and "USB Bus," so we can search for them using those names. The individual attachment stubs now create and attach PDOs to the parent bus drivers instead of hanging them off the NDIS driver's object, and in if_ndis.c, we now search for the correct driver object depending on the bus type, and use that to find the correct PDO. With this fix, I can get my sample USB ethernet driver to deliver an IRP to my fake parent USB bus driver's dispatch routines. - Add stub modules for USB support: subr_usbd.c, usbd_var.h and if_ndis_usb.c. The subr_usbd.c module is hooked up the build but currently doesn't do very much. It provides the stub USB parent driver object and a dispatch routine for IRM_MJ_INTERNAL_DEVICE_CONTROL. The only exported function at the moment is USBD_GetUSBDIVersion(). The if_ndis_usb.c stub compiles, but is not hooked up to the build yet. I'm putting these here so I can keep them under source code control as I flesh them out.
* Add support for Windows/x86-64 binaries to Project Evil.wpaul2005-02-161-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ville-Pertti Keinonen (will at exomi dot comohmygodnospampleasekthx) deserves a big thanks for submitting initial patches to make it work. I have mangled his contributions appropriately. The main gotcha with Windows/x86-64 is that Microsoft uses a different calling convention than everyone else. The standard ABI requires using 6 registers for argument passing, with other arguments on the stack. Microsoft uses only 4 registers, and requires the caller to leave room on the stack for the register arguments incase the callee needs to spill them. Unlike x86, where Microsoft uses a mix of _cdecl, _stdcall and _fastcall, all routines on Windows/x86-64 uses the same convention. This unfortunately means that all the functions we export to the driver require an intermediate translation wrapper. Similarly, we have to wrap all calls back into the driver binary itself. The original patches provided macros to wrap every single routine at compile time, providing a secondary jump table with a customized wrapper for each exported routine. I decided to use a different approach: the call wrapper for each function is created from a template at runtime, and the routine to jump to is patched into the wrapper as it is created. The subr_pe module has been modified to patch in the wrapped function instead of the original. (On x86, the wrapping routine is a no-op.) There are some minor API differences that had to be accounted for: - KeAcquireSpinLock() is a real function on amd64, not a macro wrapper around KfAcquireSpinLock() - NdisFreeBuffer() is actually IoFreeMdl(). I had to change the whole NDIS_BUFFER API a bit to accomodate this. Bugs fixed along the way: - IoAllocateMdl() always returned NULL - kern_windrv.c:windrv_unload() wasn't releasing private driver object extensions correctly (found thanks to memguard) This has only been tested with the driver for the Broadcom 802.11g chipset, which was the only Windows/x86-64 driver I could find.
* Protect the NM expansion.obrien2004-12-211-1/+1
|
* Fix a mis-sort.obrien2004-12-211-1/+1
|
* Add config hooks for amd64 atheros hal modulespeter2004-12-151-0/+10
|
* It appears that 'kbd' device has never been used and isn't needed.imp2004-11-231-1/+0
| | | | | Build tests show that this isn't used for GENERIC or LINT, and nobody seemed to know why they existed.
* Be consistant; make the memrange bit be part of the mem module likemarkm2004-09-281-1/+1
| | | | i386.
* Converge towards i386. I originally resisted creating <machine/pc/bios.h>peter2004-09-241-0/+1
| | | | | | | | | | | | because it was mostly irrelevant - except for the silly BIOS_PADDRTOVADDR etc macros. Along the way of working around this, I missed a few things. * Make syscons properly inherit the bios capslock/shiftlock/etc state like i386 does. Note that we cannot inherit the bios key repeat rate because that requires a bios call (which is impossible for us). * Give syscons the ability to beep on amd64. Oops. While here, make bios.c compile and add it to files.amd64.
* Add the mp_watchdog hooks, although it locks up my SMP test box. It mightpeter2004-08-301-0/+1
| | | | be useable to somebody.
* Complete 'IA32' -> 'COMPAT_IA32' change for the Linuxulator32.obrien2004-08-161-9/+9
|
* AMD64 on-CPU GART support.obrien2004-08-161-5/+1
| | | | | | | This also applies to AMD64 HW running 'i386' OS. Submitted by: Jung-uk Kim <jkim@niksun.com> Integration by: obrien
* Add preliminary support for running 32-bit Linux binaries on amd64, enabledtjr2004-08-161-1/+34
| | | | | | | | | | with the COMPAT_LINUX32 option. This is largely based on the i386 MD Linux emulations bits, but also builds on the 32-bit FreeBSD and generic IA-32 binary emulation work. Some of this is still a little rough around the edges, and will need to be revisited before 32-bit and 64-bit Linux emulation support can coexist in the same kernel.
* Oops. Didn't commit this as part of the mem module fix.markm2004-08-041-0/+1
|
* Break out the MI part of the /dev/[k]mem and /dev/io drivers intomarkm2004-08-011-1/+3
| | | | | | | | their own directory and module, leaving the MD parts in the MD area (the MD parts _are_ part of the modules). /dev/mem and /dev/io are now loadable modules, thus taking us one step further towards a kernel created entirely out of modules. Of course, there is nothing preventing the kernel from having these statically compiled.
* Hook up fdc_acpi for the kernel build.njl2004-07-151-0/+1
|
* Hook the GDB backend into the build.marcel2004-07-101-1/+1
|
* Fix mismerge of fdc. Also, OLDCARD never was supported on amd64, soimp2004-07-091-1/+1
| | | | remove fdc attachment for it.
* Break out the isa and pccard front ends to the fdc controller device.imp2004-07-071-1/+3
| | | | | | | | | This should allow us to more easily break out the acpi and 'legacy pc' front ends as well (so only the bus front end would touch rtc, for example). This isn't a great separation, since isa dma routines are still called from the MI code, but it is a start.
* Move acpi_if.m to files.{amd64,i386,ia64}. This should fix the alpha build.njl2004-06-301-0/+1
| | | | Pointed out by: gallatin
* Fixed profiling of trap, syscall and interrupt handlers and somebde2004-05-241-3/+3
| | | | | | | | | | | | | | | ordinary functions, essentially by backing out half of rev.1.115 of amd64/exception.S. The handlers must be between certain labels for the purposes of profiling, and this was broken by scattering them in separately compiled .S files, especially for ordinary functions that ended up between the labels. Merge the files by #including them as before, except with different pathnames and better comments and organization. Changes to the scattered files are minimal -- just move the labels to the file that does the #includes. This also partly fixes profiling of IPIs -- all IPI handlers are now correctly classified as interrupt handlers, but many are still missing mcount calls.
* Fixed insertion sort error in previous commit (prof_machdep.c).bde2004-05-241-4/+4
| | | | | | Fixed apparently-intentional disorder of the crypto files. Lists of files should be sorted first on the pathname, not on the option name or subsystem.
* Build prof_machdep.c if profiling.bde2004-05-231-0/+1
| | | | | | | | | | | | | Kernel profiling for amd64's (normal and high resolution) should now compile and work as (un)well as on i386's. It works better than user profiling because: - it uses _cyg_profile_func_*() instead of .mcount(), so it doesn't suffer from gcc misspelling .mcount as mcount. - it doesn't neglect saving %rax in .mcount(). The SMP case hasn't been tested. The high resolution subcase of this uses the i8254, and as on i386's, the locking for this is deficient and the i8254 is too inefficient. The acpi timer is also too inefficient.
* Move fdc from isa/fd.c to dev/fdc/fdc.c. The old files wereimp2004-05-171-1/+1
| | | | | | | | repocopied. Soon there will be additional bus attachments and specialization for isa, acpi and pccard (and maybe pc98's cbus). This was approved by nate, joerg and myself. bde dissented on the new location, but appeared to be OK after some discussion.
* MFi386: numerous interrupt and acpi updatespeter2004-05-161-0/+1
|
* Enable first part of kld's on amd64. This is known to not work rightpeter2004-05-161-0/+1
| | | | | | | yet, but building kld's is OK now and they can be loaded by kldload(2). (but the machine will likely crash soon afterwards, a "minor" problem :-) Brought to you by: my injured knee (from moving)
* Add files required for the NETSMBCRYPTO option.tjr2004-04-231-0/+3
|
* Introduce uiomove_fromphys(). This is a variant of uiomove() that takesalc2004-03-201-0/+1
| | | | | a collection of physical pages as the source. On amd64 it is implemented using the direct virtual-to-physical map.
* Add rules for font.h atkbdmap.h ukbdmap.h so more of LINT can be built.obrien2004-03-031-0/+15
|
* Add crypto implemenation files (C versions (like alpha, unlike i386))peter2004-02-051-0/+4
|
OpenPOWER on IntegriCloud