allwinner: Rework the BUS_PASS on drivers
- Put all clock and control unit driver in BUS_PASS_RESOURCE except for the DE2 CCU as it needs the main CCU to be available. - Use BUS_PASS_CPU for a20_cpu_cfg as it makes more sense. - For aw_syscon use SCHEDULER pass as we need it early for drivers that attach in BUS_PASS_SUPPORTDEV - For the rest we can use BUS_PASS_SUPPORTDEV
This commit is contained in:
parent
7596e192fb
commit
cfc8861b06
@ -116,7 +116,7 @@ static driver_t a10_sramc_driver = {
|
||||
static devclass_t a10_sramc_devclass;
|
||||
|
||||
EARLY_DRIVER_MODULE(a10_sramc, simplebus, a10_sramc_driver, a10_sramc_devclass,
|
||||
0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_EARLY);
|
||||
0, 0, BUS_PASS_SUPPORTDEV + BUS_PASS_ORDER_FIRST);
|
||||
|
||||
int
|
||||
a10_map_to_emac(void)
|
||||
|
@ -119,7 +119,7 @@ static driver_t a20_cpu_cfg_driver = {
|
||||
static devclass_t a20_cpu_cfg_devclass;
|
||||
|
||||
EARLY_DRIVER_MODULE(a20_cpu_cfg, simplebus, a20_cpu_cfg_driver, a20_cpu_cfg_devclass, 0, 0,
|
||||
BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
|
||||
BUS_PASS_CPU + BUS_PASS_ORDER_FIRST);
|
||||
|
||||
uint64_t
|
||||
a20_read_counter64(void)
|
||||
|
@ -250,6 +250,6 @@ DEFINE_CLASS_1(aw_ccu, aw_ccu_driver, aw_ccu_methods,
|
||||
static devclass_t aw_ccu_devclass;
|
||||
|
||||
EARLY_DRIVER_MODULE(aw_ccu, simplebus, aw_ccu_driver, aw_ccu_devclass,
|
||||
0, 0, BUS_PASS_BUS + BUS_PASS_ORDER_MIDDLE);
|
||||
0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
|
||||
|
||||
MODULE_VERSION(aw_ccu, 1);
|
||||
|
@ -277,4 +277,4 @@ static driver_t aw_gmacclk_driver = {
|
||||
static devclass_t aw_gmacclk_devclass;
|
||||
|
||||
EARLY_DRIVER_MODULE(aw_gmacclk, simplebus, aw_gmacclk_driver,
|
||||
aw_gmacclk_devclass, 0, 0, BUS_PASS_BUS + BUS_PASS_ORDER_MIDDLE);
|
||||
aw_gmacclk_devclass, 0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
|
||||
|
@ -162,5 +162,5 @@ static driver_t aw_reset_driver = {
|
||||
static devclass_t aw_reset_devclass;
|
||||
|
||||
EARLY_DRIVER_MODULE(aw_reset, simplebus, aw_reset_driver, aw_reset_devclass,
|
||||
0, 0, BUS_PASS_BUS + BUS_PASS_ORDER_MIDDLE);
|
||||
0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
|
||||
MODULE_VERSION(aw_reset, 1);
|
||||
|
@ -494,9 +494,9 @@ static driver_t rsb_driver = {
|
||||
static devclass_t rsb_devclass;
|
||||
|
||||
EARLY_DRIVER_MODULE(iicbus, rsb, iicbus_driver, iicbus_devclass, 0, 0,
|
||||
BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
|
||||
BUS_PASS_SUPPORTDEV + BUS_PASS_ORDER_MIDDLE);
|
||||
EARLY_DRIVER_MODULE(rsb, simplebus, rsb_driver, rsb_devclass, 0, 0,
|
||||
BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
|
||||
BUS_PASS_SUPPORTDEV + BUS_PASS_ORDER_MIDDLE);
|
||||
MODULE_VERSION(rsb, 1);
|
||||
MODULE_DEPEND(rsb, iicbus, 1, 1, 1);
|
||||
SIMPLEBUS_PNP_INFO(compat_data);
|
||||
|
@ -185,7 +185,7 @@ static driver_t aw_rtc_driver = {
|
||||
static devclass_t aw_rtc_devclass;
|
||||
|
||||
EARLY_DRIVER_MODULE(aw_rtc, simplebus, aw_rtc_driver, aw_rtc_devclass, 0, 0,
|
||||
BUS_PASS_BUS + BUS_PASS_ORDER_MIDDLE);
|
||||
BUS_PASS_RESOURCE + BUS_PASS_ORDER_FIRST);
|
||||
MODULE_VERSION(aw_rtc, 1);
|
||||
SIMPLEBUS_PNP_INFO(compat_data);
|
||||
|
||||
|
@ -412,6 +412,6 @@ static driver_t aw_sid_driver = {
|
||||
static devclass_t aw_sid_devclass;
|
||||
|
||||
EARLY_DRIVER_MODULE(aw_sid, simplebus, aw_sid_driver, aw_sid_devclass, 0, 0,
|
||||
BUS_PASS_RESOURCE + BUS_PASS_ORDER_FIRST);
|
||||
BUS_PASS_SUPPORTDEV + BUS_PASS_ORDER_FIRST);
|
||||
MODULE_VERSION(aw_sid, 1);
|
||||
SIMPLEBUS_PNP_INFO(compat_data);
|
||||
|
@ -82,5 +82,5 @@ DEFINE_CLASS_1(aw_syscon, aw_syscon_driver, aw_syscon_methods,
|
||||
static devclass_t aw_syscon_devclass;
|
||||
/* aw_syscon needs to attach prior to if_awg */
|
||||
EARLY_DRIVER_MODULE(aw_syscon, simplebus, aw_syscon_driver, aw_syscon_devclass,
|
||||
0, 0, BUS_PASS_SUPPORTDEV + BUS_PASS_ORDER_MIDDLE);
|
||||
0, 0, BUS_PASS_SCHEDULER + BUS_PASS_ORDER_LAST);
|
||||
MODULE_VERSION(aw_syscon, 1);
|
||||
|
@ -621,4 +621,4 @@ DEFINE_CLASS_1(ccu_a10ng, ccu_a10ng_driver, ccu_a10ng_methods,
|
||||
sizeof(struct aw_ccung_softc), aw_ccung_driver);
|
||||
|
||||
EARLY_DRIVER_MODULE(ccu_a10ng, simplebus, ccu_a10ng_driver,
|
||||
ccu_a10ng_devclass, 0, 0, BUS_PASS_BUS + BUS_PASS_ORDER_MIDDLE);
|
||||
ccu_a10ng_devclass, 0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
|
||||
|
@ -568,4 +568,4 @@ DEFINE_CLASS_1(ccu_a13ng, ccu_a13ng_driver, ccu_a13ng_methods,
|
||||
sizeof(struct aw_ccung_softc), aw_ccung_driver);
|
||||
|
||||
EARLY_DRIVER_MODULE(ccu_a13ng, simplebus, ccu_a13ng_driver,
|
||||
ccu_a13ng_devclass, 0, 0, BUS_PASS_BUS + BUS_PASS_ORDER_MIDDLE);
|
||||
ccu_a13ng_devclass, 0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
|
||||
|
@ -973,4 +973,4 @@ DEFINE_CLASS_1(ccu_a31ng, ccu_a31ng_driver, ccu_a31ng_methods,
|
||||
sizeof(struct aw_ccung_softc), aw_ccung_driver);
|
||||
|
||||
EARLY_DRIVER_MODULE(ccu_a31ng, simplebus, ccu_a31ng_driver,
|
||||
ccu_a31ng_devclass, 0, 0, BUS_PASS_BUS + BUS_PASS_ORDER_LAST);
|
||||
ccu_a31ng_devclass, 0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
|
||||
|
@ -827,4 +827,4 @@ DEFINE_CLASS_1(ccu_a64ng, ccu_a64ng_driver, ccu_a64ng_methods,
|
||||
sizeof(struct aw_ccung_softc), aw_ccung_driver);
|
||||
|
||||
EARLY_DRIVER_MODULE(ccu_a64ng, simplebus, ccu_a64ng_driver,
|
||||
ccu_a64ng_devclass, 0, 0, BUS_PASS_BUS + BUS_PASS_ORDER_LAST);
|
||||
ccu_a64ng_devclass, 0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
|
||||
|
@ -786,4 +786,4 @@ DEFINE_CLASS_1(ccu_a83tng, ccu_a83tng_driver, ccu_a83tng_methods,
|
||||
sizeof(struct aw_ccung_softc), aw_ccung_driver);
|
||||
|
||||
EARLY_DRIVER_MODULE(ccu_a83tng, simplebus, ccu_a83tng_driver,
|
||||
ccu_a83tng_devclass, 0, 0, BUS_PASS_BUS + BUS_PASS_ORDER_LAST);
|
||||
ccu_a83tng_devclass, 0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
|
||||
|
@ -163,4 +163,4 @@ DEFINE_CLASS_1(ccu_de2, ccu_de2_driver, ccu_de2_methods,
|
||||
sizeof(struct aw_ccung_softc), aw_ccung_driver);
|
||||
|
||||
EARLY_DRIVER_MODULE(ccu_de2, simplebus, ccu_de2_driver,
|
||||
ccu_de2ng_devclass, 0, 0, BUS_PASS_BUS + BUS_PASS_ORDER_LAST);
|
||||
ccu_de2ng_devclass, 0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_LAST);
|
||||
|
@ -787,4 +787,4 @@ DEFINE_CLASS_1(ccu_h3ng, ccu_h3ng_driver, ccu_h3ng_methods,
|
||||
sizeof(struct aw_ccung_softc), aw_ccung_driver);
|
||||
|
||||
EARLY_DRIVER_MODULE(ccu_h3ng, simplebus, ccu_h3ng_driver,
|
||||
ccu_h3ng_devclass, 0, 0, BUS_PASS_BUS + BUS_PASS_ORDER_LAST);
|
||||
ccu_h3ng_devclass, 0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
|
||||
|
@ -215,7 +215,7 @@ DEFINE_CLASS_1(ccu_sun8i_r, ccu_sun8i_r_driver, ccu_sun8i_r_methods,
|
||||
sizeof(struct aw_ccung_softc), aw_ccung_driver);
|
||||
|
||||
EARLY_DRIVER_MODULE(ccu_sun8i_r, simplebus, ccu_sun8i_r_driver,
|
||||
ccu_sun8i_r_devclass, 0, 0, BUS_PASS_BUS + BUS_PASS_ORDER_LAST);
|
||||
ccu_sun8i_r_devclass, 0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
|
||||
|
||||
static int
|
||||
ccu_a83t_r_probe(device_t dev)
|
||||
@ -262,4 +262,4 @@ DEFINE_CLASS_1(ccu_a83t_r, ccu_a83t_r_driver, ccu_a83t_r_methods,
|
||||
sizeof(struct aw_ccung_softc), aw_ccung_driver);
|
||||
|
||||
EARLY_DRIVER_MODULE(ccu_a83t_r, simplebus, ccu_a83t_r_driver,
|
||||
ccu_a83t_r_devclass, 0, 0, BUS_PASS_BUS + BUS_PASS_ORDER_LAST);
|
||||
ccu_a83t_r_devclass, 0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
|
||||
|
Loading…
Reference in New Issue
Block a user