History log of /src/sys/arch/arm/conf |
Revision | Date | Author | Comments |
1.58 | 18-Feb-2024 |
mrg | if we're building with GCC and MACHINE_CPU is aarch64, error out since that isn't going to work.
doing this better in config(1) is difficult, but at least we can detect and give a useful error message for this case instead of just erroring out with some compiler options aren't supported. if we have a good solution for config(1) we can remove this hack here..
might want to copy this hack for riscv too.
|
1.57 | 28-Jul-2023 |
rin | Simplify fix for PR toolchain/57146
Introduce ARCH_STRIP_SYMBOLS variable to centralize logic for debug symbols from MD Makefile's to Makefile.kern.inc.
|
1.56 | 26-Jul-2023 |
rin | Fix kernel size inflation for arm and aarch64 (PR toolchain/57146)
For some conditions, SYSTEM_LD_TAIL is set for arm and aarch64. Then, ctfmerge(1) in default SYSTEM_LD_TAIL is unintentionally skipped, which results in the catastrophic kernel size inflation, as reported in the PR.
Also, introduce and use OBJCOPY_STRIPFLAGS variable instead of STRIPFLAGS, as strip(1) is replaced by objcopy(1) during MI kernel build procedure.
XXX For Makefile.{arm,aarch64}, weird logic is used to determine how to handle debug symbols; MKDEBUG{,KERNEL} are taken into account later in sys/conf/Makefile.kern.inc.
|
1.55 | 10-Jul-2020 |
skrll | branches: 1.55.20; Add support for KASAN on ARMv[67]
Thanks to maxv for many pointers and reviews.
|
1.54 | 05-Feb-2020 |
skrll | Fix the armv[67] memory attributes for uncached memory. Previously it was mapped as strongly-ordered which meant that unaligned accesses would fault.
armv7_generic_bs_map now maps pages with PMAP_DEV which is treated as SO
bus_dma continues to use PMAP_NOCACHE as appropriate, but this now get mapped to the correct memory attribute bits for armv[67]
DEVMAP_ENTRY usees a new flag PTE_DEV.
The workaround for the unaligned access faults is now removed.
XXX Other armv[67] boards bus_space implementations should be checked. XXX There is scope to reduce the difference to aarch64
|
1.53 | 06-Jan-2020 |
skrll | branches: 1.53.2; Use CFLAGS instead of COPTS for -mapcs-frame when using DDB.
Discussed with mrg@
|
1.52 | 02-Jan-2020 |
skrll | gcc 8 needs -mapcs-frame when DDB is specified for backtrace to work
|
1.51 | 11-Nov-2019 |
joerg | Update LLVM to 10.0.0git (01f3a59fb3e2542fce74c768718f594d0debd0da)
|
1.50 | 26-Aug-2019 |
rin | PR kern/54486
Workaround for alignment faults on ARMv6+, at least occur with axe(4) and athn(4) drivers.
For ARMv6+, unaligned access is enabled by default. However, it cannot be used for non-cacheable memory, which is used as DMA buffers. This results in alignment faults above. A real fix is to use cacheable memory as DMA buffers. However, it breaks some drivers, awge(4) and vchiq(4) at least.
Until we figure out problems and fix them, we choose a fail-safe workaround here; forbid unaligned memory access for whole kernel. Affects on performance is negligibly small as far as we can see.
XXX pullup netbsd-9
|
1.49 | 22-Sep-2018 |
rin | branches: 1.49.4; - Determine KERN_AS automatically depending on whether OPT_MODULAR is set or not, in the same way as libcompat.
- Specify OPT_MODULAR in the port Makefile instead of KERN_AS.
Now, KERN_AS=library is used for kernels without module(7) for all ports.
OK christos
|
1.48 | 01-May-2015 |
nat | branches: 1.48.16; 1.48.18; Include splash with genfb. splash.o is only included with options SPLASHSCREEN. splash_image.o target moved to Makefile.kern.inc.
This commit was approved by matt@
|
1.47 | 30-Apr-2015 |
nat | Remove unintended whitespace.
|
1.46 | 30-Apr-2015 |
nat | Added a new option for embedding a splash screen into kernel. Add: options SPLASHSCREEN makeoptions SPLASHSCREEN_IMAGE="path/to/image" to your config file. So far it will work on amd64 and RPI/RPI2.
This commit was with ideas, help, and OK from jmcneill@.
|
1.45 | 17-Aug-2014 |
joerg | branches: 1.45.2; Reorganize symbol table embedding. The existing option SYMTAB_SPACE is replaced by the make option COPY_SYMTAB set to any value. The copy of the symbol table is no longer put into a buffer in kern_ksyms.o, but a small helper object. This object is build first with a dummy size, then the kernel is linked to compute the real dimension of the symbol table buffer. After that, the helper object is rebuild and the kernel linked again.
|
1.44 | 14-Aug-2014 |
joerg | Do the wildcard symbol dance for the debug case as well.
|
1.43 | 14-Aug-2014 |
joerg | Use wildcards for stripping/preserving the mapping symbols on ARM and AArch64. LLVM creates unique symbols in each file of the form $a.n etc.
|
1.42 | 02-Mar-2014 |
joerg | branches: 1.42.4; Explicitly enable VFP support for vfp_init.c. Fixes build of INTEGRATOR_CP with clang.
|
1.41 | 23-Jan-2014 |
martin | Compile the armv4 cpufunc file with -mcpu=arm8 instead of arm9, to avoid an armv4t marked object file which causes failure in the shark objcopy step when creating the a.out version of the kernel.
|
1.40 | 04-Jan-2014 |
joerg | Explicitly force a CPU for the assembler for the compatibility cpu_func_* files. LLVM complains about the use of deprecated instructions when -march=armv7 or equivalent is in use.
|
1.39 | 27-Dec-2013 |
matt | Pass -mfpu=vfp so GAS won't complain about vmsrne
|
1.38 | 28-Oct-2013 |
matt | Make sure certain files are always assembled with -marm
|
1.37 | 03-Feb-2013 |
skrll | branches: 1.37.2; Fix typo in option name
|
1.36 | 03-Feb-2013 |
matt | Always compile the kernel with -mfloat=soft
|
1.35 | 05-Oct-2012 |
matt | Make arm32_kvminit.o is complied with -fno-stack-protector
|
1.34 | 18-May-2012 |
skrll | branches: 1.34.2; Remove an '@' to hopefully see what's going on with the daily builds.
|
1.33 | 19-Mar-2012 |
bsh | adjust the size of db_symtab space automatically. proposed on tech-toolchain@, and got no objections.
|
1.32 | 27-Apr-2008 |
tsutsui | branches: 1.32.20; 1.32.36; 1.32.40; 1.32.44; Remove local -fno-strict-aliasing hack. sys/conf/Makefile.kern.inc has it for gcc4.
|
1.31 | 26-Jan-2008 |
chris | branches: 1.31.6; 1.31.8; Add arm version of cpu_in_cksum. Based on previous in_cksum4 code.
In fact it's mostly the same code, with a different stub on it.
On a cats the regress/sys/net/in_cksum tests show that it takes around 50-60% of the time the C version takes. In some cases it takes as low as 20%.
|
1.30 | 25-Jan-2008 |
joerg | Refactor in_cksum/in4_cksum/in6_cksum implementations: - All three functions are included in the kernel by default. They call a backend function cpu_in_cksum after possibly computing the checksum of the pseudo header. - cpu_in_cksum is the core to implement the one-complement sum. The default implementation is moderate fast on most platforms and provides a 32bit accumulator with 16bit addends for L32 platforms and a 64bit accumulator with 32bit addends for L64 platforms. It handles edge cases like very large mbuf chains (could happen with native IPv6 in the future) and provides a good base for new native implementations. - Modify i386 and amd64 assembly to use the new interface.
This disables the MD implementations on !x86 until the conversion is done. For Alpha, the portable version is faster.
|
1.29 | 04-Mar-2007 |
bjh21 | branches: 1.29.16; 1.29.20; 1.29.22; 1.29.28; src/sys/arch/arm32 is long gone, so stop referring to it.
|
1.28 | 10-Dec-2006 |
scw | branches: 1.28.2; Add a port of Sam Leffler's IXP425 micro-engine support (from FreeBSD).
This is very much a work in progress. At the present time, only Ethernet is supported.
|
1.27 | 10-Nov-2005 |
dbj | branches: 1.27.22; 1.27.24; partially revert previous commit stripping arm mapping symbols it broke ddb when DEBUG wasn't set to -g.
|
1.26 | 21-Oct-2005 |
dbj | strip arm mapping symbols for ddb using STRIPFLAGS instead of SYSTEM_LD_TAIL this works even for kernels compiled with -g and doesn't interfere with gdb
|
1.25 | 20-Jun-2005 |
scw | branches: 1.25.2; 1.25.4; Use objcopy (as suggested by Richard Earnshaw) to strip ARM mapping symbols from the kernel image, as they interfere with ddb. But only do this if 'makeoptions DEBUG="-g"' was not specified, in case they're needed by gdb.
|
1.24 | 31-May-2005 |
christos | s/GENASSYM/GENASSYM_CONF/ so we can use "GENASSYM" as the program name.
|
1.23 | 11-Jan-2005 |
simonb | Add isa_irq.o and spl.o to the list of files that depend on assym.h so that "make -j<bignum>" works without a "make depend" beforehand.
|
1.22 | 20-Aug-2004 |
simonb | Add dependancies on assym.h for some assembly files so that "make -j <bignum>" works without having to do a "make depend" first.
|
1.21 | 04-Jun-2004 |
thorpej | Add the %MAKEOPTIONSAPPEND token at the end of the file, after the common Makefile.kern.inc has been included.
|
1.20 | 30-Oct-2003 |
skrll | branches: 1.20.4; Fix a typo so that hack actually takes effect.
|
1.19 | 28-Oct-2003 |
skrll | Compile sys/kern/uipc_socket.c -fno-strict-aliasing for now. PR 23044.
|
1.18 | 03-Jan-2003 |
thorpej | branches: 1.18.2; Don't define -D${MACHINE} in Makefile.arm. Instead, let platforms that care define it themselves. Note that evbarm NO LONGER defines -D${MACHINE}.
|
1.17 | 05-Oct-2002 |
chs | add missing protos, clean up includes.
|
1.16 | 31-Jan-2002 |
chris | Set LOOSE_PROTOTYPES to no for cats. This means cats now uses stricter prototype checking.
|
1.15 | 09-Dec-2001 |
atatat | Roll the rest of the ports over to the new MI kernel build machinery. Any problems reported by testers have been fixed, and massive cross-compiling of kernels has shown that any problems that remain with actually building kernels are not related to this.
|
1.14 | 26-Nov-2001 |
thorpej | Allow port-specific Makefile fragments to specify a list of additional genassym.cf fragments, if desired.
|
1.13 | 25-Nov-2001 |
thorpej | End the "new ARM includes strategy" experiment. The new strategy broke too many assumptions makde by other parts of the source tree, and the strategy and how it was supposed to work was never discussed on tech-userlevel, nor was it applied consistently (to all ARM ports and to other ports which have common MACHINE_ARCH code, such as MIPS, m68k, powerpc).
Verified to complete a full "make build" on cats, dnard, evbarm, and netwinder.
|
1.12 | 20-Nov-2001 |
lukem | cleanup: options SPACE TAB makeoptions TAB psuedo-device TAB remove trailing whitespace replace multiple spaces -> tabs options "FOO" -> options FOO options "FOO=bar" -> options FOO=bar options "FOO=\"bar\"" -> options FOO="\"bar\""
|
1.11 | 06-Nov-2001 |
thorpej | branches: 1.11.2; Make it possible for Makefile.${MACHINE}.inc to provide extra stuff at the end of SYSTEM_LD_TAIL.
|
1.10 | 26-Oct-2001 |
jmc | Change defaults for kernel compiles. Default all to USETOOLS?=no and have the etc Makefile override that by putting USETOOLS into $.MAKEOVERRIDES This way the default for kernel compiles is still to use the installed toolchain instead of depending on $TOOLDIR. $TOOLDIR can be used by simply adding USETOOLS=yes to the command line as usual.
Adjust each ports template to set the default no setting and also pull in bsd.own.mk if they weren't already to ensure they'll build correctly with the new toolchain setup.
|
1.9 | 23-Oct-2001 |
thorpej | branches: 1.9.2; Use MACHINE, not TARGET_MACHINE.
|
1.8 | 23-Oct-2001 |
thorpej | Pull in <bsd.own.mk> to get the correct toolchain definitions for the USE_NEW_TOOLCHAIN case.
|
1.7 | 17-Oct-2001 |
matt | Workaround "../../../.."
|
1.6 | 28-Jul-2001 |
chris | finish moving common arm32 bits out into arm/arm32.
|
1.5 | 28-Jul-2001 |
chris | Change -x into -X for linking, it makes traces more meaningful.
|
1.4 | 12-Jul-2001 |
matt | Gah!. Use the variable name (LINKENTRY).
|
1.3 | 12-Jul-2001 |
matt | Fix a few things for NetWinder. NetWinder needs to override the std entry point so add a hook for that. Also pick up the port specific .inc file from the right directory.
|
1.2 | 11-Jun-2001 |
matt | branches: 1.2.2; 1.2.4; Only include dependency on include-dirs if the include directory doesn't exist.
|
1.1 | 11-Jun-2001 |
matt | Add common Makefile for arm ports. Only include (for now) machine/io.h if arm32 is defined. io.h is RISCPC specific and isn't needed for other ports.
|
1.2.4.3 | 11-Feb-2002 |
jdolecek | Sync w/ -current.
|
1.2.4.2 | 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.2.4.1 | 03-Aug-2001 |
lukem | update to -current
|
1.2.2.1 | 21-Jun-2001 |
nathanw | Catch up to -current.
|
1.9.2.1 | 12-Nov-2001 |
thorpej | Sync the thorpej-mips-cache branch with -current.
|
1.11.2.5 | 03-Jan-2003 |
thorpej | Sync with HEAD.
|
1.11.2.4 | 18-Oct-2002 |
nathanw | Catch up to -current.
|
1.11.2.3 | 28-Feb-2002 |
nathanw | Catch up to -current.
|
1.11.2.2 | 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.11.2.1 | 06-Nov-2001 |
nathanw | file Makefile.arm was added on branch nathanw_sa on 2002-01-08 00:23:10 +0000
|
1.18.2.7 | 11-Dec-2005 |
christos | Sync with head.
|
1.18.2.6 | 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.18.2.5 | 17-Jan-2005 |
skrll | Sync with HEAD.
|
1.18.2.4 | 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.18.2.3 | 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.18.2.2 | 25-Aug-2004 |
skrll | Sync with HEAD.
|
1.18.2.1 | 03-Aug-2004 |
skrll | Sync with HEAD
|
1.20.4.1 | 06-Feb-2005 |
jmc | Pull up patch (requested by martti in ticket #1086) Move ipf to sys/dist/ipf and sync w. trunk
|
1.25.4.1 | 26-Oct-2005 |
yamt | sync with head
|
1.25.2.4 | 04-Feb-2008 |
yamt | sync with head.
|
1.25.2.3 | 03-Sep-2007 |
yamt | sync with head.
|
1.25.2.2 | 30-Dec-2006 |
yamt | sync with head.
|
1.25.2.1 | 21-Jun-2006 |
yamt | sync with head.
|
1.27.24.1 | 18-Dec-2006 |
yamt | sync with head.
|
1.27.22.1 | 12-Jan-2007 |
ad | Sync with head.
|
1.28.2.1 | 12-Mar-2007 |
rmind | Sync with HEAD.
|
1.29.28.1 | 18-Feb-2008 |
mjf | Sync with HEAD.
|
1.29.22.1 | 23-Mar-2008 |
matt | sync with HEAD
|
1.29.20.1 | 27-Jan-2008 |
chris | Sync to HEAD.
|
1.29.16.1 | 28-Feb-2008 |
rjs | Sync with HEAD.
|
1.31.8.1 | 18-May-2008 |
yamt | sync with head.
|
1.31.6.1 | 02-Jun-2008 |
mjf | Sync with HEAD.
|
1.32.44.1 | 28-Nov-2012 |
matt | Merge improved arm support (especially Cortex) from HEAD including OMAP and BCM53xx support.
|
1.32.40.2 | 02-Jun-2012 |
mrg | sync to latest -current.
|
1.32.40.1 | 05-Apr-2012 |
mrg | sync to latest -current.
|
1.32.36.4 | 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.32.36.3 | 30-Oct-2012 |
yamt | sync with head
|
1.32.36.2 | 23-May-2012 |
yamt | sync with head.
|
1.32.36.1 | 17-Apr-2012 |
yamt | sync with head
|
1.32.20.1 | 15-Feb-2014 |
matt | Merge armv7 support from HEAD, specifically support for the BCM5301X and BCM56340 evbarm kernels.
|
1.34.2.4 | 03-Dec-2017 |
jdolecek | update from HEAD
|
1.34.2.3 | 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.34.2.2 | 25-Feb-2013 |
tls | resync with head
|
1.34.2.1 | 20-Nov-2012 |
tls | Resync to 2012-11-19 00:00:00 UTC
|
1.37.2.1 | 18-May-2014 |
rmind | sync with head
|
1.42.4.1 | 05-Jan-2016 |
snj | Pull up following revision(s) (requested by martin in ticket #1058): sys/arch/arm/conf/Makefile.arm: revision 1.43 sys/arch/aarch64/conf/Makefile.aarch64: revision 1.2 share/mk/bsd.sys.mk: revision 1.243, 1.244 Use wildcards for stripping/preserving the mapping symbols on ARM and AArch64. LLVM creates unique symbols in each file of the form $a.n etc. -- Fix typo in OBJCOPYLIBFLAGS_EXTRA for aarch64eb.
|
1.45.2.1 | 06-Jun-2015 |
skrll | Sync with HEAD
|
1.48.18.2 | 13-Apr-2020 |
martin | Mostly merge changes from HEAD upto 20200411
|
1.48.18.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
1.48.16.1 | 30-Sep-2018 |
pgoyette | Ssync with HEAD
|
1.49.4.2 | 27-Feb-2020 |
martin | Pull up following revision(s) (requested by skrll in ticket #742):
sys/arch/arm/arm32/pmap.c: revision 1.388 sys/arch/arm/arm32/armv7_generic_space.c: revision 1.11 sys/arch/arm/arm/cpufunc.c: revision 1.176 sys/arch/arm/conf/Makefile.arm: revision 1.54 (via patch) sys/arch/arm/include/arm32/pmap.h: revision 1.161
Fix the armv[67] memory attributes for uncached memory. Previously it was mapped as strongly-ordered which meant that unaligned accesses would fault. armv7_generic_bs_map now maps pages with PMAP_DEV which is treated as SO bus_dma continues to use PMAP_NOCACHE as appropriate, but this now get mapped to the correct memory attribute bits for armv[67]
DEVMAP_ENTRY usees a new flag PTE_DEV.
The workaround for the unaligned access faults is now removed. XXX Other armv[67] boards bus_space implementations should be checked. XXX There is scope to reduce the difference to aarch64
|
1.49.4.1 | 01-Sep-2019 |
martin | Pull up following revision(s) (requested by rin in ticket #146):
sys/arch/arm/conf/Makefile.arm: revision 1.50 sys/dev/usb/if_axe.c: revision 1.120
PR kern/54486
Workaround for alignment faults on ARMv6+, at least occur with axe(4) and athn(4) drivers.
For ARMv6+, unaligned access is enabled by default. However, it cannot be used for non-cacheable memory, which is used as DMA buffers. This results in alignment faults above. A real fix is to use cacheable memory as DMA buffers. However, it breaks some drivers, awge(4) and vchiq(4) at least.
Until we figure out problems and fix them, we choose a fail-safe workaround here; forbid unaligned memory access for whole kernel. Affects on performance is negligibly small as far as we can see.
XXX pullup netbsd-9
-
PR kern/54486 Revert workaround introduced in rev 1.94: http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/dev/usb/if_axe.c#rev1.94
This is a problem specific to ARMv6+, and addressed by arch/arm/conf/Makefile.arm rev 1.50: http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/arm/conf/Makefile.arm#rev1.50
XXX pullup netbsd-9
|
1.53.2.1 | 29-Feb-2020 |
ad | Sync with head.
|
1.55.20.1 | 11-Sep-2023 |
martin | Pull up following revision(s) (requested by rin in ticket #363):
sys/arch/aarch64/conf/Makefile.aarch64: revision 1.24 sys/arch/aarch64/conf/Makefile.aarch64: revision 1.25 sys/arch/shark/conf/Makefile.shark.inc: revision 1.28 sys/arch/alpha/conf/Makefile.alpha: revision 1.88 sys/arch/mips/conf/Makefile.mips: revision 1.73 sys/conf/Makefile.kern.inc: revision 1.298 sys/conf/Makefile.kern.inc: revision 1.299 sys/arch/cats/conf/Makefile.cats.inc: revision 1.37 sys/arch/arm/conf/Makefile.arm: revision 1.56 sys/arch/arm/conf/Makefile.arm: revision 1.57 sys/arch/riscv/conf/Makefile.riscv: revision 1.10
Always use arm-elf2aout; no a.out support both for binutils{,.old}
Fix kernel size inflation for arm and aarch64 (PR toolchain/57146)
For some conditions, SYSTEM_LD_TAIL is set for arm and aarch64. Then, ctfmerge(1) in default SYSTEM_LD_TAIL is unintentionally skipped, which results in the catastrophic kernel size inflation, as reported in the PR.
Also, introduce and use OBJCOPY_STRIPFLAGS variable instead of STRIPFLAGS, as strip(1) is replaced by objcopy(1) during MI kernel build procedure.
For Makefile.{arm,aarch64}, weird logic is used to determine how to handle debug symbols; MKDEBUG{,KERNEL} are taken into account later in sys/conf/Makefile.kern.inc.
Use OBJCOPY_STRIPFLAGS instead of STRIPFLAGS. Simplify fix for PR toolchain/57146
Introduce ARCH_STRIP_SYMBOLS variable to centralize logic for debug symbols from MD Makefile's to Makefile.kern.inc.
|
1.5 | 21-Nov-2002 |
thorpej | Remove, with extreme prejudice.
|
1.4 | 05-Mar-2002 |
thorpej | branches: 1.4.8; Fix size/padding of .data. From Nick.
|
1.3 | 20-Feb-2002 |
skrll | branches: 1.3.2; Use shell arithmetic as much as possible and reduce the number of times that awk is used to one.
No functional change.
|
1.2 | 09-Feb-2002 |
chris | branches: 1.2.2; Update elf2aout to cope with infile and outfile being the same. Make the cats a.out kernel be called netbsd. This means that make install installs the correct kernel
|
1.1 | 06-Feb-2002 |
thorpej | A slightly cleaned up version of chris/nick's elf2aout.sh for ARM platforms.
|
1.2.2.3 | 16-Mar-2002 |
jdolecek | Catch up with -current.
|
1.2.2.2 | 11-Feb-2002 |
jdolecek | Sync w/ -current.
|
1.2.2.1 | 09-Feb-2002 |
jdolecek | file elf2aout.sh was added on branch kqueue on 2002-02-11 20:07:20 +0000
|
1.3.2.4 | 11-Dec-2002 |
thorpej | Sync with HEAD.
|
1.3.2.3 | 01-Apr-2002 |
nathanw | Catch up to -current. (CVS: It's not just a program. It's an adventure!)
|
1.3.2.2 | 28-Feb-2002 |
nathanw | Catch up to -current.
|
1.3.2.1 | 20-Feb-2002 |
nathanw | file elf2aout.sh was added on branch nathanw_sa on 2002-02-28 04:07:26 +0000
|
1.4.8.1 | 03-Feb-2003 |
jmc | Apply hand patch (from chris in ticket #1144) Include the .rodata area into the .text area. Fixes PR#20171
|
1.168 | 20-Apr-2023 |
skrll | Provide a shared pmap_devmap implementation and convert all pmap_devmap arrays to use DEVMAP_ENTRY{,_END}
|
1.167 | 28-Oct-2022 |
skrll | MI PMAP EFI_RUNTIME support
|
1.166 | 02-Apr-2022 |
skrll | Update to support EFI runtime outside the kernel virtual address space by creating an EFI RT pmap that can be activated / deactivated when required.
Adds support for EFI RT to ARM_MMU_EXTENDED (ASID) 32-bit Arm machines.
On Arm64 the usage of pmapboot_enter is reduced and the mappings are created much later in the boot process -- now in cpu_startup_hook. Backward compatiblity for KVA mapped RT from old bootaa64.efi is maintained.
Adding support to other platforms should be easier as a result.
|
1.165 | 06-Aug-2021 |
jmcneill | Arm: Add support for SMC Calling Convention
Arm DEN0028 defines a calling mechanism used with Secure Monitor Call (SMC) and Hypervisor Call (HVC) instructions. To discover SMCCC, we must:
1) Find the PSCI conduit (either via ACPI FADT, or Device Tree) 2) Use PSCI_VERSION to determine whether PSCI_FEATURES is supported 3) Call PSCI_FEATURES with SMCCC_VERSION to determine the implementation version.
|
1.164 | 21-Oct-2020 |
christos | make process_machdep.c included always since it provides register i/o used by sys_process_getlwpstatus.c which is always included.
|
1.163 | 20-Oct-2020 |
christos | harmonize process_machdep.c inclusion.
|
1.162 | 29-Sep-2020 |
jmcneill | Collapse all CPU_CORTEXA<n> options into CPU_CORTEX and do runtime detection instead of ifdefs where required.
|
1.161 | 02-Aug-2020 |
maxv | Add support for Privileged Access Never (ARMv8.1-PAN).
PAN provides the same functionality as SMAP on x86: it forbids kernel access to userland pages when PSTATE.PAN=1, and allows such accesses when PSTATE.PAN=0.
We clear SCTLR_SPAN, to guarantee that PAN=1 each time the kernel is entered. We catch PAN faults and panic right away without further processing. In copyin, copyout, etc, we temporarily authorize access to userland pages.
PAN is a very useful exploit mitigation. Reviewed by ryo@, thanks. Tested on Qemu. Enabled by default.
|
1.160 | 27-Jul-2020 |
riastradh | Enable ChaCha NEON code on armv7 too.
The 4-blocks-at-a-time assembly helper is disabled for now; adapting it to armv7 is going to be a little annoying with only 16 128-bit vector registers.
(Should also do a fifth block in the integer registers for 320 bytes at a time.)
|
1.159 | 27-Jul-2020 |
riastradh | Fix outdated comment.
|
1.158 | 29-Jun-2020 |
riastradh | New permutation-based AES implementation using ARM NEON.
Also derived from Mike Hamburg's public-domain vpaes code.
|
1.157 | 18-Apr-2020 |
skrll | PMAP_DEBUG has been deleted on arm
|
1.156 | 13-Apr-2020 |
maxv | Add KASAN-DMA support on aarch64, same as amd64. Discussed with skrll@.
|
1.155 | 13-Apr-2020 |
maxv | Add support for Branch Target Identification (BTI).
On the executable pages that have the GP (Guarded Page) bit, the semantic of the "br" and "blr" instructions is changed: the CPU expects the first instruction of the jump/call target to be "bti", and faults if it isn't.
We add the GP bit on the kernel .text pages (and incidentally the .rodata pages, but we don't care). The compiler adds a "bti c" instruction at the beginning of each C function. We modify the ENTRY() macros to manually add "bti c" in the asm functions.
cpuswitch.S needs a specific change: with "br x27" the CPU expects "bti j", which is bad because the functions begin with "bti c"; switch to "br x16", for the CPU to accept "bti c".
BTI helps defend against JOP/COP. Tested on Qemu.
|
1.154 | 12-Apr-2020 |
maxv | Add support for Pointer Authentication (PAC).
We use the "pac-ret" option, to sign the return instruction pointer on function entry, and authenticate it on function exit. This acts as a mitigation against ROP.
The authentication uses a per-lwp (secret) I-A key stored in the 128bit APIAKey register and part of the lwp context. During lwp creation, the kernel generates a random key, and during context switches, it installs the key of the target lwp on the CPU.
Userland cannot read the APIAKey register directly. However, it can sign its pointers with it, because the register is architecturally shared between userland and the kernel. Although part of the CPU design, it is a bit of an undesired behavior, because it allows to forge valid kernel pointers from userland. To avoid that, we don't share the key with userland, and rather switch it in EL0<->EL1 transitions. This means that when userland executes, a different key is loaded in APIAKey than the one the kernel uses. For now the userland key is a fixed 128bit zero value.
The DDB stack unwinder is changed to strip the authentication code from the pointers in lr.
Two problems are known:
* Currently the idlelwps' keys are not really secret. This is because the RNG is not yet available when we spawn these lwps. Not overly important, but would be nice to fix with UEFI RNG. * The key switching in EL0<->EL1 transitions is not the most optimized code on the planet. Instead of checking aarch64_pac_enabled, it would be better to hot-patch the code at boot time, but there currently is no hot-patch support on aarch64.
Tested on Qemu.
|
1.153 | 15-Feb-2020 |
skrll | branches: 1.153.4; Various updates and improvements to cpu start up on arm/aarch64
- start sharing more code around the AP startup messaging. - call arm_cpu_topology_set early so that ci_core_id is available for drivers, e.g. bcm2835_intr.c - both arm and aarch64 now have - a static cpu_info_store array - the same arm_cpu_{hatched,mbox}
|
1.152 | 21-Jan-2020 |
skrll | Sort a bit
|
1.151 | 21-Jan-2020 |
skrll | Trailing whitespace
|
1.150 | 15-Jan-2020 |
mrg | port the arm64 cpu topology setup for big.little to arm.
rename arm64 cpu_do_topology() to arm_cpu_do_topology() and call it from both arm cpu_attach().
replace both aarch64_set_topology() inline code in arm cpu_attach() with new arm_cpu_do_topology(), which is called by the arm64 locore as well (possibly not needed, which would allow it to become static.)
not yet tested on a real big.little armv7 system. tested on rockpro64 and pinebook pro.
|
1.149 | 20-Nov-2019 |
pgoyette | branches: 1.149.2; Move all non-emulation-specific coredump code into the coredump module, and remove all #ifdef COREDUMP conditional compilation. Now, the coredump module is completely separated from the emulation modules, and they can all be independently loaded and unloaded.
Welcome to 9.99.18 !
|
1.148 | 27-Jan-2019 |
pgoyette | Merge the [pgoyette-compat] branch
|
1.147 | 05-Dec-2018 |
jmcneill | Split armv7/armv8 tprof backend config logic from the fdt bus glue.
|
1.146 | 28-Oct-2018 |
jmcneill | Add support for EFI runtime services on aarch64.
|
1.145 | 18-Oct-2018 |
skrll | Provide generic start code that assumes the MMU is off and caches are disabled as per the linux booting protocol for ARMv6 and ARMv7 boards. u-boot image type should be changed to 'linux' for correct behaviour.
The new start code builds a minimal "bootstrap" L1PT with cached access disabled and uses the same table for all processors. AP startup is performed in less steps and more code is written in C.
The bootstrap tables and stack are placed into an (orphaned) section "_init_memory" which is given to uvm when it is no longer used.
Various kernels have been converted to use this code and tested. Some boards were provided by TNF. Thanks!
The GENERIC kernel now boots on boards using the TEGRA, SUNXI and EXYNOS kernels. The GENERIC kernel will also work on RPI2 using u-boot.
Thanks to martin@ and aymeric@ for testing on parallella and nanosoc respectively
|
1.144 | 06-Oct-2018 |
skrll | Whitespace
|
1.143 | 21-Sep-2018 |
skrll | Centralise defparam CONSADDR, CONSPEED, CONMODE and CONADDR into opt_console.h and adjust.
|
1.142 | 16-Sep-2018 |
skrll | Whitespace
|
1.141 | 10-Aug-2018 |
maxv | remove reference to CPU_ARMV2, suggested by jmcneill@
|
1.140 | 10-Aug-2018 |
maxv | Retire CPU_ARM2, CPU_ARM250 and CPU_ARM3, they are all leftovers of acorn26.
ok jmcneill@ skrll@
|
1.139 | 01-Apr-2018 |
ryo | branches: 1.139.2; Add initial support for ARMv8 (AARCH64) (by nisimura@ and ryo@)
- sys/arch/evbarm64 is gone and integrated into sys/arch/evbarm. (by skrll@) - add support fdt. evbarm/conf/GENERIC64 fdt (bcm2837,sunxi,tegra) based generic 64bit kernel config. (by skrll@, jmcneill@)
|
1.138 | 24-Jan-2018 |
skrll | branches: 1.138.2; Remove port-acorn26
OK core@
|
1.137 | 17-Jan-2018 |
skrll | G/C ARM32_NEW_VM_LAYOUT
|
1.136 | 10-Nov-2017 |
matt | Add CPU_CORTEXA35
|
1.135 | 08-Oct-2017 |
jmcneill | defflag CPU_CORTEXA53
|
1.134 | 24-Aug-2017 |
jmcneill | Add __HAVE_GENERIC_CPU_INITCLOCKS option. If set, don't export cpu_initclocks from device drivers as common code (in this case FDT) will provide its own copy.
|
1.133 | 28-Jun-2017 |
jmcneill | Add support for ARM Power State Coordination Interface (PSCI).
|
1.132 | 26-May-2017 |
jmcneill | branches: 1.132.2; Recognize Cortex-A57 FPU, GIC, and Generic Timer.
|
1.131 | 11-Nov-2015 |
skrll | Support pmap_pv_track and friends
|
1.130 | 07-Feb-2015 |
jmcneill | According to the Cortex-A5 TRM, the CBAR register is not implemented and always reads as 0x00000000. Add ARM_CBAR option to set this in kernel config.
|
1.129 | 01-Dec-2014 |
matt | Add CPU_CORTEXA17
|
1.128 | 26-Nov-2014 |
matt | branches: 1.128.2; Add option ARM_HAS_LPAE
|
1.127 | 14-Apr-2014 |
matt | branches: 1.127.2; Support (untested) SHEEVA_L2_CACHE and SHEEVA_L2_CACHE_WT options. Move prototypes out to <arm/cpufunc.h> to their own file. Add sdcache routines to cpufunc_asm_sheeva.S Add code sheeve_setup to init the sdcache and sdcache info.
|
1.126 | 30-Mar-2014 |
matt | branches: 1.126.2; Make the ARM pmap use ASIDs, split TTBRs, and MP safe. This only happens for ARMv6 or later CPUs. This means that on context switch that the TLBs and caches no longer to cleaned/flushed. Also, eXecute Never (XN) protection has been added so non-exec pages can not be run. Change the page size for ARMv6+ to be 8KB while allows a L1PT to be a normal page. This means that the L1PT is not special. Use the XN support to only sync pages that are executed from.
|
1.125 | 18-Mar-2014 |
matt | defflag VERBOSE_INIT_ARM
|
1.124 | 20-Feb-2014 |
matt | cpu_cortex doesn't need the arm11 cpufuncs any more
|
1.123 | 12-Nov-2013 |
matt | CPU_ARMV[67] imply ARM32_DISABLE_ALIGNMENT_FAULTS Make it explicit.
|
1.122 | 17-Aug-2013 |
matt | Nuke atomic.S since we have MI defined atomic ops
|
1.121 | 02-Jul-2013 |
matt | Rework to have CPU_PREARMV6, CPU_ARMV6, as well as CPU_ARMV7
|
1.120 | 22-Jun-2013 |
matt | branches: 1.120.2; File VBAR option
|
1.119 | 12-Jun-2013 |
matt | Add a ARM_HAS_VBAR option which forces the use of the VBAR register. This allows much code to deal with vector_page mappings to be eliminated. On a BEAGLEBONE kernel, this saves 8KB of text and instructions that never have to be executed. (The PJ4B has VBAR but doesn't implement the security extensions it is part of so a method was needed to allow it use VBAR with relying on the default test for the security extensions.)
|
1.118 | 12-Jun-2013 |
matt | Add CPU_ARMV7 and make CPU_PJ4B and CPU_CORTEX instantiate it.
|
1.117 | 19-May-2013 |
rkujawa | Make PJ4B support code compilable.
Obtained from Marvell, Semihalf.
|
1.116 | 14-Feb-2013 |
matt | Add BUSDMA_COUNTERS option
|
1.115 | 28-Jan-2013 |
matt | Disable bzero_page_vfp and bcopy_page_vfp since it really isn't any faster than memcpy.
|
1.114 | 10-Dec-2012 |
matt | Add code to use VFP(or Neon) instructions to zero or copy a page via pmap_zero_page and pmap_copy_page. (Not hooked into vfp_init yet). Requires FPU_VFP
|
1.113 | 05-Dec-2012 |
matt | ARMFPE hasn't compiled since NetBSD 4. Remove it. Complete support for FPU_VFP. fpregs now contains vfpreg. XXX vfpreg only has space for 16 64-bit FP registers though VFPv3 and later have 32 64-bit FP registers.
|
1.112 | 17-Oct-2012 |
matt | Add a PMAP_NEEDS_ALLOC_POOLPAGE / PMAP_ALLOC_POOLPAGE hook so systems can allocate pool pages from a specific VM freelist.
|
1.111 | 18-Sep-2012 |
matt | add _ARM32_NEED_BUS_DMA_BOUNCE to opt_arm_bus_space.h (It's not really a bus_space option but it's close enough).
|
1.110 | 29-Aug-2012 |
matt | branches: 1.110.2; Add core locator to mainbus. Add support for attaching multiple CPUs
|
1.109 | 29-Aug-2012 |
matt | Rename ARM options PROCESS_ID_IS_CUR{CPU,LWP} to TPIDRPRW_IS_CUR{CPU,LWP} since TPIDRPRW is the cp15 register name. Initialize it early in start along with CI_ARM_CPUID. Remove other initializations. We alays have ci_curlwp. Enable TIPRPRW_IS_CURCPU in std.beagle. [tested on a beaglboard (cortex-a8)]
|
1.108 | 12-Aug-2012 |
matt | Rework VFP support to use PCU. Add emulation of instruction which save/restore the VFP FPSCR. Add a sysarch hook to VFP FPSCR manipulation.
[The emulation will be used by libc to store/fetch exception modes and rounding mode on a per-thread basis.]
|
1.107 | 03-Aug-2012 |
matt | COMPAT_NETBSD32 support for ARM. Which is strange since ARM is already 32-bits. But the newer ARM ABI AAPCS changes the alignment of 64-bit fields so structures need to copied in and out to deal with the alignment change. This is a kludge but makes debugging of AAPCS support much easier.
|
1.106 | 21-Jul-2012 |
skrll | Add support for the ARM1176JZS
|
1.105 | 14-Jul-2012 |
matt | Add intrbase locator to mainbus.
|
1.104 | 13-Jul-2012 |
matt | Begin support for Cortex A5, A7, A15 and expand A8 and A9 definitions. Instead of testing all possible CPUids for a cortex, we know what range a cortex will be so mask out the insignificant parts and do a single test.
|
1.103 | 11-Dec-2011 |
kiyohara | branches: 1.103.2; Require arm3_cache_flush for ARM2/ARM250.
|
1.102 | 12-Jun-2011 |
rmind | branches: 1.102.2; 1.102.6; Welcome to 5.99.53! Merge rmind-uvmplock branch:
- Reorganize locking in UVM and provide extra serialisation for pmap(9). New lock order: [vmpage-owner-lock] -> pmap-lock.
- Simplify locking in some pmap(9) modules by removing P->V locking.
- Use lock object on vmobjlock (and thus vnode_t::v_interlock) to share the locks amongst UVM objects where necessary (tmpfs, layerfs, unionfs).
- Rewrite and optimise x86 TLB shootdown code, make it simpler and cleaner. Add TLBSTATS option for x86 to collect statistics about TLB shootdowns.
- Unify /dev/mem et al in MI code and provide required locking (removes kernel-lock on some ports). Also, avoid cache-aliasing issues.
Thanks to Andrew Doran and Joerg Sonnenberger, as their initial patches formed the core changes of this branch.
|
1.101 | 10-Mar-2011 |
bsh | branches: 1.101.2; Preliminary ARM11 MPCore support.
I have confirmed this commit doesn't affect existing evbarm kernels by comparing binaries.
|
1.100 | 02-Oct-2010 |
kiyohara | branches: 1.100.2; Add support Marvell Sheeva Core and SoC. (Orion/Kirkwood) Discovery Innovation not yet.
|
1.99 | 19-Jun-2010 |
matt | Cleanup the armv7 changes. Add ARM_ARCH_7. Use CPU_CORTEX instead of CPU_CORTEXA8 everywhere since there more types of Cortex than just the A8. CPU_CORTEXA8 still exists but causes CPU_CORTEX to be defined. Add CPU_CORTEXA9 as well. Use .arch armv7a to get us the isb/dsb instructions.
Test booted to root device prompt on a Beagleboard. All ARM kernels successfully test built.
|
1.98 | 16-Jun-2010 |
jmcneill | PR port-arm/43299: Support added for igepv2/cortexa8/omap3530
Apply patch from PR, with build fixes. ok skrll, matt
|
1.97 | 27-Dec-2009 |
uebayasi | branches: 1.97.2; 1.97.4; Add write-through cache work-around for ARM11 as well as ARM9/ARM10. Analyzed & tested on i.MX35 with help from Tsubai Masanari.
|
1.96 | 18-Jan-2009 |
bjh21 | Adapt the arm32 fusu implementation for use on PROG26 configurations and use it on acorn26.
|
1.95 | 18-Jan-2009 |
bjh21 | Move arch/arm/arm32/fusu.S to arch/arm/arm/fusu.S in preparation for making it usable on acorn26 as well.
|
1.94 | 19-Nov-2008 |
ad | Make the emulations, exec formats, coredump, NFS, and the NFS server into modules. By and large this commit:
- shuffles header files and ifdefs - splits code out where necessary to be modular - adds module glue for each of the components - adds/replaces hooks for things that can be installed at runtime
|
1.93 | 14-Oct-2008 |
matt | branches: 1.93.2; 1.93.8; Add FA526 support (compile tested only)
|
1.92 | 27-Aug-2008 |
matt | Add CPU_CORTEXA8
|
1.91 | 27-Apr-2008 |
matt | branches: 1.91.2; 1.91.6; Merge kernel changes in matt-armv6 to HEAD.
|
1.90 | 15-Mar-2008 |
rearnsha | branches: 1.90.2; 1.90.4; VFP support.
|
1.89 | 26-Jan-2008 |
chris | branches: 1.89.2; 1.89.6; Add arm version of cpu_in_cksum. Based on previous in_cksum4 code.
In fact it's mostly the same code, with a different stub on it.
On a cats the regress/sys/net/in_cksum tests show that it takes around 50-60% of the time the C version takes. In some cases it takes as low as 20%.
|
1.88 | 25-Jan-2008 |
joerg | Refactor in_cksum/in4_cksum/in6_cksum implementations: - All three functions are included in the kernel by default. They call a backend function cpu_in_cksum after possibly computing the checksum of the pseudo header. - cpu_in_cksum is the core to implement the one-complement sum. The default implementation is moderate fast on most platforms and provides a 32bit accumulator with 16bit addends for L32 platforms and a 64bit accumulator with 32bit addends for L64 platforms. It handles edge cases like very large mbuf chains (could happen with native IPv6 in the future) and provides a good base for new native implementations. - Modify i386 and amd64 assembly to use the new interface.
This disables the MD implementations on !x86 until the conversion is done. For Alpha, the portable version is faster.
|
1.87 | 06-Jan-2008 |
ad | Add MODULAR option. Include kernel linker stuff if MODULAR.
|
1.86 | 17-Oct-2007 |
garbled | branches: 1.86.2; 1.86.8; Merge the ppcoea-renovation branch to HEAD.
This branch was a major cleanup and rototill of many of the various OEA cpu based PPC ports that focused on sharing as much code as possible between the various ports to eliminate near-identical copies of files in every tree. Additionally there is a new PIC system that unifies the interface to interrupt code for all different OEA ppc arches. The work for this branch was done by a variety of people, too long to list here.
TODO: bebox still needs work to complete the transition to -renovation. ofppc still needs a bunch of work, which I will be looking at. ev64260 still needs to be renovated amigappc was not attempted.
NOTES: pmppc was removed as an arch, and moved to a evbppc target.
|
1.85 | 07-Jul-2007 |
tsutsui | branches: 1.85.6; 1.85.10; 1.85.12; Remove leftover netns stuff.
|
1.84 | 17-May-2007 |
yamt | merge yamt-idlelwp branch. asked by core@. some ports still needs work.
from doc/BRANCHES:
idle lwp, and some changes depending on it.
1. separate context switching and thread scheduling. (cf. gmcgarry_ctxsw) 2. implement idle lwp. 3. clean up related MD/MI interfaces. 4. make scheduler(s) modular.
|
1.83 | 09-Mar-2007 |
thorpej | branches: 1.83.2; 1.83.4; 1.83.8; 1.83.10; Rewrite the ARM mutex implementation to be of the simple-mutex variety. Because pre-v6 ARM lacks support for an atomic compare-and-swap, we implement _lock_cas() as a restartable atomic squence that is checked in the IRQ handler right before AST processing. (This is safe because, for all practical purposes, there are no SMP pre-v6 ARM systems.)
This can serve as a model for other non-MP platforms that lack the necessary atomic operations for mutexes (SuperH, for example).
Upshots of this change: - kmutex_t is now down to 8 bytes on ARM; about as good as we can get. - ARM2 systems don't have to trap and emulate SWP or SWPB for mutexes.
The acorn26 port is not updated by this commit to do the LOCK_CAS_CHECK. That is left as an exercise for the port maintainer.
Reviewed and tested by Matt Thomas.
|
1.82 | 06-Jan-2007 |
christos | branches: 1.82.2; Scott Allan in http://mail-index.netbsd.org/port-arm/2006/07/31/0000.html Patch to add support for ARM9E
|
1.81 | 11-Dec-2005 |
christos | branches: 1.81.20; 1.81.24; merge ktrace-lwp.
|
1.80 | 13-Sep-2005 |
christos | split compat_16 functions to their own file and make this compile again.
|
1.79 | 04-Jul-2005 |
bsh | branches: 1.79.2; The first step to support Intel PXA270.
kernel config option CPU_XSCALE_PXA2X0 is now obsoleted by CPU_XSCALE_PXA250 and CPU_XSCALE_PXA270. If both of them are defined, CPU is determined run-time.
|
1.78 | 03-Jun-2005 |
rearnsha | Very basic support for the ARM1136.
This code takes no advantage of any 'new' features provided by architecture 6 devices (such as physically tagged caches or new MMU features), and basically runs the chip in a 'legacy v5' mode.
|
1.77 | 03-Apr-2004 |
bsh | add an option to force ARM9 dcache to write-through mode.
|
1.76 | 05-Nov-2003 |
scw | Add "options ARM32_DISABLE_ALIGNMENT_FAULTS" to forcibly disable alignment fault checking if necessary.
This option gets the acorn32 port working again.
XXX: Richard Earnshaw suggested enabling alignment faults for XXX: userland only on acorn32. Need to investigate this.
|
1.75 | 23-Oct-2003 |
scw | Add a defflag for __BUS_SPACE_HAS_STREAM_METHODS, and add the appropriate glue in bus.h, contingent on the option being defined.
This allows stream methods to be available on a port-by-port basis.
|
1.74 | 11-Sep-2003 |
scw | Hand-optimised in_cksum/in4_cksum for ARM and XSCALE. Contributed by Wasabi Systems, with input from Chris Gilbert, Richard Earnshaw and David Laight.
|
1.73 | 06-Sep-2003 |
rearnsha | Add build-system support for ARM10.
|
1.72 | 23-May-2003 |
ichiro | branches: 1.72.2; support IXP425 Intel Network Processor running on BigEndian
|
1.71 | 21-May-2003 |
thorpej | Move the new pmap from arm32/pmap_new.c to arm32/pmap.c, fully replacing the old.
|
1.70 | 03-May-2003 |
thorpej | ARM32_PMAP_NEEDS_PTE_SYNC no longer exists.
|
1.69 | 28-Apr-2003 |
briggs | Add arm32 machine-specific remote kgdb support. Largely from PR port-arm/15530 by bsh@, but with some updates from me, including a fresh arm32/kgdb_machdep.c--ported from pc532.
|
1.68 | 21-Apr-2003 |
thorpej | Defflag XSCALE_CACHE_READ_WRITE_ALLOCATE and XSCALE_NO_COALESCE_WRITES.
|
1.67 | 18-Apr-2003 |
scw | Add the generic arm32 bits of the new pmap, contributed by Wasabi Systems.
Some features of the new pmap are:
- It allows L1 descriptor tables to be shared efficiently between multiple processes. A typical "maxusers 32" kernel, where NPROC is set to 532, requires 35 L1s. A "maxusers 2" kernel runs quite happily with just 4 L1s. This completely solves the problem of running out of contiguous physical memory for allocating new L1s at runtime on a busy system.
- Much improved cache/TLB management "smarts". This change ripples out to encompass the low-level context switch code, which is also much smarter about when to flush the cache/TLB, and when not to.
- Faster allocation of L2 page tables and associated metadata thanks, in part, to the pool_cache enhancements recently contributed to NetBSD by Wasabi Systems.
- Faster VM space teardown due to accurate referenced tracking of L2 page tables.
- Better/faster cache-alias tracking.
The new pmap is enabled by adding options ARM32_PMAP_NEW to the kernel config file, and making the necessary changes to the port-specific initarm() function. Several ports have already been converted and will be committed shortly.
|
1.66 | 29-Mar-2003 |
bsh | put options XSCALE_CACHE_WRITE_THROUGH into opt_cpuoptions.h. add XSCALE_CACHE_WRITE_BACK.
|
1.65 | 02-Jan-2003 |
thorpej | Clean up evbarm interrupt support a little: * Define an ARM_INTR_IMPL option, which specifies a header file describing the interrupt implementation for the platform. Use this instead of the list of EVBARM_BOARDTYPE checks. * Make the s3c2xx0 interrupt dispatch code a bit more generic, and move it to a generic location so that other platforms can use it.
This eliminates all uses of the EVBARM_BOARDTYPE stuff, so delete it.
|
1.64 | 19-Oct-2002 |
bsh | make atomic_{set,clear}_bit() inline for arm32 ports, and add <machine/atomic.h> for them.
|
1.63 | 11-Aug-2002 |
bjh21 | branches: 1.63.2; Move the arm32 copystr.S from arch/arm/arm32 to arch/arm/arm and add support for 26-bit modes (basically saving R14 when we might get a page fault). Use it on all ARM architectures now.
|
1.62 | 11-Aug-2002 |
bjh21 | New, improved version of copyin(), copyout(), and kcopy() by Allen Briggs. This version works on both 26-bit and 32-bit machines. For large copies, it's up to three times as fast as the old arm32 version and five times as fast as the old arm26 version. For small copies it seems to be even faster (getrusage() is apparently over ten times faster on an ARM610).
Hooray for Allen!
|
1.61 | 15-Jul-2002 |
ichiro | add support for ixp12x0
|
1.60 | 03-May-2002 |
rjs | branches: 1.60.2; 1.60.4; Add correct use of cpu types for SA1100 and SA1110.
|
1.59 | 03-May-2002 |
thorpej | Add the CPU_XSCALE_PXA2X0 option. From Hiroyuki Bessho, PR 16617.
|
1.58 | 12-Apr-2002 |
thorpej | Add some generic bus_space ops, which are pulled in by the "bus_space_generic" configuration attribute.
|
1.57 | 12-Apr-2002 |
thorpej | Centralize ARM CPU configuration information by adding a new header file, <arm/cpuconf.h>, which pulls in "opt_cputypes.h" and then defines the following: * CPU_NTYPES -- now many CPU types are configured into the kernel. What you really want to know is "== 1" or "> 1". * Defines ARM_ARCH_2, ARM_ARCH_3, ARM_ARCH_4, ARM_ARCH_5, depending on which ARM architecture versions are configured (based on CPU_* options). Also defines ARM_NARCH to determins how many architecture versions are configured. * Defines ARM_MMU_MEMC, ARM_MMU_GENERIC, ARM_MMU_XSCALE depending on which classes of ARM MMUs are configured into the kernel, and ARM_NMMUS to determine how many MMU classes are configured.
Remove the needless inclusion of "opt_cputypes.h" in several places. Convert remaining users to <arm/cpuconf.h>.
|
1.56 | 26-Mar-2002 |
thorpej | Restructure a few things in order to support other XScale core I/O processors: * The i80200 and the i80321 have the same CPU ID, so split the CPU_XSCALE option into CPU_XSCALE_80200 and CPU_XSCALE_80321 options, and don't let them both be defined at the same time. XXX May want to revisit this in the future. * Split some registers common between the i80200 and i80321 into <arm/xscale/xscalereg.h>. * Rename a few existing functions.
|
1.55 | 24-Mar-2002 |
bjh21 | arm26->acorn26 transition.
|
1.54 | 30-Jan-2002 |
thorpej | Add a sleep routine for the SA-11x0.
|
1.53 | 24-Jan-2002 |
briggs | Two changes for XScale: 1) Add defparam XSCALE_CCLKCFG to define a parameter for the CCLKCFG register. Default it to '9' on the IQ80310. 2) Add a sleep call to the xscale CPU function vector (replacing the nullop) which should drop the CPU into "idle" mode when cpu_switch finds nothing on the run queues.
|
1.52 | 17-Jan-2002 |
bjh21 | Separate out syscall() out into three parts: swi_handler() does stuff that all SWIs will need, then calls curproc->p_emul->e_syscall. syscall() handles native NetBSD system calls. linux_syscall() handles Linux system calls.
|
1.51 | 14-Jan-2002 |
bjh21 | Crude first cut at ARMLinux binary compatibility. Successfully runs "/emul/linux/bin/echo hello, world", dynamically linked.
|
1.50 | 12-Jan-2002 |
bjh21 | Combined syscall handler for all ARM ports. This is basically the arm32 version, made readable and compatible with arm26. In addition, this adds support for NetBSD/arm's newly allocated SWI range.
|
1.49 | 07-Jan-2002 |
bjh21 | On arm26, vectors.S needs to be at the start of the kernel text, so that it's on a page boundary and can be mapped straight into zero page. This means it has to be in MD_SFILES on arm26, and not in SFILES.
This probably leaves kernel_text in the wrong place, but it at least leaves the system bootable.
|
1.48 | 21-Dec-2001 |
bjh21 | Merge ast() and userret() between arm32 and arm26. The implementation used is the arm32 one.
|
1.47 | 20-Dec-2001 |
thorpej | * Share a common vector page between arm26 and arm32. * Use a common set of exception handlers for all arm32 platforms. * New FIQ framework based on discussions with Ben Harris, shared between arm26 and arm32.
|
1.46 | 28-Nov-2001 |
lukem | - convert usage of "defopt" to "defflag" where the relevant option does not support a value (e.g., it's to be used as "options FOO" instead of "options FOO=xxx"). options that take a value were converted to defparam recently. - minor whitespace & formatting cleanups
|
1.45 | 26-Nov-2001 |
thorpej | Move the interrupt-related file declarations into port-specific config descriptions so that each port choose whether or not to use it.
|
1.44 | 24-Nov-2001 |
thorpej | Make the ARM, Ltd. floating point emulator work w/ ELF.
|
1.43 | 24-Nov-2001 |
thorpej | Move the ARM, Ltd. floating point emulator to arch/arm.
|
1.42 | 22-Nov-2001 |
thorpej | Add 26-bit and 32-bit types.h files, which indicate the programming model in use for a given platform (__PROG26 vs __PROG32), then pulls in <arm/types.h>. Change each ARM port to pull in <arm/arm26/types.h> or <arm/arm32/types.h> as appropriate. Change all references to PROG26 and PROG32 to __PROG26 and __PROG32. Eliminate the opt_progmode.h header file.
|
1.41 | 20-Nov-2001 |
lukem | cleanup: options SPACE TAB makeoptions TAB psuedo-device TAB remove trailing whitespace replace multiple spaces -> tabs options "FOO" -> options FOO options "FOO=bar" -> options FOO=bar options "FOO=\"bar\"" -> options FOO="\"bar\""
|
1.40 | 10-Nov-2001 |
thorpej | branches: 1.40.2; Split all the model/version-specific cpufuncs into separate files corresponding to the model/version.
|
1.39 | 18-Oct-2001 |
rearnsha | branches: 1.39.2; Add CPU_ARM9 to opt_cputypes.h
|
1.38 | 05-Sep-2001 |
matt | Don't compile SPL/INTR stuff if NEWINTR is defined.
|
1.37 | 05-Aug-2001 |
chris | Share procfs_machdep.c across arm.
|
1.36 | 31-Jul-2001 |
matt | Add a CPU_XSCALE defopt (for eventual support).
|
1.35 | 28-Jul-2001 |
chris | Move the generic arm32 files into arm/arm32 from arm32/arm32, tested kernel builds on cats and riscpc.
|
1.34 | 10-Jul-2001 |
bjh21 | Purge CPU_ARM7500. Thanks to Reinoud's work, it's no longer needed.
|
1.33 | 08-Jul-2001 |
rjs | branches: 1.33.2; Initial copy of SA11x0 support from hpcarm.
|
1.32 | 18-Jun-2001 |
bjh21 | Merge arm32/dev/bus_space_notimpl.S and hpcarm/hpcarm/bus_space_notimpl.S into arm/arm/bus_space_notimpl.S. They were identical anyway.
This file has no excuse for being in assembler, but I'll leave that for another day.
|
1.31 | 05-Jun-2001 |
bjh21 | Replace arm/arm32/db_trace.c and arm26/arm26/db_trace.c with a unified version in arm/arm. This version is based on the arm26 version, and includes dumping the contents of stack frames, with automatic determination of the save code pointer offset.
|
1.30 | 03-Jun-2001 |
chris | Add support for ARM7TDMI, as provided in a patch from John Fremlin to port-arm32.
Shouldn't effect any currently in tree ports.
|
1.29 | 29-May-2001 |
bjh21 | Move blockio.S from sys/arch/arm32/arm32 to sys/arch/arm/arm, since I want to start using it on arm26.
hpcarm gets to keep its own version, since it's not identical and I haven't got an hpcarm box to test.
|
1.28 | 23-May-2001 |
chris | Create an asm based version of in4_cksum based on the sparc version.
Also don't compute psuedo header for nxt == 0
|
1.27 | 13-May-2001 |
bjh21 | strstr() is no longer used in the kernel. G/C it.
|
1.26 | 13-May-2001 |
bjh21 | Move get_bootconf_option() into a new file, sys/arch/arm/arm/bootconfig.c, since it's in no way machine-dependent. It's not really ARM-specific either, but I don't think it's useful enough to be made part of the MI kernel.
|
1.25 | 06-May-2001 |
bjh21 | Move "defopt PMAP_DEBUG" into files.arm, since it's used by code in arch/arm.
|
1.24 | 06-May-2001 |
bjh21 | Move cpufunc stuff from arm32/arm32 to arm/arm. The only change involved is to add recognition of the SA-1100 and SA-1110 for compatibility with hpcarm (which is now using this code as well).
|
1.23 | 20-Apr-2001 |
matt | Split cpu from mainbus so that cpu can attached to other buses (like ofbus).
|
1.22 | 14-Mar-2001 |
toshii | Move references to arm/arm/disksubr*.c from files.arm to files.{arm26,arm32,dnard}.
|
1.21 | 11-Mar-2001 |
bjh21 | "needs-flag" for cpu is no longer needed.
|
1.20 | 08-Mar-2001 |
bjh21 | Use the same undefined-instuction handler on both arm26 and arm32. The handler is derived mostly from the arm32 version, but with a check for an obscure ARM2 bug thrown in.
arm26 fpu and cpu drivers use the new interface for catching undefined instructions.
|
1.19 | 06-Mar-2001 |
matt | Move arm32/arm32/ast.c to arm/arm32/ast.c
|
1.18 | 05-Mar-2001 |
bjh21 | Move undefined.c from sys/arch/{arm32/arm32,hpcarm/hpcarm} to sys/arch/arm/arm in preparation for making it usable on arm26 as well.
|
1.17 | 04-Mar-2001 |
bjh21 | branches: 1.17.2; Merge setregs() from sys/arch/arm32/arm32/machdep.c, sys/arch/hpcarm/hpcarm/machdep.c and sys/arch/arm26/arm26/vm_machdep.c into sys/arch/arm/arm/arm_machdep.c.
|
1.16 | 04-Mar-2001 |
bjh21 | Make compat_13_sys_sigreturn() work on arm26, and move it from arch/arm/arm32/compat_13_machdep.c to arch/arm/arm/compat_13_machdep.c.
|
1.15 | 04-Mar-2001 |
matt | Move compat_13_machdep.c, strstr.c, copystr.S, bcopyinout.S, and bcopy_page.S to arm/arm32 and remove port-local copies.
|
1.14 | 04-Mar-2001 |
matt | disksubr*.c are now shared. Start moving files from ../../arm32/arm32
|
1.13 | 27-Feb-2001 |
bjh21 | Move "options ARMFPE" to files.arm, so generic ARM files can use it.
|
1.12 | 25-Feb-2001 |
bjh21 | Add PROG32 and PROG26 options.
These are intended to indicate what size of program space is in use, and hence how to get at the PSR bits. They're currently set automatically by the CPU type options.
|
1.11 | 25-Feb-2001 |
bjh21 | Allow "cpu" to have children. In the long term, this may be the best way to handle co-processors. In the short term, it's a necessary hack to get arm26 kernels to configure.
|
1.10 | 24-Feb-2001 |
reinoud | Moved the mainbus files to the arm/conf/file.arm from the arm32 and the hpcarm/conf/files.hpcarm
|
1.9 | 23-Feb-2001 |
reinoud | Big patch for merging common include files of the new hpcarm tree and the old arm32 tree into the new arm substree. All moved files are relinked with a stub that included the file from the new location; this might be done better later.
|
1.8 | 13-Feb-2001 |
bjh21 | Move cpu_coredump() from arm32/arm32/vm_machdep.c to arm/arm/vm_machdep_arm.c. Also ANSIfy it and use it on arm26.
|
1.7 | 13-Feb-2001 |
bjh21 | Move sendsig() and sys___sigreturn14() from arm26/arm26/vm_machdep.c and arm32/arm32/machdep.c into arm/arm/sig_machdep.c, merging and ANSIfying in the process.
The code is based on the arm32 version, so I don't think anything should break there.
|
1.6 | 11-Feb-2001 |
bjh21 | branches: 1.6.2; Shared ARM ptrace(2) implementation. Mostly the same as the arm32 version, but with some #ifdefs for arm26.
Also, don't define PT_STEP, since we don't implement it. This should reduce code size a little.
|
1.5 | 13-Jan-2001 |
bjh21 | Separate out sigcode into its own file, since it's shared by arm26 and arm32.
|
1.4 | 12-Jan-2001 |
bjh21 | Move db_disasm.c into sys/arch/arm/arm. Use arm26 version, since it should generate smaller compiled code.
|
1.3 | 12-Jan-2001 |
bjh21 | Move the generic ARM disassembler from arm32/arm32 to arm/arm.
|
1.2 | 11-Jan-2001 |
bjh21 | Start merging actual code in arm32 and arm26: arm32/arm32/in_cksum_arm32.c -> arm/arm/in_cksum_arm.c
Also move specification of other checksum stuff to files.arm, even though we use the MI code for that.
|
1.1 | 10-Jan-2001 |
bjh21 | Empty file to keep config happy.
|
1.6.2.4 | 23-Apr-2001 |
bouyer | Sync with HEAD.
|
1.6.2.3 | 27-Mar-2001 |
bouyer | Sync with HEAD.
|
1.6.2.2 | 12-Mar-2001 |
bouyer | Sync with HEAD.
|
1.6.2.1 | 11-Feb-2001 |
bouyer | file files.arm was added on branch thorpej_scsipi on 2001-03-12 13:27:21 +0000
|
1.17.2.2 | 21-Jun-2001 |
nathanw | Catch up to -current.
|
1.17.2.1 | 09-Apr-2001 |
nathanw | Catch up with -current.
|
1.33.2.7 | 06-Sep-2002 |
jdolecek | sync kqueue branch with HEAD
|
1.33.2.6 | 23-Jun-2002 |
jdolecek | catch up with -current on kqueue branch
|
1.33.2.5 | 11-Feb-2002 |
jdolecek | Sync w/ -current.
|
1.33.2.4 | 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.33.2.3 | 13-Sep-2001 |
thorpej | Update the kqueue branch to HEAD.
|
1.33.2.2 | 25-Aug-2001 |
thorpej | Merge Aug 24 -current into the kqueue branch.
|
1.33.2.1 | 03-Aug-2001 |
lukem | update to -current
|
1.39.2.1 | 12-Nov-2001 |
thorpej | Sync the thorpej-mips-cache branch with -current.
|
1.40.2.11 | 03-Jan-2003 |
thorpej | Sync with HEAD.
|
1.40.2.10 | 11-Nov-2002 |
nathanw | Catch up to -current
|
1.40.2.9 | 13-Aug-2002 |
nathanw | Catch up to -current.
|
1.40.2.8 | 01-Aug-2002 |
nathanw | Catch up to -current.
|
1.40.2.7 | 20-Jun-2002 |
nathanw | Catch up to -current.
|
1.40.2.6 | 17-Apr-2002 |
nathanw | Catch up to -current.
|
1.40.2.5 | 01-Apr-2002 |
nathanw | Catch up to -current. (CVS: It's not just a program. It's an adventure!)
|
1.40.2.4 | 28-Feb-2002 |
nathanw | Catch up to -current.
|
1.40.2.3 | 11-Jan-2002 |
nathanw | More catchup.
|
1.40.2.2 | 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.40.2.1 | 10-Nov-2001 |
nathanw | file files.arm was added on branch nathanw_sa on 2002-01-08 00:23:10 +0000
|
1.60.4.1 | 18-Nov-2002 |
he | Pull up revision 1.62 (requested by bjh21 in ticket #689): New and much improved version of copyin(), copyout(), and kcopy() which works on both 26-bit and 32-bit machines.
|
1.60.2.2 | 30-Aug-2002 |
gehenna | catch up with -current.
|
1.60.2.1 | 21-Jul-2002 |
gehenna | catch up with -current.
|
1.63.2.1 | 24-Oct-2002 |
bjh21 | Sync with trunk.
|
1.72.2.4 | 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.72.2.3 | 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.72.2.2 | 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.72.2.1 | 03-Aug-2004 |
skrll | Sync with HEAD
|
1.79.2.6 | 17-Mar-2008 |
yamt | sync with head.
|
1.79.2.5 | 04-Feb-2008 |
yamt | sync with head.
|
1.79.2.4 | 21-Jan-2008 |
yamt | sync with head
|
1.79.2.3 | 03-Sep-2007 |
yamt | sync with head.
|
1.79.2.2 | 26-Feb-2007 |
yamt | sync with head.
|
1.79.2.1 | 21-Jun-2006 |
yamt | sync with head.
|
1.81.24.1 | 21-Feb-2007 |
snj | branches: 1.81.24.1.4; Pull up following revision(s) (requested by matt in ticket #457): sys/arch/arm/include/cpufunc.h: revision 1.38 sys/arch/arm/arm/cpufunc.c: revision 1.78 sys/arch/arm/arm/cpufunc_asm_arm10.S: revision 1.6 sys/arch/arm/include/armreg.h: revision 1.37 sys/arch/arm/arm32/cpu.c: revision 1.64 sys/arch/arm/arm/cpufunc_asm_armv5.S: revision 1.3 sys/arch/arm/include/cpuconf.h: revision 1.13 sys/arch/arm/conf/files.arm: revision 1.82 sys/arch/arm/arm/cpufunc_asm_armv5_ec.S: revision 1.1 Scott Allan in http://mail-index.netbsd.org/port-arm/2006/07/31/0000.html Patch to add support for ARM9E
|
1.81.24.1.4.1 | 10-Nov-2007 |
matt | Add AT91 support from Sami Kantoluoto Add TI OMAP2430 support from Marty Fouts @ Danger Inc
|
1.81.20.1 | 12-Jan-2007 |
ad | Sync with head.
|
1.82.2.2 | 29-Mar-2007 |
skrll | Adapt arm32. Thanks to scw for helping out.
Tested on my cats (SA1)
XXX hydra should die. i've made some changes, but no guarantees.
|
1.82.2.1 | 12-Mar-2007 |
rmind | Sync with HEAD.
|
1.83.10.2 | 03-Oct-2007 |
garbled | Sync with HEAD
|
1.83.10.1 | 22-May-2007 |
matt | Update to HEAD.
|
1.83.8.2 | 19-Apr-2007 |
thorpej | Convert to the new atomic ops API.
|
1.83.8.1 | 18-Apr-2007 |
thorpej | Remove _lock_cas() in favor of atomic_cas_32().
|
1.83.4.1 | 11-Jul-2007 |
mjf | Sync with head.
|
1.83.2.2 | 15-Jul-2007 |
ad | Sync with head.
|
1.83.2.1 | 27-May-2007 |
ad | Sync with head.
|
1.85.12.5 | 23-Mar-2008 |
matt | sync with HEAD
|
1.85.12.4 | 28-Jan-2008 |
matt | Add arm/arm/softintr.c back. Contents conditionalized on __HAVE_FAST_SOFTINTS
|
1.85.12.3 | 09-Jan-2008 |
matt | sync with HEAD
|
1.85.12.2 | 12-Oct-2007 |
matt | arm11/armv6 changes.
|
1.85.12.1 | 29-Aug-2007 |
matt | Add CPU_ARM11[37]6 which force CPU_ARM11 on. Add cpufunc_asm_armv6.S
|
1.85.10.4 | 21-Mar-2008 |
chris | Sync with head.
|
1.85.10.3 | 27-Jan-2008 |
chris | Sync to HEAD.
|
1.85.10.2 | 20-Jan-2008 |
chris | Sync to HEAD.
|
1.85.10.1 | 01-Jan-2008 |
chris | Sync with HEAD.
|
1.85.6.1 | 28-Feb-2008 |
rjs | Sync with HEAD.
|
1.86.8.1 | 08-Jan-2008 |
bouyer | Sync with HEAD
|
1.86.2.1 | 18-Feb-2008 |
mjf | Sync with HEAD.
|
1.89.6.4 | 17-Jan-2009 |
mjf | Sync with HEAD.
|
1.89.6.3 | 28-Sep-2008 |
mjf | Sync with HEAD.
|
1.89.6.2 | 02-Jun-2008 |
mjf | Sync with HEAD.
|
1.89.6.1 | 03-Apr-2008 |
mjf | Sync with HEAD.
|
1.89.2.1 | 24-Mar-2008 |
keiichi | sync with head.
|
1.90.4.5 | 09-Oct-2010 |
yamt | sync with head
|
1.90.4.4 | 11-Aug-2010 |
yamt | sync with head.
|
1.90.4.3 | 11-Mar-2010 |
yamt | sync with head
|
1.90.4.2 | 04-May-2009 |
yamt | sync with head.
|
1.90.4.1 | 16-May-2008 |
yamt | sync with head.
|
1.90.2.1 | 18-May-2008 |
yamt | sync with head.
|
1.91.6.2 | 13-Dec-2008 |
haad | Update haad-dm branch to haad-dm-base2.
|
1.91.6.1 | 19-Oct-2008 |
haad | Sync with HEAD.
|
1.91.2.1 | 18-Sep-2008 |
wrstuden | Sync with wrstuden-revivesa-base-2.
|
1.93.8.1 | 15-Feb-2014 |
matt | Merge armv7 support from HEAD, specifically support for the BCM5301X and BCM56340 evbarm kernels.
|
1.93.2.1 | 19-Jan-2009 |
skrll | Sync with HEAD.
|
1.97.4.4 | 21-Apr-2011 |
rmind | sync with head
|
1.97.4.3 | 05-Mar-2011 |
rmind | sync with head
|
1.97.4.2 | 03-Jul-2010 |
rmind | sync with head
|
1.97.4.1 | 18-Mar-2010 |
rmind | Unify /dev/{mem,kmem,zero,null} implementations in MI code. Based on patch from Joerg Sonnenberger, proposed on tech-kern@, in February 2008.
Work and depression still in progress.
|
1.97.2.5 | 30-Oct-2010 |
uebayasi | Implement pmap_physload_device(9) to replace xmd(4) MD backend. Implement pmap_mmap(9) and use it from mem(4) and xmd(4).
|
1.97.2.4 | 22-Oct-2010 |
uebayasi | Sync with HEAD (-D20101022).
|
1.97.2.3 | 28-Aug-2010 |
uebayasi | xmd(4) glue for arm.
|
1.97.2.2 | 17-Aug-2010 |
uebayasi | Sync with HEAD.
|
1.97.2.1 | 28-Apr-2010 |
uebayasi | Initial implemention of bus_space_physload(9) for NetBSD/arm (only i.MX31 for now).
|
1.100.2.1 | 06-Jun-2011 |
jruoho | Sync with HEAD.
|
1.101.2.1 | 23-Jun-2011 |
cherry | Catchup with rmind-uvmplock merge.
|
1.102.6.1 | 18-Feb-2012 |
mrg | merge to -current.
|
1.102.2.4 | 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.102.2.3 | 16-Jan-2013 |
yamt | sync with (a bit old) head
|
1.102.2.2 | 30-Oct-2012 |
yamt | sync with head
|
1.102.2.1 | 17-Apr-2012 |
yamt | sync with head
|
1.103.2.1 | 09-Aug-2012 |
jdc | branches: 1.103.2.1.2; Pull up revisions: src/sys/arch/evbarm/dev/plcomreg.h revisions 1.2,1.3,1.4 src/sys/arch/evbarm/conf/INTEGRATOR revision 1.65 src/sys/arch/evbarm/dev/plcom.c revisions 1.34,1.35,1.36,1.37,1.38,1.39,1.40 src/sys/arch/evbarm/ifpga/plcom_ifpga.c revisions 1.12,1.13,1.14 src/sys/arch/evbarm/dev/plcomvar.h revisions 1.9,1.10,1.11 src/sys/arch/evbarm/ifpga/plcom_ifpgavar.h revision 1.2 src/sys/arch/arm/arm/cpufunc.c revisions 1.105,1.108 src/sys/arch/arm/arm32/cpu.c revision 1.79 src/sys/arch/arm/include/armreg.h revisions 1.49,1.54 src/sys/arch/arm/arm32/pmap.c revision 1.229 src/sys/arch/arm/arm32/arm32_machdep.c revision 1.77 src/sys/arch/arm/include/cpu.h revision 1.64 src/sys/arch/arm/arm/cpufunc_asm_arm1136.S revision 1.3 src/sys/arch/arm/arm/cpufunc_asm_arm11x6.S revision 1.1 src/sys/arch/arm/conf/files.arm revision 1.106 src/sys/arch/arm/include/cpufunc.h revision 1.57 src/sys/dev/sdmmc/sdhc.c revisions 1.14,1.24 src/sys/dev/sdmmc/sdhcvar.h revisions 1.7,1.8 src/sys/arch/evbarm/ifpga/ifpgareg.h revision 1.4 src/sys/arch/evbarm/integrator/integrator_machdep.c revision 1.69 src/sys/arch/arm/broadcom/bcm2835_dma.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_emmc.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_intr.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_intr.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835_obio.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_plcom.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_pm.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_pmvar.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835_space.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835_tmr.c revision 1.1 src/sys/arch/arm/broadcom/bcm2835reg.h revision 1.1 src/sys/arch/arm/broadcom/bcm2835var.h revision 1.1 src/sys/arch/arm/broadcom/bcm_amba.h revision 1.1 src/sys/arch/arm/broadcom/files.bcm2835 revision 1.1 src/sys/arch/evbarm/Makefile revision 1.9 src/sys/arch/evbarm/conf/RPI revision 1.1 src/sys/arch/evbarm/conf/files.rpi revision 1.1 src/sys/arch/evbarm/conf/mk.rpi revision 1.1 src/sys/arch/evbarm/conf/std.rpi revision 1.1 src/sys/arch/evbarm/rpi/genassym.cf revision 1.1 src/sys/arch/evbarm/rpi/rpi.h revision 1.1 src/sys/arch/evbarm/rpi/rpi_machdep.c revision 1.1 src/sys/arch/evbarm/rpi/rpi_start.S revision 1.1,1.2 src/etc/etc.evbarm/Makefile.inc revision 1.28 (requested by skrll in ticket #454).
don't mix #define<TAB> and #define<SPACE> in a file.
avoid warning with options PLCOM_DEBUG for INTEGRATOR.
Rename register values. No functional change - same code before and after.
Existing names are prefixed with PL01X_ where they're common between the PL010 and the PL011. The PL010_/PL011_ prefixes are added where they're found only on the respective chips.
Replace the simple_lock with a kmutex_t. Update the locking to match com(4) in the few places it didn't already.
DOH. Replace a line that got accidently deleted in the last commit.
device_t/softc split struct device * -> device_t struct cfdata * -> cfdata_t
Add the 'Z' to the 1176 cpu product name.
ok matt@
Fix locking botch introduced in 1.36.
Fix a KASSERT. From/OK'ed by matt@
Fix racy softint dispatch that lead to KASSERT(si->si_active) in softint_execute
Discussed with matt@. "Looks good to me"
Add the documented ARM11[37]6 Auxiliary control register defines.
Add support for the ARM1176JZS
Add a flag for the lack of LED_ON in HOST_CTL (ti omap3 doesn't do that).
Provide a method for attachments to specify capabilites.
Add support for the PL011 to plcom. Pull across a bunch of fixes from com(4) while I'm here and do some other tidyup.
Tested on a RaspberryPi.
PL010 not tested.
Initial commit of support for the RaspberryPI (www.raspberrypi.org)
This is enough for serial console via the gpio header pins and to get to multiuser.
A huge thank you to Matt Thomas for all his help.
Add RPI to KERNEL_SETS
Remove #if 0 code.
|
1.103.2.1.2.2 | 14-Feb-2013 |
matt | Add BUSDMA_COUNTERS option
|
1.103.2.1.2.1 | 28-Nov-2012 |
matt | Merge improved arm support (especially Cortex) from HEAD including OMAP and BCM53xx support.
|
1.110.2.5 | 03-Dec-2017 |
jdolecek | update from HEAD
|
1.110.2.4 | 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.110.2.3 | 23-Jun-2013 |
tls | resync from head
|
1.110.2.2 | 25-Feb-2013 |
tls | resync with head
|
1.110.2.1 | 20-Nov-2012 |
tls | Resync to 2012-11-19 00:00:00 UTC
|
1.120.2.2 | 18-May-2014 |
rmind | sync with head
|
1.120.2.1 | 28-Aug-2013 |
rmind | sync with head
|
1.126.2.1 | 10-Aug-2014 |
tls | Rebase.
|
1.127.2.1 | 21-Mar-2015 |
snj | Pull up following revision(s) (requested by jmcneill in ticket #598): sys/arch/arm/amlogic/amlogic_board.c: up to revision 1.9 sys/arch/arm/amlogic/amlogic_canvasreg.h: revision 1.1 sys/arch/arm/amlogic/amlogic_com.c: up to revision 1.4 sys/arch/arm/amlogic/amlogic_comreg.h: up to revision 1.3 sys/arch/arm/amlogic/amlogic_comvar.h: revision 1.1 sys/arch/arm/amlogic/amlogic_cpufreq.c: up to revision 1.2 sys/arch/arm/amlogic/amlogic_crureg.h: up to revision 1.7 sys/arch/arm/amlogic/amlogic_dwctwo.c: up to revision 1.2 sys/arch/arm/amlogic/amlogic_genfb.c: revision 1.1 sys/arch/arm/amlogic/amlogic_gmac.c: up to revision 1.2 sys/arch/arm/amlogic/amlogic_hdmireg.h: revision 1.1 sys/arch/arm/amlogic/amlogic_intr.h: up to revision 1.5 sys/arch/arm/amlogic/amlogic_io.c: up to revision 1.7 sys/arch/arm/amlogic/amlogic_reg.h: up to revision 1.9 sys/arch/arm/amlogic/amlogic_rng.c: revision 1.1 sys/arch/arm/amlogic/amlogic_sdhc.c: up to revision 1.3 sys/arch/arm/amlogic/amlogic_sdhcreg.h: revision 1.1 sys/arch/arm/amlogic/amlogic_space.c: revision 1.1 sys/arch/arm/amlogic/amlogic_var.h: up to revision 1.8 sys/arch/arm/amlogic/amlogic_vpureg.h: revision 1.1 sys/arch/arm/arm/bootconfig.c: revisions 1.7-1.8 sys/arch/arm/conf/files.arm: revision 1.129 sys/arch/arm/cortex/pl310.c: revisions 1.16-1.17 sys/arch/arm/cortex/a9_mpsubr.S: revisions 1.25-1.29 sys/arch/arm/cortex/a9tmr.c: revisions 1.8-1.12 sys/arch/arm/cortex/a9tmr_var.h: revision 1.4 sys/arch/arm/cortex/a9wdt.c: revisions 1.3-1.4 sys/arch/arm/cortex/armperiph.c: revisions 1.5-1.7 sys/arch/arm/arm/cpufunc.c: revision 1.151 sys/arch/arm/include/bootconfig.h: revision 1.7 sys/arch/arm/include/locore.h: revision 1.19 sys/arch/evbarm/amlogic/amlogic_machdep.c: up to revision 1.17 sys/arch/evbarm/amlogic/amlogic_start.S: up to revision 1.2 sys/arch/evbarm/amlogic/genassym.cf: revision 1.1 sys/arch/evbarm/amlogic/platform.h: revision 1.1 sys/arch/evbarm/conf/files.amlogic: up to revision 1.8 sys/arch/evbarm/conf/std.amlogic: up to revision 1.2 sys/arch/evbarm/conf/mk.amlogic: revision 1.1 sys/arch/evbarm/conf/ODROID-C1: up to revision 1.12 sys/arch/evarm/conf/ODROID-C1_INSTALL: revision 1.1 Don't use not as a variable since it's reserved in C++. -- clean the a9 l2 cache before turning it on. -- Add Cortex-A17 support -- Fix CORTEXA17 support -- Let the "cbar" device property override the cbar value, to work around broken bootloaders -- add a helper to update a9tmr frequency -- detach and re-attach timecounter when updating freq, and reinit timer on each cpu -- fix typo -- add BOOTOPT_TYPE_MACADDR for parsing mac address parameters -- make sure we set ACTLR.SMP=1 for CPU_CORTEXA5 in !MP case, ok matt@ -- According to the Cortex-A5 TRM, the CBAR register is not implemented and always reads as 0x00000000. Add ARM_CBAR option to set this in kernel config. -- skip a TLBIALL on Cortex-A5 that stops my odroid-c1 from booting, ok matt -- match on Cortex-A5 -- match on Cortex-A5 -- allow arml2cc to be used on Cortex-A5 if the "offset" property is specified -- print "A5" instead of "A9" at attach time if running on a Cortex-A5 -- Improve inline asm around dsb/dmb/isb: - always use volatile and mark them as memory barrier - use the common version from locore.h in all places not included from userland -- Work-in-progress Odroid-C1 support. -- no need to override ARM_CBAR, remove unused COM_16750 option -- Add basic serial console support. -- add dwctwo and usb devices -- ODROID-C1 SMP support. -- auto-detect RAM size -- ODROID-C1 onboard ethernet support. -- add amlogicrng, add commented-out genfb placeholder -- enable amlogicsdhc -- add ODROID-C1 install kernel -- Add CPUFREQ option to set boot CPU frequency. ODROID-C1 is advertised as quad-core 1.5GHz but boots up at 1.2GHz; add CPUFREQ=1512 to config and make sure to set the correct speed before attaching CPUs. The speed can still be scaled down with machdep.cpu sysctls. -- disable DEBUG, LOCKDEBUG, VERBOSE_INIT_ARM -- Basic framebuffer console support. Work in progress.
|
1.128.2.3 | 28-Aug-2017 |
skrll | Sync with HEAD
|
1.128.2.2 | 27-Dec-2015 |
skrll | Sync with HEAD (as of 26th Dec)
|
1.128.2.1 | 06-Apr-2015 |
skrll | Sync with HEAD
|
1.132.2.1 | 18-Jul-2017 |
snj | branches: 1.132.2.1.2; Pull up following revision(s) (requested by jmcneill in ticket #114): sys/arch/arm/samsung/exynos_intr.h: revision 1.3 sys/arch/arm/sunxi/sun8i_h3_ccu.c: revision 1.1 sys/arch/arm/sunxi/sun8i_h3_ccu.c: revision 1.2 sys/arch/arm/sunxi/sun8i_h3_ccu.c: revision 1.3 sys/arch/arm/sunxi/sunxi_gates.c: revision 1.1 distrib/utils/embedded/mkimage: revision 1.66 sys/arch/arm/sunxi/sun8i_h3_ccu.c: revision 1.4 sys/arch/arm/sunxi/sunxi_rsb.c: revision 1.1 sys/arch/arm/sunxi/sun8i_h3_ccu.c: revision 1.5 sys/arch/arm/sunxi/sun8i_h3_ccu.c: revision 1.6 sys/arch/arm/sunxi/sun8i_h3_ccu.c: revision 1.7 sys/dev/gpio/gpio.c: revision 1.59 sys/arch/arm/sunxi/sunxi_ccu_prediv.c: revision 1.1 sys/conf/Makefile.kern.inc: revision 1.257 sys/arch/evbarm/conf/ODROID-XU_INSTALL: file removal sys/arch/arm/sunxi/sunxi_ccu_prediv.c: revision 1.2 sys/conf/Makefile.kern.inc: revision 1.258 sys/arch/arm/fdt/psci_fdt.h: revision 1.1 sys/arch/arm/sunxi/sunxi_resets.c: revision 1.1 sys/arch/evbarm/conf/files.sunxi: revision 1.1 sys/arch/evbarm/fdt/fdt_machdep.c: revision 1.8 sys/arch/evbarm/fdt/fdt_machdep.c: revision 1.9 sys/arch/arm/samsung/files.exynos: revision 1.22 distrib/utils/embedded/conf/armv7.conf: revision 1.13 sys/arch/arm/samsung/files.exynos: revision 1.23 sys/arch/evbarm/conf/std.tegra: revision 1.15 distrib/utils/embedded/conf/armv7.conf: revision 1.14 sys/arch/arm/samsung/files.exynos: revision 1.24 distrib/utils/embedded/conf/armv7.conf: revision 1.15 sys/arch/evbarm/sunxi/genassym.cf: revision 1.1 sys/arch/arm/samsung/exynos_fdt.c: file removal sys/dev/fdt/fdt_pinctrl.c: revision 1.4 sys/arch/arm/samsung/exynos_sysmmu.c: revision 1.2 sys/arch/arm/sunxi/sun8i_h3_gpio.c: revision 1.1 sys/arch/arm/sunxi/sunxi_twi.c: revision 1.1 sys/dev/usb/ehci.c: revision 1.255 sys/arch/arm/sunxi/sunxi_twi.c: revision 1.2 sys/arch/arm/sunxi/sun8i_a83t_ccu.h: revision 1.1 sys/dev/ic/dwc_mmc.c: revision 1.11 sys/arch/arm/cortex/gic.c: revision 1.24 distrib/evbarm/instkernel/ramdisk/Makefile: revision 1.17 etc/etc.evbarm/Makefile.inc: revision 1.87 etc/etc.evbarm/Makefile.inc: revision 1.88 sys/arch/arm/fdt/gic_fdt.c: revision 1.5 etc/Makefile: revision 1.429 sys/arch/arm/fdt/gic_fdt.c: revision 1.6 sys/arch/arm/fdt/gic_fdt.c: revision 1.7 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.1 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.2 sys/arch/evbarm/conf/std.sunxi: revision 1.1 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.3 sys/arch/evbarm/conf/std.sunxi: revision 1.2 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.4 sys/arch/evbarm/conf/std.sunxi: revision 1.3 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.5 sys/arch/arm/sunxi/sunxi_ccu_div.c: revision 1.1 sys/dev/gpio/gpiovar.h: revision 1.17 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.6 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.7 sys/arch/arm/sunxi/sunxi_gpio.c: revision 1.8 sys/arch/arm/sunxi/sunxi_rsb.h: revision 1.1 sys/arch/arm/samsung/exynos_i2c.c: revision 1.12 sys/dev/fdt/fdtvar.h: revision 1.21 sys/arch/evbarm/sunxi/sunxi_start.S: revision 1.1 sys/arch/arm/samsung/exynos_i2c.c: revision 1.13 sys/dev/fdt/fdtvar.h: revision 1.22 sys/arch/evbarm/conf/SUNXI: revision 1.10 sys/dev/fdt/fdtvar.h: revision 1.23 sys/arch/evbarm/conf/SUNXI: revision 1.11 sys/dev/fdt/gpioleds.c: revision 1.1 sys/dev/fdt/fdtvar.h: revision 1.24 sys/arch/evbarm/conf/SUNXI: revision 1.12 sys/arch/evbarm/conf/SUNXI: revision 1.13 sys/arch/arm/cortex/gic.c: revision 1.30 sys/arch/evbarm/conf/SUNXI: revision 1.14 sys/arch/evbarm/conf/SUNXI: revision 1.15 sys/arch/evbarm/conf/SUNXI: revision 1.16 sys/arch/arm/sunxi/sunxi_emac.c: revision 1.1 etc/Makefile: revision 1.430 sys/arch/arm/sunxi/sunxi_emac.c: revision 1.2 etc/Makefile: revision 1.431 sys/arch/evbarm/conf/VEXPRESS_A15: revision 1.17 sys/arch/arm/sunxi/sunxi_emac.c: revision 1.3 sys/arch/arm/sunxi/sunxi_emac.c: revision 1.4 sys/arch/arm/samsung/exynos5422_clock.c: revision 1.6 sys/arch/arm/samsung/exynos_platform.c: revision 1.1 sys/dev/ofw/ofw_subr.c: revision 1.29 sys/arch/arm/samsung/exynos_platform.c: revision 1.2 sys/arch/evbarm/conf/mk.vexpress: revision 1.3 sys/arch/arm/samsung/exynos_platform.c: revision 1.3 sys/arch/evbarm/conf/mk.vexpress: revision 1.4 sys/arch/arm/samsung/exynos_platform.c: revision 1.4 sys/arch/arm/arm/psci.h: revision 1.1 sys/arch/arm/samsung/exynos_platform.c: revision 1.5 sys/arch/arm/samsung/exynos_platform.c: revision 1.6 sys/arch/evbarm/fdt/fdt_machdep.c: revision 1.10 external/bsd/mdocml/bin/mandoc/Makefile: revision 1.12 sys/dev/fdt/files.fdt: revision 1.17 sys/dev/fdt/files.fdt: revision 1.18 sys/dev/fdt/files.fdt: revision 1.19 sys/arch/arm/samsung/exynos_sscom.c: revision 1.8 sys/arch/arm/sunxi/sun8i_a83t_ccu.c: revision 1.1 sys/arch/arm/sunxi/sunxi_mmc.c: revision 1.1 sys/arch/arm/samsung/exynos_sscom.c: revision 1.9 sys/arch/arm/conf/files.arm: revision 1.133 sys/arch/arm/samsung/mct_var.h: revision 1.5 sys/arch/arm/sunxi/sunxi_platform.c: revision 1.1 sys/arch/arm/sunxi/sunxi_platform.c: revision 1.2 sys/arch/evbarm/conf/std.vexpress: revision 1.6 sys/arch/arm/sunxi/sunxi_platform.c: revision 1.3 sys/arch/arm/sunxi/sun6i_a31_gpio.c: revision 1.1 sys/arch/arm/sunxi/sunxi_platform.c: revision 1.4 sys/arch/arm/sunxi/sun6i_a31_gpio.c: revision 1.2 sys/arch/arm/sunxi/files.sunxi: revision 1.1 sys/dev/ofw/ofw_subr.c: revision 1.30 sys/arch/arm/sunxi/files.sunxi: revision 1.2 sys/dev/ofw/openfirm.h: revision 1.35 sys/arch/arm/sunxi/files.sunxi: revision 1.3 sys/dev/ofw/openfirm.h: revision 1.36 sys/arch/arm/sunxi/files.sunxi: revision 1.4 sys/arch/arm/sunxi/files.sunxi: revision 1.5 sys/arch/evbarm/exynos/exynos_machdep.c: file removal sys/arch/arm/sunxi/sunxi_gpio.h: revision 1.1 sys/arch/arm/samsung/sscom.c: revision 1.9 sys/arch/arm/sunxi/files.sunxi: revision 1.6 sys/dev/fdt/ohci_fdt.c: revision 1.1 sys/arch/arm/sunxi/sunxi_usbphy.c: revision 1.1 sys/arch/arm/sunxi/sunxi_gpio.h: revision 1.2 sys/arch/arm/sunxi/files.sunxi: revision 1.7 sys/arch/arm/sunxi/sunxi_usbphy.c: revision 1.2 sys/arch/arm/sunxi/sunxi_gpio.h: revision 1.3 sys/arch/arm/sunxi/files.sunxi: revision 1.8 sys/arch/arm/sunxi/sunxi_usbphy.c: revision 1.3 sys/arch/arm/sunxi/files.sunxi: revision 1.9 sys/arch/arm/samsung/exynos_sscom.c: revision 1.10 sys/arch/evbarm/conf/mk.tegra: revision 1.5 sys/arch/arm/samsung/exynos_dwcmmc.c: revision 1.4 sys/arch/evbarm/conf/mk.tegra: revision 1.6 sys/arch/evbarm/conf/EXYNOS: revision 1.15 sys/arch/evbarm/conf/EXYNOS: revision 1.16 sys/arch/evbarm/conf/EXYNOS: revision 1.17 sys/arch/arm/sunxi/sunxi_ccu.c: revision 1.1 sys/arch/evbarm/conf/EXYNOS: revision 1.19 sys/arch/arm/sunxi/sunxi_ccu.c: revision 1.2 sys/arch/arm/sunxi/sunxi_ccu.c: revision 1.3 sys/arch/arm/sunxi/sunxi_ccu.c: revision 1.4 sys/arch/arm/sunxi/sunxi_ccu.c: revision 1.5 sys/arch/arm/sunxi/sunxi_emac.h: revision 1.1 sys/arch/evbarm/conf/mk.sunxi: revision 1.1 sys/arch/evbarm/include/bootconfig.h: revision 1.7 sys/arch/evbarm/conf/TEGRA: revision 1.24 sys/arch/arm/arm/psci.c: revision 1.1 sys/dev/led.c: revision 1.1 sys/dev/led.c: revision 1.2 sys/arch/arm/arm/psci_arm.S: revision 1.1 sys/arch/arm/sunxi/sunxi_ccu_gate.c: revision 1.1 sys/arch/arm/sunxi/sunxi_ccu_gate.c: revision 1.2 sys/dev/fdt/ehci_fdt.c: revision 1.1 sys/dev/fdt/ehci_fdt.c: revision 1.2 sys/arch/arm/sunxi/sun6i_a31_ccu.h: revision 1.1 sys/arch/evbarm/conf/EXYNOS: revision 1.21 sys/arch/arm/sunxi/files.sunxi: revision 1.10 sys/arch/arm/sunxi/files.sunxi: revision 1.11 sys/dev/fdt/fdtbus.c: revision 1.14 sys/arch/arm/sunxi/sunxi_mmc.h: revision 1.1 sys/arch/arm/samsung/exynos5422_dma.c: file removal usr.bin/config/mkmakefile.c: revision 1.69 sys/conf/files: revision 1.1178 sys/arch/arm/sunxi/sunxi_platform.h: revision 1.1 sys/arch/evbarm/exynos/exynos_start.S: revision 1.4 sys/arch/arm/samsung/exynos_pinctrl.c: revision 1.11 sys/arch/arm/samsung/exynos_pinctrl.c: revision 1.12 sys/arch/arm/sunxi/sunxi_rtc.c: revision 1.1 sys/arch/arm/sunxi/sun8i_h3_ccu.h: revision 1.1 sys/arch/arm/samsung/exynos5410_clock.c: revision 1.1 sys/arch/arm/samsung/exynos5410_clock.c: revision 1.2 sys/arch/evbarm/conf/SUNXI: revision 1.1 external/bsd/elftosb/usr.sbin/elftosb/Makefile: revision 1.5 sys/arch/evbarm/conf/SUNXI: revision 1.2 sys/arch/arm/fdt/psci_fdt.c: revision 1.1 sys/arch/evbarm/conf/SUNXI: revision 1.3 sys/arch/evbarm/conf/SUNXI: revision 1.4 sys/arch/evbarm/conf/files.exynos: revision 1.3 sys/arch/evbarm/conf/SUNXI: revision 1.5 sys/arch/evbarm/conf/SUNXI: revision 1.6 sys/arch/arm/sunxi/sunxi_ccu_nm.c: revision 1.1 sys/dev/fdt/fixedfactorclock.c: revision 1.1 sys/dev/fdt/fdt_subr.c: revision 1.14 sys/arch/evbarm/conf/SUNXI: revision 1.7 sys/arch/arm/sunxi/sunxi_ccu_nm.c: revision 1.2 sys/arch/arm/sunxi/sun8i_a83t_gpio.c: revision 1.1 sys/dev/fdt/fdt_subr.c: revision 1.15 sys/arch/evbarm/conf/SUNXI: revision 1.8 sys/arch/arm/sunxi/sunxi_ccu_nm.c: revision 1.3 sys/dev/ic/dwc_mmc_reg.h: revision 1.6 sys/dev/fdt/fdt_subr.c: revision 1.16 sys/arch/evbarm/conf/SUNXI: revision 1.9 usr.bin/config/mkmakefile.c: revision 1.70 sys/dev/fdt/fdt_phy.c: revision 1.1 sys/arch/evbarm/conf/ODROID-XU: file removal sys/arch/arm/fdt/arm_fdt.c: revision 1.4 sys/arch/arm/samsung/exynos_reg.h: revision 1.14 sys/conf/files: revision 1.1180 sys/arch/arm/samsung/exynos_reg.h: revision 1.15 sys/arch/arm/sunxi/sunxi_ccu.h: revision 1.1 sys/arch/arm/sunxi/sunxi_ccu.h: revision 1.2 sys/arch/arm/sunxi/sunxi_ccu.h: revision 1.3 sys/arch/arm/sunxi/sunxi_ccu.h: revision 1.4 sys/arch/arm/sunxi/sunxi_ccu.h: revision 1.5 sys/arch/arm/sunxi/sunxi_ccu.h: revision 1.6 sys/dev/ic/dwc_mmc_var.h: revision 1.6 sys/arch/arm/samsung/exynos_combiner.c: revision 1.7 sys/arch/evbarm/exynos/platform.h: revision 1.2 sys/arch/arm/fdt/files.fdt: revision 1.12 sys/arch/evbarm/conf/std.exynos: revision 1.2 sys/arch/evbarm/conf/std.exynos: revision 1.3 sys/arch/arm/rockchip/rockchip_dwcmmc.c: revision 1.6 sys/arch/arm/sunxi/sunxi_com.c: revision 1.1 sys/dev/led.h: revision 1.1 sys/arch/evbarm/conf/std.exynos: revision 1.5 sys/arch/arm/sunxi/sunxi_com.c: revision 1.2 sys/arch/evbarm/conf/files.evbarm: revision 1.26 usr.bin/config/defs.h: revision 1.99 sys/arch/arm/fdt/arm_fdtvar.h: revision 1.6 sys/arch/arm/samsung/exynos_soc.c: revision 1.32 sys/arch/arm/sunxi/sun6i_a31_ccu.c: revision 1.1 sys/arch/arm/sunxi/sun6i_a31_ccu.c: revision 1.2 sys/arch/arm/samsung/mct.c: revision 1.11 sys/arch/evbarm/conf/ODROID-U: file removal sys/arch/arm/samsung/mct.c: revision 1.12 sys/arch/arm/sunxi/sunxi_ccu_nkmp.c: revision 1.1 sys/arch/arm/sunxi/sunxi_ccu_nkmp.c: revision 1.2 sys/arch/arm/sunxi/sunxi_ccu_nkmp.c: revision 1.3 sys/arch/arm/sunxi/sunxi_ccu_nkmp.c: revision 1.4 Get the EXYNOS kernel building again with recent FDT changes. Untested. Use arm_fdt_cpu_hatch and add mmu entry for DTB Fix exynos5 devmap, bootstrap, and implement early_putchar. Calculate UART frequency based on bootloader config. Fix KERNEL_BASE_PHYS (how did this ever work?) Avoid divide-by-zero for unconfigured PLLs Correctly initialize i2cbus attach args. Add delay and enable mct timecounter. Fix build w/o VERBOSE_INIT_ARM Remove ODROID-U and ODROID-XU kernel configs as they no longer work. - Replace CONSADDR with SSCOM2CONSOLE in example - Remove gtmr (Exynos5422 uses mct) - cinclude EXYNOS.local instead of TEGRA.local Use fdtbus_intr_establish to hook in block interrupts instead of intr_establish. Simplify MCT; just enable it and then attach an ARMv7 generic timer. Add support for building DTB files during kernel build, from christos. build vexpress-v2p-ca15-tc1.dtb with the kernel build tegra124-apalis-eval.dtb, tegra124-jetson-tk1.dtb, tegra124-nyan-big.dtb, tegra124-nyan-blaze.dtb, and tegra124-venice2.dtb with the kernel Allow multiline makeoptions to work by quoting the newline.. Bump for quoting makeoptions with multiple lines. un-c99 bump required config version for multiline makeoptions feature Set DTS makeoption in kernel config Assign DTB files to a variable so we can make -V DTB put the dtb files with their kernels. no need for debug printing. Don't assume that CPU index = GIC CPU interface number. We can determine the current CPU interface number by reading from the read-only GICD_ITARGETSR0 through GICD_ITARGETSR7 registers. This gets interrupts working on Exynos 5422, where the boot processor has GIC CPU interface #4. use -v to get the expanded variable. Use -v to get the expanded variables. Get baud rate from sclk_uartN instead of uartN. Print IRQ number at attach. Fix PLL con0 register locations and add uart clocks Disable exyortc for now, it doesn't work. More or less a rewrite of dwc_mmc, based on awin_mmc, adding DMA support. Update for new dwc_mmc driver Fix dmesg Add Exynos 5410 clock controller driver. Fix a few typos in clock parent names for mmc clocks. From jmcneill@ Update for new dwc_mmc driver Implement platform reset for exynos5 Attach fdtbus to a /clocks node with no compatible string. Add support for ARM Power State Coordination Interface (PSCI). Support interrupt sharing. Add initial support for Allwinner H3 SoC. ARM Trusted Firmware reserves SGIs 8-15 for secure use. Even without ATF, U-Boot on some platforms may use SGIs in this range for the PSCI implementation. Change ARMGIC_IPI_BASE to 0 from (16 - NIPI) and add a compile-time assert to ensure that we don't end up with a conflict. Add H3 MMC support SD/MMC clock fixes Add FDT PHY interface. Add glue for generic ehci/ohci bindings. Rename a variable, NFC. Support parents in different clock domains. Add USB stuff. Doesn't quite work yet. Synopsys DesignWare APB UART needs "options COM_AWIN" for now. Add i2c glue. Add RTC driver. PHY registers start at index 1. Now USB works. Don't allow sharing edge and level triggered interrupts. Add arm_fdt_memory_dump helper for dumping physical addresses from ddb Print clocks with aprint_debug Remove unused defines Add fdtbus_get_string helper Add of_search_compatible, which searches an array of compat_data structures for a matching "compatible" entry matching the supplied OFW node. This allows us to associate data with compatible strings. Add driver for Allwinner Gigabit Ethernet (EMAC) as found in sun8i and later family SoCs. This is a port of my FreeBSD driver which has been confirmed to work on Allwinner H3, A83T, and A64 SoCs. Fix dmesg Add basic support for Allwinner A31. Add basic FDT GPIO support. Fix the pinctrl api to match the spec. A pinctrl config can have more than one xref, and an xref may have specifier data associated with it. Enable sunxi pinctrl support Adjust to new pinctrl API Add P2WI/RSB driver, based on awin_p2wi.c. Fix typo in a compat string. Configure pin defaults at attach No need to explicitly set pinctrl config 0 now Fix some register definitions. Disallow sharing between MPSAFE and non-MPSAFE handlers. Add of_match_compat_data. This routine searches an array of compat_data structures for a matching "compatible" entry matching the supplied OFW node. Add options __HAVE_CPU_UAREA_ALLOC_IDLELWP Add support for reserved memory and MEMORY_DISK_DYNAMIC for FDT-based kernels. the extent code cannot use the full range of u_long, so ignore the last page before 4GB too. ok jmcneill@ Copy install ramdisk to releasedir. Provide both a raw ffs and Legacy U-Boot version of it. Replace HUMMINGBIRD_A31 with SUNXI kernel on armv7.img and include .dtb files for SUNXI and TEGRA kernels on the MSDOS partition. Let the controller provide a default name for pins. This makes pins easier to locate when we have multiple banks and a variable number of pins per bank. Attach gpio(4) to sunxigpio Test for kernel build directory before reading DTB list Add support for Allwinner A83T SoC. Add A83T files Fixup busdma sync and locking in the RX path. Disable batch RX/TX ints. Fix AHB2 register definition and explicitly set AHB2 parent to PLL_PERIPH0/2 -- this gives us 50% more bus bandwidth for emac Restore TX_INTERVAL_DEFAULT to 64 Drop the sunxi_emac_rx_batch feature. It was originally designed to reduce the amount of mutex unlock/lock cycles during the RX path on FreeBSD and if_input, but it is not required to drop the lock before calling if_percpuq_enqueue on NetBSD. Write back the data value instead of mask in sunxi_gpio_write Add a helper for exposing LED controls via sysctl. Add GPIO LED driver. add gpioleds Add misc. gates and resets driver, and explicitly enable PIO clocks at attach. Add fdtbus_get_string_index helper. Add driver for fixed-factor clocks. Add ffclock Remove the requirement for ehci to attach after companion devices. "go for it" - skrll@ Remove the hack to find companion devices and just assume 1 companion if ETTF flag is not set. Remove pass numbers for ehci/ohci now that the attach order no longer matters Use unsigned char for ctype functions, suggested by christos Add : to body of populate_sunxi to appease bash. port-evbarm/52388: Fix number of args to a debug printf.
|
1.132.2.1.2.1 | 13-Dec-2017 |
matt | Add a few more Cortex (A35, etc.)
|
1.138.2.8 | 26-Dec-2018 |
pgoyette | Sync with HEAD, resolve a few conflicts
|
1.138.2.7 | 26-Nov-2018 |
pgoyette | Sync with HEAD, resolve a couple of conflicts
|
1.138.2.6 | 20-Oct-2018 |
pgoyette | Sync with head
|
1.138.2.5 | 30-Sep-2018 |
pgoyette | Ssync with HEAD
|
1.138.2.4 | 27-Sep-2018 |
pgoyette | WIP - clean up some of the Makefiles and conf/files stuff for the netbsd32 modules.
|
1.138.2.3 | 27-Sep-2018 |
pgoyette | (Try to) move the arm-specific compat_netbsd32_machdep stuff to the arm directory, not in acorn32!
XXX We still need to come back and hook up the _13 and _16 code!
|
1.138.2.2 | 06-Sep-2018 |
pgoyette | Sync with HEAD
Resolve a couple of conflicts (result of the uimin/uimax changes)
|
1.138.2.1 | 07-Apr-2018 |
pgoyette | Sync with HEAD. 77 conflicts resolved - all of them $NetBSD$
|
1.139.2.3 | 21-Apr-2020 |
martin | Sync with HEAD
|
1.139.2.2 | 08-Apr-2020 |
martin | Merge changes from current as of 20200406
|
1.139.2.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
1.149.2.3 | 29-Feb-2020 |
ad | Sync with head.
|
1.149.2.2 | 25-Jan-2020 |
ad | Sync with head.
|
1.149.2.1 | 17-Jan-2020 |
ad | Sync with head.
|
1.153.4.1 | 20-Apr-2020 |
bouyer | Sync with HEAD
|
1.13 | 03-Dec-2007 |
ad | Interrupt handling changes, in discussion since February:
- Reduce available SPL levels for hardware devices to none, vm, sched, high. - Acquire kernel_lock only for interrupts at IPL_VM. - Implement threaded soft interrupts.
|
1.12 | 19-Sep-2006 |
he | branches: 1.12.8; 1.12.24; 1.12.26; 1.12.28; 1.12.30; 1.12.36; Convert the NetBSD/cats port to use generic TODR.
This gets rid of the now-unneded "todclock" and "todservice" attributes from the footbridge device files, which should allow netwinder to build again after its conversion to generic TODR.
Resulting kernel verified to boot up OK on gxemul (after my recent fixes of the gxemul package to emulate free-running timers).
|
1.11 | 03-Jan-2003 |
thorpej | branches: 1.11.18; 1.11.48; 1.11.50; Use the generic irq_dispatch.S
|
1.10 | 03-Nov-2002 |
chris | Checkin new interrupt handling code for the footbridge. This is based upon Jason's work on xscale.
Most of the interrupt handling code is now written in C using an asm stub to call into the C code.
spl* now only updates a software mask, and does not update the hardware, this should be much faster.
The new code works well on cats, it's untested on netwinder, but should work.
The code implements generic soft interrupts.
More work is still required to bring the isa interrupt handling code upto scratch currently all isa interrupts are handled at IPL_BIO on the footbridge. This may cause isa interrupts to be handled later than they should be. I plan to fix this in the near future.
|
1.9 | 18-Oct-2002 |
thorpej | branches: 1.9.2; Make sure the footbridge device has the interface attribute.
|
1.8 | 12-Apr-2002 |
thorpej | Use the bus_space_generic bus space ops.
|
1.7 | 10-Apr-2002 |
thorpej | G/c FOOTBRIDGE option.
|
1.6 | 28-Nov-2001 |
lukem | - convert usage of "defopt" to "defflag" where the relevant option does not support a value (e.g., it's to be used as "options FOO" instead of "options FOO=xxx"). options that take a value were converted to defparam recently. - minor whitespace & formatting cleanups
|
1.5 | 20-Jun-2001 |
chris | branches: 1.5.2; 1.5.4; 1.5.10; Remove defopt EBSA285. Move the files from footbridge that are cats specific. Remove EBSA285 kernel as people should be able to use the generic cats kernel for EBSA285 systems.
|
1.4 | 12-Jun-2001 |
matt | Move netwinder_machdep.c to files.netwinder. Eliminate opt_netwinder.h and use #ifdef netwinder insead. XXX ebsa285_machdep.c should move to the cats directory and files.cats
|
1.3 | 11-Jun-2001 |
chris | Move defopt FOOTBRIDGE to where it really should be in files.footbridge, which is where I should have left it.
|
1.2 | 09-Jun-2001 |
chris | Move the footbridge dir out of arm32 into arm.
|
1.1 | 23-May-2001 |
chris | Add a files.footbridge for inclusion by cats and netwinder. This is to make moving of the footbridge dir easier (when it eventually moves from arm32)
Also remove EBSA285 defopt from the netwinder file as the netwinder isn't an eval board.
|
1.5.10.6 | 03-Jan-2003 |
thorpej | Sync with HEAD.
|
1.5.10.5 | 11-Nov-2002 |
nathanw | Catch up to -current
|
1.5.10.4 | 18-Oct-2002 |
thorpej | Sync with HEAD.
|
1.5.10.3 | 17-Apr-2002 |
nathanw | Catch up to -current.
|
1.5.10.2 | 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.5.10.1 | 20-Jun-2001 |
nathanw | file files.footbridge was added on branch nathanw_sa on 2002-01-08 00:23:10 +0000
|
1.5.4.2 | 23-Jun-2002 |
jdolecek | catch up with -current on kqueue branch
|
1.5.4.1 | 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.5.2.1 | 21-Jun-2001 |
nathanw | Catch up to -current.
|
1.9.2.1 | 09-Nov-2002 |
bjh21 | Catch up with -current.
|
1.11.50.1 | 22-Oct-2006 |
yamt | sync with head
|
1.11.48.1 | 18-Nov-2006 |
ad | Sync with head.
|
1.11.18.2 | 07-Dec-2007 |
yamt | sync with head
|
1.11.18.1 | 30-Dec-2006 |
yamt | sync with head.
|
1.12.36.1 | 08-Dec-2007 |
mjf | Sync with HEAD.
|
1.12.30.1 | 09-Jan-2008 |
matt | sync with HEAD
|
1.12.28.3 | 01-Jan-2008 |
chris | Make branch build again following sync to head.
|
1.12.28.2 | 01-Jan-2008 |
chris | Sync with HEAD.
|
1.12.28.1 | 11-Aug-2007 |
chris | Initial check-in of reworked arm interrupt routines.
Main things to note on this branch: * spl routines are inlined, less complex, and small (kernel drops in size) * interrupts are handled in priority order (for most things it doesn't matter, but pending ipls are used to determine if there is any work to do) * arm_irqhandler.c is derived from footbridge_irqhandler.c, which was based on work by thorpej. * The code tries to touch hardware as little as possible. * spl masks are no longer tracked, as the system is based on pending ipls
The shared code uses global ipl lists to track which interrupt handlers are attached to which ipl (arm_iplq[]).
Interrupt sources register with the common code to indicate: * how many irq lines they have * a function to set the hardware mask. * call arm_intr_claim and arm_intr_disestablish to setup handlers
When an interrupt occurs the ipl is flagged as pending, in ipls_pending. If it can be handled at the current_ipl_level the code does so. If it can't be handled it's left until the current_ipl_level drops.
As the ipl level changes down a quick test is made of the new ipl level against the ipls_pending value. If an ipl is pending arm_intr_splx_lifter is called to handle the pending ipls.
It should be noted that all interrupts are left enabled at the hardware level, interrupts are only masked when they occur. They are only re-enabled after it's interrupt handler is called. Hardware masks are not changed at any other time.
Soft interrupts are treated the same as hardware interrupts, they register as a provider, and do not get treated specially. All the soft interrupt handlers are placed onto the relevant global ipl queue, the same as hard interrupts handlers.
At the moment only footbridge within a cats has been updated to use the new handling.
Todo: * change the handling of interrupts, so that the hardware doesn't register a routine to fetch the hardware status. Instead is makes a call which provides the mask. This removes the primary flag when registering an interrupt provider. It also makes more sense with multiple interrupt sources. * Arm v5 has the clz asm, which could be used instead of the carefully hand rolled arm_intr_fls function. * switch cats isa support to use this framework. * switch iomd and acorn32 to use this framework. * switch shark to use this framework. * port any other arm platforms that are interested * examine overlaps between this code and ppcoea-renovation branch. * add support for different trigger types (Edge, level, pulse, etc)
(note that iomd and shark currently touch hardware on every spl change, hence why they're targets to port)
|
1.12.26.1 | 09-Dec-2007 |
jmcneill | Sync with HEAD.
|
1.12.24.1 | 26-Dec-2007 |
rjs | Sync with HEAD.
|
1.12.8.1 | 03-Dec-2007 |
ad | Sync with HEAD.
|
1.6 | 08-Jan-2007 |
ichiro | branches: 1.6.20; move devices entry to MD/conf/files.* catch up to current kernel configuration
|
1.5 | 14-Apr-2003 |
rjs | branches: 1.5.18; 1.5.48; Remove membase and memsize device config parameters.
|
1.4 | 19-Jul-2002 |
ichiro | make compile "IPAQ"
|
1.3 | 16-Apr-2002 |
thorpej | branches: 1.3.2; * Move the mii_bitbang attribute into dev/mii/files.mii * Pull in dev/mii/files.mii from conf/files, rather than playing the magic "files include order" dance in N machine-dependent configuration definitions.
|
1.2 | 30-Jul-2001 |
rjs | branches: 1.2.6; Remove unused LCD definitions.
|
1.1 | 08-Jul-2001 |
rjs | branches: 1.1.2; Initial copy of SA11x0 support from hpcarm.
|
1.1.2.3 | 06-Sep-2002 |
jdolecek | sync kqueue branch with HEAD
|
1.1.2.2 | 23-Jun-2002 |
jdolecek | catch up with -current on kqueue branch
|
1.1.2.1 | 03-Aug-2001 |
lukem | update to -current
|
1.2.6.3 | 01-Aug-2002 |
nathanw | Catch up to -current.
|
1.2.6.2 | 20-Jun-2002 |
nathanw | Catch up to -current.
|
1.2.6.1 | 30-Jul-2001 |
nathanw | file files.sa11x0 was added on branch nathanw_sa on 2002-06-20 03:38:07 +0000
|
1.3.2.1 | 21-Jul-2002 |
gehenna | catch up with -current.
|
1.5.48.1 | 12-Jan-2007 |
ad | Sync with head.
|
1.5.18.1 | 26-Feb-2007 |
yamt | sync with head.
|
1.6.20.1 | 06-Oct-2007 |
rjs | Switch to new interrupt code.
|
1.3 | 10-Nov-2001 |
thorpej | branches: 1.3.2; This file is not used.
|
1.2 | 05-Sep-2001 |
matt | branches: 1.2.4; 1.2.6; Add an obio bus.
|
1.1 | 26-Aug-2001 |
matt | files file for xscale (i80312 aka iopxs)
|
1.2.6.1 | 12-Nov-2001 |
thorpej | Sync the thorpej-mips-cache branch with -current.
|
1.2.4.3 | 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.2.4.2 | 13-Sep-2001 |
thorpej | Update the kqueue branch to HEAD.
|
1.2.4.1 | 05-Sep-2001 |
thorpej | file files.xscale was added on branch kqueue on 2001-09-13 01:13:08 +0000
|
1.3.2.1 | 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.5 | 23-Aug-2015 |
uebayasi | Don't need to specify OUTPUT_FORMAT/OUTPUT_ARCH.
|
1.4 | 01-Sep-2012 |
matt | branches: 1.4.2; 1.4.16; Add missing ;
|
1.3 | 29-Aug-2012 |
matt | Add __stub_start and __stub_end symbols.
|
1.2 | 11-Dec-2005 |
christos | branches: 1.2.98; 1.2.114; 1.2.122; merge ktrace-lwp.
|
1.1 | 13-Sep-2004 |
chs | branches: 1.1.2; 1.1.4; work around a binutils bug where converting ELF kernels to a.out with objcopy produces corrupted binaries when the link_set_* sections extend into another page after the end of the .text section by using a generated an ldscript that puts all the link_set_* data into the .text section in the first place.
|
1.1.4.4 | 22-Sep-2004 |
skrll | Fix.
|
1.1.4.3 | 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.1.4.2 | 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.1.4.1 | 13-Sep-2004 |
skrll | file kern.ldscript.head was added on branch ktrace-lwp on 2004-09-18 14:32:23 +0000
|
1.1.2.2 | 13-Sep-2004 |
tron | Pull up revision 1.1 (requested by chs in ticket #843): work around a binutils bug where converting ELF kernels to a.out with objcopy produces corrupted binaries when the link_set_* sections extend into another page after the end of the .text section by using a generated an ldscript that puts all the link_set_* data into the .text section in the first place.
|
1.1.2.1 | 13-Sep-2004 |
tron | file kern.ldscript.head was added on branch netbsd-2-0 on 2004-09-13 17:32:39 +0000
|
1.2.122.1 | 28-Nov-2012 |
matt | Merge improved arm support (especially Cortex) from HEAD including OMAP and BCM53xx support.
|
1.2.114.1 | 30-Oct-2012 |
yamt | sync with head
|
1.2.98.1 | 15-Feb-2014 |
matt | Merge armv7 support from HEAD, specifically support for the BCM5301X and BCM56340 evbarm kernels.
|
1.4.16.1 | 22-Sep-2015 |
skrll | Sync with HEAD
|
1.4.2.1 | 03-Dec-2017 |
jdolecek | update from HEAD
|
1.4 | 30-Jan-2014 |
matt | Put EHABI exception tables at the end of text. provide __exidx_start and __exidx_end symbols.
|
1.3 | 24-Dec-2013 |
matt | Make sure _edata is aligned to a 8-byte boundary.
|
1.2 | 11-Dec-2005 |
christos | branches: 1.2.98; 1.2.114; 1.2.124; 1.2.130; merge ktrace-lwp.
|
1.1 | 13-Sep-2004 |
chs | branches: 1.1.2; 1.1.4; work around a binutils bug where converting ELF kernels to a.out with objcopy produces corrupted binaries when the link_set_* sections extend into another page after the end of the .text section by using a generated an ldscript that puts all the link_set_* data into the .text section in the first place.
|
1.1.4.4 | 22-Sep-2004 |
skrll | Fix.
|
1.1.4.3 | 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.1.4.2 | 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.1.4.1 | 13-Sep-2004 |
skrll | file kern.ldscript.tail was added on branch ktrace-lwp on 2004-09-18 14:32:23 +0000
|
1.1.2.2 | 13-Sep-2004 |
tron | Pull up revision 1.1 (requested by chs in ticket #843): work around a binutils bug where converting ELF kernels to a.out with objcopy produces corrupted binaries when the link_set_* sections extend into another page after the end of the .text section by using a generated an ldscript that puts all the link_set_* data into the .text section in the first place.
|
1.1.2.1 | 13-Sep-2004 |
tron | file kern.ldscript.tail was added on branch netbsd-2-0 on 2004-09-13 17:32:39 +0000
|
1.2.130.1 | 18-May-2014 |
rmind | sync with head
|
1.2.124.1 | 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.2.114.1 | 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.2.98.1 | 15-Feb-2014 |
matt | Merge armv7 support from HEAD, specifically support for the BCM5301X and BCM56340 evbarm kernels.
|
1.42 | 29-Jun-2021 |
nia | Remove uscanner(4) driver
This exists for compatibility with a Linux interface which was apparently deprecated in Linux 2.6. There are various mailing list threads going back to 2004 where the usefulness of this driver is discussed, but the conclusion is that scanner software has all moved to using ugen(4) instead, and enabling this driver will not help you scan things.
|
1.41 | 04-Apr-2020 |
jdolecek | branches: 1.41.8; mark nsmb major obsolete
|
1.40 | 29-Jan-2020 |
maya | remove urio(4), a driver for the Rio500 MP3 player.
At this point it is highly unlikely this 1999 device still has users, but it still comes up in the context of maxv's USB-fuzzing (and any device could pretend to be a urio(4)), so it's best to get rid of it.
Renamed all major entries to obsolete, as was done in previous removals.
This still requires an update to sanitizers, but they're located in "external", perhaps it should be first committed upstream?
Proposed on tech-kern a month ago.
|
1.39 | 28-Jan-2019 |
dholland | branches: 1.39.6; Systematize handling of removed drivers.
- Every driver that was removed and whose number hasn't already been reused is now listed with a commented-out "obsolete" line. - The format of these has been systematized. Future format changes can probably be safely done with a script. - This does not include a few cases of assignments that only lasted a couple days, or stuff from before major reorgs. Some of these may be included nonetheless, because there was a lot of ground to cover and therefore not a lot of time to dig into history in detail.
Note that the obsolete listings do not mean the major numbers can never be reused; that's up to portmasters and/or core. It does mean that they won't be reused by accident, however, which in some cases (depending on the driver, how widely used it was, its family of device nodes, their default permissions, etc.) can be quite dangerous.
Note that some of the things now explicitly listed as obsolete are really ancient history. My scan went back as far as when the majors files were added. (But not before that.)
|
1.38 | 23-Sep-2018 |
maxv | Remove ISDN from the kernel. It has remained unmaintained for a long time, is of poor quality, and is now an obstacle to MP-ification. It was removed ten years ago from FreeBSD for the same reason.
This retires a big user of the mbuf API, and will ease maintenance of the kernel.
|
1.37 | 23-Apr-2015 |
pgoyette | branches: 1.37.16; 1.37.18; Update device dependency information - the sysmon major device now depends on the sysmon module itself, not on the individual components.
|
1.36 | 23-Jan-2015 |
hkenken | Initial Zynq (Xilinx) support Add support for ZedBoard evaluation board and Parallella board. * cemac(4) Cadence EMAC/GEM(Gigabit) Ethernet Controller driver based on at91emac
|
1.35 | 16-Apr-2014 |
matt | branches: 1.35.2; 1.35.4; Add ctcom
|
1.34 | 28-Jan-2013 |
jmcneill | branches: 1.34.2; 1.34.10; reserve char 111 for vchiq
|
1.33 | 30-Jun-2011 |
wiz | branches: 1.33.2; 1.33.12; dependant -> dependent
|
1.32 | 30-Nov-2010 |
bsh | define major device number for UARTs on i.MX SoCs
|
1.31 | 06-Mar-2010 |
plunky | branches: 1.31.2; use a MI major number for uhso(4) driver (requested by mrg)
|
1.30 | 06-Mar-2010 |
plunky | add major device for usho(4) driver
|
1.29 | 12-Nov-2008 |
ad | Remove LKMs and switch to the module framework, pass 1.
Proposed on tech-kern@.
|
1.28 | 31-Dec-2007 |
ad | branches: 1.28.6; 1.28.10; 1.28.16; 1.28.18; 1.28.24; Remove systrace. Ok core@.
|
1.27 | 24-Nov-2006 |
wiz | branches: 1.27.24; 1.27.28; 1.27.30; 1.27.36; 1.27.38; 1.27.44; s/independant/independent/, from Zafer.
|
1.26 | 28-Feb-2006 |
scw | branches: 1.26.14; 1.26.16; Include "device-major sysmon" when sysmon_power is defined.
|
1.25 | 11-Dec-2005 |
christos | branches: 1.25.2; 1.25.4; 1.25.6; merge ktrace-lwp.
|
1.24 | 17-Sep-2005 |
yamt | make VMSWAP optional again.
|
1.23 | 31-Jul-2005 |
yamt | revert "defflag VMSWAP" changes for now. there seems to be far more people who don't want to edit their kernel config files than i thought.
|
1.22 | 30-Jul-2005 |
yamt | defflag VMSWAP.
|
1.21 | 10-May-2005 |
jdolecek | branches: 1.21.2; assign major for nsmb(4)
|
1.20 | 14-Feb-2005 |
briggs | twe doesn't get a block device.
|
1.19 | 12-Feb-2005 |
briggs | Add twe.
|
1.18 | 08-Jan-2005 |
joff | branches: 1.18.2; 1.18.4; Add tslcd device
|
1.17 | 22-Dec-2004 |
joff | char major 107 to ep93xx processor UART driver epcom
|
1.16 | 25-Jan-2004 |
bjh21 | Remove mentions of "beep" driver.
|
1.15 | 10-Dec-2003 |
jmc | Change reference at bottom from sys/dev/majors to sys/conf/majors to match reality
|
1.14 | 24-Oct-2003 |
jdolecek | add necessary majors for miscellaneous devices, such as missing wscons/scsi/isdn devices
|
1.13 | 10-Oct-2003 |
jdolecek | reassing majors for crypto and pf to use the newly defined MI major range
|
1.12 | 10-Oct-2003 |
jdolecek | update the comment - the space for machine-dependant majors is reduced to 0-143 follows discussion on tech-kern
|
1.11 | 05-Oct-2003 |
jdolecek | Add some framework for MI assignment of device majors - add sys/dev/majors which is automatically included during kernel config, and add comments to individual machine-dependant majors.* files to assign new MI majors in MI file.
Range 0-191 is reserved for machine-specific assignments, range 192+ are MI assignments.
Follows recent discussion on tech-kern@
|
1.10 | 30-Sep-2003 |
thorpej | New generic I2C framework. Supports bit-bang and "intelligent" I2C interface controllers (of varying intelligence levels).
Contributed by Wasabi Systems, Inc. Primarily written by Steve Woodford, with some modification by me.
|
1.9 | 22-Aug-2003 |
itojun | create /dev/crypto
|
1.8 | 27-Jul-2003 |
itojun | reserve cdev major # for PF. ok'ed by technical-exec
|
1.7 | 25-Apr-2003 |
ragge | branches: 1.7.2; Add ksyms device major.
|
1.6 | 31-Dec-2002 |
thorpej | Fix sysmon entry.
|
1.5 | 20-Nov-2002 |
bsh | add a device.
sscom is a driver for built-in UART of Samsung S3C2800/24[01]0 CPU. driver code is arch/arm/s3c2xx0/sscom.c
|
1.4 | 04-Oct-2002 |
elric | branches: 1.4.2; assign majors for raw and cooked cgd's.
|
1.3 | 16-Sep-2002 |
manu | branches: 1.3.2; Initial APM support (enough to get battery level)
|
1.2 | 06-Sep-2002 |
gehenna | Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to dynamically generated by config(8).
- All device switches is defined as a constant structure in device drivers.
- The new grammer ``device-major'' is introduced to ``files''.
device-major <prefix> char <num> [block <num>] [<rules>]
- All device major numbers must be listed up in port dependent majors.<arch> by using this grammer.
- Added the new naming convention. The name of the device switch must be <prefix>_[bc]devsw for auto-generation of device switch tables.
- The backward compatibility of loading block/character device switch by LKM framework is broken. This is necessary to convert from block/character device major to device name in runtime and vice versa.
- The restriction to assign device major by LKM is completely removed. We don't need to reserve LKM entries for dynamic loading of device switch.
- In compile time, device major numbers list is packed into the kernel and the LKM framework will refer it to assign device major number dynamically.
|
1.1 | 16-May-2002 |
gehenna | branches: 1.1.2; file majors.arm32 was initially added on branch gehenna-devsw.
|
1.1.2.6 | 29-Aug-2002 |
gehenna | catch up with -current. (change char major ixpcom, add sysmon, dmoverio).
|
1.1.2.5 | 21-Jul-2002 |
gehenna | catch up with -current.
|
1.1.2.4 | 16-Jul-2002 |
gehenna | catch up with -current.
|
1.1.2.3 | 14-Jul-2002 |
gehenna | catch up with -current.
|
1.1.2.2 | 30-May-2002 |
gehenna | Add $NetBSD$
|
1.1.2.1 | 16-May-2002 |
gehenna | Add the list of block/character majors.
|
1.3.2.5 | 03-Jan-2003 |
thorpej | Sync with HEAD.
|
1.3.2.4 | 11-Dec-2002 |
thorpej | Sync with HEAD.
|
1.3.2.3 | 18-Oct-2002 |
nathanw | Catch up to -current.
|
1.3.2.2 | 17-Sep-2002 |
nathanw | Catch up to -current.
|
1.3.2.1 | 16-Sep-2002 |
nathanw | file majors.arm32 was added on branch nathanw_sa on 2002-09-17 21:13:25 +0000
|
1.4.2.2 | 10-Oct-2002 |
jdolecek | sync kqueue with -current; this includes merge of gehenna-devsw branch, merge of i386 MP branch, and part of autoconf rototil work
|
1.4.2.1 | 04-Oct-2002 |
jdolecek | file majors.arm32 was added on branch kqueue on 2002-10-10 18:31:46 +0000
|
1.7.2.6 | 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.7.2.5 | 15-Feb-2005 |
skrll | Sync with HEAD.
|
1.7.2.4 | 17-Jan-2005 |
skrll | Sync with HEAD.
|
1.7.2.3 | 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.7.2.2 | 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.7.2.1 | 03-Aug-2004 |
skrll | Sync with HEAD
|
1.18.4.2 | 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.18.4.1 | 12-Feb-2005 |
yamt | sync with head.
|
1.18.2.1 | 29-Apr-2005 |
kent | sync with -current
|
1.21.2.3 | 21-Jan-2008 |
yamt | sync with head
|
1.21.2.2 | 30-Dec-2006 |
yamt | sync with head.
|
1.21.2.1 | 21-Jun-2006 |
yamt | sync with head.
|
1.25.6.1 | 22-Apr-2006 |
simonb | Sync with head.
|
1.25.4.1 | 09-Sep-2006 |
rpaulo | sync with head
|
1.25.2.1 | 01-Mar-2006 |
yamt | sync with head.
|
1.26.16.1 | 10-Dec-2006 |
yamt | sync with head.
|
1.26.14.1 | 12-Jan-2007 |
ad | Sync with head.
|
1.27.44.1 | 02-Jan-2008 |
bouyer | Sync with HEAD
|
1.27.38.1 | 10-Nov-2007 |
matt | Add AT91 support from Sami Kantoluoto Add TI OMAP2430 support from Marty Fouts @ Danger Inc
|
1.27.36.1 | 18-Feb-2008 |
mjf | Sync with HEAD.
|
1.27.30.1 | 09-Jan-2008 |
matt | sync with HEAD
|
1.27.28.1 | 01-Jan-2008 |
chris | Sync with HEAD.
|
1.27.24.1 | 28-Feb-2008 |
rjs | Sync with HEAD.
|
1.28.24.1 | 15-Feb-2014 |
matt | Merge armv7 support from HEAD, specifically support for the BCM5301X and BCM56340 evbarm kernels.
|
1.28.18.1 | 19-Jan-2009 |
skrll | Sync with HEAD.
|
1.28.16.1 | 13-Dec-2008 |
haad | Update haad-dm branch to haad-dm-base2.
|
1.28.10.1 | 04-May-2009 |
yamt | sync with head.
|
1.28.6.1 | 17-Jan-2009 |
mjf | Sync with HEAD.
|
1.31.2.1 | 05-Mar-2011 |
rmind | sync with head
|
1.33.12.3 | 03-Dec-2017 |
jdolecek | update from HEAD
|
1.33.12.2 | 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.33.12.1 | 25-Feb-2013 |
tls | resync with head
|
1.33.2.1 | 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.34.10.1 | 10-Aug-2014 |
tls | Rebase.
|
1.34.2.1 | 18-May-2014 |
rmind | sync with head
|
1.35.4.2 | 06-Jun-2015 |
skrll | Sync with HEAD
|
1.35.4.1 | 06-Apr-2015 |
skrll | Sync with HEAD
|
1.35.2.1 | 11-May-2015 |
msaitoh | Pull up following revision(s) (requested by nonaka in ticket #751): sys/arch/arm/zynq/zynq_axi.c: revision 1.1 sys/arch/evbarm/conf/files.zynq: revision 1.1 sys/arch/arm/zynq/zynq_uart.c: revision 1.1 sys/arch/evbarm/zynq/genassym.cf: revision 1.1 sys/arch/evbarm/zynq/zynq_start.S: revision 1.1 sys/arch/arm/zynq/zynq_slcrreg.h: revision 1.1 sys/arch/arm/zynq/zynq_usbreg.h: revision 1.1 sys/arch/arm/zynq/zynq7000_uart.c: revision 1.1 sys/arch/arm/zynq/zynq7000_sdhc.c: revision 1.1 sys/arch/arm/zynq/zynq_slcrvar.h: revision 1.1 sys/arch/arm/zynq/zynq_usbvar.h: revision 1.1 sys/arch/evbarm/conf/PARALLELLA_INSTALL: revision 1.1 sys/arch/arm/zynq/zynq_uartreg.h: revision 1.1 sys/arch/evbarm/zynq/platform.h: revision 1.1 sys/arch/evbarm/conf/mk.zynq: revision 1.1 sys/arch/evbarm/conf/files.zedboard: revision 1.1 sys/arch/arm/zynq/zynq7000_usb.c: revision 1.1 sys/dev/cadence/if_cemacvar.h: revision 1.1 sys/arch/arm/zynq/files.zynq: revision 1.1 sys/arch/arm/zynq/zynq_slcr.c: revision 1.1 sys/arch/arm/zynq/zynq7000_intr.h: revision 1.1 sys/arch/arm/conf/majors.arm32: revision 1.36 sys/arch/arm/zynq/zynq_uartvar.h: revision 1.1 sys/arch/evbarm/conf/files.parallella: revision 1.1 sys/arch/arm/zynq/zynq_space.c: revision 1.1 sys/dev/cadence/if_cemac.c: revision 1.1 sys/arch/evbarm/conf/PARALLELLA: revision 1.1 sys/arch/arm/zynq/zynq7000_board.c: revision 1.1 sys/arch/evbarm/Makefile: revision 1.10 sys/arch/evbarm/zynq/zynq_machdep.c: revision 1.1 sys/arch/arm/zynq/zynq7000_reg.h: revision 1.1 sys/arch/evbarm/conf/ZEDBOARD: revision 1.1 sys/dev/cadence/cemacreg.h: revision 1.1 sys/arch/evbarm/conf/std.zynq: revision 1.1 sys/arch/arm/zynq/zynq_dma.c: revision 1.1 sys/arch/arm/zynq/zynq_cemac.c: revision 1.1 sys/arch/arm/zynq/zynq7000_var.h: revision 1.1 sys/arch/evbarm/conf/ZEDBOARD_INSTALL: revision 1.1 sys/arch/arm/zynq/zynq_usb.c: revision 1.1 Initial Zynq (Xilinx) support Add support for ZedBoard evaluation board and Parallella board. * cemac(4) Cadence EMAC/GEM(Gigabit) Ethernet Controller driver based on at91emac
|
1.37.18.2 | 08-Apr-2020 |
martin | Merge changes from current as of 20200406
|
1.37.18.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
1.37.16.1 | 30-Sep-2018 |
pgoyette | Ssync with HEAD
|
1.39.6.1 | 29-Feb-2020 |
ad | Sync with head.
|
1.41.8.1 | 01-Aug-2021 |
thorpej | Sync with HEAD.
|
1.3 | 04-Mar-2007 |
tsutsui | Move mkldscript.sh, which is used to create ldscript dynamically to merge link_set_* sections into the text section for a.out kernels, from sys/arch/arm/conf/ to sys/conf/ since there is no ARM specific stuff in it and other ports would share it.
|
1.2 | 11-Dec-2005 |
christos | branches: 1.2.26; merge ktrace-lwp.
|
1.1 | 13-Sep-2004 |
chs | branches: 1.1.2; 1.1.4; 1.1.16; work around a binutils bug where converting ELF kernels to a.out with objcopy produces corrupted binaries when the link_set_* sections extend into another page after the end of the .text section by using a generated an ldscript that puts all the link_set_* data into the .text section in the first place.
|
1.1.16.1 | 03-Sep-2007 |
yamt | sync with head.
|
1.1.4.4 | 22-Sep-2004 |
skrll | Fix.
|
1.1.4.3 | 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.1.4.2 | 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.1.4.1 | 13-Sep-2004 |
skrll | file mkldscript.sh was added on branch ktrace-lwp on 2004-09-18 14:32:23 +0000
|
1.1.2.2 | 13-Sep-2004 |
tron | Pull up revision 1.1 (requested by chs in ticket #843): work around a binutils bug where converting ELF kernels to a.out with objcopy produces corrupted binaries when the link_set_* sections extend into another page after the end of the .text section by using a generated an ldscript that puts all the link_set_* data into the .text section in the first place.
|
1.1.2.1 | 13-Sep-2004 |
tron | file mkldscript.sh was added on branch netbsd-2-0 on 2004-09-13 17:32:39 +0000
|
1.2.26.2 | 17-May-2007 |
yamt | fix a merge botch.
|
1.2.26.1 | 12-Mar-2007 |
rmind | Sync with HEAD.
|
1.5 | 18-Dec-2017 |
skrll | Generalise FDT and OFW
|
1.4 | 15-Dec-2017 |
christos | we always need the fdt option now, defined or not.
|
1.3 | 16-Feb-2015 |
skrll | Re-enable CPI_IN_CKSUM now the bugs are fixed.
|
1.2 | 30-Jan-2015 |
joerg | Disable ARM's CPU_IN_CKSUM until the bugs are fixed.
|
1.1 | 27-Jan-2008 |
chris | branches: 1.1.2; 1.1.4; 1.1.6; 1.1.14; 1.1.16; 1.1.82; 1.1.84; Add an arm/conf/std.arm file which contains common arm options, initially just options CPU_IN_CKSUM.
Include std.arm in all arm platform std files.
This should reenable the asm in_cksum code for all arm platforms.
Also remove the now unused in_cksum_arm.S.
|
1.1.84.1 | 06-Apr-2015 |
skrll | Sync with HEAD
|
1.1.82.2 | 16-Feb-2015 |
martin | Pull up following revision(s) (requested by skrll in ticket #522): sys/arch/arm/conf/std.arm: revision 1.3 sys/arch/arm/arm/cpu_in_cksum.S: revision 1.9 sys/arch/arm/arm/cpu_in_cksum.S: revision 1.10 sys/arch/arm/arm/cpu_in_cksum.S: revision 1.11 Fix conditional; makes 0 len mbuf, 0 offset, 0 len test work. - Correct arm_cksumdata for <4 bytes of data Really fix arm_cksumdata for <4 bytes of data - Re-enable CPU_IN_CKSUM now the bugs are fixed.
|
1.1.82.1 | 04-Feb-2015 |
snj | Pull up following revision(s) (requested by joerg in ticket #475): sys/arch/arm/conf/std.arm: revision 1.2 Disable ARM's CPU_IN_CKSUM until the bugs are fixed.
|
1.1.16.2 | 23-Mar-2008 |
matt | sync with HEAD
|
1.1.16.1 | 27-Jan-2008 |
matt | file std.arm was added on branch matt-armv6 on 2008-03-23 02:03:55 +0000
|
1.1.14.2 | 28-Feb-2008 |
rjs | Sync with HEAD.
|
1.1.14.1 | 27-Jan-2008 |
rjs | file std.arm was added on branch hpcarm-cleanup on 2008-02-28 21:58:52 +0000
|
1.1.6.2 | 18-Feb-2008 |
mjf | Sync with HEAD.
|
1.1.6.1 | 27-Jan-2008 |
mjf | file std.arm was added on branch mjf-devfs on 2008-02-18 21:04:22 +0000
|
1.1.4.2 | 04-Feb-2008 |
yamt | sync with head.
|
1.1.4.1 | 27-Jan-2008 |
yamt | file std.arm was added on branch yamt-lazymbuf on 2008-02-04 09:21:45 +0000
|
1.1.2.2 | 27-Jan-2008 |
chris | Sync to HEAD.
|
1.1.2.1 | 27-Jan-2008 |
chris | file std.arm was added on branch chris-arm-intr-rework on 2008-01-27 13:08:37 +0000
|