aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Turner <andrew@FreeBSD.org>2017-07-07 13:55:11 +0000
committerAndrew Turner <andrew@FreeBSD.org>2017-07-07 13:55:11 +0000
commit9ce763a0dbab6507f5824d50a3d8193927f6e67d (patch)
tree1f9ddec5e059514a02bc34849c9f1099d2041d5e
parent611572285ab90cfeb9a849e08712836bae139e6c (diff)
downloadsrc-9ce763a0dbab6507f5824d50a3d8193927f6e67d.tar.gz
src-9ce763a0dbab6507f5824d50a3d8193927f6e67d.zip
Remove the MULTIDELAY option from arm. It's now enabled when PLATFORM is
enabled.
Notes
Notes: svn path=/head/; revision=320777
-rw-r--r--sys/arm/arm/generic_timer.c4
-rw-r--r--sys/arm/arm/machdep.c4
-rw-r--r--sys/arm/arm/mpcore_timer.c10
-rw-r--r--sys/arm/arm/platform.c6
-rw-r--r--sys/arm/conf/ALLWINNER_UP1
-rw-r--r--sys/arm/conf/ALPINE1
-rw-r--r--sys/arm/conf/BEAGLEBONE1
-rw-r--r--sys/arm/conf/EFIKA_MX1
-rw-r--r--sys/arm/conf/EXYNOS5.common1
-rw-r--r--sys/arm/conf/GENERIC1
-rw-r--r--sys/arm/conf/IMX531
-rw-r--r--sys/arm/conf/IMX61
-rw-r--r--sys/arm/conf/PANDABOARD1
-rw-r--r--sys/arm/conf/RK31881
-rw-r--r--sys/arm/conf/RPI-B1
-rw-r--r--sys/arm/conf/RPI21
-rw-r--r--sys/arm/conf/SOCFPGA1
-rw-r--r--sys/arm/conf/TEGRA1241
-rw-r--r--sys/arm/conf/VERSATILEPB1
-rw-r--r--sys/arm/conf/VIRT1
-rw-r--r--sys/arm/conf/VYBRID1
-rw-r--r--sys/arm/conf/ZEDBOARD1
-rw-r--r--sys/arm/include/machdep.h2
-rw-r--r--sys/arm/include/platformvar.h8
-rw-r--r--sys/conf/options.arm1
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 <dev/acpica/acpivar.h>
#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 <machine/cpu.h>
#include <machine/intr.h>
-#ifdef MULTIDELAY
#include <machine/machdep.h> /* For arm_set_delay */
-#endif
#include <dev/ofw/openfirm.h>
#include <dev/ofw/ofw_bus.h>
@@ -71,10 +69,6 @@ __FBSDID("$FreeBSD$");
#include <arm/arm/mpcore_timervar.h>
-#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