Age | Commit message (Collapse) | Author |
|
This driver handles events triggered by GPIO keys such as lid status and
power button.
OK kettenis
|
|
|
|
ok jmatthew@
|
|
the reportid locator. The same locator was removed in 2004 making the routine
redundant.
ok gnezdo@ mpi@
|
|
ok patrick@
|
|
|
|
These files were unhooked from the build in April 2021.
|
|
Thanks to Damien Couderc <openbsd at petrocore dot eu> for testing and ok
gnezdo@
|
|
|
|
|
|
reported by stsp@
an earlier diff was tested by and ok stsp@
ok jmatthew@
|
|
ok phessler@
|
|
The "label" property is obsolete and "function" should be used,
but devices like the Raspberry Pi 4b still use it.
Detect LEDs on such machines:
-gpioleds0 at mainbus0: no LEDs
+gpioleds0 at mainbus0: "led0", "led1"
OK patrick
|
|
OK patrick
|
|
ok deraadt@
|
|
Fixes panic seen on the Pinebook Pro.
|
|
Interrupt sharing did not work correctly when two dwiic(4) devices
share an interrupt line. We ended up with an interrupt storm.
One of the two interrupt handlers would see interrupt status bits set
to zero but claim the interrupt regardless. The second handler would
never get to run, and the interrupt condition on the second device was
not cleared as a result. Fix this by returning zero from dwiic_intr()
if the device's interrupt status bits read back as zero.
The storm occurred as soon as X11 was started. xenodm(1) never managed to
display its login prompt. Observed on the Thinkpad Helix2 which had been
unable to start X since dwiic(4) started to attach on this machine in 2018.
(I already saw the problem back then but never dug into it, and temporarily
lost access to helix2 hardware for a long time.)
With help from jcs@ who provided debugging hints already back in 2018.
ok kettenis@
|
|
|
|
mutex(9) to protect `unp_rights'.
This removes global rwlock(9) from unp_internalize() and unp_externalize()
normal paths and leaves it in the unp_externalize() error path only. Also
we don't need to simultaneously hold fdplock() and `unp_lock' within
unp_internalize().
The `unp_rights' can't be atomic. Otherwise the thread which exceeding the
limit will break all other not-exceeding threads until it decrements
`unp_rights'. That why the mutex(9) used for protection.
It's safe to call fptounp() without `unp_lock' held. We always got this
file descriptor by fd_getfile(9) so we always have the extra reference
and this descriptor can't be closed by concurrent thread. Some sockets
could be destroyed through 'PRU_ABORT' path but they don't have
associated file descriptor and they are not accessible in the
unp_internalize() path.
The `unp_file' access without `unp_lock' held is also safe. Each socket
could have the only associated file descriptor and each file descriptor
could have the only associated socket. We only assign `unp_file' in the
unp_internalize() path where we got the socket by fd_getfile(9). This
descriptor has the extra reference and couldn't be closed concurrently.
We could override `unp_file' but with the same address because the
associated file descriptor can't be changed so the address will be also
the same. While unp_gc() concurrently runs the dereference of
non-NULL `unp_file' is always safe.
Discussed with kettenis@ and mpi@.
ok mpi@
|
|
Use the monitored kqueue's kq_lock to serialize kqueue and knote access.
Typically, the "object lock" would cover also the klist, but that is not
possible with kqueues. knote_activate() needs kq_lock of the monitoring
kqueue, which would create lock order troubles if kq_lock was held when
calling KNOTE(&kq->kq_sel.si_note). Avoid this by using a separate klist
lock for kqueues.
The new klist lock is system-wide. Each kqueue instance could have
a dedicated klist lock. However, the efficacy of dedicated versus
system-wide lock is somewhat limited because the current implementation
activates kqueue knotes through a single thread.
OK mpi@
|
|
This makes witness(4) use a single lock type for tracking so_lock.
Previously, so_lock was covered by two distinct lock types because there
were separate rw_init() initializers in socreate() and sonewconn().
OK kettenis@
|
|
we can access through the phy-handle. If there's no reference, keep doing
what we have been doing so far.
ok kettenis@
|
|
|
|
name "phys". To handle those, make sure that we look it up and in case it's
not there fall back to "fsl,usbphy".
ok kettenis@
|
|
ok patrick@
|
|
Laurence Tratt reported firefox would hard lock a machine
with polaris12 with the ttm change from linux 5.10.77.
robert@ also hit the same problem.
|
|
'nwid'/'nwkey', the keys will be set at random times when 'join'/'nwkey' is
used. So also stop trying to set IEEE80211_CIPHER_NONE keys on that path.
James Hastings confirms this fixes his '(null node)' panics on run(4). Thanks!
ok stsp@
|
|
From Thelford Williams
eb3b6805e3e9d98b2507201fd061a231988ce623 in linux 5.10.y/5.10.77
5afa7898ab7a0ec9c28556a91df714bf3c2f725e in mainline linux
|
|
From Christian Koenig
c21b4002214c1c7e7b627b9b53375612f7aab6db in linux 5.10.y/5.10.77
0db55f9a1bafbe3dac750ea669de9134922389b5 in mainline linux
|
|
|
|
Pointed out by Brad, thanks!
OK kettenis@, deraadt@
|
|
ok jsg@
|
|
i wanted to talk modbus to a thing using a uchcom rs485 adapter,
but i needed even parity enabled to do that which the code didnt
support. this pulls in the necessary changes from netbsd uchcom.c
r1.26. it does not pull in the reset changes in 1.26 because netbsd
r1.28 reverts the reset code back to what we have now.
existing functionality tested by felix kronlage-dammers
ok patrick@
|
|
Tested by kevlo@
|
|
|
|
|
|
mode for now as we need to enter translations into both of them which is
hard to do now that they have separate device tree bindings.
|
|
OK deraadt@
|
|
sys/ only checkouts are common, especiall in got(1) times, but they don't
include the global .gitignore which is annoying.
Duplicate it here.
OK sthen
|
|
ok krw@, deraadt@
|
|
installation happening w/o a node, and don't attempt to set WEP keys that don't
exist.
Should fix the '(null node)' panics reported by James Hastings.
ok stsp@
|
|
all callers get an update if the mbuf changes.
OK tobhe@
|
|
ok patrick@
|
|
|
|
ok patrick@
|
|
as we currently configure neither in the transmit code path.
Found by sf@
|
|
|
|
member to allow us to specify a delay between assert the CS# signal and
starting the clock. And the transfer function gains a flags argument,
which can be used to specify a new SPI_KEEP_CS flag to keep CS# asserted
after the transfer. This allows us to do another transfer immediately
afterwards without de-asserting CS# which is necessary for sending
commands to the upcoming Apple M1 keyboard/touchpad driver.
ok patrick@
|
|
that the RDT is written, and that it is written not too early. Doing it
before writing IGC_RXDCTL definitely doesn't work.
The tail pointer needs to be set to the next empty slot, so it has to be
"last desc filled + 1".
Make sure sure that the rss mapping does not happen in the middle of the
RX checksum block, and that it happens only if nqueues > 1. Also disable
storing bad packets.
With this, igc(4) receives packets just fine.
ok kevlo@
|
|
Ported by kevlo@
ok jmatthew@
|