Rev 3120 | Rev 3263 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3120 | Rev 3243 | ||
---|---|---|---|
Line 366... | Line 366... | ||
366 | safe_sti(ifl); |
366 | safe_sti(ifl); |
367 | 367 | ||
Line 368... | Line 368... | ||
368 | main_device = dev; |
368 | main_device = dev; |
Line -... | Line 369... | ||
- | 369 | ||
369 | 370 | #ifdef __HWA__ |
|
- | 371 | err = init_bitmaps(); |
|
Line 370... | Line 372... | ||
370 | err = init_bitmaps(); |
372 | #endif |
371 | 373 | ||
Line 622... | Line 624... | ||
622 | }; |
624 | }; |
623 | 625 | ||
Line 624... | Line 626... | ||
624 | 626 | ||
Line 625... | Line 627... | ||
625 | 627 | ||
Line 626... | Line 628... | ||
626 | 628 | #ifdef __HWA__ |
|
Line 1310... | Line 1312... | ||
1310 | 1312 | ||
Line 1311... | Line 1313... | ||
1311 | #endif |
1313 | #endif |
Line 1312... | Line 1314... | ||
1312 | 1314 | ||
1313 | 1315 | ||
1314 | 1316 | #endif |
|
Line 1315... | Line 1317... | ||
1315 | 1317 | ||
1316 | 1318 | ||
Line 1317... | Line 1319... | ||
1317 | 1319 | ||
Line 1318... | Line 1320... | ||
1318 | 1320 | ||
1319 | 1321 | ||
1320 | void __stdcall run_workqueue(struct workqueue_struct *cwq) |
1322 | void __stdcall run_workqueue(struct workqueue_struct *cwq) |
1321 | { |
1323 | { |
1322 | unsigned long irqflags; |
1324 | unsigned long irqflags; |
1323 | 1325 | ||
1324 | // dbgprintf("wq: %x head %x, next %x\n", |
1326 | dbgprintf("wq: %x head %x, next %x\n", |
1325 | // cwq, &cwq->worklist, cwq->worklist.next); |
1327 | cwq, &cwq->worklist, cwq->worklist.next); |
Line 1326... | Line 1328... | ||
1326 | 1328 | ||
1327 | spin_lock_irqsave(&cwq->lock, irqflags); |
1329 | spin_lock_irqsave(&cwq->lock, irqflags); |
1328 | 1330 | ||
1329 | while (!list_empty(&cwq->worklist)) |
1331 | while (!list_empty(&cwq->worklist)) |
Line 1349... | Line 1351... | ||
1349 | struct work_struct *work) |
1351 | struct work_struct *work) |
1350 | { |
1352 | { |
1351 | unsigned long flags; |
1353 | unsigned long flags; |
1352 | 1354 | ||
Line 1353... | Line 1355... | ||
1353 | // dbgprintf("wq: %x, work: %x\n", |
1355 | dbgprintf("wq: %x, work: %x\n", |
1354 | // wq, work ); |
1356 | wq, work ); |
Line 1355... | Line 1357... | ||
1355 | 1357 | ||
1356 | if(!list_empty(&work->entry)) |
1358 | if(!list_empty(&work->entry)) |
Line 1357... | Line 1359... | ||
1357 | return 0; |
1359 | return 0; |
Line 1363... | Line 1365... | ||
1363 | 1365 | ||
Line 1364... | Line 1366... | ||
1364 | list_add_tail(&work->entry, &wq->worklist); |
1366 | list_add_tail(&work->entry, &wq->worklist); |
Line 1365... | Line 1367... | ||
1365 | 1367 | ||
1366 | spin_unlock_irqrestore(&wq->lock, flags); |
1368 | spin_unlock_irqrestore(&wq->lock, flags); |
1367 | // dbgprintf("wq: %x head %x, next %x\n", |
1369 | dbgprintf("wq: %x head %x, next %x\n", |
Line 1368... | Line 1370... | ||
1368 | // wq, &wq->worklist, wq->worklist.next); |
1370 | wq, &wq->worklist, wq->worklist.next); |
1369 | 1371 | ||
Line 1370... | Line 1372... | ||
1370 | return 1; |
1372 | return 1; |
1371 | }; |
1373 | }; |
1372 | 1374 | ||
1373 | void __stdcall delayed_work_timer_fn(unsigned long __data) |
1375 | void __stdcall delayed_work_timer_fn(unsigned long __data) |
Line 1374... | Line 1376... | ||
1374 | { |
1376 | { |
1375 | struct delayed_work *dwork = (struct delayed_work *)__data; |
1377 | struct delayed_work *dwork = (struct delayed_work *)__data; |
Line 1376... | Line 1378... | ||
1376 | struct workqueue_struct *wq = dwork->work.data; |
1378 | struct workqueue_struct *wq = dwork->work.data; |
1377 | 1379 | ||
Line 1396... | Line 1398... | ||
1396 | struct delayed_work *dwork, unsigned long delay) |
1398 | struct delayed_work *dwork, unsigned long delay) |
1397 | { |
1399 | { |
1398 | u32 flags; |
1400 | u32 flags; |
1399 | 1401 | ||
Line 1400... | Line 1402... | ||
1400 | // dbgprintf("wq: %x, work: %x\n", |
1402 | dbgprintf("wq: %x, work: %x\n", |
1401 | // wq, &dwork->work ); |
1403 | wq, &dwork->work ); |
Line 1402... | Line 1404... | ||
1402 | 1404 | ||
1403 | if (delay == 0) |
1405 | if (delay == 0) |
Line 1404... | Line 1406... | ||
1404 | return __queue_work(wq, &dwork->work); |
1406 | return __queue_work(wq, &dwork->work); |