svn commit: r327836 - in head/sys: arm/arm arm64/arm64 conf

2018-01-11 Thread Andrew Turner
because file is newly added) +++ head/sys/arm/arm/gic_acpi.c Thu Jan 11 17:23:24 2018(r327836) @@ -0,0 +1,346 @@ +/*- + * Copyright (c) 2011,2016 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Andrew Turner under + * sponsorship from the FreeBSD Fo

svn commit: r327835 - in head/sys: arm/arm arm64/arm64 conf dev/acpica

2018-01-11 Thread Andrew Turner
Jan 11 17:09:12 2018 (r327835) @@ -0,0 +1,67 @@ +#- +# Copyright (c) 2016 The FreeBSD Foundation +# All rights reserved. +# +# This software was developed by Andrew Turner under +# sponsorship from the FreeBSD Foundation. +# +# Redistribution and use in source and binary forms, with or

svn commit: r327728 - head/sys/dev/psci

2018-01-09 Thread Andrew Turner
Author: andrew Date: Tue Jan 9 15:57:09 2018 New Revision: 327728 URL: https://svnweb.freebsd.org/changeset/base/327728 Log: Add a function to find the PSCI version the firmware implements from outside the PSCI driver. MFC after:1 week Sponsored by: DARPA, AFRL Modified:

svn commit: r327727 - in head/sys: arm64/arm64 arm64/include conf

2018-01-09 Thread Andrew Turner
) +++ head/sys/arm64/arm64/cpu_errata.c Tue Jan 9 14:33:05 2018 (r327727) @@ -0,0 +1,68 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2018 Andrew Turner + * All rights reserved. + * + * This software was developed by SRI International and the University

svn commit: r327691 - head/sys/arm64/arm64

2018-01-08 Thread Andrew Turner
Author: andrew Date: Mon Jan 8 11:08:45 2018 New Revision: 327691 URL: https://svnweb.freebsd.org/changeset/base/327691 Log: Only install the new pagetable pointer into ttbr0_el1 when it differs from the existing value. MFC after:1 week Sponsored by: DARPA, AFRL Modified:

svn commit: r327690 - in head/sys/arm64: arm64 include

2018-01-08 Thread Andrew Turner
Author: andrew Date: Mon Jan 8 10:23:31 2018 New Revision: 327690 URL: https://svnweb.freebsd.org/changeset/base/327690 Log: Move some of the common thread switching code into C. This will help with future optimisations, e.g. using Address Space IDs (asid). MFC after:1 week

Re: svn commit: r327684 - in head/sys/compat: cloudabi32 cloudabi64

2018-01-07 Thread Andrew Turner
> On 7 Jan 2018, at 22:38, Ed Schouten wrote: > > Author: ed > Date: Sun Jan 7 22:38:45 2018 > New Revision: 327684 > URL: https://svnweb.freebsd.org/changeset/base/327684 > > Log: > Use mallocarray(9) in CloudABI kernel code where possible. > > Submitted by:pfg@

svn commit: r326850 - head/sys/arm/include

2017-12-14 Thread Andrew Turner
Author: andrew Date: Thu Dec 14 13:19:43 2017 New Revision: 326850 URL: https://svnweb.freebsd.org/changeset/base/326850 Log: Add the virtualisation special register definitions. Submitted by: Mihai Carabas Reviewed by: mmel Differential Revision:

Re: svn commit: r326808 - head/sys/kern

2017-12-13 Thread Andrew Turner
> On 12 Dec 2017, at 20:15, Fedor Uporov wrote: > > Author: fsu > Date: Tue Dec 12 20:15:57 2017 > New Revision: 326808 > URL: https://svnweb.freebsd.org/changeset/base/326808 > > Log: > Move buffer size checks outside of the vnode locks. > > Reviewed by:kib, cem, pfg

svn commit: r326683 - head/sys/dev/uart

2017-12-08 Thread Andrew Turner
Author: andrew Date: Fri Dec 8 10:05:23 2017 New Revision: 326683 URL: https://svnweb.freebsd.org/changeset/base/326683 Log: Set the io width when using an ACPI uart. Previously it would only ever be set when finding the uart from the device tree. Sponsored by: DARPA, AFRL Modified:

Re: svn commit: r326524 - head/sys/vm

2017-12-04 Thread Andrew Turner
> On 4 Dec 2017, at 11:16, Andrew Turner <and...@freebsd.org> wrote: > > Author: andrew > Date: Mon Dec 4 11:16:51 2017 > New Revision: 326524 > URL: https://svnweb.freebsd.org/changeset/base/326524 > > Log: > Print the correct value when freelis

svn commit: r326525 - head/sys/arm64/arm64

2017-12-04 Thread Andrew Turner
Author: andrew Date: Mon Dec 4 11:25:34 2017 New Revision: 326525 URL: https://svnweb.freebsd.org/changeset/base/326525 Log: Use the module pointer to find the address we need to map to in the early arm64 boot sequence. This will be a virtual address in the kernel space after the kernel

svn commit: r326524 - head/sys/vm

2017-12-04 Thread Andrew Turner
Author: andrew Date: Mon Dec 4 11:16:51 2017 New Revision: 326524 URL: https://svnweb.freebsd.org/changeset/base/326524 Log: Print the correct value when freelist is out of range. Security: : Sponsored by: DARPA, AFRL Modified: head/sys/vm/vm_phys.c Modified:

svn commit: r326318 - head/sys/arm64/arm64

2017-11-28 Thread Andrew Turner
Author: andrew Date: Tue Nov 28 16:26:56 2017 New Revision: 326318 URL: https://svnweb.freebsd.org/changeset/base/326318 Log: Fix the direction we move the instruction to retuirn to after exiting the kernel debugger. We should skip the breakpoint instruction, not execute the instruction

svn commit: r326312 - head/sys/arm64/arm64

2017-11-28 Thread Andrew Turner
Author: andrew Date: Tue Nov 28 11:04:47 2017 New Revision: 326312 URL: https://svnweb.freebsd.org/changeset/base/326312 Log: When we exit the kernel debugger having entered because of a breakpoint instruction we need to jump over the instruction. Without this we will execute the same

Re: svn commit: r326218 - head/sys/kern

2017-11-27 Thread Andrew Turner
> On 26 Nov 2017, at 17:07, Nathan Whitehorn <nwhiteh...@freebsd.org> wrote: > > > > On 11/26/17 01:46, Andrew Turner wrote: >> On 25 Nov 2017, at 23:41, Nathan Whitehorn <nwhiteh...@freebsd.org> wrote: >>> Author: nwhitehorn >>> Date: Sat No

svn commit: r326280 - head/sys/arm64/arm64

2017-11-27 Thread Andrew Turner
Author: andrew Date: Mon Nov 27 16:19:00 2017 New Revision: 326280 URL: https://svnweb.freebsd.org/changeset/base/326280 Log: Set the kernel file name so the kern.bootfile sysctl is set. This allows for the creation of kernel.old when running installkernel. MFC after:1 week

Re: svn commit: r326218 - head/sys/kern

2017-11-26 Thread Andrew Turner
On 25 Nov 2017, at 23:41, Nathan Whitehorn wrote: > > Author: nwhitehorn > Date: Sat Nov 25 23:41:05 2017 > New Revision: 326218 > URL: https://svnweb.freebsd.org/changeset/base/326218 > > Log: > Remove some, but not all, assumptions that the BSP is CPU 0 and that CPUs

svn commit: r326225 - head/sys/arm64/arm64

2017-11-26 Thread Andrew Turner
Author: andrew Date: Sun Nov 26 09:29:34 2017 New Revision: 326225 URL: https://svnweb.freebsd.org/changeset/base/326225 Log: Make the arm64 pmap_invalidate functions static inline. This fixes building with DIAGNOSTIC. PR: 223874 Reported by: emaste MFC after:1 week

svn commit: r326137 - in head/sys: arm/arm arm64/arm64 arm64/include

2017-11-23 Thread Andrew Turner
Author: andrew Date: Thu Nov 23 17:40:40 2017 New Revision: 326137 URL: https://svnweb.freebsd.org/changeset/base/326137 Log: Ensure we check the program state set in the trap frame on arm and arm64. This value may be set by userspace so we need to check it before using it. If this is not

svn commit: r326121 - head/sys/dev/efidev

2017-11-23 Thread Andrew Turner
Author: andrew Date: Thu Nov 23 10:34:38 2017 New Revision: 326121 URL: https://svnweb.freebsd.org/changeset/base/326121 Log: Zero struct efi_tm before setting the needed values. We don't use the dst or timezone fields so ensure these are set. Reported by: emaste Sponsored by: DARPA,

svn commit: r326066 - in head/sys: arm64/conf conf dev/efidev modules/efirt

2017-11-21 Thread Andrew Turner
:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/efidev/efirtc.cTue Nov 21 17:23:16 2017 (r326066) @@ -0,0 +1,151 @@ +/*- + * Copyright (c) 2017 Andrew Turner + * All rights reserved. + * + * This software was developed by SRI International and the University of +

svn commit: r326056 - head/sys/arm64/arm64

2017-11-21 Thread Andrew Turner
Author: andrew Date: Tue Nov 21 13:19:38 2017 New Revision: 326056 URL: https://svnweb.freebsd.org/changeset/base/326056 Log: When fpcurthread is not the current thread it may be non-NULL. In this case another thread has had the VFP unit enabled and will have its state in the VFP registers

svn commit: r325251 - head/sys/arm64/arm64

2017-10-31 Thread Andrew Turner
Author: andrew Date: Tue Oct 31 23:17:17 2017 New Revision: 325251 URL: https://svnweb.freebsd.org/changeset/base/325251 Log: Allocate the ITS translation table with a 64k page alignment. This is the largest alignment the ITS can require. This fixes a bug with the ARM Architecture

svn commit: r325250 - head/sys/arm64/arm64

2017-10-31 Thread Andrew Turner
Author: andrew Date: Tue Oct 31 22:12:14 2017 New Revision: 325250 URL: https://svnweb.freebsd.org/changeset/base/325250 Log: As with r325242 use mp_maxid when iterating over CPUs in the GICv3 driver. Sponsored by: DARPA, AFRL Modified: head/sys/arm64/arm64/gic_v3.c Modified:

svn commit: r325242 - head/sys/arm64/arm64

2017-10-31 Thread Andrew Turner
Author: andrew Date: Tue Oct 31 18:22:21 2017 New Revision: 325242 URL: https://svnweb.freebsd.org/changeset/base/325242 Log: Use mp_maxid when iterating over CPUs as we may have sparse id allocations. Sponsored by: DARPA, AFRL Modified: head/sys/arm64/arm64/gicv3_its.c Modified:

Re: svn commit: r325167 - head/sys/net

2017-10-30 Thread Andrew Turner
> On 30 Oct 2017, at 21:14, Stephen Hurd wrote: > > Author: shurd > Date: Mon Oct 30 21:14:31 2017 > New Revision: 325167 > URL: https://svnweb.freebsd.org/changeset/base/325167 > > Log: > Fix PR222744 - netmap errors with iflib em driver > > Fix error when refilling

svn commit: r324754 - head/sys/dev/psci

2017-10-19 Thread Andrew Turner
Author: andrew Date: Thu Oct 19 13:22:52 2017 New Revision: 324754 URL: https://svnweb.freebsd.org/changeset/base/324754 Log: Allow later PSCI revisions to also work. The latest ARM Trusted Firmware reports version 1.1 so the check was failing. As thjis is a minor change from 1.0, and

Re: svn commit: r324646 - in head/sys/boot/efi: boot1 libefi loader

2017-10-16 Thread Andrew Turner
> > Andrew > >> On 16 Oct 2017, at 13:19, Warner Losh <i...@bsdimp.com >> <mailto:i...@bsdimp.com>> wrote: >> >> I'll take a look, but I've also ccd Eric so he can figure out what went >> wrong with is code in your environment. What env i

Re: svn commit: r324646 - in head/sys/boot/efi: boot1 libefi loader

2017-10-16 Thread Andrew Turner
o he can figure out what went wrong > with is code in your environment. What env is That? > > Warnee > > On Oct 16, 2017 3:26 AM, "Andrew Turner" <and...@fubar.geek.nz > <mailto:and...@fubar.geek.nz>> wrote: > > > On 16 Oct 2017, at 04:59, Warner Los

Re: svn commit: r324646 - in head/sys/boot/efi: boot1 libefi loader

2017-10-16 Thread Andrew Turner
> On 16 Oct 2017, at 04:59, Warner Losh wrote: > > Author: imp > Date: Mon Oct 16 03:59:11 2017 > New Revision: 324646 > URL: https://svnweb.freebsd.org/changeset/base/324646 > > Log: > Unify boot1 with loader > > Refactor boot1 to use the same I/O code as /boot/loader

svn commit: r324495 - in head/sys: arm64/arm64 arm64/include conf modules

2017-10-10 Thread Andrew Turner
+ * Copyright (c) 2017 Andrew Turner + * All rights reserved. + * + * Portions of this software were developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * This software was developed by SRI International and the University of + * Cambridge Computer Laboratory under

svn commit: r324494 - head/sys/arm64/include

2017-10-10 Thread Andrew Turner
Author: andrew Date: Tue Oct 10 13:02:58 2017 New Revision: 324494 URL: https://svnweb.freebsd.org/changeset/base/324494 Log: Add machine/fpu.h on arm64 for compatibility with amd64. Sponsored by: DARPA, AFRL Added: head/sys/arm64/include/fpu.h (contents, props changed) Added:

svn commit: r324493 - in head/sys/arm64: arm64 include

2017-10-10 Thread Andrew Turner
Author: andrew Date: Tue Oct 10 12:54:36 2017 New Revision: 324493 URL: https://svnweb.freebsd.org/changeset/base/324493 Log: Move the pmap_l0_index, etc. macros to pte.h. These will be used by the EFI Runtime Services code. Sponsored by: DARPA, AFRL Modified:

svn commit: r324368 - head/sys/dev/psci

2017-10-06 Thread Andrew Turner
Author: andrew Date: Fri Oct 6 15:46:11 2017 New Revision: 324368 URL: https://svnweb.freebsd.org/changeset/base/324368 Log: Also handle psci 1.0. This can be seen as a bug fix update for the 0.2 specification we already support, with the only changes in functions we don't currently use.

Re: svn commit: r324341 - in head/sys: arm/allwinner arm/altera/socfpga arm/amlogic/aml8726 arm/annapurna/alpine arm/broadcom/bcm2835 arm/conf arm/freescale/imx arm/freescale/vybrid arm/mv arm/mv/arma

2017-10-06 Thread Andrew Turner
> On 6 Oct 2017, at 00:01, Warner Losh wrote: > > Author: imp > Date: Thu Oct 5 23:01:50 2017 > New Revision: 324341 > URL: https://svnweb.freebsd.org/changeset/base/324341 > > Log: > Tag all armv7 kernels as such in their machine config line. > > Transition all boards

svn commit: r324207 - head/sys/arm64/arm64

2017-10-02 Thread Andrew Turner
Author: andrew Date: Mon Oct 2 14:22:35 2017 New Revision: 324207 URL: https://svnweb.freebsd.org/changeset/base/324207 Log: Add a memory barrier to ensure the atomic write is visible to the other CPUs before waking them up. Sponsored by: DARPA, AFRL Modified:

svn commit: r324177 - in head/sys: amd64/amd64 amd64/include conf dev/efidev modules/efirt sys

2017-10-01 Thread Andrew Turner
Author: andrew Date: Sun Oct 1 19:52:47 2017 New Revision: 324177 URL: https://svnweb.freebsd.org/changeset/base/324177 Log: To prepare for adding EFI runtime services support on arm64 move the machine independent parts of the existing code to a new file that can be shared between amd64

svn commit: r323970 - head/sys/arm/conf

2017-09-24 Thread Andrew Turner
Author: andrew Date: Sun Sep 24 13:28:24 2017 New Revision: 323970 URL: https://svnweb.freebsd.org/changeset/base/323970 Log: Remove the VIRT kernel config, it's now useable through GENERIC. Sponsored by: DARPA, AFRL Deleted: head/sys/arm/conf/VIRT

svn commit: r323967 - in head/sys/arm: conf freescale/imx

2017-09-24 Thread Andrew Turner
Author: andrew Date: Sun Sep 24 09:33:08 2017 New Revision: 323967 URL: https://svnweb.freebsd.org/changeset/base/323967 Log: Add i.MX6 and Xilinx to GENERIC. Merge in the missing devices from the IMX6 and ZEDBOARD kernel configs. The Freescale sdma device has been renamed to fslsdma to

svn commit: r323610 - in head/sys/arm64: arm64 include

2017-09-15 Thread Andrew Turner
Author: andrew Date: Fri Sep 15 12:57:34 2017 New Revision: 323610 URL: https://svnweb.freebsd.org/changeset/base/323610 Log: Add the ARMv8.3 ID register fields. These were found in the A-Profile exploration tools documentation:

svn commit: r323593 - in head/sys: arm64/arm64 arm64/include conf

2017-09-14 Thread Andrew Turner
_sp); Added: head/sys/arm64/arm64/undefined.c == --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/arm64/arm64/undefined.cThu Sep 14 17:29:51 2017 (r323593) @@ -0,0 +1,145 @@ +/*- + * C

Re: svn commit: r323580 - in head/sys/arm: arm include

2017-09-14 Thread Andrew Turner
> On 14 Sep 2017, at 15:54, John Baldwin wrote: > > On Thursday, September 14, 2017 02:30:44 PM John Baldwin wrote: >> Author: jhb >> Date: Thu Sep 14 14:30:43 2017 >> New Revision: 323580 >> URL: https://svnweb.freebsd.org/changeset/base/323580 >> >> Log: >> Add AT_HWCAP

Re: svn commit: r323362 - in head/sys: conf dev/neta

2017-09-11 Thread Andrew Turner
> On 9 Sep 2017, at 12:54, Marcin Wojtas wrote: > > Author: mw > Date: Sat Sep 9 11:54:04 2017 > New Revision: 323362 > URL: https://svnweb.freebsd.org/changeset/base/323362 > > Log: > Add support for Armada 3700 in the NETA driver > > This patch enables using NETA driver

svn commit: r323309 - head/sys/arm64/arm64

2017-09-08 Thread Andrew Turner
Author: andrew Date: Fri Sep 8 08:02:06 2017 New Revision: 323309 URL: https://svnweb.freebsd.org/changeset/base/323309 Log: Not all CPUs handle reading ID_AA64MMFR2_EL1 (e.g. qemu), disable it for now. Sponsored by: DARPA, AFRL Modified: head/sys/arm64/arm64/identcpu.c Modified:

svn commit: r323283 - head/sys/arm64/include

2017-09-07 Thread Andrew Turner
Author: andrew Date: Thu Sep 7 19:52:04 2017 New Revision: 323283 URL: https://svnweb.freebsd.org/changeset/base/323283 Log: Fix the SVE ID field shift. Sponsored by: DARPA, AFRL Modified: head/sys/arm64/include/armreg.h Modified: head/sys/arm64/include/armreg.h

svn commit: r323282 - head/sys/arm64/arm64

2017-09-07 Thread Andrew Turner
Author: andrew Date: Thu Sep 7 19:51:17 2017 New Revision: 323282 URL: https://svnweb.freebsd.org/changeset/base/323282 Log: Add the ATS1E1 case to the ID_AA64MMFR1_EL1 decoding. Sponsored by: DARPA, AFRL Modified: head/sys/arm64/arm64/identcpu.c Modified:

svn commit: r323279 - head/sys/arm64/arm64

2017-09-07 Thread Andrew Turner
Author: andrew Date: Thu Sep 7 18:58:55 2017 New Revision: 323279 URL: https://svnweb.freebsd.org/changeset/base/323279 Log: Use the correct mask when printing undecoded fields from the ID_AA64MMFR2_EL1 register. Sponsored by: DARPA, AFRL Modified: head/sys/arm64/arm64/identcpu.c

svn commit: r323274 - head/sys/arm64/arm64

2017-09-07 Thread Andrew Turner
Author: andrew Date: Thu Sep 7 16:43:12 2017 New Revision: 323274 URL: https://svnweb.freebsd.org/changeset/base/323274 Log: Fix a mismerge, make sure PRINT_ID_AA64_MMFR2 has a unique value. Sponsored by: DARPA, AFRL Modified: head/sys/arm64/arm64/identcpu.c Modified:

svn commit: r323273 - head/sys/arm64/include

2017-09-07 Thread Andrew Turner
Author: andrew Date: Thu Sep 7 16:12:56 2017 New Revision: 323273 URL: https://svnweb.freebsd.org/changeset/base/323273 Log: Fix the value of ID_AA64ISAR1_DPB_SHIFT, the field is bits 3:0. Sponsored by: DARPA, AFRL Modified: head/sys/arm64/include/armreg.h Modified:

svn commit: r323271 - in head/sys/arm64: arm64 include

2017-09-07 Thread Andrew Turner
Author: andrew Date: Thu Sep 7 15:45:56 2017 New Revision: 323271 URL: https://svnweb.freebsd.org/changeset/base/323271 Log: Add the ARMv8.2 ID register additions and use them to decode the register values. As not all assemblers understand the new ID_AA64MMFR2_EL1 register add a macro to

svn commit: r323269 - head/sys/arm64/arm64

2017-09-07 Thread Andrew Turner
Author: andrew Date: Thu Sep 7 15:30:13 2017 New Revision: 323269 URL: https://svnweb.freebsd.org/changeset/base/323269 Log: Uppercase the special register names in identcpu to be more consistent with the other source files. Sponsored by: DARPA, AFRL Modified:

svn commit: r323268 - head/sys/arm64/arm64

2017-09-07 Thread Andrew Turner
Author: andrew Date: Thu Sep 7 15:24:47 2017 New Revision: 323268 URL: https://svnweb.freebsd.org/changeset/base/323268 Log: Make the bit mask of ARMv8 ID registers to print sparse to keep values close, but without having to change all values when new registers are added. Sponsored by:

svn commit: r323266 - in head/sys/arm64: arm64 include

2017-09-07 Thread Andrew Turner
Author: andrew Date: Thu Sep 7 15:02:57 2017 New Revision: 323266 URL: https://svnweb.freebsd.org/changeset/base/323266 Log: Add more ARM Ltd parts to the list of knows CPUs. Submitted by: Jon Brawn Modified: head/sys/arm64/arm64/identcpu.c

Re: svn commit: r323063 - head/sys/boot/efi/boot1

2017-09-07 Thread Andrew Turner
And we need a constant wchar_t between loader and libstand as ld.bfd checks the attributes across these when linking. There are a few options, the simplest is probably to make sys/boot and libstand all build with 16bit wchar_t, but it would need someone to check on wchar_t usage in other

svn commit: r323147 - head/sys/arm/arm

2017-09-03 Thread Andrew Turner
Author: andrew Date: Sun Sep 3 09:41:40 2017 New Revision: 323147 URL: https://svnweb.freebsd.org/changeset/base/323147 Log: Disable the ARM generic timers before interrupts are enabled. Some Raspberry Pi firmware images leave them enabled causing an interrupt storm. Sponsored by: ABT

svn commit: r323070 - head/sys/arm64/arm64

2017-08-31 Thread Andrew Turner
Author: andrew Date: Thu Aug 31 20:48:05 2017 New Revision: 323070 URL: https://svnweb.freebsd.org/changeset/base/323070 Log: Add support for quirks while enabling secondary CPUs. This uses the fdt compatible string to check if the board is compatible with a given quirk. It's possible this

svn commit: r322924 - head/contrib/cortex-strings/src/aarch64

2017-08-26 Thread Andrew Turner
Author: andrew Date: Sat Aug 26 15:08:27 2017 New Revision: 322924 URL: https://svnweb.freebsd.org/changeset/base/322924 Log: Work around a bug in QEMU when loading data with a load pair instruction where the source register is also the first destination register. If this is the case,

svn commit: r322800 - head/sys/arm64/arm64

2017-08-22 Thread Andrew Turner
Author: andrew Date: Tue Aug 22 18:20:25 2017 New Revision: 322800 URL: https://svnweb.freebsd.org/changeset/base/322800 Log: Remove an unneeded call to pmap_invalidate_all. This was never called as the anyvalid variable is never set. MFC after:1 week Sponsored by: DARPA, AFRL

svn commit: r322797 - head/sys/arm64/arm64

2017-08-22 Thread Andrew Turner
Author: andrew Date: Tue Aug 22 17:38:06 2017 New Revision: 322797 URL: https://svnweb.freebsd.org/changeset/base/322797 Log: Fix a bug in pmap_protect where we invalidate the wrong page. With this we can now remove an unneeded call to invalidate all entries. MFC after:1 week

svn commit: r322787 - head/sys/arm64/arm64

2017-08-22 Thread Andrew Turner
Author: andrew Date: Tue Aug 22 13:53:53 2017 New Revision: 322787 URL: https://svnweb.freebsd.org/changeset/base/322787 Log: Fix a comment on uncommitted work. Modified: head/sys/arm64/arm64/swtch.S Modified: head/sys/arm64/arm64/swtch.S

svn commit: r322786 - in head/sys/arm64: arm64 include

2017-08-22 Thread Andrew Turner
Author: andrew Date: Tue Aug 22 13:16:14 2017 New Revision: 322786 URL: https://svnweb.freebsd.org/changeset/base/322786 Log: Move the l0 pagetable address to struct mdproc. It is a property of the whole process so should live there. Sponsored by: DARPA, AFRL Modified:

svn commit: r322769 - head/sys/arm64/arm64

2017-08-21 Thread Andrew Turner
Author: andrew Date: Mon Aug 21 18:12:32 2017 New Revision: 322769 URL: https://svnweb.freebsd.org/changeset/base/322769 Log: Improve the performance of the arm64 thread switching code. The full system memory barrier around a TLB invalidation is stricter than required. It needs to wait

svn commit: r322697 - in head/sys/dev: extres/hwreset pci

2017-08-19 Thread Andrew Turner
Author: andrew Date: Sat Aug 19 17:18:27 2017 New Revision: 322697 URL: https://svnweb.freebsd.org/changeset/base/322697 Log: Remove redundant declarations. Newer gcc has a warning for these so will fail when building with -Werror. Sponsored by: DARPA, AFRL Modified:

svn commit: r322696 - in head/sys: conf modules/armv8crypto

2017-08-19 Thread Andrew Turner
Author: andrew Date: Sat Aug 19 17:15:40 2017 New Revision: 322696 URL: https://svnweb.freebsd.org/changeset/base/322696 Log: Use armv8-a in -march, it is accepted by both clang and gcc. Sponsored by: DARPA, AFRL Modified: head/sys/conf/files.arm64

svn commit: r322470 - head/sys/arm64/arm64

2017-08-13 Thread Andrew Turner
Author: andrew Date: Sun Aug 13 18:54:51 2017 New Revision: 322470 URL: https://svnweb.freebsd.org/changeset/base/322470 Log: Add support for multiple GICv3 ITS devices. For this we add sc_irq_base and sc_irq_length to the softc to handle the base number of IRQs available, make

svn commit: r322400 - head/sys/kern

2017-08-11 Thread Andrew Turner
Author: andrew Date: Fri Aug 11 12:45:58 2017 New Revision: 322400 URL: https://svnweb.freebsd.org/changeset/base/322400 Log: Only return the current cpu if it's in the cpumask. When we restrict the cpumask it probably means we are unable to sent interrupts to CPUs outside the map. As such

svn commit: r322109 - in head/sys/arm64: arm64 include

2017-08-05 Thread Andrew Turner
Author: andrew Date: Sat Aug 5 20:57:34 2017 New Revision: 322109 URL: https://svnweb.freebsd.org/changeset/base/322109 Log: Mark each cpu in the appropriate cpuset_domain set. This allows devices to handle cases where they can only run on a single domain. To allow all devices access to

svn commit: r322053 - head/sys/arm64/arm64

2017-08-04 Thread Andrew Turner
Author: andrew Date: Fri Aug 4 13:08:45 2017 New Revision: 322053 URL: https://svnweb.freebsd.org/changeset/base/322053 Log: Start to teach the GICv3 driver about NUMA. On ThunderX we may have multiple ITS devices, however we only want a single ITS device to be configured on each CPU. To

svn commit: r322051 - head/sys/arm64/arm64

2017-08-04 Thread Andrew Turner
Author: andrew Date: Fri Aug 4 10:33:22 2017 New Revision: 322051 URL: https://svnweb.freebsd.org/changeset/base/322051 Log: Read the numa-node-id property from each CPU node. This will initially be used to support the dual package ThunderX where we need to send MSI/MSI-X interrupts to the

svn commit: r321925 - head/sys/arm/arm

2017-08-02 Thread Andrew Turner
Author: andrew Date: Wed Aug 2 14:12:47 2017 New Revision: 321925 URL: https://svnweb.freebsd.org/changeset/base/321925 Log: Fix the return type for get_cntxc(). The register is 64-bit on both arm and arm64 so move any truncation to the caller. Submitted by: Mihai Carabas

svn commit: r321621 - head/sys/boot/efi/libefi

2017-07-27 Thread Andrew Turner
Author: andrew Date: Thu Jul 27 15:06:34 2017 New Revision: 321621 URL: https://svnweb.freebsd.org/changeset/base/321621 Log: Always set the receive mask in loader.efi. Some UEFI implementations set this to be too restrictive. We need to have both broadcast and unicast enabled for loader to

svn commit: r321571 - head/sys/arm64/arm64

2017-07-26 Thread Andrew Turner
Author: andrew Date: Wed Jul 26 17:39:10 2017 New Revision: 321571 URL: https://svnweb.freebsd.org/changeset/base/321571 Log: Pass the last exception trap frame to kdb_trap. This allows show registers in ddb to show the traps registers, and not the registers from within the panic call.

svn commit: r321462 - head/share/mk

2017-07-25 Thread Andrew Turner
Author: andrew Date: Tue Jul 25 10:41:34 2017 New Revision: 321462 URL: https://svnweb.freebsd.org/changeset/base/321462 Log: Build the 32-bit ARM libstand and loader parts with -fPIC. Many of them are already built with this flag so libstand should also be build as such. This will be

svn commit: r321131 - in head/sys/arm64: arm64 include

2017-07-18 Thread Andrew Turner
Author: andrew Date: Tue Jul 18 16:36:32 2017 New Revision: 321131 URL: https://svnweb.freebsd.org/changeset/base/321131 Log: Add support for passing FPU_KERN_NOCTX to fpu_kern_enter on arm64. This will be used to call into UEFI from the kernel. Sponsored by: DARPA, AFRL Modified:

svn commit: r320894 - in head/sys: arm/arm arm/conf arm/freescale/imx arm/include arm/ti arm/ti/omap4 arm/xilinx conf

2017-07-11 Thread Andrew Turner
Tue Jul 11 16:30:16 2017 (r320894) @@ -0,0 +1,84 @@ +#- +# Copyright (c) 2017 Andrew Turner +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redis

svn commit: r320873 - in head/sys/arm: freescale/imx ti ti/omap4 xilinx

2017-07-10 Thread Andrew Turner
Author: andrew Date: Mon Jul 10 15:27:53 2017 New Revision: 320873 URL: https://svnweb.freebsd.org/changeset/base/320873 Log: Start to move the arm *_mp.h to be names *_machdep.h. These will be used by the reworked pl310 driver interface in https://reviews.freebsd.org/D11546 Added:

svn commit: r320669 - in head/sys/arm: arm conf

2017-07-05 Thread Andrew Turner
Author: andrew Date: Wed Jul 5 10:29:05 2017 New Revision: 320669 URL: https://svnweb.freebsd.org/changeset/base/320669 Log: Make MULTIDELAY a requirement in the MPCore Timer driver when using PLATFORM. This will help with removing the MULTIDELAY option, enabling it when PLATFORM is

svn commit: r320668 - in head/sys/arm: arm conf

2017-07-05 Thread Andrew Turner
Author: andrew Date: Wed Jul 5 09:27:18 2017 New Revision: 320668 URL: https://svnweb.freebsd.org/changeset/base/320668 Log: Require the ARM Generic Timer driver is built for MULTIDELAY on 32bit arm. As this driver is also used for DELAY on arm64 we need to keep the existing DELAY code for

svn commit: r320651 - in head/sys/arm: conf freescale/imx ti/am335x versatile

2017-07-04 Thread Andrew Turner
Author: andrew Date: Tue Jul 4 18:07:09 2017 New Revision: 320651 URL: https://svnweb.freebsd.org/changeset/base/320651 Log: Move the simple armv6 only timer drivers to require MULTIDELAY to help move all armv6 configs it. Modified: head/sys/arm/conf/ALPINE head/sys/arm/conf/VERSATILEPB

svn commit: r320648 - in head/sys/arm: freescale/vybrid samsung/exynos xilinx

2017-07-04 Thread Andrew Turner
Author: andrew Date: Tue Jul 4 17:15:23 2017 New Revision: 320648 URL: https://svnweb.freebsd.org/changeset/base/320648 Log: Add a delay count to the last few places. This will help make MULTIDELAY a requirement on armv6 with PLATFORM. Modified: head/sys/arm/freescale/vybrid/vf_machdep.c

svn commit: r320647 - in head/sys: arm/arm arm/conf conf

2017-07-04 Thread Andrew Turner
Author: andrew Date: Tue Jul 4 16:52:55 2017 New Revision: 320647 URL: https://svnweb.freebsd.org/changeset/base/320647 Log: Remove PLATFORM_SMP. It's unneeded as all configs with both PLATFORM and SMP use it so we can switch to the combination of these as the check. Modified:

svn commit: r320643 - in head/sys/arm: annapurna/alpine conf

2017-07-04 Thread Andrew Turner
alpine_mp.h ====== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/arm/annapurna/alpine/alpine_mp.h Tue Jul 4 12:26:47 2017 (r320643) @@ -0,0 +1,35 @@ +/*- + * Copyright (c) 2017 Andrew Turner + *

svn commit: r320642 - in head/sys/arm: conf versatile

2017-07-04 Thread Andrew Turner
Author: andrew Date: Tue Jul 4 12:17:49 2017 New Revision: 320642 URL: https://svnweb.freebsd.org/changeset/base/320642 Log: Teach VERSATILEPB about PLATFORM. This will help move it into the GENERIC kernel configuration. Modified: head/sys/arm/conf/VERSATILEPB

svn commit: r320571 - head/sys/arm64/arm64

2017-07-02 Thread Andrew Turner
Author: andrew Date: Sun Jul 2 08:52:08 2017 New Revision: 320571 URL: https://svnweb.freebsd.org/changeset/base/320571 Log: In the arm64 pmap_remove, when removing a full superpage there is no need to demote it to 512 pages, then remove each of these. We can just remove the l2 map

svn commit: r320529 - head/sys/arm64/arm64

2017-07-01 Thread Andrew Turner
Author: andrew Date: Sat Jul 1 09:38:52 2017 New Revision: 320529 URL: https://svnweb.freebsd.org/changeset/base/320529 Log: Remove all calls to cpu_dcache_wb_range from the arm64 pmap code. These were unneeded as we tell the tlb the pagetables are in cached memory. This gives us a small,

svn commit: r320497 - head/sys/arm64/include

2017-06-30 Thread Andrew Turner
Author: andrew Date: Fri Jun 30 14:45:43 2017 New Revision: 320497 URL: https://svnweb.freebsd.org/changeset/base/320497 Log: Remove a blank line accidentally added in r320403. Modified: head/sys/arm64/include/atomic.h Modified: head/sys/arm64/include/atomic.h

svn commit: r320482 - head/sys/boot/efi/loader/arch/arm

2017-06-29 Thread Andrew Turner
Author: andrew Date: Thu Jun 29 22:09:32 2017 New Revision: 320482 URL: https://svnweb.freebsd.org/changeset/base/320482 Log: As with arm64 mark the EFI PE header as allocated on arm. This is needed for lld to link laoder.efi and boot1.efi. Reported by: emaste Modified:

svn commit: r320470 - head/lib/libc/arm/gen

2017-06-29 Thread Andrew Turner
Author: andrew Date: Thu Jun 29 14:00:05 2017 New Revision: 320470 URL: https://svnweb.freebsd.org/changeset/base/320470 Log: Start to remove _libc_arm_fpu_present checks. We don't support the VFP on ARMv4 or ARMv5, and only support it when it's present on ARMv6 and later. As such always

Re: svn commit: r320388 - head/sys/arm64/include

2017-06-27 Thread Andrew Turner
> On 27 Jun 2017, at 18:04, Ngie Cooper (yaneurabeya) <yaneurab...@gmail.com> > wrote: > > >> On Jun 26, 2017, at 15:32, Andrew Turner <and...@freebsd.org> wrote: >> >> Author: andrew >> Date: Mon Jun 26 22:32:52 2017 >> New Revision: 32

svn commit: r320411 - head/sys/arm64/include

2017-06-27 Thread Andrew Turner
Author: andrew Date: Tue Jun 27 16:30:01 2017 New Revision: 320411 URL: https://svnweb.freebsd.org/changeset/base/320411 Log: Add parentheses missed in r320388 Sponsored by: DARPA, AFRL Modified: head/sys/arm64/include/endian.h Modified: head/sys/arm64/include/endian.h

svn commit: r320403 - head/sys/arm64/include

2017-06-27 Thread Andrew Turner
Author: andrew Date: Tue Jun 27 10:45:13 2017 New Revision: 320403 URL: https://svnweb.freebsd.org/changeset/base/320403 Log: Some of the atomic_clear_* functions were incorrectly defined to be an atomic add. Correct these, fixing a NULL-pointer dereference in netgraph. PR:

svn commit: r320388 - head/sys/arm64/include

2017-06-26 Thread Andrew Turner
Author: andrew Date: Mon Jun 26 22:32:52 2017 New Revision: 320388 URL: https://svnweb.freebsd.org/changeset/base/320388 Log: In _bswap16 and _bswap32 cast constant values to the appropriate type. This is similar to what is done in the x86 code. Sponsored by: DARPA, AFRL Modified:

svn commit: r320328 - head/sys/arm64/arm64

2017-06-25 Thread Andrew Turner
Author: andrew Date: Sun Jun 25 13:22:49 2017 New Revision: 320328 URL: https://svnweb.freebsd.org/changeset/base/320328 Log: Stop calling cpu_dcache_wb_range from PTE_SYNC. We set the shareability attributes in TCR_EL1 on boot. These tell the hardware the pagetables are in cached memory

Re: svn commit: r320002 - head/sys/arm/arm

2017-06-16 Thread Andrew Turner
> On 16 Jun 2017, at 14:53, Zbigniew Bodek wrote: > > Author: zbb > Date: Fri Jun 16 13:53:02 2017 > New Revision: 320002 > URL: https://svnweb.freebsd.org/changeset/base/320002 > > Log: > Minor style improvements to pmap_remap_vm_attr() > > Use correct platform_ function

Re: svn commit: r319913 - head/sys/dev/hwpmc

2017-06-13 Thread Andrew Turner
> On 13 Jun 2017, at 19:53, Zbigniew Bodek wrote: > > Author: zbb > Date: Tue Jun 13 18:53:56 2017 > New Revision: 319913 > URL: https://svnweb.freebsd.org/changeset/base/319913 > > Log: > Fix INVARIANTS debug code in HWPMC > > When HWPMC stops sampling, ps_pmc may be

svn commit: r319753 - head/sys/arm64/include

2017-06-09 Thread Andrew Turner
Author: andrew Date: Fri Jun 9 15:47:14 2017 New Revision: 319753 URL: https://svnweb.freebsd.org/changeset/base/319753 Log: Allow the arm64 machine/vfp.h to be included without first including machine/pcb.h. It he latter is only needed for struct pcb. Modified:

svn commit: r319752 - in head/sys/arm64: arm64 include

2017-06-09 Thread Andrew Turner
Author: andrew Date: Fri Jun 9 15:37:17 2017 New Revision: 319752 URL: https://svnweb.freebsd.org/changeset/base/319752 Log: Store the read-only thread pointer when scheduling a new thread. This is not currently set, however we may wish to set it later. Modified:

svn commit: r319569 - in head/sys/arm: allwinner annapurna/alpine freescale/imx

2017-06-04 Thread Andrew Turner
Author: andrew Date: Sun Jun 4 09:11:14 2017 New Revision: 319569 URL: https://svnweb.freebsd.org/changeset/base/319569 Log: Start to rename files with common or generic names to be SoC specific. The build system doesn't handle two files with the same name. Added:

svn commit: r319554 - in head/sys/arm: conf freescale/vybrid

2017-06-03 Thread Andrew Turner
Author: andrew Date: Sat Jun 3 20:14:46 2017 New Revision: 319554 URL: https://svnweb.freebsd.org/changeset/base/319554 Log: Port the Vybrid code to PLATFORM to help move it into GENERIC. Deleted: head/sys/arm/freescale/vybrid/vf_common.c Modified: head/sys/arm/conf/VYBRID

<    1   2   3   4   5   6   7   8   9   10   >