db1200.c (762f99f4f3cb41a775b5157dd761217beba65873) | db1200.c (d4a5c59a955bba96b273ec1a5885bada24c56979) |
---|---|
1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * DBAu1200/PBAu1200 board platform device registration 4 * 5 * Copyright (C) 2008-2011 Manuel Lauss 6 */ 7 8#include <linux/clk.h> 9#include <linux/dma-mapping.h> 10#include <linux/gpio.h> 11#include <linux/i2c.h> 12#include <linux/init.h> | 1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * DBAu1200/PBAu1200 board platform device registration 4 * 5 * Copyright (C) 2008-2011 Manuel Lauss 6 */ 7 8#include <linux/clk.h> 9#include <linux/dma-mapping.h> 10#include <linux/gpio.h> 11#include <linux/i2c.h> 12#include <linux/init.h> |
13#include <linux/module.h> | |
14#include <linux/interrupt.h> 15#include <linux/io.h> 16#include <linux/leds.h> 17#include <linux/mmc/host.h> 18#include <linux/mtd/mtd.h> 19#include <linux/mtd/platnand.h> 20#include <linux/platform_device.h> 21#include <linux/serial_8250.h> --- 313 unchanged lines hidden (view full) --- 335static irqreturn_t db1200_mmc_cd(int irq, void *ptr) 336{ 337 disable_irq_nosync(irq); 338 return IRQ_WAKE_THREAD; 339} 340 341static irqreturn_t db1200_mmc_cdfn(int irq, void *ptr) 342{ | 13#include <linux/interrupt.h> 14#include <linux/io.h> 15#include <linux/leds.h> 16#include <linux/mmc/host.h> 17#include <linux/mtd/mtd.h> 18#include <linux/mtd/platnand.h> 19#include <linux/platform_device.h> 20#include <linux/serial_8250.h> --- 313 unchanged lines hidden (view full) --- 334static irqreturn_t db1200_mmc_cd(int irq, void *ptr) 335{ 336 disable_irq_nosync(irq); 337 return IRQ_WAKE_THREAD; 338} 339 340static irqreturn_t db1200_mmc_cdfn(int irq, void *ptr) 341{ |
343 void (*mmc_cd)(struct mmc_host *, unsigned long); | 342 mmc_detect_change(ptr, msecs_to_jiffies(200)); |
344 | 343 |
345 /* link against CONFIG_MMC=m */ 346 mmc_cd = symbol_get(mmc_detect_change); 347 if (mmc_cd) { 348 mmc_cd(ptr, msecs_to_jiffies(200)); 349 symbol_put(mmc_detect_change); 350 } 351 | |
352 msleep(100); /* debounce */ 353 if (irq == DB1200_SD0_INSERT_INT) 354 enable_irq(DB1200_SD0_EJECT_INT); 355 else 356 enable_irq(DB1200_SD0_INSERT_INT); 357 358 return IRQ_HANDLED; 359} --- 66 unchanged lines hidden (view full) --- 426static irqreturn_t pb1200_mmc1_cd(int irq, void *ptr) 427{ 428 disable_irq_nosync(irq); 429 return IRQ_WAKE_THREAD; 430} 431 432static irqreturn_t pb1200_mmc1_cdfn(int irq, void *ptr) 433{ | 344 msleep(100); /* debounce */ 345 if (irq == DB1200_SD0_INSERT_INT) 346 enable_irq(DB1200_SD0_EJECT_INT); 347 else 348 enable_irq(DB1200_SD0_INSERT_INT); 349 350 return IRQ_HANDLED; 351} --- 66 unchanged lines hidden (view full) --- 418static irqreturn_t pb1200_mmc1_cd(int irq, void *ptr) 419{ 420 disable_irq_nosync(irq); 421 return IRQ_WAKE_THREAD; 422} 423 424static irqreturn_t pb1200_mmc1_cdfn(int irq, void *ptr) 425{ |
434 void (*mmc_cd)(struct mmc_host *, unsigned long); | 426 mmc_detect_change(ptr, msecs_to_jiffies(200)); |
435 | 427 |
436 /* link against CONFIG_MMC=m */ 437 mmc_cd = symbol_get(mmc_detect_change); 438 if (mmc_cd) { 439 mmc_cd(ptr, msecs_to_jiffies(200)); 440 symbol_put(mmc_detect_change); 441 } 442 | |
443 msleep(100); /* debounce */ 444 if (irq == PB1200_SD1_INSERT_INT) 445 enable_irq(PB1200_SD1_EJECT_INT); 446 else 447 enable_irq(PB1200_SD1_INSERT_INT); 448 449 return IRQ_HANDLED; 450} --- 502 unchanged lines hidden --- | 428 msleep(100); /* debounce */ 429 if (irq == PB1200_SD1_INSERT_INT) 430 enable_irq(PB1200_SD1_EJECT_INT); 431 else 432 enable_irq(PB1200_SD1_INSERT_INT); 433 434 return IRQ_HANDLED; 435} --- 502 unchanged lines hidden --- |