OpenBSD cvs log

created 2020-05-02T17:49:10Z
begin 2020-04-27T00:00:00Z
end 2020-04-28T00:00:00Z
path src/sys
commits 22

date 2020-04-27T08:01:50Z
author stsp
files src/sys/dev/pci/if_iwn.c log diff annotate
message Allow iwn(4) firmware to always traverse the entire multi-rate retry table.

This mostly prepares the driver for MIMO support but should also allow for
a higher number of hardware retries at low rates.

Tested by jmc@ and myself.
ok jmatthew@

date 2020-04-27T08:02:24Z
author stsp
files src/sys/dev/pci/if_iwn.c log diff annotate
src/sys/dev/pci/if_iwnvar.h log diff annotate
message Fix processing of compressed block ack notifications sent by iwn(4) firmware.

Fix wrong assumptions about what the data in these notifications is supposed
to represent, and actually piece information about individual subframes of
aggregated frames (A-MPDUs) back together when reporting to MiRA, rather than
reporting unrelated subframes to MiRA individually.

Testing by cwen@, Josh Grosse, f.holop, benno@
ok jmatthew@

date 2020-04-27T08:21:34Z
author stsp
files src/sys/dev/ic/ar5008.c log diff annotate
src/sys/dev/ic/ar5008reg.h log diff annotate
src/sys/dev/ic/athn.c log diff annotate
message Offload CCMP (WPA2) encryption and decryption to athn(4) hardware.

This reduces CPU load during traffic bursts, which is especially noticeable
on boards with relatively slow CPUs such as Alix and APU. For reference,
my rcc-ve boards (Intel Atom C2558) now forward ~2000pps between Ethernet
and wifi with <= 1% CPU interrupt time according to systat. Beforehand, these
boards became noticeably less responsive with fairly high interrupt and spin %.

CCMP offload is used on both PCI and USB devices (thanks kevlo@ for catching
my omission of USB devices in the first iteration of this change!)

Tested by (at least) Kevin Chadwick, tracey@, kevlo@, kili@, Ted Patterson,
David Dahlberg, and Scott Bennett.

ok tracey@ kevlo@

date 2020-04-27T08:21:35Z
author stsp
files src/sys/dev/usb/if_athn_usb.c log diff annotate
src/sys/dev/usb/if_athn_usb.h log diff annotate
message Offload CCMP (WPA2) encryption and decryption to athn(4) hardware.

This reduces CPU load during traffic bursts, which is especially noticeable
on boards with relatively slow CPUs such as Alix and APU. For reference,
my rcc-ve boards (Intel Atom C2558) now forward ~2000pps between Ethernet
and wifi with <= 1% CPU interrupt time according to systat. Beforehand, these
boards became noticeably less responsive with fairly high interrupt and spin %.

CCMP offload is used on both PCI and USB devices (thanks kevlo@ for catching
my omission of USB devices in the first iteration of this change!)

Tested by (at least) Kevin Chadwick, tracey@, kevlo@, kili@, Ted Patterson,
David Dahlberg, and Scott Bennett.

ok tracey@ kevlo@

date 2020-04-27T10:06:45Z
author jmatthew
files src/sys/dev/pci/if_bnxt.c log diff annotate
message When creating the rx filter, indicate we want to match against the outermost
packet headers, rather than the headers inside any of the tunnel protocols
the nic firmware understands. This allows us to receive gre, ipip, mpls,
etc. packets without putting the interface in promisc mode.

ok dlg@

date 2020-04-27T11:16:51Z
author gerhard
files src/sys/dev/usb/if_umb.c log diff annotate
message IPv6 is no longer on by default. It must be enabled with "inet6 eui64".

Input from sthen@, ok claudio@

date 2020-04-27T11:37:23Z
author ians
files src/sys/arch/armv7/omap/ommmc.c log diff annotate
src/sys/dev/fdt/imxesdhc.c log diff annotate
src/sys/dev/sdmmc/sdhc.c log diff annotate
message fix SDHC_DEBUG build, remove procname printf's

ok kettenis@

date 2020-04-27T11:41:31Z
author patrick
files src/sys/dev/fdt/dwpcie.c log diff annotate
message Free the "ranges" array in the error handling paths.

ok kettenis@

date 2020-04-27T12:15:30Z
author kettenis
files src/sys/arch/arm64/conf/GENERIC log diff annotate
src/sys/dev/fdt/bcm2835_gpio.c log diff annotate
src/sys/dev/fdt/files.fdt log diff annotate
src/sys/dev/ofw/ofw_gpio.h log diff annotate
message Add gpio support to bcmgpio(4) and make gpio(4) attach such that GPIOs
that aren't claimed by kernel drivers can be used from userland.

