Selaa lähdekoodia

修复钱箱问题

qidong.liu 3 viikkoa sitten
vanhempi
sitoutus
16f73544ff
1 muutettua tiedostoa jossa 3 lisäystä ja 2 poistoa
  1. 3 2
      cash_drawers.c

+ 3 - 2
cash_drawers.c

@@ -72,6 +72,7 @@ static void gpio_status_delay_work_func(struct work_struct *work)
         dev->last_status = value;
         dev->status_changed = 1;
         wake_up_interruptible(&dev->read_wait);
+        pr_info("%s %s %d value=%d\n", __FILE__, __func__, __LINE__, value);
     }
 
     // debug code
@@ -142,9 +143,9 @@ static ssize_t cashd_read(struct file *filp, char __user *buf,
             printk(KERN_INFO "gpio_monitor: wait interrupted by signal\n");
             return -ERESTARTSYS;
     }
-    dev->in_status = readl(dev->gpio_status_reg_base);
+    // dev->in_status = readl(dev->gpio_status_reg_base);
 
-    if(dev->in_status & 0x2)
+    if(dev->last_status & 0x2)
     {
         ret = copy_to_user(buf, "o", 1);
         if(ret != 0)