diff options
author | Olivier Houchard <cognet@FreeBSD.org> | 2016-11-18 23:48:20 +0000 |
---|---|---|
committer | Olivier Houchard <cognet@FreeBSD.org> | 2016-11-18 23:48:20 +0000 |
commit | 31a2ddf253d39cd37af3cb0093985929162b45e4 (patch) | |
tree | 016eddc9f75542dcbb8760e562dab96213c70b35 /sys/arm/ti/ti_machdep.c | |
parent | fcef00c336a7cb18f4aa12ca667df7ca09d2e5f2 (diff) | |
download | src-31a2ddf253d39cd37af3cb0093985929162b45e4.tar.gz src-31a2ddf253d39cd37af3cb0093985929162b45e4.zip |
Guess the TI chip based on the PLATFORM infos, instead of relying on the
kernel config file.
Notes
Notes:
svn path=/head/; revision=308818
Diffstat (limited to 'sys/arm/ti/ti_machdep.c')
-rw-r--r-- | sys/arm/ti/ti_machdep.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/sys/arm/ti/ti_machdep.c b/sys/arm/ti/ti_machdep.c index 5d50809db615..3e9ba4701937 100644 --- a/sys/arm/ti/ti_machdep.c +++ b/sys/arm/ti/ti_machdep.c @@ -54,11 +54,32 @@ __FBSDID("$FreeBSD$"); #include <arm/ti/omap4/omap4_reg.h> #include <arm/ti/omap4/omap4_mp.h> +#include <arm/ti/ti_cpuid.h> #include "platform_if.h" void (*ti_cpu_reset)(void) = NULL; +int _ti_chip = -1; + +#if defined(SOC_OMAP4) +static int +omap4_attach(platform_t plat) +{ + _ti_chip = CHIP_OMAP_4; + return (0); +} +#endif + +#if defined(SOC_TI_AM335X) +static int +ti_am335x_attach(platform_t plat) +{ + _ti_chip = CHIP_AM335X; + return (0); +} +#endif + static vm_offset_t ti_lastaddr(platform_t plat) { @@ -107,6 +128,7 @@ ti_plat_cpu_reset(platform_t plat) #if defined(SOC_OMAP4) static platform_method_t omap4_methods[] = { + PLATFORMMETHOD(platform_attach, omap4_attach), PLATFORMMETHOD(platform_devmap_init, ti_omap4_devmap_init), PLATFORMMETHOD(platform_lastaddr, ti_lastaddr), PLATFORMMETHOD(platform_cpu_reset, ti_plat_cpu_reset), @@ -122,6 +144,7 @@ FDT_PLATFORM_DEF(omap4, "omap4", 0, "ti,omap4430", 0); #if defined(SOC_TI_AM335X) static platform_method_t am335x_methods[] = { + PLATFORMMETHOD(platform_attach, ti_am335x_attach), PLATFORMMETHOD(platform_devmap_init, ti_am335x_devmap_init), PLATFORMMETHOD(platform_lastaddr, ti_lastaddr), PLATFORMMETHOD(platform_cpu_reset, ti_plat_cpu_reset), |