<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-openbsd/sys/arch/armv7/include, branch master</title>
<subtitle>WireGuard implementation for the OpenBSD kernel</subtitle>
<id>https://git.zx2c4.com/wireguard-openbsd/atom/sys/arch/armv7/include?h=master</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-openbsd/atom/sys/arch/armv7/include?h=master'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/'/>
<updated>2020-11-29T12:54:36Z</updated>
<entry>
<title>Give armv7 a &lt;machine/cpufunc.h&gt; header and use it to add a prototype</title>
<updated>2020-11-29T12:54:36Z</updated>
<author>
<name>kettenis</name>
<email>kettenis@openbsd.org</email>
</author>
<published>2020-11-29T12:54:36Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=e0c48512b06dc191541bda592209a4dafaa505a7'/>
<id>urn:sha1:e0c48512b06dc191541bda592209a4dafaa505a7</id>
<content type='text'>
for smc_call().

ok patrick@
</content>
</entry>
<entry>
<title>Re-work intr_barrier(9) on arm64 to remove layer violation.  So far we</title>
<updated>2020-07-17T08:07:33Z</updated>
<author>
<name>patrick</name>
<email>patrick@openbsd.org</email>
</author>
<published>2020-07-17T08:07:33Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=452daaedc6a44247dc76c56f4c33bc4131b7c50c'/>
<id>urn:sha1:452daaedc6a44247dc76c56f4c33bc4131b7c50c</id>
<content type='text'>
have stored the struct cpu_info * in the wrapper around the interrupt
handler cookie, but since we can have a few layers inbetween, this does
not seem very nice.  Instead have each and every interrupt controller
provide a barrier function.  This means that intr_barrier(9) will in the
end be executed by the interrupt controller that actually wired the pin
to a core.  And that's the only place where the information is stored.

ok kettenis@
</content>
</entry>
<entry>
<title>Extend the interrupt API on arm64 and armv7 to be able to pass around</title>
<updated>2020-07-14T15:34:14Z</updated>
<author>
<name>patrick</name>
<email>patrick@openbsd.org</email>
</author>
<published>2020-07-14T15:34:14Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=789e88a4f7019d5bbf49cfe092c6d4b9891ea3b0'/>
<id>urn:sha1:789e88a4f7019d5bbf49cfe092c6d4b9891ea3b0</id>
<content type='text'>
a struct cpu_info *.  From a driver point of view the fdt_intr_establish_*
API now also exist same functions with a *_cpu suffix.  Internally the
"old" functions now call their *_cpu counterparts, passing NULL as ci.
NULL will be interpreted as primary CPU in the interrupt controller code.

The internal framework for interrupt controllers has been changed so that
the establish methods provided by an interrupt controller function always
takes a struct cpu_info *.

Some drivers, like imxgpio(4) and rkgpio(4), only have a single interrupt
line for multiple pins.  On those we simply disallow trying to establish
an interrupt on a non-primary CPU, returning NULL.

Since we do not have MP yet on armv7, all armv7 interrupt controllers do
return NULL if an attempt is made to establish an interrupt on a different
CPU.  That said, so far there's no way this can happen.  If we ever gain
MP support, this is a reminder that the interrupt controller drivers have
to be adjusted.

Prompted by dlg@
ok kettenis@
</content>
</entry>
<entry>
<title>Add support for timeconting in userland.</title>
<updated>2020-07-06T13:33:05Z</updated>
<author>
<name>pirofti</name>
<email>pirofti@openbsd.org</email>
</author>
<published>2020-07-06T13:33:05Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=d82e6535c6efd8305182f77041b2246ccfae1196'/>
<id>urn:sha1:d82e6535c6efd8305182f77041b2246ccfae1196</id>
<content type='text'>
This diff exposes parts of clock_gettime(2) and gettimeofday(2) to
userland via libc eliberating processes from the need for a context
switch everytime they want to count the passage of time.

If a timecounter clock can be exposed to userland than it needs to set
its tc_user member to a non-zero value. Tested with one or multiple
counters per architecture.

