Add support for multipass to Atmel, for both FDT and !FDT cases.

This commit is contained in:
imp 2014-08-14 04:21:25 +00:00
parent 7603d1d8c5
commit 84d638ac06
5 changed files with 14 additions and 17 deletions

View File

@ -362,4 +362,3 @@ nexus_ofw_map_intr(device_t dev, device_t child, phandle_t iparent, int icells,
return (interrupt);
}
#endif

View File

@ -176,13 +176,9 @@ static driver_t at91_aic_driver = {
static devclass_t at91_aic_devclass;
#ifdef FDT
DRIVER_MODULE(at91_aic, simplebus, at91_aic_driver, at91_aic_devclass, NULL,
NULL);
#else
DRIVER_MODULE(at91_aic, atmelarm, at91_aic_driver, at91_aic_devclass, NULL,
NULL);
#endif
/* not yet
EARLY_DRIVER_MODULE(at91_aic, simplebus, at91_aic_driver, at91_aic_devclass,
NULL, NULL, BUS_PASS_INTERRUPT);
*/
#else
EARLY_DRIVER_MODULE(at91_aic, atmelarm, at91_aic_driver, at91_aic_devclass,
NULL, NULL, BUS_PASS_INTERRUPT);
#endif

View File

@ -214,9 +214,9 @@ static driver_t at91_pit_driver = {
static devclass_t at91_pit_devclass;
#ifdef FDT
DRIVER_MODULE(at91_pit, simplebus, at91_pit_driver, at91_pit_devclass, NULL,
NULL);
EARLY_DRIVER_MODULE(at91_pit, simplebus, at91_pit_driver, at91_pit_devclass,
NULL, NULL, BUS_PASS_TIMER);
#else
DRIVER_MODULE(at91_pit, atmelarm, at91_pit_driver, at91_pit_devclass, NULL,
NULL);
EARLY_DRIVER_MODULE(at91_pit, atmelarm, at91_pit_driver, at91_pit_devclass,
NULL, NULL, BUS_PASS_TIMER);
#endif

View File

@ -709,9 +709,9 @@ static driver_t at91_pmc_driver = {
static devclass_t at91_pmc_devclass;
#ifdef FDT
DRIVER_MODULE(at91_pmc, simplebus, at91_pmc_driver, at91_pmc_devclass, NULL,
NULL);
EARLY_DRIVER_MODULE(at91_pmc, simplebus, at91_pmc_driver, at91_pmc_devclass,
NULL, NULL, BUS_PASS_CPU);
#else
DRIVER_MODULE(at91_pmc, atmelarm, at91_pmc_driver, at91_pmc_devclass, NULL,
NULL);
EARLY_DRIVER_MODULE(at91_pmc, atmelarm, at91_pmc_driver, at91_pmc_devclass,
NULL, NULL, BUS_PASS_CPU);
#endif

View File

@ -11,3 +11,5 @@ device at91sam9x5
# bring in the sam specific timers and such
device at91sam9
options ARM_DEVICE_MULTIPASS