GPIO fixes for the v4.15 cycle:
- Fix a crash in the 74x164 driver - Fix IRQ banks in the DaVinci driver - Fix the vendor prefix in the PCA953x driver -----BEGIN PGP SIGNATURE----- iQIcBAABAgAGBQJaJpoPAAoJEEEQszewGV1zkS8P/iDQiDNCASokABajkyDDXQGG 5jbbiANBH9DwCBDFru88VH9FyF+HDtoy2eOyi7pQe5pyufgZs+0EgHsT0M11aTux jOyiiK0jR1M4Ny255nWyOsT820NF58j53Bpze28U0xtiEWTA0ohqEgCTpp7825px zc5TMrHhP2Gvf5FJNQU7rphzoG/oSLevONzSxNplcfXtSFoEiu5JDSEQphna3PRY PLFiso4JlXhonhARIZ6MGB32Dx15D3jzoh21BRNmUDT/TeBLnaQckRuP7fHNUOsG inhAuiROXFVw27qZQL1DiyIBg5fDNreCPJ0hk+/sM92/QAz3cDLZoKjLmE5nqh7q d4H0/tDBJi/f3v0ITLwMjWk2dAiEPgnDUpdz7rlz0syhRvBjGo6J6LGG3LdNnNH9 oqc7zliQARkO4ELARnz9HomIjHZsHPYD8NOJe6CQvtashabzFEa8jK+GFA32OfaG LFZyaQyxjLKsh0qjGg+4XMHcuVj1/33xLVOdGFUE9MkZQxMKwDMZRkwSV1fSOFKF r5ChdjTz71V711ONRmZuTd9vChHpEy2AJj7n1z1acwtZkI9owHIXdhf9O6AgB/+z hey+he+RmsxcPwMNUd4yI/hTQEiKShFVfK0E/TDoUG3i/TY8K73vfZUgYEZxM6mj Hsc/T5J/OIrlO3RD9tzB =B3ae -----END PGP SIGNATURE----- Merge tag 'gpio-v4.15-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio Pull GPIO fixes from Linus Walleij: "Three small fixes for GPIO. Not much, I'm surprised by the silence in my subsystems. All driver fixes: - fix a crash in the 74x164 driver - fix IRQ banks in the DaVinci driver - fix the vendor prefix in the PCA953x driver" * tag 'gpio-v4.15-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: gpio: pca953x: fix vendor prefix for PCA9654 gpio: davinci: Assign first bank regs for unbanked case gpio: 74x164: Fix crash during .remove()
This commit is contained in:
commit
f81c728745
|
@ -27,7 +27,7 @@ Required properties:
|
||||||
ti,tca6424
|
ti,tca6424
|
||||||
ti,tca9539
|
ti,tca9539
|
||||||
ti,tca9554
|
ti,tca9554
|
||||||
onsemi,pca9654
|
onnn,pca9654
|
||||||
exar,xra1202
|
exar,xra1202
|
||||||
|
|
||||||
Optional properties:
|
Optional properties:
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
struct gen_74x164_chip {
|
struct gen_74x164_chip {
|
||||||
struct gpio_chip gpio_chip;
|
struct gpio_chip gpio_chip;
|
||||||
struct mutex lock;
|
struct mutex lock;
|
||||||
|
struct gpio_desc *gpiod_oe;
|
||||||
u32 registers;
|
u32 registers;
|
||||||
/*
|
/*
|
||||||
* Since the registers are chained, every byte sent will make
|
* Since the registers are chained, every byte sent will make
|
||||||
|
@ -31,8 +32,7 @@ struct gen_74x164_chip {
|
||||||
* register at the end of the transfer. So, to have a logical
|
* register at the end of the transfer. So, to have a logical
|
||||||
* numbering, store the bytes in reverse order.
|
* numbering, store the bytes in reverse order.
|
||||||
*/
|
*/
|
||||||
u8 buffer[0];
|
u8 buffer[];
|
||||||
struct gpio_desc *gpiod_oe;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static int __gen_74x164_write_config(struct gen_74x164_chip *chip)
|
static int __gen_74x164_write_config(struct gen_74x164_chip *chip)
|
||||||
|
|
|
@ -383,7 +383,7 @@ static int gpio_irq_type_unbanked(struct irq_data *data, unsigned trigger)
|
||||||
u32 mask;
|
u32 mask;
|
||||||
|
|
||||||
d = (struct davinci_gpio_controller *)irq_data_get_irq_handler_data(data);
|
d = (struct davinci_gpio_controller *)irq_data_get_irq_handler_data(data);
|
||||||
g = (struct davinci_gpio_regs __iomem *)d->regs;
|
g = (struct davinci_gpio_regs __iomem *)d->regs[0];
|
||||||
mask = __gpio_mask(data->irq - d->base_irq);
|
mask = __gpio_mask(data->irq - d->base_irq);
|
||||||
|
|
||||||
if (trigger & ~(IRQ_TYPE_EDGE_FALLING | IRQ_TYPE_EDGE_RISING))
|
if (trigger & ~(IRQ_TYPE_EDGE_FALLING | IRQ_TYPE_EDGE_RISING))
|
||||||
|
|
|
@ -947,7 +947,7 @@ static const struct of_device_id pca953x_dt_ids[] = {
|
||||||
{ .compatible = "ti,tca6416", .data = OF_953X(16, PCA_INT), },
|
{ .compatible = "ti,tca6416", .data = OF_953X(16, PCA_INT), },
|
||||||
{ .compatible = "ti,tca6424", .data = OF_953X(24, PCA_INT), },
|
{ .compatible = "ti,tca6424", .data = OF_953X(24, PCA_INT), },
|
||||||
|
|
||||||
{ .compatible = "onsemi,pca9654", .data = OF_953X( 8, PCA_INT), },
|
{ .compatible = "onnn,pca9654", .data = OF_953X( 8, PCA_INT), },
|
||||||
|
|
||||||
{ .compatible = "exar,xra1202", .data = OF_953X( 8, 0), },
|
{ .compatible = "exar,xra1202", .data = OF_953X( 8, 0), },
|
||||||
{ }
|
{ }
|
||||||
|
|
Loading…
Reference in New Issue