lantiq: ltq-atm/ltq-ptm: fix showtime handling on driver load
This is needed to be able to load the ltq-atm/ltq-ptm driver from a notify script during synchronization, because the line can reach showtime state before the driver is fully loaded. Signed-off-by: Martin Schiller <ms@dev.tdt.de>
This commit is contained in:
parent
0481a2a2c5
commit
2d6c7c2526
3 changed files with 10 additions and 8 deletions
|
@ -1866,15 +1866,11 @@ static int ltq_atm_probe(struct platform_device *pdev)
|
||||||
port_cell.port_num = ATM_PORT_NUMBER;
|
port_cell.port_num = ATM_PORT_NUMBER;
|
||||||
ifx_mei_atm_showtime_check(&g_showtime, &port_cell, &g_xdata_addr);
|
ifx_mei_atm_showtime_check(&g_showtime, &port_cell, &g_xdata_addr);
|
||||||
if ( g_showtime ) {
|
if ( g_showtime ) {
|
||||||
for ( i = 0; i < ATM_PORT_NUMBER; i++ )
|
atm_showtime_enter(&port_cell, &g_xdata_addr);
|
||||||
if ( port_cell.tx_link_rate[i] != 0 )
|
} else {
|
||||||
break;
|
qsb_global_set();
|
||||||
for ( j = 0; j < ATM_PORT_NUMBER; j++ )
|
|
||||||
g_atm_priv_data.port[j].tx_max_cell_rate =
|
|
||||||
port_cell.tx_link_rate[j] != 0 ? port_cell.tx_link_rate[j] : port_cell.tx_link_rate[i];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
qsb_global_set();
|
|
||||||
validate_oam_htu_entry();
|
validate_oam_htu_entry();
|
||||||
|
|
||||||
ifx_mei_atm_showtime_enter = atm_showtime_enter;
|
ifx_mei_atm_showtime_enter = atm_showtime_enter;
|
||||||
|
|
|
@ -1518,6 +1518,9 @@ static int ifx_ptm_init(void)
|
||||||
|
|
||||||
port_cell.port_num = 1;
|
port_cell.port_num = 1;
|
||||||
ifx_mei_atm_showtime_check(&g_showtime, &port_cell, &xdata_addr);
|
ifx_mei_atm_showtime_check(&g_showtime, &port_cell, &xdata_addr);
|
||||||
|
if ( g_showtime ) {
|
||||||
|
ptm_showtime_enter(&port_cell, &g_xdata_addr);
|
||||||
|
}
|
||||||
|
|
||||||
ifx_mei_atm_showtime_enter = ptm_showtime_enter;
|
ifx_mei_atm_showtime_enter = ptm_showtime_enter;
|
||||||
ifx_mei_atm_showtime_exit = ptm_showtime_exit;
|
ifx_mei_atm_showtime_exit = ptm_showtime_exit;
|
||||||
|
|
|
@ -1022,7 +1022,10 @@ static int ifx_ptm_init(void)
|
||||||
enable_irq(PPE_MAILBOX_IGU1_INT);
|
enable_irq(PPE_MAILBOX_IGU1_INT);
|
||||||
|
|
||||||
ifx_mei_atm_showtime_check(&g_showtime, &port_cell, &g_xdata_addr);
|
ifx_mei_atm_showtime_check(&g_showtime, &port_cell, &g_xdata_addr);
|
||||||
|
if ( g_showtime ) {
|
||||||
|
ptm_showtime_enter(&port_cell, &g_xdata_addr);
|
||||||
|
}
|
||||||
|
|
||||||
ifx_mei_atm_showtime_enter = ptm_showtime_enter;
|
ifx_mei_atm_showtime_enter = ptm_showtime_enter;
|
||||||
ifx_mei_atm_showtime_exit = ptm_showtime_exit;
|
ifx_mei_atm_showtime_exit = ptm_showtime_exit;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue