Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1.      void tasking (unsigned long);
  2.  
  3.      DECLARE_TASKLET (dor_tasklet, tasking, 0);
  4.  
  5.     void tasking (unsigned long pake) {
  6.  
  7.         printk(KERN_INFO "tertrigger karena tasklet yang berasal dari interrupt\n");
  8.  
  9.     }
  10.  
  11.     irqreturn_t inter(int irq, void *dev_id) {
  12.  
  13.         tasklet_schedule(&dor_tasklet);
  14.  
  15.         return IRQ_HANDLED;
  16.  
  17.     }
  18.  
  19.      static int __init mulai (void) {
  20.  
  21.         //asumsi ss adalah var pointer dari suatu struct yang ada di modul
  22.  
  23.         //silahkan buat sendiri structurenya, ini hanya sebagai contoh
  24.  
  25.     if (request_irq(46, inter, IRQF_SHARED  , "contoh", ss))
  26.  
  27.     return -1
  28.  
  29.     return 0;
  30.  
  31.     }
  32.  
  33.      static void __exit netwo_exit (void) {
  34.  
  35.          free_irq(46, ss);
  36.  
  37.     }
  38.  
  39.     module_init(mulai);
  40.  
  41.     module_exit(keluar);