linux/arch/arm
Russell King c48cd65989 ARM: OMAP: use consistent error checking
Consistently check errors using the usual method used in the kernel
for much of its history.  For instance:

int gpmc_cs_set_timings(int cs, const struct gpmc_timings *t)
{
	int div;
	div = gpmc_calc_divider(t->sync_clk);
	if (div < 0)
		return div;
static int gpmc_set_async_mode(int cs, struct gpmc_timings *t)
{
...
	return gpmc_cs_set_timings(cs, t);

.....
	ret = gpmc_set_async_mode(gpmc_onenand_data->cs, &t);
	if (IS_ERR_VALUE(ret))
		return ret;

So, gpmc_cs_set_timings() thinks any negative return value is an error,
but where we check that in higher levels, only a limited range are
errors...

There is only _one_ use of IS_ERR_VALUE() in arch/arm which is really
appropriate, and that is in arch/arm/include/asm/syscall.h:

static inline long syscall_get_error(struct task_struct *task,
				     struct pt_regs *regs)
{
	unsigned long error = regs->ARM_r0;
	return IS_ERR_VALUE(error) ? error : 0;
}

because this function really does have to differentiate between error
return values and addresses which look like negative numbers (eg, from
mmap()).

So, here's a patch to remove them from OMAP, except for the above.

Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2013-05-02 19:54:22 +01:00
..
boot Merge branch 'vexpress/fixes' of git://git.linaro.org/people/pawelmoll/linux into fixes 2013-01-24 08:12:24 -08:00
common ARM: GIC: fix GIC cpumask initialization 2013-02-08 10:17:22 +00:00
configs ARM: at91/at91_dt_defconfig: add at91sam9n12 SoC to DT defconfig 2013-01-23 10:39:58 +01:00
crypto
include highbank fixes for 3.8 2013-02-09 20:55:03 -08:00
kernel ARM: cleanup gate_vma initialization 2013-02-23 17:55:39 +00:00
lib
mach-at91 ARM: at91: rm9200: remake the BGA as default version 2013-01-23 10:31:14 +01:00
mach-bcm
mach-bcm2835 ARM: arm-soc: SoC updates for 3.8 2012-12-12 12:05:15 -08:00
mach-clps711x
mach-cns3xxx ARM: arm-soc: Non-critical bug fixes 2012-12-12 11:32:16 -08:00
mach-davinci ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
mach-dove ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
mach-ebsa110
mach-ep93xx ARM: ep93xx: properly wait for UART FIFO to be empty 2012-12-12 11:22:56 +11:00
mach-exynos pinctrl: exynos: change PINCTRL_EXYNOS option 2013-02-05 15:27:39 +01:00
mach-footbridge
mach-gemini
mach-h720x
mach-highbank ARM: highbank: mask cluster id from cpu_logical_map 2013-01-31 13:54:30 -06:00
mach-imx ARM: arm-soc: Fixes for 3.8-rc, take 2 2013-01-24 12:42:50 -08:00
mach-integrator ARM: cleanup: soc_device_register() error checking 2013-02-24 10:42:27 +00:00
mach-iop13xx ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
mach-iop32x
mach-iop33x
mach-ixp4xx Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm 2012-12-12 11:30:02 -08:00
mach-kirkwood Merge branch 'v3.8-samsung-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into fixes 2013-01-16 19:58:58 -08:00
mach-ks8695 ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
mach-l7200/include/mach
mach-lpc32xx
mach-mmp ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
mach-msm ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
mach-mv78xx0 ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
mach-mvebu arm: mvebu: Fix compile for multiplatform when ARMv6 is selected 2013-01-11 12:17:58 -08:00
mach-mxs Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2012-12-18 09:58:09 -08:00
mach-netx treewide: Fix typos in various drivers 2012-12-03 11:05:04 +01:00
mach-nomadik ARM: nomadik: bump the IRQ numbers again 2013-01-03 23:42:07 +01:00
mach-omap1 ARM: arm-soc fixes for 3.8-rc 2013-01-08 18:53:56 -08:00
mach-omap2 ARM: OMAP: use consistent error checking 2013-05-02 19:54:22 +01:00
mach-orion5x ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
mach-picoxcell
mach-prima2 ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
mach-pxa Merge remote-tracking branch 'asoc/fix/pxa' into tmp 2013-01-10 12:22:16 +00:00
mach-realview ARM: realview: ensure that we have sufficient IRQs available 2013-02-08 10:23:32 +00:00
mach-rpc
mach-s3c24xx ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
mach-s3c64xx ARM: S3C64XX: Fix up IRQ mapping for balblair on Cragganmore 2013-01-16 15:49:53 -08:00
mach-s3c2410
mach-s3c2412
mach-s3c2440
mach-s5p64x0 ARM: S5P64X0: Add I2S clkdev support 2012-12-19 09:49:29 -08:00
mach-s5pc100 ARM: S5PC100: Add I2S clkdev support 2012-12-19 09:49:29 -08:00
mach-s5pv210 ARM: S5PV210: Avoid passing the clks through platform data 2012-12-19 09:49:29 -08:00
mach-sa1100 ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
mach-shark
mach-shmobile fbdev changes for 3.8: 2012-12-15 13:03:48 -08:00
mach-socfpga
mach-spear3xx ARM: SPEAr3xx: Shirq: Move shirq controller out of plat/ 2012-11-26 16:55:33 +05:30
mach-spear6xx
mach-spear13xx ARM: SPEAr1310: Fix AUXDATA for compact flash controller 2012-11-26 16:55:31 +05:30
mach-sunxi sunxi: Change the machine compatible string. 2012-12-23 18:20:15 +01:00
mach-tegra ARM: cleanup: clk_get_sys() error handling 2013-02-24 10:51:00 +00:00
mach-u300 ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
mach-ux500 ARM: cleanup: soc_device_register() error checking 2013-02-24 10:42:27 +00:00
mach-versatile ARM: 7610/1: versatile: bump IRQ numbers 2013-01-02 10:35:06 +00:00
mach-vexpress ARM: 7609/1: disable errata work-arounds which access secure registers 2013-01-02 10:35:05 +00:00
mach-vt8500 ARM: arm-soc: multiplatform conversion patches 2012-12-13 10:57:16 -08:00
mach-w90x900
mach-zynq
mm ARM: DMA mapping: fix bad atomic test 2013-02-08 10:25:23 +00:00
net Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2012-12-12 18:07:07 -08:00
nwfpe
oprofile
plat-iop
plat-omap ARM: OMAP: use consistent error checking 2013-05-02 19:54:22 +01:00
plat-orion ARM: arm-soc: Updates for Marvell mvebu/kirkwood 2012-12-14 14:54:26 -08:00
plat-pxa ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
plat-s3c24xx Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-12-13 12:00:02 -08:00
plat-samsung ARM: arm-soc fixes for 3.8-rc 2013-01-08 18:53:56 -08:00
plat-spear ARM: SPEAr3xx: Shirq: Move shirq controller out of plat/ 2012-11-26 16:55:33 +05:30
plat-versatile ARM: vexpress: extend the MPIDR range used for pen release check 2013-01-24 12:19:23 +00:00
tools
vfp ARM: 7627/1: Predicate preempt logic on PREEMP_COUNT not PREEMPT alone 2013-01-16 16:51:10 +00:00
xen Features: 2012-12-13 14:29:16 -08:00
Kconfig Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-arm 2013-01-09 08:58:57 -08:00
Kconfig-nommu
Kconfig.debug ARM: arm-soc: multiplatform conversion patches 2012-12-13 10:57:16 -08:00
Makefile ARM: arm-soc: multiplatform conversion patches 2012-12-13 10:57:16 -08:00