Commit Graph

38842 Commits

Author SHA1 Message Date
rhialto
95d28f6283 For usb keyboards with encoding *.swapctrlcaps, keep KS_Cmd1 on the same
key as KS_Control_L. This brings them in line with wskbdmap_mfii.c.
2020-04-24 13:29:46 +00:00
jmcneill
6f0a553f62 mcx: sync with OpenBSD sys/dev/pci/if_mcx.c r1.44
1.44:
Fix typo which could lead into a double free

1.43:
Commands that create objects return a 24 bit object ID, so mask off the
high 8 bits of the value we extract, in case the firmware leaves junk there.
Hrvoje Popovski has seen this with newer firmware on a ConnectX 5 card,
which now works properly.

1.42:
Increase the completion queue size to prevent overflow.  Under reasonably
unlikely circumstances - lots of single-fragment packets being sent, a
significant number of packets being received, while the interrupt handler
was unable to process the completion queue - the completion queue could
overflow, which would result in the interface locking up.

1.41:
Check if we've reached the end of the current mailbox before writing past
the end of it, rather than after.  Now we can actually allocate queues
big enough to need multiple mailboxes.

1.40:
Don't call mcx_intr() from mcx_cmdq_poll(); this was a leftover from early
development that I forgot about, but turns out to be a potential race with
the actual interrupt handler.

1.39:
fix previous: use the correct offset for sq/rq creation, and don't
reset the mbox counter to 0 after calculating it.

1.38:
Add a helper function for writing physical addresses for queues into
command queue mailboxes, and use this for all queue setup commands.
Previously we just assumed the addresses would fit in the first mailbox,
which is currently true but may not be for much longer.

1.37:
(skipped)

1.36:
The event queue consumer counter also needs to be unsigned like the others.

1.35:
try to make if_baudrate look plausible.
this updates the eth proto capability map so it records the baudrate
against the different link types and their media, and then reads
it when the link state changes.

1.34:
(skipped)
2020-04-24 12:58:42 +00:00
macallan
b8f219c746 a very preliminary driver for the acclerometer found in later *Books
register definitions from OpenBSD
2020-04-24 12:38:31 +00:00
ryo
6aa90c3f03 fix typo 2020-04-24 04:55:40 +00:00
ryo
8834ba608d add support AQC100S and D100.
not tested, but they are probably the same as the AQC100.
2020-04-24 04:34:57 +00:00
ad
e5210a69c7 Implement a HPET based DELAY(). 2020-04-23 20:33:57 +00:00
jdolecek
8fb44ee954 pass b_flags B_PHYS and B_RAW when setting up the buf for underlying device
should fix misfired KASSERT() in xbd(4)
2020-04-23 09:40:08 +00:00
ryo
dfcb5e3b7f sort product table, and tabify 2020-04-23 06:28:34 +00:00
ryo
db2d1ff4ea On FIBRE devices, there are times when linkstat interrupt doesn't occur?
reported from Andrius V. thanks.

