Age | Commit message (Collapse) | Author |
|
While FIDO/U2F keys were already supported by the generic uhid(4)
driver, this driver adds the first step to tighten the security of
FIDO/U2F access. Specifically, users don't need read/write access to
all USB/HID devices anymore and the driver also improves integration
with pledge(2) and unveil(2): It is pledge-friendly because it doesn't
require any ioctls to discover the device and unveil-friendly because
it uses a single /dev/fido/* directory for its device nodes.
It also allows to support FIDO/U2F in firefox without further
weakening the "sandbox" of the browser. Firefox does not have a
proper privsep design and many operations, such as U2F access, are
handled directly by the main process. This means that the browser's
"fat" main process needs direct read/write access to all USB HID
devices, at least on other operating systems. With fido(4) we can
support security keys in Firefox under OpenBSD without such a
compromise.
With this change, libfido2 stops using the ioctl to query the device
vendor/product and just assumes "OpenBSD" "fido(4)" instead. The
ioctl is still supported but there was no benefit in obtaining the
vendor product or name; it also allows to use libfido2 under pledge.
With feedback from deraadt@ and many others
OK kettenis@ djm@ and jmc@ for the manpage bits
|
|
ok kurt@
|
|
ok kurt@
|
|
|
|
and not just ".openbsd.randomdata.retguard". Accept both in the kernel
ldscripts so that they're placed together between the __retguard_{start,end}
symbols.
Similarly, match not just ".openbsd.randomdata" but also
".openbsd.randomdata.*" to pick up other random (pun intended) items.
While here, stub in those retguard bits into all the ldscripts.
ok deraadt@
|
|
retguard and similar when profiling. However, that missed all the .S files,
as ${PROF} wasn't added when ${NORMAL_S} was converted from direct invocation
of ${AS} to instead use ${CC}. Similarly, mcount.o still had retguards
as it cannot be built with -pg. So: pass ${PROF} when compiling .S files,
and compile "no profiling" files with -fno-ret-protector on archs with
retguard.
feedback and ok mpi@ mortimer@
|
|
|
|
backlight controller on the Pinebook.
ok patrick@, jsg@
|
|
ok jsg@
|
|
driver only enumerates and shows the connected modules. The next
step is to implement GPIO controller functionality to e.g. control
the pins to the SFP on the MOX D.
ok kettenis@
|
|
Armada 3700 SoC.
ok kettenis@
|
|
ok patrick@
|
|
ok patrick@
|
|
syscon(4).
ok kettenis@
|
|
an I2C bus and provides a method to read its pages over the SFP
framework.
Feedback from dlg@
ok kettenis@
|
|
ok kettenis@
|
|
Armada 3700 SoC.
With feedback from and ok kettenis@
|
|
At the moment it only supports disabling the watchdog, which lets me
continue to work on the Turris Mox.
ok kettenis@
|
|
|
|
ok patrick@
|
|
controller glue and USB PHYs found on the Amlogic G12A/B SoCs.
ok patrick@
|
|
optional and will only be compiled for amd64/i386. Apparently this is
only needed on Raven Ridge APUs.
ok jsg@, patrick@, deraadt@
|
|
SoCs. For now only a limited set of GPIO pins on the G12A/G12B variants
are supported.
ok patrick@
|
|
|
|
the i.MX8M SoCs.
ok kettenis@
|
|
a tiny number of clocks for the G12A/B families only.
ok jsg@
|
|
Amlogic SoCs.
ok patrick@
|
|
ok jsg@
|
|
ok deraadt@
|
|
ok patrick@
|
|
Allwinner SoCs.
This is basically a stripped down syscon(4) and is needed because the
Linux device trees dropped the "syscon" compatible.
ok patrick@
|
|
|
|
ok deraadt@, jsg@
|
|
|
|
|
|
Use install -F to instead of cp, for fsync(2). Coupled with the new
sync(8) in the reorder_kernel script, the window for a incomplete /bsd
file on-disk due to a crash has now shrunk substantially.
Discussion with kettenis, millert and tedu
|
|
tested by and ok patrick@
|
|
a new pci_machdep.c file such that it can be re-used by other arm64
PCI host bridge drivers in the future.
ok patrick@
|
|
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.
ok kettenis@
|
|
ok deraadt@
|
|
of the Armada 3720 SoC as used on the Turris Mox.
|
|
ok kettenis@
|
|
ok deraadt@
|
|
tightly-built ramdisk kernels, set the option in per-arch Makefile.inc
based upon SMALL_KERNEL
|
|
linux 4.19.34.
Adds support for more Intel hardware:
Broxton/Apollo Lake (was is_preliminary in 4.4)
Amber Lake (another Kaby Lake refresh)
Gemini Lake
Coffee Lake
Whiskey Lake
Cannon Lake (though no hardware with Intel graphics ever shipped)
Ice Lake (alpha support, hardware not released)
This does not add support for new radeon hardware on the AMD side as
newer radeons have a different kernel driver (amdgpu).
Thanks to the OpenBSD Foundation for sponsoring this work, kettenis@ for
helping and a bunch of other developers for testing.
|
|
|
|
ok kettenis@
|
|
|
|
allows triggering SPI interrupts by doing memory transactions. This was
already partially implemented in mvicu(4) and is now outsourced into its
own driver since we need better initialization when booting using u-boot.
Also implement new and legacy bindings in mvicu(4), relying on the new
mvgicp(4) driver.
ok kettenis@
|
|
ok deraadt@
|