android_kernel_samsung_univ.../arch/arm/mach-shmobile
Wolfram Sang f7e55f589d ARM: shmobile: fix regulator quirk for Gen2
commit c2f321126e31cd69365e65ecd4a7c774e4fc71d2 upstream.

The current implementation only works if the da9xxx devices are added
before their drivers are registered. Only then it can apply the fixes to
both devices. Otherwise, the driver for the first device gets probed
before the fix for the second device can be applied. This is what
fails when using the IP core switcher or when having the i2c master
driver as a module.

So, we need to disable both da9xxx once we detected one of them. We now
use i2c_transfer with hardcoded i2c_messages and device addresses, so we
don't need the da9xxx client devices to be instantiated. Because the
fixup is used on specific boards only, the addresses are not going to
change.

Fixes: 663fbb5215 ("ARM: shmobile: R-Car Gen2: Add da9063/da9210 regulator quirk")
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Tested-by: Geert Uytterhoeven <geert+renesas@glider.be> (r8a7791/koelsch)
Tested-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-10-07 15:23:43 +02:00
..
include/mach
common.h ARM: shmobile: Remove legacy clock support leftovers 2015-09-14 10:06:56 +09:00
cpufreq.c
headsmp-scu.S
headsmp.S
irqs.h
Kconfig ARM: shmobile: Kconfig: remove unused SHMOBILE_TIMER_HZ section 2015-09-14 10:06:54 +09:00
Makefile ARM: shmobile: r8a7778: remove legacy clock implementation 2015-09-14 10:06:49 +09:00
platsmp-apmu.c ARM: shmobile: apmu: correct type of CPU id 2015-10-02 10:56:05 +09:00
platsmp-apmu.h
platsmp-scu.c
platsmp.c
pm-r8a7779.c ARM: shmobile: r8a7779: Remove legacy PM Domain remainings 2015-10-01 14:09:47 +09:00
pm-rcar-gen2.c
pm-rcar.c libnvdimm for 4.3: 2015-09-08 14:35:59 -07:00
pm-rcar.h
pm-rmobile.c ARM: SoC platform updates for v4.4 2015-11-10 14:56:23 -08:00
pm-rmobile.h ARM: shmobile: Remove obsolete legacy PM Domain leftovers 2015-09-14 09:58:08 +09:00
r8a7779.h ARM: shmobile: r8a7779: Remove legacy PM Domain remainings 2015-10-01 14:09:47 +09:00
r8a7790.h
r8a7791.h
rcar-gen2.h
regulator-quirk-rcar-gen2.c ARM: shmobile: fix regulator quirk for Gen2 2016-10-07 15:23:43 +02:00
setup-emev2.c
setup-r7s72100.c
setup-r8a73a4.c
setup-r8a7740.c
setup-r8a7778.c ARM: shmobile: r8a7778: Make r8a7778_init_irq_dt() static 2015-10-01 14:09:08 +09:00
setup-r8a7779.c clocksource: cosmetic: Drop OF 'dependency' from symbols 2015-10-01 02:18:39 +02:00
setup-r8a7790.c
setup-r8a7791.c
setup-r8a7793.c ARM: shmobile: r8a7793: proper constness with __initconst 2015-11-22 17:13:13 -08:00
setup-r8a7794.c
setup-rcar-gen2.c clocksource: cosmetic: Drop OF 'dependency' from symbols 2015-10-01 02:18:39 +02:00
setup-sh73a0.c
sh73a0.h
smp-emev2.c
smp-r8a7779.c
smp-r8a7790.c
smp-r8a7791.c
smp-sh73a0.c
suspend.c
timer.c ARM: shmobile: Remove obsolete earlytimer registration 2015-09-14 09:58:09 +09:00