diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-11-16 19:21:57 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-11-16 19:21:57 -0500 |
| commit | e35c5a2759f360a45f052b422a87c47971a4e2d9 (patch) | |
| tree | deae408c4a55188da8c1d94690030c729beb102c | |
| parent | 435e46f5d35dbe5ea745822db29f16e003fa07d7 (diff) | |
| parent | e899dbaf4898efdaf6d1a02ed4ac205d35f54df8 (diff) | |
Merge tag 'armsoc-for-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC fixes from Olof Johansson:
"Another small set of fixes:
- some DT compatible typo fixes
- irq setup fix dealing with irq storms on orion
- i2c quirk generalization for mvebu
- a handful of smaller fixes for OMAP
- a couple of added file patterns for OMAP entries in MAINTAINERS"
* tag 'armsoc-for-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
ARM: at91/dt: Fix sama5d3x typos
pinctrl: dra: dt-bindings: Fix output pull up/down
MAINTAINERS: Update entry for omap related .dts files to cover new SoCs
MAINTAINERS: add more files under OMAP SUPPORT
ARM: dts: AM437x-SK-EVM: Fix DCDC3 voltage
ARM: dts: AM437x-GP-EVM: Fix DCDC3 voltage
ARM: dts: AM43x-EPOS-EVM: Fix DCDC3 voltage
ARM: dts: am335x-evm: Fix 5th NAND partition's name
ARM: orion: Fix for certain sequence of request_irq can cause irq storm
ARM: mvebu: armada xp: Generalize use of i2c quirk
| -rw-r--r-- | MAINTAINERS | 20 | ||||
| -rw-r--r-- | arch/arm/boot/dts/am335x-evm.dts | 2 | ||||
| -rw-r--r-- | arch/arm/boot/dts/am437x-gp-evm.dts | 4 | ||||
| -rw-r--r-- | arch/arm/boot/dts/am437x-sk-evm.dts | 4 | ||||
| -rw-r--r-- | arch/arm/boot/dts/am43x-epos-evm.dts | 4 | ||||
| -rw-r--r-- | arch/arm/boot/dts/sama5d31.dtsi | 2 | ||||
| -rw-r--r-- | arch/arm/boot/dts/sama5d33.dtsi | 2 | ||||
| -rw-r--r-- | arch/arm/boot/dts/sama5d34.dtsi | 2 | ||||
| -rw-r--r-- | arch/arm/boot/dts/sama5d35.dtsi | 2 | ||||
| -rw-r--r-- | arch/arm/boot/dts/sama5d36.dtsi | 2 | ||||
| -rw-r--r-- | arch/arm/boot/dts/sama5d3xcm.dtsi | 2 | ||||
| -rw-r--r-- | arch/arm/mach-mvebu/board-v7.c | 2 | ||||
| -rw-r--r-- | arch/arm/plat-orion/gpio.c | 36 | ||||
| -rw-r--r-- | include/dt-bindings/pinctrl/dra.h | 4 |
14 files changed, 68 insertions, 20 deletions
diff --git a/MAINTAINERS b/MAINTAINERS index 8ab367ff5cde..c444907ccd69 100644 --- a/MAINTAINERS +++ b/MAINTAINERS | |||
| @@ -6611,6 +6611,23 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap.git | |||
| 6611 | S: Maintained | 6611 | S: Maintained |
| 6612 | F: arch/arm/*omap*/ | 6612 | F: arch/arm/*omap*/ |
| 6613 | F: drivers/i2c/busses/i2c-omap.c | 6613 | F: drivers/i2c/busses/i2c-omap.c |
| 6614 | F: drivers/irqchip/irq-omap-intc.c | ||
| 6615 | F: drivers/mfd/*omap*.c | ||
| 6616 | F: drivers/mfd/menelaus.c | ||
| 6617 | F: drivers/mfd/palmas.c | ||
| 6618 | F: drivers/mfd/tps65217.c | ||
| 6619 | F: drivers/mfd/tps65218.c | ||
| 6620 | F: drivers/mfd/tps65910.c | ||
| 6621 | F: drivers/mfd/twl-core.[ch] | ||
| 6622 | F: drivers/mfd/twl4030*.c | ||
| 6623 | F: drivers/mfd/twl6030*.c | ||
| 6624 | F: drivers/mfd/twl6040*.c | ||
| 6625 | F: drivers/regulator/palmas-regulator*.c | ||
| 6626 | F: drivers/regulator/pbias-regulator.c | ||
| 6627 | F: drivers/regulator/tps65217-regulator.c | ||
| 6628 | F: drivers/regulator/tps65218-regulator.c | ||
| 6629 | F: drivers/regulator/tps65910-regulator.c | ||
| 6630 | F: drivers/regulator/twl-regulator.c | ||
| 6614 | F: include/linux/i2c-omap.h | 6631 | F: include/linux/i2c-omap.h |
| 6615 | 6632 | ||
| 6616 | OMAP DEVICE TREE SUPPORT | 6633 | OMAP DEVICE TREE SUPPORT |
| @@ -6621,6 +6638,9 @@ L: devicetree@vger.kernel.org | |||
| 6621 | S: Maintained | 6638 | S: Maintained |
| 6622 | F: arch/arm/boot/dts/*omap* | 6639 | F: arch/arm/boot/dts/*omap* |
| 6623 | F: arch/arm/boot/dts/*am3* | 6640 | F: arch/arm/boot/dts/*am3* |
| 6641 | F: arch/arm/boot/dts/*am4* | ||
| 6642 | F: arch/arm/boot/dts/*am5* | ||
| 6643 | F: arch/arm/boot/dts/*dra7* | ||
| 6624 | 6644 | ||
| 6625 | OMAP CLOCK FRAMEWORK SUPPORT | 6645 | OMAP CLOCK FRAMEWORK SUPPORT |
| 6626 | M: Paul Walmsley <paul@pwsan.com> | 6646 | M: Paul Walmsley <paul@pwsan.com> |
diff --git a/arch/arm/boot/dts/am335x-evm.dts b/arch/arm/boot/dts/am335x-evm.dts index e2156a583de7..c4b968f0feb5 100644 --- a/arch/arm/boot/dts/am335x-evm.dts +++ b/arch/arm/boot/dts/am335x-evm.dts | |||
| @@ -489,7 +489,7 @@ | |||
| 489 | reg = <0x00060000 0x00020000>; | 489 | reg = <0x00060000 0x00020000>; |
| 490 | }; | 490 | }; |
| 491 | partition@4 { | 491 | partition@4 { |
| 492 | label = "NAND.u-boot-spl"; | 492 | label = "NAND.u-boot-spl-os"; |
| 493 | reg = <0x00080000 0x00040000>; | 493 | reg = <0x00080000 0x00040000>; |
| 494 | }; | 494 | }; |
| 495 | partition@5 { | 495 | partition@5 { |
diff --git a/arch/arm/boot/dts/am437x-gp-evm.dts b/arch/arm/boot/dts/am437x-gp-evm.dts index e7ac47fa6615..a521ac0a7d5a 100644 --- a/arch/arm/boot/dts/am437x-gp-evm.dts +++ b/arch/arm/boot/dts/am437x-gp-evm.dts | |||
| @@ -291,8 +291,8 @@ | |||
| 291 | dcdc3: regulator-dcdc3 { | 291 | dcdc3: regulator-dcdc3 { |
| 292 | compatible = "ti,tps65218-dcdc3"; | 292 | compatible = "ti,tps65218-dcdc3"; |
| 293 | regulator-name = "vdcdc3"; | 293 | regulator-name = "vdcdc3"; |
| 294 | regulator-min-microvolt = <1350000>; | 294 | regulator-min-microvolt = <1500000>; |
| 295 | regulator-max-microvolt = <1350000>; | 295 | regulator-max-microvolt = <1500000>; |
| 296 | regulator-boot-on; | 296 | regulator-boot-on; |
| 297 | regulator-always-on; | 297 | regulator-always-on; |
| 298 | }; | 298 | }; |
diff --git a/arch/arm/boot/dts/am437x-sk-evm.dts b/arch/arm/boot/dts/am437x-sk-evm.dts index 859ff3d620ee..87aa4f3b8b3d 100644 --- a/arch/arm/boot/dts/am437x-sk-evm.dts +++ b/arch/arm/boot/dts/am437x-sk-evm.dts | |||
| @@ -363,8 +363,8 @@ | |||
| 363 | dcdc3: regulator-dcdc3 { | 363 | dcdc3: regulator-dcdc3 { |
| 364 | compatible = "ti,tps65218-dcdc3"; | 364 | compatible = "ti,tps65218-dcdc3"; |
| 365 | regulator-name = "vdds_ddr"; | 365 | regulator-name = "vdds_ddr"; |
| 366 | regulator-min-microvolt = <1350000>; | 366 | regulator-min-microvolt = <1500000>; |
| 367 | regulator-max-microvolt = <1350000>; | 367 | regulator-max-microvolt = <1500000>; |
| 368 | regulator-boot-on; | 368 | regulator-boot-on; |
| 369 | regulator-always-on; | 369 | regulator-always-on; |
| 370 | }; | 370 | }; |
diff --git a/arch/arm/boot/dts/am43x-epos-evm.dts b/arch/arm/boot/dts/am43x-epos-evm.dts index ac3e4859935f..f7e9bba10bd6 100644 --- a/arch/arm/boot/dts/am43x-epos-evm.dts +++ b/arch/arm/boot/dts/am43x-epos-evm.dts | |||
| @@ -358,8 +358,8 @@ | |||
| 358 | dcdc3: regulator-dcdc3 { | 358 | dcdc3: regulator-dcdc3 { |
| 359 | compatible = "ti,tps65218-dcdc3"; | 359 | compatible = "ti,tps65218-dcdc3"; |
| 360 | regulator-name = "vdcdc3"; | 360 | regulator-name = "vdcdc3"; |
| 361 | regulator-min-microvolt = <1350000>; | 361 | regulator-min-microvolt = <1500000>; |
| 362 | regulator-max-microvolt = <1350000>; | 362 | regulator-max-microvolt = <1500000>; |
| 363 | regulator-boot-on; | 363 | regulator-boot-on; |
| 364 | regulator-always-on; | 364 | regulator-always-on; |
| 365 | }; | 365 | }; |
diff --git a/arch/arm/boot/dts/sama5d31.dtsi b/arch/arm/boot/dts/sama5d31.dtsi index 7997dc9863ed..883878b32971 100644 --- a/arch/arm/boot/dts/sama5d31.dtsi +++ b/arch/arm/boot/dts/sama5d31.dtsi | |||
| @@ -12,5 +12,5 @@ | |||
| 12 | #include "sama5d3_uart.dtsi" | 12 | #include "sama5d3_uart.dtsi" |
| 13 | 13 | ||
| 14 | / { | 14 | / { |
| 15 | compatible = "atmel,samad31", "atmel,sama5d3", "atmel,sama5"; | 15 | compatible = "atmel,sama5d31", "atmel,sama5d3", "atmel,sama5"; |
| 16 | }; | 16 | }; |
diff --git a/arch/arm/boot/dts/sama5d33.dtsi b/arch/arm/boot/dts/sama5d33.dtsi index 39f832253caf..4b4434aca351 100644 --- a/arch/arm/boot/dts/sama5d33.dtsi +++ b/arch/arm/boot/dts/sama5d33.dtsi | |||
| @@ -10,5 +10,5 @@ | |||
| 10 | #include "sama5d3_gmac.dtsi" | 10 | #include "sama5d3_gmac.dtsi" |
| 11 | 11 | ||
| 12 | / { | 12 | / { |
| 13 | compatible = "atmel,samad33", "atmel,sama5d3", "atmel,sama5"; | 13 | compatible = "atmel,sama5d33", "atmel,sama5d3", "atmel,sama5"; |
| 14 | }; | 14 | }; |
diff --git a/arch/arm/boot/dts/sama5d34.dtsi b/arch/arm/boot/dts/sama5d34.dtsi index 89cda2c0da39..aa01573fdee9 100644 --- a/arch/arm/boot/dts/sama5d34.dtsi +++ b/arch/arm/boot/dts/sama5d34.dtsi | |||
| @@ -12,5 +12,5 @@ | |||
| 12 | #include "sama5d3_mci2.dtsi" | 12 | #include "sama5d3_mci2.dtsi" |
| 13 | 13 | ||
| 14 | / { | 14 | / { |
| 15 | compatible = "atmel,samad34", "atmel,sama5d3", "atmel,sama5"; | 15 | compatible = "atmel,sama5d34", "atmel,sama5d3", "atmel,sama5"; |
| 16 | }; | 16 | }; |
diff --git a/arch/arm/boot/dts/sama5d35.dtsi b/arch/arm/boot/dts/sama5d35.dtsi index d20cd71b5f0e..16c39f4c96a4 100644 --- a/arch/arm/boot/dts/sama5d35.dtsi +++ b/arch/arm/boot/dts/sama5d35.dtsi | |||
| @@ -14,5 +14,5 @@ | |||
| 14 | #include "sama5d3_tcb1.dtsi" | 14 | #include "sama5d3_tcb1.dtsi" |
| 15 | 15 | ||
| 16 | / { | 16 | / { |
| 17 | compatible = "atmel,samad35", "atmel,sama5d3", "atmel,sama5"; | 17 | compatible = "atmel,sama5d35", "atmel,sama5d3", "atmel,sama5"; |
| 18 | }; | 18 | }; |
diff --git a/arch/arm/boot/dts/sama5d36.dtsi b/arch/arm/boot/dts/sama5d36.dtsi index db58cad6acd3..e85139ef40af 100644 --- a/arch/arm/boot/dts/sama5d36.dtsi +++ b/arch/arm/boot/dts/sama5d36.dtsi | |||
| @@ -16,5 +16,5 @@ | |||
| 16 | #include "sama5d3_uart.dtsi" | 16 | #include "sama5d3_uart.dtsi" |
| 17 | 17 | ||
| 18 | / { | 18 | / { |
| 19 | compatible = "atmel,samad36", "atmel,sama5d3", "atmel,sama5"; | 19 | compatible = "atmel,sama5d36", "atmel,sama5d3", "atmel,sama5"; |
| 20 | }; | 20 | }; |
diff --git a/arch/arm/boot/dts/sama5d3xcm.dtsi b/arch/arm/boot/dts/sama5d3xcm.dtsi index 962dc28dc37b..cfcd200b0c17 100644 --- a/arch/arm/boot/dts/sama5d3xcm.dtsi +++ b/arch/arm/boot/dts/sama5d3xcm.dtsi | |||
| @@ -8,7 +8,7 @@ | |||
| 8 | */ | 8 | */ |
| 9 | 9 | ||
| 10 | / { | 10 | / { |
| 11 | compatible = "atmel,samad3xcm", "atmel,sama5d3", "atmel,sama5"; | 11 | compatible = "atmel,sama5d3xcm", "atmel,sama5d3", "atmel,sama5"; |
| 12 | 12 | ||
| 13 | chosen { | 13 | chosen { |
| 14 | bootargs = "console=ttyS0,115200 rootfstype=ubifs ubi.mtd=5 root=ubi0:rootfs"; | 14 | bootargs = "console=ttyS0,115200 rootfstype=ubifs ubi.mtd=5 root=ubi0:rootfs"; |
diff --git a/arch/arm/mach-mvebu/board-v7.c b/arch/arm/mach-mvebu/board-v7.c index 6478626e3ff6..d0d39f150fab 100644 --- a/arch/arm/mach-mvebu/board-v7.c +++ b/arch/arm/mach-mvebu/board-v7.c | |||
| @@ -188,7 +188,7 @@ static void __init thermal_quirk(void) | |||
| 188 | 188 | ||
| 189 | static void __init mvebu_dt_init(void) | 189 | static void __init mvebu_dt_init(void) |
| 190 | { | 190 | { |
| 191 | if (of_machine_is_compatible("plathome,openblocks-ax3-4")) | 191 | if (of_machine_is_compatible("marvell,armadaxp")) |
| 192 | i2c_quirk(); | 192 | i2c_quirk(); |
| 193 | if (of_machine_is_compatible("marvell,a375-db")) { | 193 | if (of_machine_is_compatible("marvell,a375-db")) { |
| 194 | external_abort_quirk(); | 194 | external_abort_quirk(); |
diff --git a/arch/arm/plat-orion/gpio.c b/arch/arm/plat-orion/gpio.c index b61a3bcc2fa8..e048f6198d68 100644 --- a/arch/arm/plat-orion/gpio.c +++ b/arch/arm/plat-orion/gpio.c | |||
| @@ -497,6 +497,34 @@ static void orion_gpio_dbg_show(struct seq_file *s, struct gpio_chip *chip) | |||
| 497 | #define orion_gpio_dbg_show NULL | 497 | #define orion_gpio_dbg_show NULL |
| 498 | #endif | 498 | #endif |
| 499 | 499 | ||
| 500 | static void orion_gpio_unmask_irq(struct irq_data *d) | ||
| 501 | { | ||
| 502 | struct irq_chip_generic *gc = irq_data_get_irq_chip_data(d); | ||
| 503 | struct irq_chip_type *ct = irq_data_get_chip_type(d); | ||
| 504 | u32 reg_val; | ||
| 505 | u32 mask = d->mask; | ||
| 506 | |||
| 507 | irq_gc_lock(gc); | ||
| 508 | reg_val = irq_reg_readl(gc->reg_base + ct->regs.mask); | ||
| 509 | reg_val |= mask; | ||
| 510 | irq_reg_writel(reg_val, gc->reg_base + ct->regs.mask); | ||
| 511 | irq_gc_unlock(gc); | ||
| 512 | } | ||
| 513 | |||
| 514 | static void orion_gpio_mask_irq(struct irq_data *d) | ||
| 515 | { | ||
| 516 | struct irq_chip_generic *gc = irq_data_get_irq_chip_data(d); | ||
| 517 | struct irq_chip_type *ct = irq_data_get_chip_type(d); | ||
| 518 | u32 mask = d->mask; | ||
| 519 | u32 reg_val; | ||
| 520 | |||
| 521 | irq_gc_lock(gc); | ||
| 522 | reg_val = irq_reg_readl(gc->reg_base + ct->regs.mask); | ||
| 523 | reg_val &= ~mask; | ||
| 524 | irq_reg_writel(reg_val, gc->reg_base + ct->regs.mask); | ||
| 525 | irq_gc_unlock(gc); | ||
| 526 | } | ||
| 527 | |||
| 500 | void __init orion_gpio_init(struct device_node *np, | 528 | void __init orion_gpio_init(struct device_node *np, |
| 501 | int gpio_base, int ngpio, | 529 | int gpio_base, int ngpio, |
| 502 | void __iomem *base, int mask_offset, | 530 | void __iomem *base, int mask_offset, |
| @@ -565,8 +593,8 @@ void __init orion_gpio_init(struct device_node *np, | |||
| 565 | ct = gc->chip_types; | 593 | ct = gc->chip_types; |
| 566 | ct->regs.mask = ochip->mask_offset + GPIO_LEVEL_MASK_OFF; | 594 | ct->regs.mask = ochip->mask_offset + GPIO_LEVEL_MASK_OFF; |
| 567 | ct->type = IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_LEVEL_LOW; | 595 | ct->type = IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_LEVEL_LOW; |
| 568 | ct->chip.irq_mask = irq_gc_mask_clr_bit; | 596 | ct->chip.irq_mask = orion_gpio_mask_irq; |
| 569 | ct->chip.irq_unmask = irq_gc_mask_set_bit; | 597 | ct->chip.irq_unmask = orion_gpio_unmask_irq; |
| 570 | ct->chip.irq_set_type = gpio_irq_set_type; | 598 | ct->chip.irq_set_type = gpio_irq_set_type; |
| 571 | ct->chip.name = ochip->chip.label; | 599 | ct->chip.name = ochip->chip.label; |
| 572 | 600 | ||
| @@ -575,8 +603,8 @@ void __init orion_gpio_init(struct device_node *np, | |||
| 575 | ct->regs.ack = GPIO_EDGE_CAUSE_OFF; | 603 | ct->regs.ack = GPIO_EDGE_CAUSE_OFF; |
| 576 | ct->type = IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING; | 604 | ct->type = IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING; |
| 577 | ct->chip.irq_ack = irq_gc_ack_clr_bit; | 605 | ct->chip.irq_ack = irq_gc_ack_clr_bit; |
| 578 | ct->chip.irq_mask = irq_gc_mask_clr_bit; | 606 | ct->chip.irq_mask = orion_gpio_mask_irq; |
| 579 | ct->chip.irq_unmask = irq_gc_mask_set_bit; | 607 | ct->chip.irq_unmask = orion_gpio_unmask_irq; |
| 580 | ct->chip.irq_set_type = gpio_irq_set_type; | 608 | ct->chip.irq_set_type = gpio_irq_set_type; |
| 581 | ct->handler = handle_edge_irq; | 609 | ct->handler = handle_edge_irq; |
| 582 | ct->chip.name = ochip->chip.label; | 610 | ct->chip.name = ochip->chip.label; |
diff --git a/include/dt-bindings/pinctrl/dra.h b/include/dt-bindings/pinctrl/dra.h index 3d33794e4f3e..7448edff4723 100644 --- a/include/dt-bindings/pinctrl/dra.h +++ b/include/dt-bindings/pinctrl/dra.h | |||
| @@ -40,8 +40,8 @@ | |||
| 40 | 40 | ||
| 41 | /* Active pin states */ | 41 | /* Active pin states */ |
| 42 | #define PIN_OUTPUT (0 | PULL_DIS) | 42 | #define PIN_OUTPUT (0 | PULL_DIS) |
| 43 | #define PIN_OUTPUT_PULLUP (PIN_OUTPUT | PULL_ENA | PULL_UP) | 43 | #define PIN_OUTPUT_PULLUP (PULL_UP) |
| 44 | #define PIN_OUTPUT_PULLDOWN (PIN_OUTPUT | PULL_ENA) | 44 | #define PIN_OUTPUT_PULLDOWN (0) |
| 45 | #define PIN_INPUT (INPUT_EN | PULL_DIS) | 45 | #define PIN_INPUT (INPUT_EN | PULL_DIS) |
| 46 | #define PIN_INPUT_SLEW (INPUT_EN | SLEWCONTROL) | 46 | #define PIN_INPUT_SLEW (INPUT_EN | SLEWCONTROL) |
| 47 | #define PIN_INPUT_PULLUP (PULL_ENA | INPUT_EN | PULL_UP) | 47 | #define PIN_INPUT_PULLUP (PULL_ENA | INPUT_EN | PULL_UP) |
