summaryrefslogtreecommitdiff
path: root/sys/arch/i386
AgeCommit message (Collapse)Author
2010-09-06Make sure bus_dmamap_sync() always involves a function call, to prevent theMark Kettenis
compiler from doing stupid things like reordering stores around it. There is some debate whether this will be enough for newer versions of GCC and LLVM. If this is indeed deemed necessary, this will be addressed in a future diff. ok miod@, oga@
2010-09-06now that the drm issue is resolved, switch to using ca_activate callsTheo de Raadt
instead of powerhooks.
2010-09-06- spello, short-hand -> shorthandJasper Lievisse Adriaanse
ok miod@
2010-08-31Add DVACT_QUIECE support. This is called before splhigh() and beforeTheo de Raadt
DVACT_SUSPEND, therefore DVACT_QUIECE can do standard sleeping operations to get ready. Discussed quite a while back with kettenis and jakemsr, oga suddenly needed it as well and wrote half of it, so it was time to finish it. proofread by miod.
2010-08-31pchbactivate should return result of config_activate_childrenTheo de Raadt
2010-08-27Run powerhooks with interrupts blocked. This requires a bit of a song andTheo de Raadt
dance since some laptops unsuspend out of apm with interrupts enabled?! That causes problems with shared interrupts... but also it would be best if we treat powerhook functions (now backed by activate functions) the same as acpi treats them, and it means that the powerhook wrappers don't need to do their own spl protection. ok kettenis
2010-08-27kill PWR_STANDBY (apm can use PWR_SUSPEND instead). While here, renumberTheo de Raadt
PWR_{SUSPEND,RESUME} so that they match the values of DAVCT_{SUSPEND,RESUME} so that we can eventually (many more steps...) kill the powerhook garbage and use the activate mechanism. no objections
2010-08-19Add "memory" clobber to lidt inline asm, to prevent the GCC optimizer fromMark Kettenis
getting stupid ideas like optimizing away stores to the descriptor that we're setting. This may be overkill, but this code is far from performance critical and it may prevent future surprises. Fixes instant reboots with bsd.rd on Pentiums with the F00F bug. Thanks to espie@, for narrowing the issue down enough for me to find the problem. ok deraadt@
2010-08-11Disable the RTC the periodic interrupt. Leaving it enabled causes theMark Kettenis
Dell Inspirion 4150 to wake up immediately even though RTC_EN isn't set in the PM1 Enable register. ok deraadt@, mlarkin@
2010-08-11crank versionTheo de Raadt
2010-08-11De-inline CHS_rw. Somehow the merger of two monster __asm __inline statementsTheo de Raadt
into one function is generating broken code; it might be because of missing register clobbers. This is a workaround... it'd be nice to know the real problem work done with mlarkin and pirofti
2010-08-10add a description for bsd.sp where appropriate; while here, writeIgor Sobrado
"multiprocessor" in a consistent way. written with lots of good advice from jmc@, who noted that changing hier(7) was not enough and carefully reviewed this diff. ok jmc@
2010-08-10spaces and tabs, no binary changeMarco Peereboom
2010-08-08Accept "ACPI 4" or such, bug in laptop or spec? -- Thinkpad SL510Theo de Raadt
from marco, ok kettenis, hard to argue with it making the laptop work
2010-08-08Restore the APIC ID to what we set it to at boot (some machines come upTheo de Raadt
with it incorrect) from mklarkin, ok kettenis
2010-08-08Reenable acpiasus(4). The bogus code is actually dead code, and jsing@'sMark Kettenis
eeepc panics without this driver (which must be a bug in the acpi code that this driver just hides).
2010-08-08Disable acpiasus(4); it violates the rule that only the acpi thread is allowedMark Kettenis
to run AML in several ways.
2010-08-07On resume, re-activate the host RNG on the host bridges that need it.Theo de Raadt
ok kettenis
2010-08-05new i386/amd64 machdep.lidsuspend sysctl which decides whether a lidTheo de Raadt
close causes a suspend. resumes are not tied to this; they happen unconditionally. this is a temporary knob for the 4.8 release; afterwards it will move to a more convenient place much moaning discussing where to put the knob with kettenis tested by various including phessler
2010-08-04Disable bce(4) because it can only access 1GB of memory and developersTheo de Raadt
who have the device (only found in laptops) refuse to realize it is their own problem and should dig into the code and fix it.
2010-08-02Add System Enclosure or Chassis structure.Marco Peereboom
ok deraadt
2010-08-02enable owctrTheo de Raadt
2010-08-02correct header file stuff; pointed out by teduTheo de Raadt
2010-08-02needs explicit proc.h; Nathanael RensenTheo de Raadt
2010-07-31remove the ``midisyn'' framework and anything using it, i.e., the oplAlexandre Ratchov
device and the midi interface to pcppi.
2010-07-29Zero out the firmware waking vector on successful resume from ACPI sleep.Mike Larkin
ok deraadt@
2010-07-27delete a #if 0 chunk which was used for early development and will neverTheo de Raadt
be reused ok jordan
2010-07-26Add support for Sony ACPI hotkeys via a new driver: acpisony(4).Paul Irofti
Currently it only works for the suspend button and tries to do right for the brightness events, but I haven't found a Sony laptop that like to do right so far. In the future I want to make the brightness keys work on all Sony's and also add support for the zoom hotkeys and whatever other funky keys I can find on those things. Okay deraadt@.
2010-07-25in the clock drivers, seperate the soft-state and hard-state which wasTheo de Raadt
all jumbled up in the same functions. the rtc (mc chip) and clock (i8243) startup was also mixed up. they the soft state and hardware state can be started in the right order, and it is easy to restart just the neccessary parts upon resume. tested in numerous cases: (apic, pic) * (GENERIC.MP, GENERIC) * (mp, non-mp) * (i386, amd64) ok kettenis
2010-07-23AMD amd64 errara are not on the i386 install media, since there is oftenTheo de Raadt
not room. we do place them on the amd64 install media though, since many of them matter more for 64 bit mode.
2010-07-23Change the strategy for using the FPU in the kernel. The kernel FPU stateMark Kettenis
is now shared with all processes/threads. As a result, you can now use the FPU in true process context (instead of just in kernel threads), but you need to make sure you restore the default FPU state before calling fpu_kernel_exit() if you change rounding mode, precision or exception masks. Lots of discussion with thib@ and Mike Belopuhov. ok thib@, deraadt@
2010-07-23Don't leak the contents of the FPU and SSE registers between processes.Mark Kettenis
ok deraadt@
2010-07-23Omit more IPI code from non-MP kernels. Found using --gc-sections.Matthew Dempsky
ok deraadt@
2010-07-22remove unused variableTheo de Raadt
2010-07-21Disable the heuristics for legacy free systems if pckbc flags are set to 1Miod Vallat
in UKC; found the hard way by jakemsr@ on an old Tecra laptop.
2010-07-21Fix more cdev initializations which were using enodev for poll; ok kettenisTheo de Raadt
2010-07-21Make sure that the FPU IPIs shoot down the right FPU context and not the FPUMark Kettenis
context of some random process that happened to be switched onto the FPU after the decision was made to send the IPI.
2010-07-20also use bufq_quiesce() when suspending, and bufq_restart() when resuming,Theo de Raadt
which will result in more stable filesystems during suspend ok kettenis
2010-07-20typo; martin.pelikan@gmail.comTheo de Raadt
2010-07-14oops; Fred CrowsonTheo de Raadt
2010-07-10and cdboot must be linked with -N still, too. even more curiousTheo de Raadt
2010-07-10actually, pxeboot must remain linked with -NTheo de Raadt
2010-07-10link bootblocks with -Z instead of -N, to ensure that the file offset andTheo de Raadt
addresses line up correctly. Newer i386 gcc4 - for some reason -- is prompting the linker with -N to not do this alignment which it used to do (perhaps because the alignment of all .o's have dropped to very small amounts??). Using -Z wastes around a page of bootblock space which matters even more on the small install media, so this definately needs revisiting. Workaround from toby
2010-07-09We need to preserve %eax, %ecx and %edx since GCC 4.x might use theseMark Kettenis
registers in the prologue to realign the stack. ok marco@, deraadt@, guenther@
2010-07-09gcc4 is a bloated pig, so a few things must fall off the floppyTheo de Raadt
install media until we can shrink something else. decisions on what has to go made by jsg and I. (subject to change..)
2010-07-08Add mapping for ACPI device to PCI bdf (match autoconf tree)Jordan Hargrave
Simplify resource parsing function to use buffer argument Convert namespace linked lists to use queue macros ok marco@, deraadt@
2010-07-08use config_activate_children to get down to the isa bus activation codeTheo de Raadt
2010-07-06timeout_add -> timeout_add_msecBret Lambert
ok art@
2010-07-06get rid of ridiculous differences between the i386 and amd64 versionsTheo de Raadt
2010-07-05bsdos was removedTheo de Raadt