- use polling instead of linkstat interrupt when FIBRE
- add AQ_FORCE_POLL_LINKSTAT options (not by default)
2020-04-23 06:27:21 +00:00
msaitoh
a2eb90d676 Regen. 2020-04-23 04:18:06 +00:00
msaitoh
6bfe7dfdfc Remove duplicated entry. 2020-04-23 04:17:37 +00:00
christos
730fb7c5cf regen 2020-04-22 22:56:12 +00:00
christos
763ff52e85 Add AQUANTIA AQC100 from Andrius V. 2020-04-22 22:54:43 +00:00
prlw1
0a19289791 regen 2020-04-22 15:40:27 +00:00
prlw1
79ba16ad8a Add an eclectic mix of
GeForce GTX 680, RTS522A PCI-E Card Reader, intel wifi 9560
+ whitespace
2020-04-22 15:39:59 +00:00
jdolecek
badcd7d78d show the 'interrupting at ...' info on boot 2020-04-22 14:26:27 +00:00
rin
b203ba4088 Make crypto/rijindael optional again as cprng_strong does no longer
depend on it. Dependency is explicitly declared in files.foo if a
component requires it.
2020-04-22 09:15:39 +00:00
msaitoh
e38d0f2099 Add Whiskey Lake U and Amber Lake Y support. 2020-04-22 07:17:01 +00:00
msaitoh
7face50542 Regen. 2020-04-22 06:36:31 +00:00
msaitoh
922e84e5be Add Intel Whiskey Lake U and Amber Lake Y devices. 2020-04-22 06:35:58 +00:00
msaitoh
0b582d1ef8 Add Aquantia AQC100, AQC100S and D100. 2020-04-22 06:35:01 +00:00
thorpej
19628cf962 In iic_acquire_bus(), unlock the bus lock if the back-end returns an
error from its acquire-bus function.
2020-04-19 17:08:14 +00:00
isaki
64bde40057 Fix round_blocksize not to return 0. 2020-04-19 08:18:19 +00:00
isaki
5820741caf Make round_blocksize satisfy all of
- restrictions that existed before merging isaki-audio2 branch.
- better support for 6 channels hardware.
- audio layer's requirement.
This may help PR kern/54474.
2020-04-19 04:13:09 +00:00
isaki
518e6f838b Improve the blocksize notation.
The blocksize is expressed in bytes, and the millisecond notation
is supplementary information to make it easier to understand.
2020-04-19 03:52:22 +00:00
jakllsch
b019cf1f9e msk(4): Avoid bus_dmamap_destroy() in msk_stop()
bus_dmamap_destroy() can not be executed in soft interrupt context,
and msk_stop() can be called in soft interrupt context.

As such, move creation and destruction of tx dmamaps to attach() and
detach() functions.
2020-04-18 17:31:52 +00:00
simonb
3c45977c8d Regen. 2020-04-18 07:10:28 +00:00
simonb
f75bc23e83 Add ATI Radeon R5/R6/R7 Graphics. 2020-04-18 07:09:33 +00:00
isaki
620dca1eae Improve diagnostic messages. 2020-04-17 07:48:35 +00:00
msaitoh
bc17e21c69 No functional change:
- modify comment
 - whitespace fix
2020-04-17 02:21:25 +00:00
rin
72d26a2dda Revert previous for now:
http://mail-index.netbsd.org/source-changes/2020/04/16/msg116278.html

The reasoning turned out to be wrong; __KERNEL_RCSID() in header files
does *not* overwrite RCSID in main source files. The real problem is that
it inserts its RCSID into *every* object files. However, it can be still
useful even if heavily duplicated.
2020-04-16 23:29:52 +00:00
rin
364b1f4e0a Stop using __KERNEL_RCSID() in header files; it confuses ident(1) by
overwriting RCSID in main source files.

