Age | Commit message (Collapse) | Author |
|
still criplled as the SD/MMC controllers only do 32-bit DMA.
ok jsing@
|
|
ok kettenis@
|
|
ok miod@
|
|
ci_mds_tmp needs to be 32-byte aligned, otherwise we trip a CTASSERT
in amd64/cpu.c and break kernel compilation. However, ci_mds_tmp's
32-byte alignment is at risk: the size of schedstate_percpu is about
to change.
Move ci_curproc and ci_schedstate up just after ci_mds_buf. This puts
ci_mds_tmp at page offset 64 with no structs ahead of it in cpu_info.
With this arrangement it should remain 32-byte aligned without much
effort.
With input from guenther@.
ok guenther@
|
|
|
|
Based on an initial diff from jsing@
ok jsing@
|
|
ok bru@
|
|
Based on a proposal of tobhe@.
ok tobhe@
|
|
Every platform made the clockintr switch at least six months ago.
The __HAVE_CLOCKINTR symbol is now redundant. Remove it.
Prompted by claudio@.
Link: https://marc.info/?l=openbsd-tech&m=168826181015032&w=2
"makes sense" mlarkin@
|
|
ok kettenis@ patrick@
|
|
This adds temperature sensor support for the Starfive VisionFive 2.
ok kettenis@
|
|
The driver not only provides the temperature readings for the cores, cluster
and memory in hw.sensors, but also allows the thermal zone code to act on
temperature changes.
ok drahn@
|
|
This bug can cause all sorts of problems, but in particular it was
most easily reproduced as a double fault in the syscall return path on
this CPU model:
Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz
Tons of help from guenther@ in narrowing down the root cause. Fix
tweaked by guenther@. Additional input from deraadt@ and kettenis@.
ok guenther@
|
|
This adds initial support for the syscrg and pll clocks on the StarFive
VisionFive V2 JH7110 SoC.
ok kettenis@
|
|
Result is the same and gets rid of a lbolt use.
OK miod@
|
|
ok patrick@
|
|
Now 'chmod a-x /bsd.upgrade' works in order to prevent re-upgrade, like other architectures.
Tested by me on LUNA-88K2.
|
|
This is needed to work libsa's ufs_fchmod() on luna88k.
Tested by me on LUNA-88K2.
|
|
eMAG with an AMD GPU with an HD audio function where azalia(4) doesn't
fully attach.
ok patrick@
|
|
pointer of the previous frame has been stored. The code in
db_stack_trace_print() got that wrong for the initial frame.
While there, remove a bogus comment and some unused #defines about the
layout of stack frames.
ok patrick@
|
|
Move the clockqueue_init() call out of clockintr_cpu_init() and up
just before the sched_init_cpu() call for a given CPU.
This will allow sched_init_cpu() to allocate clockintr handles for a
given CPU's scheduler in a later patch.
Link: https://marc.info/?l=openbsd-tech&m=168661507607622&w=2
ok kettenis@, claudio@
|
|
when the hardware uses an implementation defined algorithm. There are
issues with PAC on the x13s (but not on the windows dev kit) which uses
the architected algorithm as it uses a core designed by ARM. This leaves
PAC enabled on Apple hardware.
ok deraadt@
|
|
it is possible to "sign" pointers with a hidden key. The signature is
placed in unused bits of the pointer and can be checked later. This can
be used to provide "tail CFI" that is similar to what retguard provides.
Debuggers need to be aware of the fact that pointers can be signed. For
this purpose a new PT_PACMASK ptrace(2) request is introduced that returns
as mask that indicates the bits used for the signature. Separate masks
are provided for code and data pointers even though the masks are identical
in the current implementation. These masks are also written into a special
note section in the core dump.
ok patrick@
|
|
Qualcomm SoCs.
The immediate task for this driver is to provide firmware to the auxiliary
cores and to bring them up. This is accomplished by parsing the ELF files
and providing the data in certain memory regions, and telling qcscm(4) to
check and execute the firmware on the auxiliary cores.
With the cores up we can now talk to the firmware. The glink-edge subnode
indicates that we can talk to it using the GLINK protocol over shared memory
provided by qcsmem(4). This interface is essentially a channel multiplexer,
with each channel identified through an ASCII string.
One of those channels connects to a PMIC router, which allows us to talk to
the battery manager service that contains information about the charging and
battery states.
ok drahn@ kettenis@
|
|
which does not matter today, but will matter a lot in near future).
But actually it isn't needed at all, cpu_init() does it again.
So remove the call.
ok guenther
|
|
(get_long) and add missing {} in devsw[1] initialization.
Most from 2011 NetBSD commit by tsutui.
No functional change.
Build tested and ok kn@
|
|
|
|
|
|
error, i, p and poff. Fewer complaints from gcc -Wall.
The same was done to the NetBSD version in 2011 by tsutui.
Remove two more recent load_disklabel() comments implying that
search_label() checks MBR partitions. It doesn't and never has
despite the enticing names/types of the above unused variables.
No functional change.
|
|
ok jmc@ guenther@ tb@
|
|
|
|
|
|
ok patrick@, tobhe@
|
|
data structures from bss to be allocated in witness_initialize().
Tested on sparc64, amd64, arm64, i386, octeon. okay miod@
|
|
This subsystem typically provides an interface for clocks and regulators
not controlled via RPMH. We will use it to switch the load state of the
ADSP co-processor. Surprisingly, or maybe not, the interface uses ASCII
text that kind of looks like JSON.
ok kettenis@
|
|
they're used in the 32bit-compat support, which we dropped years ago.
Bye bye!
ok deraadt@
|
|
|
|
The inbound path is typically used as interrupt controller, e.g. to handle
handover and ready interrupts when a remoteproc boots. The outbound path
seems to be used to stop cores, but we don't do that yet.
ok kettenis@
|
|
up.
ok kettenis@ drahn@
|
|
used to establish data communication channels with co-processors.
ok kettenis@ drahn@
|
|
is used to synchronize access to the shared memory table between the
application cores we run on and the co-processors next to us.
ok kettenis@ drahn@
|
|
to inform (and get informed) of changes to shared memory state.
ok kettenis@
|
|
ID_AA64PFR0_EL1 register across cores. The CSV2/CSV3 features are handled
on a per-core basis so it is fine if they are different. And we only
support 64-bit userland so it is fine if the EL0/EL1/EL2/EL3 fields are
different too.
This prevents us from printing a warning on the Rockchip RK3588 SoC which
combines Cortex-A55 with Cortex-A76 that implement a sightly different
feature set.
ok deraadt@, mlarkin@
|
|
cause of a signal.
ok bluhm@, guenther@, deraadt@
|
|
to support ethernet on OrangePi One Plus (Allwinner H6).
ok kettenis@
|
|
booting from a disk without a BSD disklabel.
ok kn@, caspar@
|
|
ok patrick@
|
|
reloading the firmware.
ok tobhe@
|
|
'rdroot' (size 10,240 blocks) is not the same as 'rdboot' (size
2,048 blocks).
Noticed by deraadt@
|
|
know have a MC146818A compatible RTC this code isn't actually used. But
there are systems that have a buggy EFI implementation that blows up when
we call the GetTime runtime service to check whether the RTC functionality
is implemented.
ok mlarkin@, dlg@
|