mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-28 22:54:05 +08:00
Merge branches 'gpio/merge' and 'spi/merge' of git://git.secretlab.ca/git/linux-2.6
* 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6: gpio: add GPIOF_ values regardless on kconfig settings gpio: include linux/gpio.h where needed gpio/omap4: Fix missing interrupts during device wakeup due to IOPAD. * 'spi/merge' of git://git.secretlab.ca/git/linux-2.6: spi/bfin_spi: fix handling of default bits per word setting
This commit is contained in:
commit
0835619348
@ -14,6 +14,7 @@
|
||||
#include <linux/init.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/gpio.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/apm-emulation.h>
|
||||
|
@ -469,8 +469,9 @@ static inline void set_24xx_gpio_triggering(struct gpio_bank *bank, int gpio,
|
||||
+ OMAP24XX_GPIO_CLEARWKUENA);
|
||||
}
|
||||
}
|
||||
/* This part needs to be executed always for OMAP34xx */
|
||||
if (cpu_is_omap34xx() || (bank->non_wakeup_gpios & gpio_bit)) {
|
||||
/* This part needs to be executed always for OMAP{34xx, 44xx} */
|
||||
if (cpu_is_omap34xx() || cpu_is_omap44xx() ||
|
||||
(bank->non_wakeup_gpios & gpio_bit)) {
|
||||
/*
|
||||
* Log the edge gpio and manually trigger the IRQ
|
||||
* after resume if the input level changes
|
||||
|
@ -11,6 +11,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#include <linux/gpio.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/platform_device.h>
|
||||
|
||||
|
@ -681,13 +681,14 @@ static void bfin_spi_pump_transfers(unsigned long data)
|
||||
drv_data->cs_change = transfer->cs_change;
|
||||
|
||||
/* Bits per word setup */
|
||||
bits_per_word = transfer->bits_per_word ? : message->spi->bits_per_word;
|
||||
if ((bits_per_word > 0) && (bits_per_word % 16 == 0)) {
|
||||
bits_per_word = transfer->bits_per_word ? :
|
||||
message->spi->bits_per_word ? : 8;
|
||||
if (bits_per_word % 16 == 0) {
|
||||
drv_data->n_bytes = bits_per_word/8;
|
||||
drv_data->len = (transfer->len) >> 1;
|
||||
cr_width = BIT_CTL_WORDSIZE;
|
||||
drv_data->ops = &bfin_bfin_spi_transfer_ops_u16;
|
||||
} else if ((bits_per_word > 0) && (bits_per_word % 8 == 0)) {
|
||||
} else if (bits_per_word % 8 == 0) {
|
||||
drv_data->n_bytes = bits_per_word/8;
|
||||
drv_data->len = transfer->len;
|
||||
cr_width = 0;
|
||||
|
@ -170,16 +170,6 @@ extern int __gpio_cansleep(unsigned gpio);
|
||||
|
||||
extern int __gpio_to_irq(unsigned gpio);
|
||||
|
||||
#define GPIOF_DIR_OUT (0 << 0)
|
||||
#define GPIOF_DIR_IN (1 << 0)
|
||||
|
||||
#define GPIOF_INIT_LOW (0 << 1)
|
||||
#define GPIOF_INIT_HIGH (1 << 1)
|
||||
|
||||
#define GPIOF_IN (GPIOF_DIR_IN)
|
||||
#define GPIOF_OUT_INIT_LOW (GPIOF_DIR_OUT | GPIOF_INIT_LOW)
|
||||
#define GPIOF_OUT_INIT_HIGH (GPIOF_DIR_OUT | GPIOF_INIT_HIGH)
|
||||
|
||||
/**
|
||||
* struct gpio - a structure describing a GPIO with configuration
|
||||
* @gpio: the GPIO number
|
||||
|
@ -3,6 +3,17 @@
|
||||
|
||||
/* see Documentation/gpio.txt */
|
||||
|
||||
/* make these flag values available regardless of GPIO kconfig options */
|
||||
#define GPIOF_DIR_OUT (0 << 0)
|
||||
#define GPIOF_DIR_IN (1 << 0)
|
||||
|
||||
#define GPIOF_INIT_LOW (0 << 1)
|
||||
#define GPIOF_INIT_HIGH (1 << 1)
|
||||
|
||||
#define GPIOF_IN (GPIOF_DIR_IN)
|
||||
#define GPIOF_OUT_INIT_LOW (GPIOF_DIR_OUT | GPIOF_INIT_LOW)
|
||||
#define GPIOF_OUT_INIT_HIGH (GPIOF_DIR_OUT | GPIOF_INIT_HIGH)
|
||||
|
||||
#ifdef CONFIG_GENERIC_GPIO
|
||||
#include <asm/gpio.h>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user