From 0587326ef3491b10e2d964bb9673c501ca2e4b3c Mon Sep 17 00:00:00 2001 From: andrew Date: Fri, 7 Jul 2017 13:55:11 +0000 Subject: [PATCH] Remove the MULTIDELAY option from arm. It's now enabled when PLATFORM is enabled. --- sys/arm/arm/generic_timer.c | 4 ---- sys/arm/arm/machdep.c | 4 ++-- sys/arm/arm/mpcore_timer.c | 10 ++-------- sys/arm/arm/platform.c | 6 ------ sys/arm/conf/ALLWINNER_UP | 1 - sys/arm/conf/ALPINE | 1 - sys/arm/conf/BEAGLEBONE | 1 - sys/arm/conf/EFIKA_MX | 1 - sys/arm/conf/EXYNOS5.common | 1 - sys/arm/conf/GENERIC | 1 - sys/arm/conf/IMX53 | 1 - sys/arm/conf/IMX6 | 1 - sys/arm/conf/PANDABOARD | 1 - sys/arm/conf/RK3188 | 1 - sys/arm/conf/RPI-B | 1 - sys/arm/conf/RPI2 | 1 - sys/arm/conf/SOCFPGA | 1 - sys/arm/conf/TEGRA124 | 1 - sys/arm/conf/VERSATILEPB | 1 - sys/arm/conf/VIRT | 1 - sys/arm/conf/VYBRID | 1 - sys/arm/conf/ZEDBOARD | 1 - sys/arm/include/machdep.h | 2 +- sys/arm/include/platformvar.h | 8 +------- sys/conf/options.arm | 1 - 25 files changed, 6 insertions(+), 47 deletions(-) diff --git a/sys/arm/arm/generic_timer.c b/sys/arm/arm/generic_timer.c index f61baff96848..f7ae7f1d5fe0 100644 --- a/sys/arm/arm/generic_timer.c +++ b/sys/arm/arm/generic_timer.c @@ -72,10 +72,6 @@ __FBSDID("$FreeBSD$"); #include #endif -#if defined(__arm__) && !defined(MULTIDELAY) -#error The generic timer requires MULTIDELAY on 32bit arm -#endif - #define GT_CTRL_ENABLE (1 << 0) #define GT_CTRL_INT_MASK (1 << 1) #define GT_CTRL_INT_STAT (1 << 2) diff --git a/sys/arm/arm/machdep.c b/sys/arm/arm/machdep.c index 3bfc39e12524..e995ee0fcf3c 100644 --- a/sys/arm/arm/machdep.c +++ b/sys/arm/arm/machdep.c @@ -146,7 +146,7 @@ static struct pv_addr kernelstack; #endif /* __ARM_ARCH >= 6 */ #endif /* FDT */ -#ifdef MULTIDELAY +#ifdef PLATFORM static delay_func *delay_impl; static void *delay_arg; #endif @@ -331,7 +331,7 @@ cpu_initclocks(void) } #endif -#ifdef MULTIDELAY +#ifdef PLATFORM void arm_set_delay(delay_func *impl, void *arg) { diff --git a/sys/arm/arm/mpcore_timer.c b/sys/arm/arm/mpcore_timer.c index 1e82490283ce..aee065c07c38 100644 --- a/sys/arm/arm/mpcore_timer.c +++ b/sys/arm/arm/mpcore_timer.c @@ -59,9 +59,7 @@ __FBSDID("$FreeBSD$"); #include #include -#ifdef MULTIDELAY #include /* For arm_set_delay */ -#endif #include #include @@ -71,10 +69,6 @@ __FBSDID("$FreeBSD$"); #include -#if defined(PLATFORM) && !defined(MULTIDELAY) -#error The MPCore Timer driver requires MULTIDELAY when building with PLATFORM -#endif - /* Private (per-CPU) timer register map */ #define PRV_TIMER_LOAD 0x0000 #define PRV_TIMER_COUNT 0x0004 @@ -442,7 +436,7 @@ arm_tmr_attach(device_t dev) return (ENXIO); } -#ifdef MULTIDELAY +#ifdef PLATFORM /* * We can register as the DELAY() implementation only if we successfully * set up the global timer. @@ -533,7 +527,7 @@ arm_tmr_delay(int usec, void *arg) } } -#ifndef MULTIDELAY +#ifndef PLATFORM /** * DELAY - Delay for at least usec microseconds. * @usec: number of microseconds to delay by diff --git a/sys/arm/arm/platform.c b/sys/arm/arm/platform.c index 0b9aea802b80..78b94bcc9719 100644 --- a/sys/arm/arm/platform.c +++ b/sys/arm/arm/platform.c @@ -75,9 +75,7 @@ SYSCTL_STRING(_hw, OID_AUTO, platform, CTLFLAG_RDTUN | CTLFLAG_NOFETCH, plat_nam */ SET_DECLARE(platform_set, platform_def_t); -#ifdef MULTIDELAY static delay_func platform_delay; -#endif void platform_probe_and_attach(void) @@ -152,10 +150,8 @@ platform_probe_and_attach(void) strlcpy(plat_name, plat_def_impl->name, sizeof(plat_name)); -#ifdef MULTIDELAY /* Set a default delay function */ arm_set_delay(platform_delay, NULL); -#endif PLATFORM_ATTACH(plat_obj); } @@ -202,7 +198,6 @@ cpu_reset(void) } } -#ifdef MULTIDELAY static void platform_delay(int usec, void *arg __unused) { @@ -216,7 +211,6 @@ platform_delay(int usec, void *arg __unused) */ cpufunc_nullop(); } -#endif #if defined(SMP) void diff --git a/sys/arm/conf/ALLWINNER_UP b/sys/arm/conf/ALLWINNER_UP index 68c20a64f636..3c2384a823b9 100644 --- a/sys/arm/conf/ALLWINNER_UP +++ b/sys/arm/conf/ALLWINNER_UP @@ -30,7 +30,6 @@ options SOC_ALLWINNER_A13 options SCHED_4BSD # 4BSD scheduler options PLATFORM -options MULTIDELAY # NFS root from boopt/dhcp #options BOOTP diff --git a/sys/arm/conf/ALPINE b/sys/arm/conf/ALPINE index 401b4d38a0a1..bb64740b56f9 100644 --- a/sys/arm/conf/ALPINE +++ b/sys/arm/conf/ALPINE @@ -28,7 +28,6 @@ makeoptions WERROR="-Werror" options SCHED_4BSD # 4BSD scheduler options SMP # Enable multiple cores options PLATFORM -options MULTIDELAY # Interrupt controller device gic diff --git a/sys/arm/conf/BEAGLEBONE b/sys/arm/conf/BEAGLEBONE index 77a7bdba25e8..fec1f2859a61 100644 --- a/sys/arm/conf/BEAGLEBONE +++ b/sys/arm/conf/BEAGLEBONE @@ -29,7 +29,6 @@ include "../ti/am335x/std.am335x" makeoptions MODULES_EXTRA="dtb/am335x am335x_dmtpps" options INTRNG -options MULTIDELAY options SCHED_4BSD # 4BSD scheduler options PLATFORM diff --git a/sys/arm/conf/EFIKA_MX b/sys/arm/conf/EFIKA_MX index 759dfa257387..a77a5a8eb1c6 100644 --- a/sys/arm/conf/EFIKA_MX +++ b/sys/arm/conf/EFIKA_MX @@ -31,7 +31,6 @@ options SCHED_4BSD # 4BSD scheduler #options MD_ROOT # MD is a potential root device #options NFSD # Network Filesystem Server options PLATFORM -options MULTIDELAY options INCLUDE_CONFIG_FILE # Include this file in kernel # NFS root from boopt/dhcp diff --git a/sys/arm/conf/EXYNOS5.common b/sys/arm/conf/EXYNOS5.common index ce42a595470e..5bfc9c792265 100644 --- a/sys/arm/conf/EXYNOS5.common +++ b/sys/arm/conf/EXYNOS5.common @@ -23,7 +23,6 @@ makeoptions WERROR="-Werror" include "std.armv6" options SCHED_ULE # ULE scheduler options PLATFORM # Platform based SoC -options MULTIDELAY options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols diff --git a/sys/arm/conf/GENERIC b/sys/arm/conf/GENERIC index 667046cb94dd..1286b54d5f52 100644 --- a/sys/arm/conf/GENERIC +++ b/sys/arm/conf/GENERIC @@ -62,7 +62,6 @@ options SOC_OMAP4 options SCHED_ULE # ULE scheduler options SMP # Enable multiple cores options PLATFORM -options MULTIDELAY options LINUX_BOOT_ABI # EXT_RESOURCES pseudo devices diff --git a/sys/arm/conf/IMX53 b/sys/arm/conf/IMX53 index a168dcd4cb48..0cf6205fe7f3 100644 --- a/sys/arm/conf/IMX53 +++ b/sys/arm/conf/IMX53 @@ -28,7 +28,6 @@ options SOC_IMX53 options SCHED_4BSD # 4BSD scheduler #options NFSD # Network Filesystem Server options PLATFORM -options MULTIDELAY options INCLUDE_CONFIG_FILE # Include this file in kernel # kernel/memory size reduction diff --git a/sys/arm/conf/IMX6 b/sys/arm/conf/IMX6 index 0f35fffa5b2c..f8340334f395 100644 --- a/sys/arm/conf/IMX6 +++ b/sys/arm/conf/IMX6 @@ -31,7 +31,6 @@ options SCHED_ULE # ULE scheduler options INCLUDE_CONFIG_FILE # Include this file in kernel options PLATFORM options SMP # Enable multiple cores -options MULTIDELAY # NFS root from boopt/dhcp #options BOOTP diff --git a/sys/arm/conf/PANDABOARD b/sys/arm/conf/PANDABOARD index e0f7868d53d0..05ea2af69962 100644 --- a/sys/arm/conf/PANDABOARD +++ b/sys/arm/conf/PANDABOARD @@ -34,7 +34,6 @@ makeoptions MODULES_EXTRA=dtb/omap4 options SCHED_ULE # ULE scheduler options PLATFORM -options MULTIDELAY options SMP # Enable multiple cores # NFS root from boopt/dhcp diff --git a/sys/arm/conf/RK3188 b/sys/arm/conf/RK3188 index e88551b93d3a..00dfcd45b729 100644 --- a/sys/arm/conf/RK3188 +++ b/sys/arm/conf/RK3188 @@ -28,7 +28,6 @@ options SOC_ROCKCHIP_RK3188 options SCHED_ULE # ULE scheduler options SMP # Enable multiple cores options PLATFORM -options MULTIDELAY # Root mount from MMC/SD card options ROOTDEVNAME=\"ufs:/dev/mmcsd0\" diff --git a/sys/arm/conf/RPI-B b/sys/arm/conf/RPI-B index 66d702e0238d..ce408aba9ef1 100644 --- a/sys/arm/conf/RPI-B +++ b/sys/arm/conf/RPI-B @@ -28,7 +28,6 @@ options INTRNG options SCHED_4BSD # 4BSD scheduler options PLATFORM -options MULTIDELAY # NFS root from boopt/dhcp #options BOOTP diff --git a/sys/arm/conf/RPI2 b/sys/arm/conf/RPI2 index 5cd0fdae448b..058100176a3b 100644 --- a/sys/arm/conf/RPI2 +++ b/sys/arm/conf/RPI2 @@ -31,7 +31,6 @@ options INTRNG options SCHED_ULE # ULE scheduler options SMP # Enable multiple cores options PLATFORM -options MULTIDELAY # NFS root from boopt/dhcp #options BOOTP diff --git a/sys/arm/conf/SOCFPGA b/sys/arm/conf/SOCFPGA index f1497f7e5598..0291db7a4bdb 100644 --- a/sys/arm/conf/SOCFPGA +++ b/sys/arm/conf/SOCFPGA @@ -29,7 +29,6 @@ makeoptions WERROR="-Werror" options SCHED_ULE # ULE scheduler options PLATFORM # Platform based SoC options SMP # Enable multiple cores -options MULTIDELAY options SOC_ALTERA_ARRIA10 options SOC_ALTERA_CYCLONE5 diff --git a/sys/arm/conf/TEGRA124 b/sys/arm/conf/TEGRA124 index bdfac00c1d42..cf466bb89307 100644 --- a/sys/arm/conf/TEGRA124 +++ b/sys/arm/conf/TEGRA124 @@ -25,7 +25,6 @@ ident TEGRA124 options SCHED_ULE # ULE scheduler options PLATFORM # Platform based SoC -options MULTIDELAY options SMP # Enable multiple cores options LINUX_BOOT_ABI diff --git a/sys/arm/conf/VERSATILEPB b/sys/arm/conf/VERSATILEPB index 1585586feafb..10686ea8b6c3 100644 --- a/sys/arm/conf/VERSATILEPB +++ b/sys/arm/conf/VERSATILEPB @@ -70,7 +70,6 @@ device random # Entropy device options INTRNG options PLATFORM -options MULTIDELAY # Flattened Device Tree options FDT # Configure using FDT/DTB data diff --git a/sys/arm/conf/VIRT b/sys/arm/conf/VIRT index f2622b5d1b1e..64f3a3df59e3 100644 --- a/sys/arm/conf/VIRT +++ b/sys/arm/conf/VIRT @@ -26,7 +26,6 @@ include "../qemu/std.virt" options SCHED_ULE # ULE scheduler options PLATFORM options SMP # Enable multiple cores -options MULTIDELAY # Interrupt controller device gic diff --git a/sys/arm/conf/VYBRID b/sys/arm/conf/VYBRID index 24a77f93abae..336c4ddc1357 100644 --- a/sys/arm/conf/VYBRID +++ b/sys/arm/conf/VYBRID @@ -26,7 +26,6 @@ makeoptions WERROR="-Werror" options SCHED_4BSD # 4BSD scheduler options PLATFORM # Platform based SoC -options MULTIDELAY #options NANDFS # NAND Filesystem #options SMP # Enable multiple cores diff --git a/sys/arm/conf/ZEDBOARD b/sys/arm/conf/ZEDBOARD index b1fcb2ed0dac..4085aa8d1370 100644 --- a/sys/arm/conf/ZEDBOARD +++ b/sys/arm/conf/ZEDBOARD @@ -28,7 +28,6 @@ makeoptions MODULES_EXTRA="dtb/zynq" options SCHED_ULE # ULE scheduler options PLATFORM # Platform based SoC -options MULTIDELAY #options NFSSD # Network Filesystem Server options SMP # Enable multiple cores diff --git a/sys/arm/include/machdep.h b/sys/arm/include/machdep.h index b2bc82b72269..b738b971bd3f 100644 --- a/sys/arm/include/machdep.h +++ b/sys/arm/include/machdep.h @@ -48,7 +48,7 @@ void board_set_revision(uint32_t); int arm_predict_branch(void *, u_int, register_t, register_t *, u_int (*)(void*, int), u_int (*)(void*, vm_offset_t, u_int*)); -#ifdef MULTIDELAY +#ifdef PLATFORM typedef void delay_func(int, void *); void arm_set_delay(delay_func *, void *); #endif diff --git a/sys/arm/include/platformvar.h b/sys/arm/include/platformvar.h index a80f628c6d5c..5711bebecfe1 100644 --- a/sys/arm/include/platformvar.h +++ b/sys/arm/include/platformvar.h @@ -90,15 +90,9 @@ typedef struct fdt_platform_class fdt_platform_def_t; extern platform_method_t fdt_platform_methods[]; -#ifdef MULTIDELAY -#define FDT_PLATFORM_CTASSERT(delay) CTASSERT(delay > 0) -#else -#define FDT_PLATFORM_CTASSERT(delay) -#endif - #define FDT_PLATFORM_DEF2(NAME, VAR_NAME, NAME_STR, size, compatible, \ delay) \ -FDT_PLATFORM_CTASSERT(delay); \ +CTASSERT(delay > 0); \ static fdt_platform_def_t VAR_NAME ## _fdt_platform = { \ .name = NAME_STR, \ .methods = fdt_platform_methods, \ diff --git a/sys/conf/options.arm b/sys/conf/options.arm index b38f01b22d36..f3ab2fc0214e 100644 --- a/sys/conf/options.arm +++ b/sys/conf/options.arm @@ -34,7 +34,6 @@ KERNBASE opt_global.h KERNVIRTADDR opt_global.h LINUX_BOOT_ABI opt_global.h LOADERRAMADDR opt_global.h -MULTIDELAY opt_global.h NKPT2PG opt_pmap.h PHYSADDR opt_global.h PLATFORM opt_global.h