Return to std.generic CVS log | Up to [cvs.NetBSD.org] / src / sys / arch / evbarm / conf |
File: [cvs.NetBSD.org] / src / sys / arch / evbarm / conf / std.generic (download)
Revision 1.3, Thu Oct 18 09:01:54 2018 UTC (5 years, 6 months ago) by 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 |
# $NetBSD: std.generic,v 1.3 2018/10/18 09:01:54 skrll Exp $ # # generic NetBSD/evbarm with FDT support machine evbarm arm include "conf/std" include "arch/arm/conf/std.arm" # arch standard options options EXEC_ELF32 options EXEC_SCRIPT # Architecture opions options ARM32 options ARM_GENERIC_TODR options ARM_HAS_VBAR options ARM_INTR_IMPL="<arch/arm/fdt/fdt_intr.h>" options DRAM_BLOCKS=256 options EVBARM_BOARDTYPE="evbarm" options FDT # Flattened Device Tree support options FPU_VFP options MODULAR options MODULAR_DEFAULT_AUTOLOAD options PCI_NETBSD_CONFIGURE options TPIDRPRW_IS_CURCPU options __BUS_SPACE_HAS_STREAM_METHODS options __HAVE_CPU_COUNTER options __HAVE_CPU_UAREA_ALLOC_IDLELWP options __HAVE_GENERIC_START options __HAVE_GENERIC_CPU_INITCLOCKS options __HAVE_FAST_SOFTINTS # should be in types.h options __HAVE_PCI_CONF_HOOK makeoptions BOARDMKFRAG="${THISARM}/conf/mk.generic" # The physical address is chosen by u-boot and determined by armv6_start.S. # The 64 byte offset is due to u-boot header. makeoptions KERNEL_BASE_PHYS="0x00000040" makeoptions KERNEL_BASE_VIRT="0x80000040" # General options options CHILD_MAX=1024 # 160 is too few options OPEN_MAX=1024 # 128 is too few