• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/drivers/hwmon/ams/

Lines Matching defs:ams_info

32 struct ams ams_info;
38 /* Call with ams_info.lock held! */
41 u32 orient = ams_info.vflag? ams_info.orient1 : ams_info.orient2;
45 ams_info.get_xyz(y, x, z);
47 ams_info.get_xyz(x, y, z);
62 mutex_lock(&ams_info.lock);
64 mutex_unlock(&ams_info.lock);
75 spin_lock(&ams_info.irq_lock);
77 ams_info.worker_irqs |= irq;
78 schedule_work(&ams_info.worker);
80 spin_unlock(&ams_info.irq_lock);
105 mutex_lock(&ams_info.lock);
107 spin_lock_irqsave(&ams_info.irq_lock, flags);
108 irqs_to_clear = ams_info.worker_irqs;
110 if (ams_info.worker_irqs & AMS_IRQ_FREEFALL) {
114 ams_info.worker_irqs &= ~AMS_IRQ_FREEFALL;
117 if (ams_info.worker_irqs & AMS_IRQ_SHOCK) {
121 ams_info.worker_irqs &= ~AMS_IRQ_SHOCK;
124 spin_unlock_irqrestore(&ams_info.irq_lock, flags);
126 ams_info.clear_irq(irqs_to_clear);
128 mutex_unlock(&ams_info.lock);
131 /* Call with ams_info.lock held! */
138 prop = of_get_property(ams_info.of_node, "orientation", NULL);
141 ams_info.orient1 = *prop;
142 ams_info.orient2 = *(prop + 1);
145 result = pmf_register_irq_client(ams_info.of_node,
152 ams_info.worker_irqs = 0;
155 result = pmf_register_irq_client(ams_info.of_node,
162 ams_info.of_dev = of_platform_device_create(ams_info.of_node, "ams", NULL);
163 if (!ams_info.of_dev) {
169 result = device_create_file(&ams_info.of_dev->dev, &dev_attr_current);
173 ams_info.vflag = !!(ams_info.get_vendor() & 0x10);
182 device_remove_file(&ams_info.of_dev->dev, &dev_attr_current);
184 of_device_unregister(ams_info.of_dev);
196 spin_lock_init(&ams_info.irq_lock);
197 mutex_init(&ams_info.lock);
198 INIT_WORK(&ams_info.worker, ams_worker);
222 device_remove_file(&ams_info.of_dev->dev, &dev_attr_current);
226 * We do this after ams_info.exit(), because an interrupt might
232 of_device_unregister(ams_info.of_dev);
242 ams_info.exit();