XXX
The first argument of __KERNEL_RCSID() is neglected for ELF. If we wish
to have RCSID of header files in kernel binary, we need something like
__FBSDID() macro in FreeBSD.
2020-04-16 21:56:41 +00:00
msaitoh
e09fd2144a Add Comet Lake support. 2020-04-16 18:32:29 +00:00
msaitoh
dee23d31ea Regen. 2020-04-16 18:21:12 +00:00
msaitoh
44a5dd67f8 - Add some Intel UHD Graphics devices. Mainly taken from OpenBSD.
- Add Comet Lake devices.
- Modify description of Intel 0x591e from HD Graphics to UHD Graphics.
- Add Western Digital WD Blue SN550 NVMe SSD
2020-04-16 18:20:46 +00:00
nat
a7c4415c1f Correct rx packet count for 8192EU. Tested OK. 2020-04-16 17:18:27 +00:00
jmcneill
07e82c3df9 Use 64-bit DMA if available 2020-04-15 19:26:51 +00:00
kre
d7771cb4e9 Only include opt_xxx.h headers when _KERNEL_OPT is defined. 2020-04-14 15:36:02 +00:00
macallan
43dafa4757 defflag ONEWIRE_DEBUG 2020-04-14 13:36:51 +00:00
macallan
93fd4b2a99 add 'driver' for DS2430A EEPROMs which simply dumps the chip's contents and
status register
2020-04-14 13:35:24 +00:00
macallan
03c00baeb7 regen 2020-04-14 13:32:56 +00:00
macallan
78edd088bb add family 0x14 for DS2430A EEPROMs 2020-04-14 13:32:26 +00:00
msaitoh
cb058826b4 Get genfb's address offset correctly when the vaule >= 4G. OK's by jmcneill.
Tested on Intel BXNUC10I3FNK (Comet Lake U).
2020-04-13 15:26:57 +00:00
jmcneill
3d5831c7f9 Work around a compiler issue when building on aarch64 with KUBSAN. 2020-04-13 12:08:05 +00:00
jdolecek
c61cfedcc1 fix use-after-free for ata xfer on bio submission found by KASAN
driver ata_bio hooks read parts of the xfer after ata_exec_xfer()
call in order to determine return value, change so that the hook
doesn't return any value - callers do not care already,
as all I/O requests are asynchronous

this problem was uncovered by recent change for wd(4) to not hold
wd mutex during ata_bio call, the interrupt for the xfer might
thus actually fire immediately

adjust also ata_exec_command driver hooks similarily - remove all
completion and waiting logic from drivers, upper layer ata code
using AT_WAIT/AT_POLL changed to call ata_wait_cmd() itself

PR kern/55169 by Nick Hudson
2020-04-13 10:49:34 +00:00
jdolecek
63933e9518 remove obsolete support for ISD-ATA umass(4) adapters 2020-04-13 09:26:43 +00:00
maxv
babb6cb124 constify 2020-04-13 08:05:02 +00:00
chs
328da78dac slightly change and fix the semantics of pool_set*wat(), pool_sethardlimit()
and pool_prime() (and their pool_cache_* counterparts):

 - the pool_set*wat() APIs are supposed to specify thresholds for the count of
   free items in the pool before pool pages are automatically allocated or freed
   during pool_get() / pool_put(), whereas pool_sethardlimit() and pool_prime()
   are supposed to specify minimum and maximum numbers of total items
   in the pool (both free and allocated).  these were somewhat conflated
   in the existing code, so separate them as they were intended.

 - change pool_prime() to take an absolute number of items to preallocate
   rather than an increment over whatever was done before, and wait for
   any memory allocations to succeed.  since pool_prime() can no longer fail
   after this, change its return value to void and adjust all callers.

 - pool_setlowat() is documented as not immediately attempting to allocate
   any memory, but it was changed some time ago to immediately try to allocate
   up to the lowat level, so just fix the manpage to describe the current
   behaviour.

 - add a pool_cache_prime() to complete the API set.
2020-04-13 00:27:16 +00:00
jdolecek
432235c8f9 further tweaks for USB_PRODUCT_MICROSOFT_24GHZ_XCVR80 from PR kern/55161
remove case for USB_PRODUCT_MICROSOFT_24GHZ_XCVR70, likely needs similar
tweaks and can't really be added untested
2020-04-12 07:41:11 +00:00
riastradh
f6b4b12115 Reject overly large widths, from mlelstv.
We are returning an ACPI_INTEGER (= uint64_t), so it doesn't make
sense to handle more than 64 bits.

Apparently there are some ACPIs out there that ask for unreasonably
large widths here.  Just reject those requests, rather than writing
past the caller's stack buffer.

Previously we attempted to fix this by copying byte by byte as large
as the caller asked, in order to avoid the undefined behaviour of
shifting past the size of ACPI_INTEGER, but that just turned a shift
(which might have been harmless on real machines) into a stack buffer
overflow (!).

ok msaitoh
2020-04-12 01:12:03 +00:00