diff options
author | imp <imp@FreeBSD.org> | 2012-06-06 06:19:52 +0000 |
---|---|---|
committer | imp <imp@FreeBSD.org> | 2012-06-06 06:19:52 +0000 |
commit | 691dfc2d38f86af8b930db40efa6e0ec1a6e455d (patch) | |
tree | 617d0d8012fd119d3365d9c0af1002c05b650c26 /sys/arm/at91/at91rm9200.c | |
parent | 189fa08e47a3906066f9b390ce70cd71487ca409 (diff) | |
download | FreeBSD-src-691dfc2d38f86af8b930db40efa6e0ec1a6e455d.zip FreeBSD-src-691dfc2d38f86af8b930db40efa6e0ec1a6e455d.tar.gz |
Enhance the Atmel SoC chip identification routines to account for more
SoC variants. Fold the AT91SAM9XE chips into the AT91SAM9260
handling, where appropriate. The following SoCs/SoC families are recognized:
at91cap9, at91rm9200, at91sam9260, at91sam9261, at91sam9263,
at91sam9g10, at91sam9g20, at91sam9g45, at91sam9n12, at91sam9rl,
at91sam9x5
and the following variations are also recognized:
at91rm9200_bga, at91rm9200_pqfp, at91sam9xe, at91sam9g45, at91sam9m10,
at91sam9g46, at91sam9m11, at91sam9g15, at91sam9g25, at91sam9g35,
at91sam9x25, at91sam9x35
This is only the identification routine: no additional Atmel devices
are supported at this time.
# With these changes, I'm able to boot to the point of identification
# on a few different Atmel SoCs that we don't yet support using the
# KB920X config file -- someday tht will be an ATMEL config file...
Diffstat (limited to 'sys/arm/at91/at91rm9200.c')
-rw-r--r-- | sys/arm/at91/at91rm9200.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/sys/arm/at91/at91rm9200.c b/sys/arm/at91/at91rm9200.c index 9a0fae5..f2c4c48 100644 --- a/sys/arm/at91/at91rm9200.c +++ b/sys/arm/at91/at91rm9200.c @@ -197,7 +197,7 @@ static void at91_identify(driver_t *drv, device_t parent) { - if (at91_cpu_is(AT91_CPU_RM9200)) { + if (at91_cpu_is(AT91_T_RM9200)) { at91_add_child(parent, 0, "at91rm920", 0, 0, 0, -1, 0, 0); at91_cpu_add_builtin_children(parent); } @@ -207,11 +207,8 @@ static int at91_probe(device_t dev) { - if (at91_cpu_is(AT91_CPU_RM9200)) { - device_set_desc(dev, "AT91RM9200"); - return (0); - } - return (ENXIO); + device_set_desc(dev, soc_data.name); + return (0); } static int |