The timing data is shared through a pointer found in the new ELF
auxiliary vector AUX_openbsd_timekeep containing timehands information
that is frequently updated by the kernel.

Timing differences between the last kernel update and the current time
are adjusted in userland by the tc_get_timecount() function inside the
MD usertc.c file.

This permits a much more responsive environment, quite visible in
browsers, office programs and gaming (apparently one is are able to fly
in Minecraft now).

Tested by robert@, sthen@, naddy@, kmos@, phessler@, and many others!

OK from at least kettenis@, cheloha@, naddy@, sthen@
</content>
</entry>
<entry>
<title>Remove obsolete &lt;machine/stdarg.h&gt; header. Nowadays the vararg</title>
<updated>2020-06-30T15:41:55Z</updated>
<author>
<name>visa</name>
<email>visa@openbsd.org</email>
</author>
<published>2020-06-30T15:41:55Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=473a7c29511b222875b84125290bfe7e6e8e35f1'/>
<id>urn:sha1:473a7c29511b222875b84125290bfe7e6e8e35f1</id>
<content type='text'>
functionality is provided by &lt;sys/stdarg.h&gt; using compiler builtins.

Tested in a ports bulk build on amd64 by naddy@

OK naddy@ mpi@
</content>
</entry>
<entry>
<title>Add IPI support.  Taken ftrom arm64.</title>
<updated>2019-09-29T10:36:52Z</updated>
<author>
<name>kettenis</name>
<email>kettenis@openbsd.org</email>
</author>
<published>2019-09-29T10:36:52Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=ad0d549be989c6f8d4daf91c86007e6a64fb3df1'/>
<id>urn:sha1:ad0d549be989c6f8d4daf91c86007e6a64fb3df1</id>
<content type='text'>
ok patrick@
</content>
</entry>
<entry>
<title>Whitespace removal</title>
<updated>2019-05-06T03:34:43Z</updated>
<author>
<name>mlarkin</name>
<email>mlarkin@openbsd.org</email>
</author>
<published>2019-05-06T03:34:43Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=4bab9ed15e0505502471229cd32598829add035e'/>
<id>urn:sha1:4bab9ed15e0505502471229cd32598829add035e</id>
<content type='text'>
Pointed out by Jerome Pinot
</content>
</entry>
<entry>
<title>change marks[] array to uint64_t, so the code can track full 64-bit</title>
<updated>2019-04-10T04:17:31Z</updated>
<author>
<name>deraadt</name>
<email>deraadt@openbsd.org</email>
</author>
<published>2019-04-10T04:17:31Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=2340cfa57962bd12069f312342c641006c968c28'/>
<id>urn:sha1:2340cfa57962bd12069f312342c641006c968c28</id>
<content type='text'>
details from the ELF header instead of faking it.
Proposal from mlarkin, tested on most architectures already
</content>
</entry>
<entry>
<title>Remove unused spllock().</title>
<updated>2018-08-20T15:02:07Z</updated>
<author>
<name>visa</name>
<email>visa@openbsd.org</email>
</author>
<published>2018-08-20T15:02:07Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=864f2f83ec4c08eb41848f403ee4e5dadd8f3951'/>
<id>urn:sha1:864f2f83ec4c08eb41848f403ee4e5dadd8f3951</id>
<content type='text'>
OK deraadt@ mpi@
</content>
</entry>
<entry>
<title>Define __HAVE_ACPI on arm64 and __HAVE_FDT on arm64, armv7 and octeon</title>
<updated>2018-08-09T12:19:32Z</updated>
<author>
<name>patrick</name>
<email>patrick@openbsd.org</email>
</author>
<published>2018-08-09T12:19:32Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=5483bc5650782f036096ae5803d9853d9761ecd0'/>
<id>urn:sha1:5483bc5650782f036096ae5803d9853d9761ecd0</id>
<content type='text'>
so that we can include firmware-dependant code in generic drivers to be
able to extract metadata information like MAC addresses and out-of-band
interrupts from the ACPI/FDT tables.

ok kettenis@
</content>
</entry>
</feed>
