summaryrefslogtreecommitdiff
path: root/sys/arch/i386
AgeCommit message (Collapse)Author
2013-01-29the bus_space api implies that there's a bus endianness that it willDavid Gwynne
swap for you to the hosts endianness. sometimes you dont want this hand holding and just want raw access to the registers. bus_space does have stuff to do this already, but they deal with buffers which can be awkward if you just want to get or set a single register. this adds the following to i386 and amd64: bus_space_read_raw_2() bus_space_read_raw_4() bus_space_read_raw_8() bus_space_write_raw_2() bus_space_write_raw_4() bus_space_write_raw_8() sparc64 already implements this, even though it wasnt part of the official api. how handy. i'll do other archs as i can. kettenis@ and miod@ seem ok with this
2013-01-27Bump MAXTSIZ to 128 MB, some binaries are quite large.Federico G. Schwindt
Agreed with millert@ and guenther@
2013-01-18fix bogus dependencies, and allow mkdep to runMarc Espie
checked on amd64 by rpe@ okay jsing@
2013-01-18Generate assym.h where we need it, instead of reaching around into otherJoel Sing
object directories.
2013-01-18Clean up/standardise makefiles for i386/stand.Joel Sing
2013-01-16cpu_coredump() also needs to invoke vn_rdwr() without IO_NODELOCKED; onlyMiod Vallat
affects a.out binaries' core dumps.
2013-01-16properly distinguish /boot and biosboot in informational and error messagesChristian Weisgerber
ok guenther@
2013-01-12add viomb driver for virtio balloon deviceStefan Fritsch
This allows the host to request some memory back from the openbsd guest in case of a shortage. Patch by Dinar Talypov OK jasper@ OK jmc@ (man page)
2013-01-02Zero out sbv_maskkey to make it boot when there's a softraid cryptoMartynas Venckus
partition. OK jsing@.
2012-12-31Eliminate orig_errno, which could be uninitialized in one case, by doingPhilip Guenther
the emulation errno mapping directly into the register in the trapframe. Range check the value in that case to guarantee there isn't an out-of-bounds array access. Uninitialized variable issue pointed out by David Hill. Range check suggested by matthew@ ok miod@
2012-12-08Make bus_dmamem_mmap(9) honor BUS_DMA_NOCACHE.Martin Pieuchot
ok kettenis@
2012-12-05Remove excessive sys/cdefs.h inclusionTheo de Raadt
ok guenther millert kettenis
2012-12-04Implement bus_space_mmap(9).Mark Kettenis
ok miod@, mpi@
2012-12-02Determine whether we're currently on the alternative signal stackPhilip Guenthe
dynamically, by comparing the stack pointer against the altstack base and size, so that you get the correct answer if you longjmp out of the signal handler, as tested by regress/sys/kern/stackjmp/. Also, fix alt stack handling on vax, where it was completely broken. Testing and corrections by miod@, krw@, tobiasu@, pirofti@
2012-11-29Enable rtsx(4) in GENERIC on i386 and amd64.Stefan Sperling
2012-11-27Add acpi_{acquire,release}_glk locking functions.Paul Irofti
These functions represent the basic blocks for using the ACPI global lock that provides mutual exclusion between the OSPM and the BIOS. No functional change. Okay kettenis@, deraadt@.
2012-11-19Add atomic 32-bit cas operations.Paul Irofti
This is needed for future acpi global locking routines. Okay kettenis@
2012-11-19Use a more descriptive name for the userland cas operation.Paul Irofti
Substitute atomic_ucas_32 with futex_atomic_ucas_int32 to make it obvious who's using this api. Suggested by and okay kettenis@.
2012-11-18Small memcpy optimizationsStefan Fritsch
On x86, the xchg operation between reg and mem has an implicit lock prefix, i.e. on MP, it is a relatively expensive atomic operation. This is not needed here. Instead of swapping arguments on the stack, load them in reverse order and jump further into bcopy (idea by kettenis@). ok kettenis@
2012-11-16Add oce(4) / mfii(4) and virtio devicesBrad Smith
i386 CD image also build/boot tested by todd@ ok mikeb@ deraadt@
2012-11-10Recent x86 CPUs come with a constant time stamp counter. If this isMarcus Glocker
the case we verify if the CPU supports a specific version of the architectural performance monitoring feature and read out the current frequency from the fixed-function performance counter of the unhalted core. My initial motivation to implement this was the Soekris net6501-70 which comes with an Intel Atom E6xx 1.60GHz CPU. It has a constant time stamp counter plus speed step support and boots on the lowest frequency of 600MHz. This caused hw.cpuspeed and hw.setperf to reflect the wrong values. The diff is a cooperation work with jsg@. The fixed-function performance counter read code comes from a former diff of him. OK jsg@
2012-11-05unifdef -D __HAVE_TIMECOUNTERMiod Vallat
2012-11-02uvm_km_alloc() allocs bytes rounded up to the nearest page not pages.Jonathan Gray
Problem spotted by and diff to fix this (and convert to km_alloc) from oga ok deraadt@
2012-11-01Fix merge errors.Joel Sing
Found the hard way by deraadt@
2012-10-31Unbreak build on !i386.Joel Sing
Pointed out by deraadt@
2012-10-31Bump version numbers.Joel Sing
2012-10-31Enable softraid boot support for cdboot(8) and pxeboot(8).Joel Sing
2012-10-31Make cdboot(8) and pxeboot(8) work correctly when it is larger than 64KB inJoel Sing
size. When relocating use blocks that are a maximum of 32KB in size and increment the segment registers after relocating each block. This keeps us within the confines of the %cx register and the real mode segmented addressing.
2012-10-31Save and restore %ebx across the call to read. Otherwise we load the firstJoel Sing
64KB segment at 0x7c00 and any additional 64KB segments over top of each other at 0x10000.
2012-10-31Bump i386 boot(8) version.Joel Sing
2012-10-31Enable softraid boot support for i386 boot(8).Joel Sing
2012-10-31Bring softraid support to i386/stand/libsa.Joel Sing
2012-10-31Add support for Intel's Supervisor Mode Access Prevention (SMAP) feature.Jonathan Gray
When enabled SMAP will generate page faults on the kernel attempting to read/write user data pages unless an override flag is set. Instructions that modify the flag are patched into copyin/copyout and friends on boot if SMAP is enabled. Those with access to hardware with SMAP can contact me for a test case. joint work with deraadt@ ok miod@ deraadt@
2012-10-30Apply a bunch of style(9) and whitespace fixes to i386/amd64 libsa, makingJoel Sing
the code actually diffable. No binary change.
2012-10-30Actually remove the Makefiles.Joel Sing
2012-10-30Remove the now unused i386 libsa/libz Makefiles.Joel Sing
ok deraadt@
2012-10-29add (consistent) STANDARDS;Jason McIntyre
2012-10-29Build i386 cdboot(8) and pxeboot(8) using the same method as the amd64Joel Sing
versions. Compile all required sources directly, rather than linking against uninstalled libraries. Discussed with deraadt@
2012-10-25Some LIBC_SCCS found lurking in the shadowsTheo de Raadt
2012-10-19add an #ifdef HIBERNATE for diffability with amd64Mike Larkin
2012-10-17Document the 'boothowto hack' used to flag to (a few) DVACT_POWERDOWNTheo de Raadt
handlers how hard they should hit the hardware.
2012-10-17Swap arguments to wdog_register() since it is nicer, and prepareTheo de Raadt
wdog_shutdown() for external usage.
2012-10-13pxe spec reference is better placed in STANDARDS;Jason McIntyre
2012-10-13Only build fdboot on the appropriate architectures. Also fix the path toJoel Sing
check-boot.pl so that it works with both boot and fdboot.
2012-10-12Now that the file offset/alignment issue has been found and fixed, switchJoel Sing
back to using -N when linking i386 boot(8). This prevents issues with the .data file offset becoming mismatched with its LMA, once the binary grows.
2012-10-12Force 16 byte alignment in boot(8) srt0.S, since this is more likely to getJoel Sing
the required file offset (0x120) for the .text segment.
2012-10-12Add a script that checks the file offsets for boot(8)'s .text and .dataJoel Sing
sections match up with their LMAs. This is necessary since biosboot does not perform relocation. Discussed with deraadt@
2012-10-12Build a 'fdboot' that will be used for floppy disk media. This can be madeJoel Sing
smaller than the normal 'boot', however for now it is identical. ok deraadt@
2012-10-11Initialise the protected mode IDT after zeroing .bss - otherwise we wipeJoel Sing
the IDT that we have just finishing building.
2012-10-10Oops. Need to handle the case of nfs diskless machines, where the blockTheo de Raadt
device name is NULL. From Tim Wiess