summaryrefslogtreecommitdiff
path: root/sys/arch/amd64
AgeCommit message (Collapse)Author
2009-07-27add bus speed recognition on Nehalem based cpus, thisDariusz Swiderski
makes Enhanced SpeedStep work on new machines, but requires acpimadt0 to be enabled. ok by jsg@ and claudio@
2009-07-26Make sure all platforms understand the flags argument of bus_space_map() andMiod Vallat
bus_space_alloc() as a bitmask of flags, and not a boolean controlling cacheability; and make sure the three MI BUS_SPACE_MAP_xxx values documented in the manual page are defined on all platforms as well.
2009-07-23reserve a space for aibs(4) in amd64 and i386, commented out for now; ok deraadtConstantine A. Murenin
2009-07-22via nano cpus are amd64, and so we need machdep.xcryptTheo de Raadt
2009-07-21Change the rbus md_space_{map,unmap} signature to take a rbus_tag_t insteadMiod Vallat
of the bus_space_tag_t it contains; an upcoming implementation will need to know the rbus_tag_t for which it works at this point. All callers updated accordingly; no functional change intended.
2009-07-20Pass a pci_chipset_tag_t to pci_intr_line(), to eventually allow theMiod Vallat
logic to be chipset dependent; no functional change yet. ok kettenis@
2009-07-10Switch away from using -traditional-cpp to iso/ansi cpp for asm files.Jonathan Gray
More architectures hopefully to follow. ok kettenis@
2009-06-16Backout pmemrange (which to most people is more well known as physmemAriane van der Steldt
allocator). "i can't see any obvious problems" oga
2009-06-16Backout all changes to uvm after pmemrange (which will be backed outOwain Ainsworth
separately). a change at or just before the hackathon has either exposed or added a very very nasty memory corruption bug that is giving us hell right now. So in the interest of kernel stability these diffs are being backed out until such a time as that corruption bug has been found and squashed, then the ones that are proven good may slowly return. a quick hitlist of the main commits this backs out: mine: uvm_objwire the lock change in uvm_swap.c using trees for uvm objects instead of the hash removing the pgo_releasepg callback. art@'s: putting pmap_page_protect(VM_PROT_NONE) in uvm_pagedeactivate() since all callers called that just prior anyway. ok beck@, ariane@. prompted by deraadt@.
2009-06-15Back out all the buffer cache changes I committed during c2k9. This reverts ↵Bob Beck
three commits: 1) The sysctl allowing bufcachepercent to be changed at boot time. 2) The change moving the buffer cache hash chains to a red-black tree 3) The dynamic buffer cache (Which depended on the earlier too). ok on the backout from marco and todd
2009-06-14Make sure the pglist is TAILQ_INIT()'ed before invoking uvm_pglistalloc().Miod Vallat
ok deraadt@ kettenis@
2009-06-14backout:Theo de Raadt
> extend uvm_page_physload to have the ability to add "device" pages to the > system. since it was overlayed over a system that we warned would go "in to be tested, but may be pulled out". oga, you just made me spend 20 minutes of time I should not have had to spend doing this.
2009-06-09revert guenther@'s un-revert of art's curpmap.Kenneth R Westerback
My bios0: ASUSTeK Computer INC. P5K-E cpu0: Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz, 2405.74 MHz cpu1: Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz, 2405.46 MHz cpu2: Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz, 2405.46 MHz cpu3: Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz, 2405.46 MHz can't boot with this in. It always hangs somewhere in fsck'ing if any, or between netstart and local daemons if no fsck'ing. Also fubars theo's real amd machine. Much more testing needed for this.
2009-06-08If the machine only has one state enabling the EST driver is pointless,Gordon Willem Klok
this might need to be revisted later if its clear that there are machines which only come up with a single state but more may appear after a PPC change but for now we will just not initilize on systems with a single state a boot. Solves a divide by zero panic when using the PDC diff on broken hardware. ok marco@, krw@
2009-06-08fix non standard/valid usage of ? : operator on amd64Jonathan Gray
as well, reminded by miod@
2009-06-07on amd64, store a pointer to the loaded data and the type. This willOwain Ainsworth
eventually be needed by bouncebuffers, and I need it for some of my evil graphics shitz. ok kettenis@ with some tweaks
2009-06-07extend uvm_page_physload to have the ability to add "device" pages to theOwain Ainsworth
system. This is needed in the case where you need managed pages so you can handle faulting and pmap_page_protect() on said pages when you manage memory in such regions (i'm looking at you, graphics cards). these pages are flagged PG_DEV, and shall never be on the freelists, assert this. behaviour remains unchanged in the non-device case, specifically for all archs currently in the tree we panic if called after bootstrap. ok art@, kettenis@, ariane@, beck@.
2009-06-06Unrevert the curpmap change with the addition of correct %gs handlingPhilip Guenthe
in the IPI handler so that it works when it interrupts userspace, waiting for the droppmap IPI to complete when destroying it, and (most importantly) don't call pmap_tlb_droppmap() from cpu_exit(). Tested by myself and ckuethe, as our machines choked on the original. ok @art
2009-06-06Update est.c, make it capable of using ACPI if the PSS is available butGordon Willem Klok
still support all different methods of getting states without e.g. (highest/lowest state), and on i386 use the tables. The only change should be the deletion of the mV from the printf at boot. ok jsg@
2009-06-06Disable interrupts durring the lock step frequency/voltage change. GenericGordon Willem Klok
IPIs are handled without blocking interrupts. This solves the random lockups people have been seeing with apmd -C, thanks to marco@ for showing me how to reliably recreate this hang, and claudio@ for telling me it was also affecting his Athlon64 machine so I stopped chasing bugs in est. ok oga@, weingart@
2009-06-06When getting a fault in the kernel, we checked for biglock and failedArtur Grabowski
immediately when biglock wasn't held. But there is nothing inherently wrong with doing copyin/copyout faults without holding biglock, so just remove the check because it prevent us from doing copyin in syscall before we grab the biglock.
2009-06-06add an interface to agp to create a bus_dma_tag over a range of theOwain Ainsworth
aperture, which will take your memory, bind it to agp, and return you the aperture address. It's essentially the same as iommu on amd64 in the way it works. This will be used by the upcoming (works but is slow and will not be enabled at first) drm memory management code for intel igp chipsets. Right now the sync function for intagp is really slow (doing a wbinvd() on every sync), this is in the process of getting fixed, but the size of the diffs in my trees was getting silly.
2009-06-06instead of #ifndef SMALL_KERNELing the whole sg_dma.c file, just put theOwain Ainsworth
information in files.conf like it should be.
2009-06-06option X86EMU is how this subsystem is brought into a kernelTheo de Raadt
2009-06-06fix include pathsTheo de Raadt
2009-06-06Add vga bios repost support. Fetched from the NetBSD tree mostly.Paul Irofti
Tested on multiple i386 and it works, amd64 works also with a few exceptions that will get fixed. The initial effort of importing was done by oga@, thanks! Lots of testing and debugging by mlarkin@ and me. Okay deraadt@, oga@, mlarkin@.
2009-06-06Matching fix for amd64. This also removes a spurious disable_intr() callMike Larkin
that wasn't needed. ok pirofti@
2009-06-05Revert the curpmap change. We know the IPI is broken on both ends,Philip Guenthe
but even with proposed fixes, the reaper panics are back.
2009-06-04Ensure we are sleeping from the kernel. Code changed to match i386.Mike Larkin
ok art
2009-06-04Make backtraces through interrupts work.Mark Kettenis
2009-06-04Remove support for non-ELF; it never existed for amd64.Mark Kettenis
2009-06-03add kern.bufcachepercent sysctl to allow adjusting the buffer cacheBob Beck
size on a running system. ok art@, oga@
2009-06-03Arla client rename from xfs to nnpfs for later upgrades. Tested on various ↵Janne Johansson
arches. ok todd@ beck@
2009-06-03Import acpi power resource driver. This is needed for suspend/resume logic.Paul Irofti
Okay jordan@ and marco@.
2009-06-03Add acpivideo support. This adds brightness support for all laptopsPaul Irofti
except thinkpads, they will use the acpithinkpad driver. The driver is also hooked into wsconsole. So brightness can be adjusted via: $ wsconsctl display.brightness=<percentage> This is very helpfull on some laptops that have a nasty bios and get two steps instead of one when pressing the brightness button. Tested on various dell, fujitsu, acer, samsung and other laptops. Okay marco@, miod@. Suggestions from kettenis@. Lots of reviews and help from miod@, thanks!
2009-06-03Enabled docking driverJordan Hargrave
ok marco@
2009-06-02Instead of the global hash table with the terrible hashfunction and aOwain Ainsworth
global lock, switch the uvm object pages to being kept in a per-object RB_TREE. Right now this is approximately the same speed, but cleaner. When biglock usage is reduced this will improve concurrency due to lock contention.. ok beck@ art@. Thanks to jasper for the speed testing.
2009-06-02Add a DIAGNOSTIC panic to ensure we are not runningKurt Miller
via an interrupt handler in acpi_sleep_machdep. okay mlarkin@ marco@
2009-06-02Added interface for cpu idle on amd64Jordan Hargrave
ok gwk@, toby@, marco@
2009-06-01Fix the order of checking if a machine has MTRR. We need to checkPeter Hessler
against the vendor string, then cpu family, then if the cpu claims to have it. requested by toby@ Also match against Via's cpu string to enable MTRR on matthieu@'s VIA Nano compile tested on i386 by wcmaier@
2009-06-01Use proper pmap during ACPI sleep on amd64. Original code by Kurt,Mike Larkin
this version by Art. additional ok by marco@
2009-06-01physmem allocator: change the view of free memory from single free pagesAriane van der Steldt
to free ranges. Classify memory based on region with associated use-counter (which is used to construct a priority list of where to allocate memory). Based on code from tedu@, help from many. Ok art@
2009-06-01New VIA nano's support amd64 and EST. Move the setperf init routine outsideGordon Willem Klok
of the vendor check for intel and use the EST cpu feature flag to determine if we should call the est init routine. Tested on mattieu@'s via nano laptop. ok deraadt@, jsg@
2009-05-31Make iomem_ex cover the complete (48-bit) physical address space. MakesMark Kettenis
bigmem kernels work again. ok oga@, ariane@.
2009-05-31Fix RAMDISK kernels after previous. amd64_has_xcrypt needs to beMatthieu Herrb
#ifdef CRYPTO. noticed by marco@
2009-05-31Reinitialize lapic on ACPI resume.Mike Larkin
ok marco@
2009-05-31Add VIA crypto features support to amd64. ok deraadt@Matthieu Herrb
2009-05-30Without -v, be quietTheo de Raadt
ok toby
2009-05-30Don't use biosbasemem and biosextmem to initialize iomem_ex, since on someMark Kettenis
BIOSen it's a complete lie. Instead use the information from the memory map like we do on i386. ok weingart@, oga@
2009-05-28Bring back the curpmap change. It was missing a reload of the pmap onArtur Grabowski
curcpu when we were freeing a pmap. Tested and working for a few weeks now, but I was a bit too busy to commit it earlier.