summaryrefslogtreecommitdiff
path: root/sys/arch/sparc64
AgeCommit message (Collapse)Author
2008-09-07- replace dtoa w/ David's gdtoa, version 2008-03-15Martynas Venckus
- provide proper dtoa locks - use the real strtof implementation - add strtold, __hdtoa, __hldtoa - add %a/%A support - don't lose precision in printf, don't round to double anymore - implement extended-precision versions of libc functions: fpclassify, isnan, isinf, signbit, isnormal, isfinite, now that the ieee.h is fixed - separate vax versions of strtof, and __hdtoa - add complex math support. added functions: cacos, casin, catan, ccos, csin, ctan, cacosh, casinh, catanh, ccosh, csinh, ctanh, cexp, clog, cabs, cpow, csqrt, carg, cimag, conj, cproj, creal, cacosf, casinf, catanf, ccosf, csinf, ctanf, cacoshf, casinhf, catanhf, ccoshf, csinhf, ctanhf, cexpf, clogf, cabsf, cpowf, csqrtf, cargf, cimagf, conjf, cprojf, crealf - add fdim, fmax, fmin - add log2. (adapted implementation e_log.c. could be more acruate & faster, but it's good enough for now) - remove wrappers & cruft in libm, supposed to work-around mistakes in SVID, etc.; use ieee versions. fixes issues in python 2.6 for djm@ - make _digittoint static - proper definitions for i386, and amd64 in ieee.h - sh, powerpc don't really have extended-precision - add missing definitions for mips64 (quad), m{6,8}k (96-bit) float.h for LDBL_* - merge lead to frac for m{6,8}k, for gdtoa to work properly - add FRAC*BITS & EXT_TO_ARRAY32 definitions in ieee.h, for hdtoa&ldtoa to use - add EXT_IMPLICIT_NBIT definition, which indicates implicit normalization bit - add regression tests for libc: fpclassify and printf - arith.h & gd_qnan.h definitions - update ieee.h: hppa doesn't have quad-precision, hppa64 does - add missing prototypes to gdtoaimp - on 64-bit platforms make sure gdtoa doesn't use a long when it really wants an int - etc., what i may have forgotten... - bump libm major, due to removed&changed symbols - no libc bump, since this is riding on djm's libc major crank from a day ago discussed with / requested by / testing theo, sthen@, djm@, jsg@, merdely@, jsing@, tedu@, brad@, jakemsr@, and others. looks good to millert@ parts of the diff ok kettenis@ this commit does not include: - man page changes
2008-08-28Driver for Acer Labs M5455 integrated sound found on recent Ultra workstations.Mike Belopuhov
Suggestions and corrections by kettenis, ratchov, jakemsr. Thanks a lot! Recording doesn't work at the moment. ok kettenis ratchov
2008-08-24many more devices for the RAMDISKTheo de Raadt
2008-08-18Add sparc_bus_addr function for schizo to allow CardBus to work.Brad Smith
ok kettenis@
2008-08-17Scale down cpu_clockrate[1] when we scale down the cpu clock frequency suchMark Kettenis
that delay(9) continues to do the right thing.
2008-08-17Garbage collect stupid delay loop.Mark Kettenis
2008-08-13Initial stab at a driver for the integrated random number generator of theMark Kettenis
UltraSPARC T2.
2008-08-11Only print iotdb stuff when DEBUG.Mark Kettenis
2008-08-11Allow mapping mmio regions that are not page aligned.Mark Kettenis
ok miod@
2008-08-11Add hw.cupspeed cupport for all CPU types.Mark Kettenis
2008-08-11Minimal apmvar.h such that we can enable apm(8) and apmd(8) on sparc64.Mark Kettenis
ok deraadt@
2008-08-11Add hw.setperf support for UltraSPARC-IIe support.Mark Kettenis
tested by miod@, matthieu@, naddy@, jsg@, djm@
2008-08-10Use the STICK logic on UltraSPARC-IIe to generate clock interrupts.Mark Kettenis
2008-08-10Add hypervisor calls for the sun4v random number generator interface.Mark Kettenis
2008-08-09Add prom_set_sun4v_api_version().Mark Kettenis
2008-08-09Fix counting of shared (PCI) interrupts. Remove some useless debug codeMark Kettenis
and unused variables.
2008-08-07Use %sys_tick to generate clock interrupts on systems that have it.Mark Kettenis
2008-08-07Give each CPU its own `struct intrhand' for %tick interrupts. Fixes aMark Kettenis
problem where the clock would stop ticking on some CPUs because of lost ticks.
2008-07-30Add ath(4).Brad Smith
ok deraadt@
2008-07-29Reenable the AUXWRITE dance to try and find the aux port in pckbc(4), basedMiod Vallat
on an attachment dependent flag; the Tadople SPARCLE needs it. ok kettenis@ deraadt@
2008-07-28No longer clear ci_want_resched within cpu_switchto(), now that it's doneMiod Vallat
in the MI code.
2008-07-27Increase the size of the TSB on large memory machines. This make buildingMark Kettenis
a kernel 10-15% faster on the t1k. Don't do this for SMALL_KERNEL though, otherwise the 4MB locked mapping for the data segment will be too small to include a ramdisk.
2008-07-25Work around a problem on the t5120 where top(1) would lock up the system forMark Kettenis
several minutes by making pmap_resident_count() return 0 for the kernel pmap. discussed with miod@
2008-07-25Switch to a temporary stack early on such that we don't lose if the stackMark Kettenis
provided by the PROM gets flushed out of the TLB before we install our own trap table. Makes RAMDISK kernels work on T2 systems.
2008-07-23Clear correctable errors after handling them. From Bjorn Andersson.Mark Kettenis
2008-07-21- add proper double_t and float_t definitions for each archMartynas Venckus
- math.h shouldn't define FLT_EVAL_METHOD, but float.h should (per C99). remove from math.h, and add proper definitions in float.h ok millert@
2008-07-21Implement the cpu_yield hypervisor call. Use it in the idle loop forArtur Grabowski
SUN4V to let it suspend strands (why does everyone invent own words for hyperthreads?). This gives a huge performance boost when most of the cpus are idle. kettenis@ ok
2008-07-21IPL_NONE doesn't really exist. The corresponding bit in theMark Kettenis
per-processor soft interrupt register is used for hardware clock-tick counter interrupts. So make smp_signotify() use IPL_SOFTINT instead such that we don't unintentionally trigger a spurious clock interrupt. This seems to fix the timekeeping anomalies on the t1k. tested by art@
2008-07-21nam2blk[] needs a "vnd" entry for some things (like softraid)Todd T. Fries
ok marco@ no objection miod@ need this for regress djm@ no objection krw@
2008-07-20Provide a timecounter based on the UltraSPARC IIe STICK logic.Mark Kettenis
2008-07-19Add acx(4) at cardbus(4).Mark Kettenis
2008-07-19Unbreak the tree. Pointed out by James Hartley.Mark Kettenis
2008-07-18Add a macro that clears the want_resched flag that need_resched sets.Artur Grabowski
Right now when mi_switch picks up the same proc, we didn't clear the flag which would mean that every time we service an AST we would attempt a context switch. For some architectures, amd64 being probably the most extreme, that meant attempting to context switch for every trap and interrupt. Now we clear_resched explicitly after every context switch, even if it didn't do anything. Which also allows us to remove some more code in cpu_switchto (not done yet). miod@ ok
2008-07-18Add ohci(4) and ehci(4) at cardbus(4).Mark Kettenis
2008-07-18Determine the free address space by looking at the "available" property ofMark Kettenis
the PCI host bridge if we're not running on an UltraBook. Fix allocation of bus number such that it works on machines that have OpenBoot 4.x.
2008-07-18Add new uvm function called uvm_map_pie() which takes align as aKurt Miller
parameter and returns an aligned random load address for position independent executables to use. This also adds three new vmparam.h defines to specify the maximum address, minimum address and minimum allowed alignment for uvm_map_pie() to use. The PIE address range for i386 was carefully selected to work well within the i386 W^X framework. With much help and feedback from weingart@. okay weingart@, miod@, kettenis@, drahn@
2008-07-16Add a new parameter to pckbc_cnattach(): flags to put in the pckbc bowels.Miod Vallat
For now, only one such flag is defined, PCKBC_CANT_TRANSLATE. It hints pckbc that the device does not behave correctly to the ``set translation'' commands. Set this flag if we are running on a Tadpole Ultrabook machine, which needs it. This makes the built-in keyboard work correctly on this laptop (with the help of the software translation pckbd diff). tested & ok kettenis@
2008-07-15Add a timecounter based on the $sys_tick register, and use it on machinesMark Kettenis
that have it. Initial diff from art@.
2008-07-15Use -Wa,-Av9b instead of -Wa,-Av9a such that I can use %sys_tick in anMark Kettenis
upcoming change.
2008-07-14Fix struct sysioreg layout after the struct iommureg layout change;Miod Vallat
ok kettenis@
2008-07-14Use uvm_km_valloc_prefer_wait() instead of uvm_km_valloc_wait() in vmapbuf().Miod Vallat
ok art@
2008-07-12Make the console interrupt driven.Mark Kettenis
2008-07-12Shave off a few instructions from cpu_switchto().Mark Kettenis
2008-07-12Add a temporary hack to attach only the first thread of every core forMark Kettenis
MULTIPROCESSOR kernels. We map 'struct cpuinfo' at the same virtual address on every processor, but since threads on the same core share an MMU this doesn't quite work. With the hack we are at least able to use the other core (and any additional processors).
2008-07-12Add core(4).Mark Kettenis
2008-07-12Perform IOMMU cache flushes on Oberon.Mark Kettenis
2008-07-12Use the proper interrupt target ID on Oberon.Mark Kettenis
2008-07-12Adjust SUN4U_TLB_RESERVED_MASK for updated SUN4U_TLB_PA_MASK.Mark Kettenis
2008-07-12Don't install interrupt handlers for non-exitsing interrupts on CMU-CH.Mark Kettenis
2008-07-12On Fujitsu's SPARC64 CPUs, the data_access_error trap is synchronous, and AFSRMark Kettenis
will be 0. Check SFSR too, before deciding there's no fault.