OpenBSD cvs log

created 2024-08-24T17:17:25Z
begin 2024-08-17T00:00:00Z
end 2024-08-18T00:00:00Z
path src/sys
commits 17

date 2024-08-17T01:55:03Z
author jsg
files src/sys/dev/pci/xhci_pci.c log diff annotate
src/sys/dev/usb/xhci.c log diff annotate
src/sys/dev/usb/xhcivar.h log diff annotate
message skip Controller Save State (CSS) and Controller Restore State (CRS)
on AMD 17h/1xh xHCI

avoids problem with resume after CRS was introduced in xhci.c rev 1.133
uhub0: device problem, disabling port 2
uhub1: device problem, disabling port 1

reported by brynet@ and reproduced on t495, ok kettenis@

date 2024-08-17T02:14:20Z
author deraadt
files src/sys/dev/ic/dwiic.c log diff annotate
message dwiic resume is almost exclusively a "hardware state restore", and
not a "restart transaction", so the job should get done at DVACT_RESUME
time.
ok kettenis mlarkin

date 2024-08-17T02:14:21Z
author deraadt
files src/sys/dev/pci/dwiic_pci.c log diff annotate
message dwiic resume is almost exclusively a "hardware state restore", and
not a "restart transaction", so the job should get done at DVACT_RESUME
time.
ok kettenis mlarkin

date 2024-08-17T02:24:03Z
author deraadt
files src/sys/dev/ic/dwiic.c log diff annotate
message dwiic_activate did not inform sub-devices with config_activate_children()
calls from the correct places, so their DVACT_QUIESCE and DVACT_WAKEUP
were incorrect, and led to those sub-drivers (ihidev and imt) racing
against dwiic hardware re-initialization.
ok kettenis mlarkin

date 2024-08-17T02:24:06Z
author deraadt
files src/sys/dev/pci/dwiic_pci.c log diff annotate
message dwiic_activate did not inform sub-devices with config_activate_children()
calls from the correct places, so their DVACT_QUIESCE and DVACT_WAKEUP
were incorrect, and led to those sub-drivers (ihidev and imt) racing
against dwiic hardware re-initialization.
ok kettenis mlarkin

date 2024-08-17T02:28:45Z
author deraadt
files src/sys/dev/ic/dwiic.c log diff annotate
message The dwiic_init() routine is used at startup to read various chip
registers, make some decisions, and then program other registers. After
a resume, it is pointless, and potentially incorrect to read such registers
again, which a BIOS or something may not have initialized, and we are
better off using the remembered soft-state to init cleanly. So craft a
custom block of chip restoration, and do it while the chip is stopped hard.
ok kettenis mlarkin

date 2024-08-17T02:31:15Z
author deraadt
files src/sys/dev/pci/dwiic_pci.c log diff annotate
message perusing drivers on other systems, there appears to be some cynism about
how this chip comes out of D3 and when the RESET register is touched.
Some systems were still wasn't resuming reliabily, but adding these
delays has eliminated resume-hangs.
ok kettenis mlarkin

date 2024-08-17T02:35:00Z
author deraadt
files src/sys/dev/ic/dwiic.c log diff annotate
message whitespace

date 2024-08-17T07:02:13Z
author jsg
files src/sys/nfs/nfs_serv.c log diff annotate
message avoid uninitialised var use in nfs_serv.c error paths

some functions have a nfsmout label with code that assumes NDINIT has
been called

nfsrv_rename has two NDINIT calls, the nfsmout code assumes both are
setup but is only jumped to when none/one is setup

found with llvm scan-build
checked by deraadt@ beck@, ok miod@

date 2024-08-17T08:12:46Z
author stsp
files src/sys/dev/ic/qwx.c log diff annotate
message enable qwx(4) ext irqs earlier for suspend/resume

Enable ext IRQs like the Linux driver does it, not later. I did this
differently due to problems in early development that have since
been fixed.

Fixes an interrupt storm during resume which prevents things like
key installation from working, leaving the network link dead.

date 2024-08-17T08:45:22Z
author miod
files src/sys/dev/ic/sti.c log diff annotate
src/sys/dev/ic/stireg.h log diff annotate
src/sys/dev/ic/stivar.h log diff annotate
src/sys/dev/pci/sti_pci.c log diff annotate
message Checkpoint of work-in-progress attempt to support the FireGL-UX board. This
particular sti(4) device relies upon undocumented callbacks from the kernel,
and will default to iodc code otherwise.

The device now initializes correctly, but writes to the frame buffer memory
freeze the system due to bad interaction with the ROM even though it is
disabled at the PCI level - unfortunately I'm currently out of hair to pull
at the moment to make any progress on this.

No functional change intended for other sti(4) devices.

date 2024-08-17T09:52:11Z
author denis
files src/sys/net/ppp_tty.c log diff annotate
message Allow PPP interface to run in an rdomain and get a default route installed in the same routing domain

Input and OK claudio@

date 2024-08-17T10:33:56Z
author kettenis
files src/sys/dev/pci/drm/drm_drv.c log diff annotate
message Linux doesn't consider S4 to be a suspend target state.

ok jsg@

date 2024-08-17T10:38:21Z
author kettenis
files src/sys/dev/pci/drm/amd/amdgpu/amdgpu_drv.c log diff annotate
message The amdgpu(4) code uses separate code paths for suspend and hibernate.
Use the ACPI sleep state to determine which path to go down into. This
fixes (un)hibernate again after the fix for S0/S3 broke it.

Using the ACPI sleep state for this is not ideal. If we ever want to
support amdgpu(4) on architectures without ACPI, we'll need a different
solution.

ok jsg@

date 2024-08-17T10:41:24Z
author kettenis
files src/sys/dev/pci/drm/amd/amdgpu/amdgpu_acpi.c log diff annotate
message Skip the FADT check on OpenBSD. Without it the GPU (and display) will
remain on in suspend-to-idle on some machines. There is a comment
warning that this is risky, but let's find out how risky thus really is.

ok deraadt@

date 2024-08-17T13:35:01Z
author mpi
files src/sys/arch/mips64/mips64/cpu.c log diff annotate
message Use km_alloc(9) to allocate USPACE instead of uvm_pglistalloc(9).

ok miod@

date 2024-08-17T15:10:00Z
author deraadt
files src/sys/dev/i2c/icc.c log diff annotate
message icc_detach was not listed in cfattach