ok sthen@

date 2020-04-27T12:17:29Z
author patrick
files src/sys/dev/fdt/dwpcie.c log diff annotate
message PCIe register accesses seem to "hang" on the i.MX8MM if its PHY doesn't
come up. This apparently happens when there's no card in the PCIe slot.
Thus improve the error handling in all cases where we wait for a link to
come up, return and don't proceed any further.

ok kettenis@

date 2020-04-27T12:36:03Z
author kettenis
files src/sys/dev/i2c/pcf8523.c log diff annotate
message Don't clear OSF flag when we attach such that we can reject the RTC clock
time if the flag is set. Instead clear the flag when we set the time.
This way we don't use the clock time if the oscillator has been interrupted.
This happens for example when the battery is dead.

ok sthen@

date 2020-04-27T12:41:44Z
author kettenis
files src/sys/dev/i2c/ds1307.c log diff annotate
message Attach when the name matches "dallas,ds1307" which is what the device tree
binding uses. Remove warning about overwriting todr_handle since that is
normal behaviour on arm64 systems.

ok sthen@

date 2020-04-27T13:01:23Z
author kettenis
files src/sys/arch/arm64/arm64/machdep.c log diff annotate
message Move inittodr() and resettodr() to the end of the file to easy move an MI
implementation.

ok mpi@

date 2020-04-27T13:02:50Z
author kettenis
files src/sys/arch/arm/arm/arm32_machdep.c log diff annotate
src/sys/arch/armv7/armv7/intr.c log diff annotate
message Bring inittodr()/resettodr() in line with arm64 and move it to
arrm32_machdep.c.

ok mpi@

date 2020-04-27T16:37:36Z
author patrick
files src/sys/dev/fdt/imxccm_clocks.h log diff annotate
message The parent of the i.MX8MM and i.MX8MQ USB_CTRL_ROOTs is USB_BUS,
not USB_CORE_REF.

date 2020-04-27T20:07:39Z
author patrick
files src/sys/dev/fdt/imxehci.c log diff annotate
message Enable the power domain and set the assigned clocks on imxehci(4)'s USB
controller and its nop-PHYs. This is needed on the i.MX8MM.

ok kettenis@

date 2020-04-27T20:09:55Z
author patrick
files src/sys/dev/fdt/imxehci.c log diff annotate
message Use the device tree properties to setup imxehci(4)'s USB non-core
instead of hardcoding the values.

Tested on a Cubox-i by kettenis@
ok kettenis@

date 2020-04-27T20:13:51Z
author kettenis
files src/sys/arch/armv7/stand/efiboot/efiboot.c log diff annotate
message Remove reset hack; these days the U-Boot we ship for the CuBox-i is
perfectly happy without it.

ok patrick@

date 2020-04-27T20:15:41Z
author patrick
files src/sys/dev/fdt/imxehci.c log diff annotate
message While i.MX6Q and i.MX7D's USB controller nodes claim to be compatible
to i.MX27, they actually need different bits to be set than the i.MX27.
The i.MX8MM's node instead rightfully only claims to be compatible to
i.MX7D, since it's the same implementation. Thus change imxehci(4) to
also match the i.MX7D compatible.

ok kettenis@

date 2020-04-27T20:40:15Z
author kettenis
files src/sys/arch/armv7/conf/GENERIC log diff annotate
src/sys/arch/armv7/conf/RAMDISK log diff annotate
message Add bcmclock(4) and bcmmbox(4). Fixes a hang because the clock for sdhc(4)
can't be enabled.

date 2020-04-27T21:30:52Z
author patrick
files src/sys/dev/fdt/files.fdt log diff annotate
src/sys/dev/fdt/tcpci.c log diff annotate
message Add tcpci(4) to support TCPCI-compliant USB Type-C port controllers.
A Type-C controller has multiple tasks. Even though the orientation
of the plug doesn't matter for the user, it matters for the hardware.
To be able to know how to route the SuperSpeed pins you need to know
which way the plug is connected. Also you need to know if you're a
sink/source or device/host. To get the first connection, you toggle
between the modes until you find a connection. In case you see that
a sink is connected, you can turn on USB Vbus to power the sink.

This driver explicitly does not implement USB's Type-C state machine,
but if we get more and more of these controllers it might be worth
doing. Also there's no support for Power Delivery messages yet.

"go for it" kettenis@

date 2020-04-27T21:31:37Z
author patrick
files src/sys/arch/arm64/conf/GENERIC log diff annotate
src/sys/arch/arm64/conf/RAMDISK log diff annotate
message Enable tcpci(4).