linux/drivers
Guenter Roeck 25a59eef98 platform_get_irq: Revert to platform_get_resource if of_irq_get fails
commit aff008ad81 upstream.

Commits 9ec36ca (of/irq: do irq resolution in platform_get_irq)
and ad69674 (of/irq: do irq resolution in platform_get_irq_byname)
change the semantics of platform_get_irq and platform_get_irq_byname
to always rely on devicetree information if devicetree is enabled
and if a devicetree node is attached to the device. The functions
now return an error if the devicetree data does not include interrupt
information, even if the information is available as platform resource
data.

This causes mfd client drivers to fail if the interrupt number is
passed via platform resources. Therefore, if of_irq_get fails, try
platform_get_resource as method of last resort. This restores the
original functionality for drivers depending on platform resources
to get irq information.

Cc: Russell King <linux@arm.linux.org.uk>
Cc: Tony Lindgren <tony@atomide.com>
Cc: Grant Likely <grant.likely@linaro.org>
Cc: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Acked-by: Rob Herring <robh@kernel.org>
[ Guenter Roeck: backported to 3.15 ]
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
History 2014-07-31 12:52:57 -07:00
..
accessibility printk: move braille console support into separate braille.[ch] files 2013-07-31 14:41:03 -07:00
acpi ACPI / battery: Retry to get battery information if failed during probing 2014-07-17 16:21:06 -07:00
amba ARM: 7916/1: amba: Add clk_prepare|unprepare in runtime PM callbacks 2013-12-09 20:25:20 +00:00
ata ahci: add support for the Promise FastTrak TX8660 SATA HBA (ahci mode) 2014-07-31 12:52:55 -07:00
atm atm: slight optimization of addr compare 2013-12-26 13:31:34 -05:00
auxdisplay framebuffer: Use fb_<level> 2013-10-29 12:53:07 +02:00
base platform_get_irq: Revert to platform_get_resource if of_irq_get fails 2014-07-31 12:52:57 -07:00
bcma Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2014-01-30 17:20:32 -08:00
block rbd: handle parent_overlap on writes correctly 2014-07-09 11:18:26 -07:00
bluetooth Bluetooth: Ignore H5 non-link packets in non-active state 2014-07-28 08:05:56 -07:00
bus bus: mvebu-mbus: allow several windows with the same target/attribute 2014-06-07 10:28:22 -07:00
cdrom Merge branch 'for-3.14/drivers' of git://git.kernel.dk/linux-block 2014-01-30 11:40:10 -08:00
char i8k: Fix non-SMP operation 2014-07-17 16:21:03 -07:00
clk clk: qcom: HDMI source sel is 3 not 2 2014-07-17 16:21:05 -07:00
clocksource clocksource: Exynos_mct: Register clock event after request_irq() 2014-06-07 10:28:08 -07:00
connector net: Use netlink_ns_capable to verify the permisions of netlink messages 2014-06-26 15:15:38 -04:00
cpufreq intel_pstate: Set CPU number before accessing MSRs 2014-07-17 16:21:05 -07:00
cpuidle powerpc/powernv/cpuidle: Back-end cpuidle driver for powernv platform. 2014-01-29 17:02:24 +11:00
crypto crypto: caam - fix memleak in caam_jr module 2014-07-17 16:21:04 -07:00
dca dca: convert to idr_alloc() 2013-02-27 19:10:15 -08:00
devfreq Merge branches 'pm-cpufreq' and 'pm-devfreq' 2014-01-29 11:48:23 +01:00
dio m68k: don't export static inline functions 2009-12-06 11:18:28 +01:00
dma dmaengine: dw: went back to plain {request,free}_irq() calls 2014-06-07 10:28:26 -07:00
edac i7300_edac: Fix device reference count 2014-02-25 09:43:13 +01:00
eisa Revert "EISA: Initialize device before its resources" 2014-01-17 14:57:29 -07:00
extcon extcon: max14577: Properly handle regmap_irq_get_virq error 2014-06-30 20:11:52 -07:00
firewire firewire: revert to 4 GB RDMA, fix protocols using Memory Space 2014-06-11 11:54:10 -07:00
firmware efi-pstore: Fix an overflow on 32-bit builds 2014-06-30 20:12:02 -07:00
fmc drivers/fmc/fmc-write-eeprom.c: fix decimal permissions 2014-02-25 15:25:43 -08:00
gpio gpio: mcp23s08: Bug fix of SPI device tree registration. 2014-06-11 11:54:14 -07:00
gpu drm/radeon: fix cut and paste issue for hawaii. 2014-07-31 12:52:57 -07:00
hid HID: core: fix validation of report id 0 2014-06-30 20:11:54 -07:00
hsi hsi: convert bus code to use dev_groups 2013-10-16 18:36:04 -07:00
hv Drivers: hv: util: Fix a bug in the KVP code 2014-07-28 08:05:56 -07:00
hwmon hwmon: (smsc47m192) Fix temperature limit and vrm write operations 2014-07-31 12:52:56 -07:00
hwspinlock A single patch from Vincent extending OMAP's hwspinlock support to OMAP5. 2013-05-07 14:01:27 -07:00
i2c i2c: s3c2410: resume race fix 2014-06-07 10:28:27 -07:00
ide drivers: ide: Include appropriate header file in ide-pio-blacklist.c 2014-01-28 23:35:09 -08:00
idle ACPI and power management updates for 3.14-rc1 2014-01-24 15:51:02 -08:00
iio iio:core: Handle error when mask type is not separate 2014-07-28 08:05:57 -07:00
infiniband IB/umad: Fix use-after-free on close 2014-07-06 18:57:27 -07:00
input Input: fix defuzzing logic 2014-07-31 12:52:56 -07:00
iommu iommu/vt-d: Fix missing IOTLB flush in intel_iommu_unmap() 2014-06-11 11:54:14 -07:00
ipack ipack: convert bus code to use dev_groups 2013-10-16 18:40:57 -07:00
irqchip irqchip: gic: Fix core ID calculation when topology is read from DT 2014-07-28 08:06:02 -07:00
isdn isdnloop: several buffer overflows 2014-04-14 06:50:04 -07:00
leds leds: leds-pwm: properly clean up after probe failure 2014-06-07 10:28:18 -07:00
lguest x86, asmlinkage, lguest: Pass in globals into assembler statement 2013-11-07 12:13:05 +10:30
macintosh Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2014-01-27 21:11:26 -08:00
mailbox drivers/mailbox/omap: make mbox->irq signed for error handling 2014-01-23 16:36:53 -08:00
md dm cache metadata: do not allow the data block size to change 2014-07-28 08:06:03 -07:00
media media: tda10071: force modulation to QPSK on DVB-S 2014-07-31 12:52:53 -07:00
memory memory: mvebu-devbus: fix the conversion of the bus width 2014-06-07 10:28:22 -07:00
memstick drivers/memstick/host/rtsx_pci_ms.c: fix ms card data transfer bug 2014-01-23 16:37:04 -08:00
message drivers/message/i2o/i2o_config.c: fix deadlock in compat_ioctl(I2OGETIOPS) 2014-02-10 16:01:40 -08:00
mfd mfd: twl-core: Fix accessibility of some twl4030 audio registers 2014-05-06 07:59:26 -07:00
misc mei: me: read H_CSR after asserting reset 2014-06-16 13:40:33 -07:00
mmc mmc: rtsx: add R1-no-CRC mmc command type handle 2014-07-09 11:18:28 -07:00
mtd mtd: devices: elm: fix elm_context_save() and elm_context_restore() functions 2014-07-28 08:06:03 -07:00
net iwlwifi: mvm: disable CTS to Self 2014-07-28 08:06:03 -07:00
nfc NFC: nfcmrvl: Fix possible memory leak issue 2014-01-09 01:27:20 +01:00
ntb NTB driver bug fixes to address a missed call to pci_enable_msix, 2013-11-26 11:15:12 -08:00
nubus nubus: Kill nubus_proc_detach_device() 2013-05-04 14:47:26 -04:00
of of/irq: do irq resolution in platform_get_irq 2014-06-07 10:28:07 -07:00
oprofile oprofile: get rid of pointless forward declarations of struct super_block 2013-09-03 22:52:48 -04:00
parisc PCI changes for the v3.12 merge window: 2013-09-03 16:24:35 -07:00
parport parport: fix menu breakage 2014-07-31 12:52:56 -07:00
pci PCI: Fix unaligned access in AF transaction pending test 2014-07-17 16:21:05 -07:00
pcmcia PCI changes for the v3.14 merge window: 2014-01-22 16:39:28 -08:00
phy phy: core: Fix error path in phy_create() 2014-07-17 16:21:04 -07:00
pinctrl pinctrl: as3722: fix handling of GPIO invert bit 2014-05-13 13:32:54 +02:00
platform thinkpad_acpi: Fix inconsistent mute LED after resume 2014-05-13 13:32:56 +02:00
pnp PNP / ACPI: Do not return errors if _DIS or _SRS are not present 2014-06-07 10:28:12 -07:00
power Few fixes: 2014-02-14 10:32:28 -08:00
powercap powercap / RAPL: add support for ValleyView Soc 2013-12-22 01:27:51 +01:00
pps drivers/pps/clients/pps-gpio.c: remove redundant of_match_ptr 2013-11-13 12:09:35 +09:00
ps3 Drivers: misc: remove __dev* attributes. 2013-01-03 15:57:16 -08:00
ptp ptp_pch: Add dependency on HAS_IOMEM 2014-01-15 14:51:22 -08:00
pwm pwm: lp3943: Fix potential memory leak during request 2014-02-26 15:45:12 +01:00
rapidio rapidio/tsi721: fix tasklet termination in dma channel release 2014-03-04 07:55:49 -08:00
regulator regulator: arizona-ldo1: Correct default regulator init_data 2014-05-06 07:59:26 -07:00
remoteproc virtio_ring: change host notification API 2013-10-29 11:28:11 +10:30
reset reset: Add Allwinner SoCs Reset Controller Driver 2013-11-22 21:20:36 +01:00
rpmsg A small pull request consisting of: 2013-05-07 14:02:00 -07:00
rtc drivers/rtc/rtc-puv3.c: use dev_dbg() instead of dev_debug() for typo issue 2014-07-17 16:21:06 -07:00
s390 s390/chsc: fix SEI usage on old FW levels 2014-05-13 13:32:49 +02:00
sbus Sparc: sparc_cpu_model isn't in asm/system.h any more [ver #2] 2014-02-20 13:34:11 -05:00
scsi sym53c8xx_2: Set DID_REQUEUE return code when aborting squeue 2014-07-09 11:18:29 -07:00
sfi SFI / ACPI: Fix warnings reported during builds with W=1 2013-12-07 01:24:33 +01:00
sh Merge branch 'pm-assorted' 2013-06-28 13:01:40 +02:00
sn Drivers: misc: remove __dev* attributes. 2013-01-03 15:57:16 -08:00
spi spi: core: Ignore unsupported Dual/Quad Transfer Mode bits 2014-06-07 10:28:28 -07:00
ssb Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2014-01-30 17:20:32 -08:00
staging media: staging: tighten omap4iss dependencies 2014-07-31 12:52:53 -07:00
target iscsi-target: fix iscsit_del_np deadlock on unload 2014-07-06 18:57:26 -07:00
tc include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
thermal thermal: hwmon: Make the check for critical temp valid consistent 2014-07-17 16:21:03 -07:00
tty tty: Correct INPCK handling 2014-07-09 11:18:28 -07:00
uio uio: fix devm_request_irq usage 2013-12-20 08:49:17 -08:00
usb usb: chipidea: udc: Disable auto ZLP generation on ep0 2014-07-28 08:05:56 -07:00
uwb uwb: move mutex_lock to error case in uwbd_evt_handle_rc_bp_slot_change 2013-12-20 12:19:44 -08:00
vfio mm: close PageTail race 2014-03-04 07:55:47 -08:00
vhost vhost: validate vhost_get_vq_desc return value 2014-03-28 16:10:35 -04:00
video drivers/video/fbdev/fb-puv3.c: Add header files for function unifb_mmap 2014-07-09 11:18:29 -07:00
virt drivers: clean-up prom.h implicit includes 2013-10-09 20:04:04 -05:00
virtio virtio_balloon: don't softlockup on huge balloon changes. 2014-05-13 13:32:48 +02:00
vlynq drivers/vlynq/vlynq.c: fix another resource size off by 1 error 2014-01-23 16:36:55 -08:00
vme VME: Correct read/write alignment algorithm 2014-02-07 08:16:14 -08:00
w1 w1: fix w1_send_slave dropping a slave id 2014-05-06 07:59:26 -07:00
watchdog watchdog: kempld-wdt: Use the correct value when configuring the prescaler with the watchdog 2014-07-06 18:57:27 -07:00
xen xen/balloon: set ballooned out pages as invalid in p2m 2014-07-28 08:05:57 -07:00
zorro zorro/UAPI: Use proper types (endianness/size) in <linux/zorro.h> 2013-11-26 11:09:09 +01:00
Kconfig ACPI and power management updates for 3.13-rc1 2013-11-14 13:41:48 +09:00
Makefile ARM: Rename ARCH_SHMOBILE to ARCH_SHMOBILE_LEGACY 2013-12-10 16:52:18 +09:00