@@ -433,10 +433,11 @@ static void check_pending(struct bas_cardstate *ucs)
433
433
* argument:
434
434
* controller state structure
435
435
*/
436
- static void cmd_in_timeout (unsigned long data )
436
+ static void cmd_in_timeout (struct timer_list * t )
437
437
{
438
- struct cardstate * cs = (struct cardstate * ) data ;
439
- struct bas_cardstate * ucs = cs -> hw .bas ;
438
+ struct bas_cardstate * ucs = from_timer (ucs , t , timer_cmd_in );
439
+ struct urb * urb = ucs -> urb_int_in ;
440
+ struct cardstate * cs = urb -> context ;
440
441
int rc ;
441
442
442
443
if (!ucs -> rcvbuf_size ) {
@@ -639,10 +640,11 @@ static void int_in_work(struct work_struct *work)
639
640
* argument:
640
641
* controller state structure
641
642
*/
642
- static void int_in_resubmit (unsigned long data )
643
+ static void int_in_resubmit (struct timer_list * t )
643
644
{
644
- struct cardstate * cs = (struct cardstate * ) data ;
645
- struct bas_cardstate * ucs = cs -> hw .bas ;
645
+ struct bas_cardstate * ucs = from_timer (ucs , t , timer_int_in );
646
+ struct urb * urb = ucs -> urb_int_in ;
647
+ struct cardstate * cs = urb -> context ;
646
648
int rc ;
647
649
648
650
if (ucs -> retry_int_in ++ >= BAS_RETRY ) {
@@ -1441,10 +1443,11 @@ static void read_iso_tasklet(unsigned long data)
1441
1443
* argument:
1442
1444
* controller state structure
1443
1445
*/
1444
- static void req_timeout (unsigned long data )
1446
+ static void req_timeout (struct timer_list * t )
1445
1447
{
1446
- struct cardstate * cs = (struct cardstate * ) data ;
1447
- struct bas_cardstate * ucs = cs -> hw .bas ;
1448
+ struct bas_cardstate * ucs = from_timer (ucs , t , timer_ctrl );
1449
+ struct urb * urb = ucs -> urb_int_in ;
1450
+ struct cardstate * cs = urb -> context ;
1448
1451
int pending ;
1449
1452
unsigned long flags ;
1450
1453
@@ -1837,10 +1840,11 @@ static void write_command_callback(struct urb *urb)
1837
1840
* argument:
1838
1841
* controller state structure
1839
1842
*/
1840
- static void atrdy_timeout (unsigned long data )
1843
+ static void atrdy_timeout (struct timer_list * t )
1841
1844
{
1842
- struct cardstate * cs = (struct cardstate * ) data ;
1843
- struct bas_cardstate * ucs = cs -> hw .bas ;
1845
+ struct bas_cardstate * ucs = from_timer (ucs , t , timer_atrdy );
1846
+ struct urb * urb = ucs -> urb_int_in ;
1847
+ struct cardstate * cs = urb -> context ;
1844
1848
1845
1849
dev_warn (cs -> dev , "timeout waiting for HD_READY_SEND_ATDATA\n" );
1846
1850
@@ -2213,10 +2217,10 @@ static int gigaset_initcshw(struct cardstate *cs)
2213
2217
}
2214
2218
2215
2219
spin_lock_init (& ucs -> lock );
2216
- setup_timer (& ucs -> timer_ctrl , req_timeout , ( unsigned long ) cs );
2217
- setup_timer (& ucs -> timer_atrdy , atrdy_timeout , ( unsigned long ) cs );
2218
- setup_timer (& ucs -> timer_cmd_in , cmd_in_timeout , ( unsigned long ) cs );
2219
- setup_timer (& ucs -> timer_int_in , int_in_resubmit , ( unsigned long ) cs );
2220
+ timer_setup (& ucs -> timer_ctrl , req_timeout , 0 );
2221
+ timer_setup (& ucs -> timer_atrdy , atrdy_timeout , 0 );
2222
+ timer_setup (& ucs -> timer_cmd_in , cmd_in_timeout , 0 );
2223
+ timer_setup (& ucs -> timer_int_in , int_in_resubmit , 0 );
2220
2224
init_waitqueue_head (& ucs -> waitqueue );
2221
2225
INIT_WORK (& ucs -> int_in_wq , int_in_work );
2222
2226
0 commit comments