- Aug 14, 2015
-
-
Geert Uytterhoeven authored
If a GPIO driver uses gpiochip_add_pin_range() (which is usually the case for GPIO/PFC combos), the GPIO hogging mechanism configured from DT doesn't work: requesting hog GPIO led1-high (chip sh73a0_pfc, offset 20) failed The actual error code is -517 == -EPROBE_DEFER. The problem is that PFC+GPIO registration is handled in multiple steps: 1. pinctrl_register(), 2. gpiochip_add(), 3. gpiochip_add_pin_range(). Configuration of the hogs is handled in gpiochip_add(): gpiochip_add of_gpiochip_add of_gpiochip_scan_hogs gpiod_hog gpiochip_request_own_desc __gpiod_request chip->request pinctrl_request_gpio pinctrl_get_device_gpio_range However, at this point the GPIO controller hasn't been added to pinctrldev_list yet, so the range can't be found, and the operation fails with -EPROBE_DEFER. To fix this, add a "gpio-ranges" property to the gpio device node, so the ranges are added by of_gpiochip_add_pin_range(), which is called by of_gpiochip_add() before the call to of_gpiochip_scan_hogs(). Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 94bdc48d ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Geert Uytterhoeven authored
If a GPIO driver uses gpiochip_add_pin_range() (which is usually the case for GPIO/PFC combos), the GPIO hogging mechanism configured from DT doesn't work: requesting hog GPIO lcd0 (chip r8a7740_pfc, offset 176) failed The actual error code is -517 == -EPROBE_DEFER. The problem is that PFC+GPIO registration is handled in multiple steps: 1. pinctrl_register(), 2. gpiochip_add(), 3. gpiochip_add_pin_range(). Configuration of the hogs is handled in gpiochip_add(): gpiochip_add of_gpiochip_add of_gpiochip_scan_hogs gpiod_hog gpiochip_request_own_desc __gpiod_request chip->request pinctrl_request_gpio pinctrl_get_device_gpio_range However, at this point the GPIO controller hasn't been added to pinctrldev_list yet, so the range can't be found, and the operation fails with -EPROBE_DEFER. To fix this, add a "gpio-ranges" property to the gpio device node, so the range is added by of_gpiochip_add_pin_range(), which is called by of_gpiochip_add() before the call to of_gpiochip_scan_hogs(). Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 09d1c7b4 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Geert Uytterhoeven authored
If a GPIO driver uses gpiochip_add_pin_range() (which is usually the case for GPIO/PFC combos), the GPIO hogging mechanism configured from DT doesn't work: requesting hog GPIO led1-high (chip r8a73a4_pfc, offset 28) failed The actual error code is -517 == -EPROBE_DEFER. The problem is that PFC+GPIO registration is handled in multiple steps: 1. pinctrl_register(), 2. gpiochip_add(), 3. gpiochip_add_pin_range(). Configuration of the hogs is handled in gpiochip_add(): gpiochip_add of_gpiochip_add of_gpiochip_scan_hogs gpiod_hog gpiochip_request_own_desc __gpiod_request chip->request pinctrl_request_gpio pinctrl_get_device_gpio_range However, at this point the GPIO controller hasn't been added to pinctrldev_list yet, so the range can't be found, and the operation fails with -EPROBE_DEFER. To fix this, add a "gpio-ranges" property to the gpio device node, so the ranges are added by of_gpiochip_add_pin_range(), which is called by of_gpiochip_add() before the call to of_gpiochip_scan_hogs(). Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 17ccec50 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Sergei Shtylyov authored
Define the generic R8A7794 part of the MMCIF0 device node. Based on the orginal patch by Shinobu Uehara <shinobu.uehara.xc@renesas.com>. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 6cdf6ba1 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Sergei Shtylyov authored
Define the generic R8A7794 part of the PFC device node. Based on original patch by Hisashi Nakamura <hisashi.nakamura.ak@renesas.com>. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Acked-by: by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit fd1683c1 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Mikhail Ulyanov authored
This patch contains device tree node definition for JPEG codec peripheral found in the Renesas R-Car r8a7791 SoC. Signed-off-by: Mikhail Ulyanov <mikhail.ulyanov@cogentembedded.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 0caa3660 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Mikhail Ulyanov authored
This patch contains device tree node definition for JPEG codec peripheral found in the Renesas R-Car r8a7790 SoC. Signed-off-by: Mikhail Ulyanov <mikhail.ulyanov@cogentembedded.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit fb847575 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Magnus Damm authored
Now when the Marzen legacy board code is gone this patch removes the unused r8a7779 legacy SoC code. Signed-off-by: Magnus Damm <damm+renesas@opensource.se> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit c99cd90d ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au> Conflicts: arch/arm/mach-shmobile/setup-r8a7779.c
-
Magnus Damm authored
Remove Marzen legacy board code written in C. Instead board support expressed in DT shall be used together with Multiplatform and shmobile_defconfig. Signed-off-by: Magnus Damm <damm+renesas@opensource.se> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit b97fdb83 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au> Conflicts: arch/arm/mach-shmobile/Kconfig arch/arm/mach-shmobile/Makefile arch/arm/mach-shmobile/Makefile.boot arch/arm/mach-shmobile/board-marzen.c
-
Magnus Damm authored
Remove unused function prototypes from r8a7779.h and make the functions static. Signed-off-by: Magnus Damm <damm+renesas@opensource.se> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 640780ef ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Magnus Damm authored
The generic r8a7779 machine vector is now feature-wise equivalent to the Marzen-reference case, so simply remove the Marzen C board code to fall over on the generic r8a7779 machine vector. Signed-off-by: Magnus Damm <damm+renesas@opensource.se> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 26f9e03f ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Simon Horman authored
This is selected by MACH_MARZEN which is enabled in shmobile_defconfig, however, MACH_MARZEN is going away along with the board code it enables. Acked-by: Magnus Damm <damm@opensource.se> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 4055a722 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Kuninori Morimoto authored
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 7fd6e11d ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Kuninori Morimoto authored
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 88401702 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Kuninori Morimoto authored
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Tested-by: Keita Kobayashi <keita.kobayashi.ym@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit fc67bf42 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Kuninori Morimoto authored
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Tested-by: Keita Kobayashi <keita.kobayashi.ym@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit a7163784 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Laurent Pinchart authored
The adv7511 IRQ is low level triggered, not falling edge triggered. The wrong sense configuration results in no interrupt being triggered at all, breaking hotplug detection. Fix it. Reported-by: Ben Hutchings <ben.hutchings@codethink.co.uk> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Tested-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 850346ec ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Magnus Damm authored
Now when the Marzen legacy board code is removed also get rid of the marzen_defconfig file. Existing users shall move over to shmobile_defconfig. Signed-off-by: Magnus Damm <damm+renesas@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 821e79cb ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au> Conflicts: arch/arm/configs/marzen_defconfig
-
Kuninori Morimoto authored
This patch enables DPCM related sound card. It is used for... - Sampline rate convert - CTU/MIXer Note: you need to enable these settings on DTS file Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 6cec2768 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Kuninori Morimoto authored
It is easy to modify settings for Test or other purpose if sound has label Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 18f88d22 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Kuninori Morimoto authored
It is easy to modify settings for Test or other purpose if sound has label Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 30be0ba5 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Wolfram Sang authored
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit c53b0c92 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Wolfram Sang authored
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit cd42d042 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Magnus Damm authored
Add a r8a7779-specific SMP operation pointer to support all 4 CPU cores through SMP on r8a7779 without C board code. Signed-off-by: Magnus Damm <damm+renesas@opensource.se> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 44ade5ed ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Magnus Damm authored
Add a r8a7779-specific callback to initialize CCF and clocksources. With this in place we are one step closer to be able to use r8a7779 without C board code. Also add a multiplatform wrapper to avoid breaking the r8a7779 marzen legacy case. Signed-off-by: Magnus Damm <damm+renesas@opensource.se> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 131c2e04 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Wolfram Sang authored
With shmobile_defconfig but SMP=n && SUSPEND=n, I get: arch/arm/mach-shmobile/platsmp-apmu.c:49:12: warning: 'apmu_power_off' defined but not used [-Wunused-function] arch/arm/mach-shmobile/platsmp-apmu.c:70:12: warning: 'apmu_wrap' defined but not used [-Wunused-function] Annotate those functions like the functions around it. Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 151dd346 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Ulrich Hecht authored
Regulator setup seems identical to Koelsch. Signed-off-by: Ulrich Hecht <ulrich.hecht+renesas@gmail.com> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 765b5003 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Ulrich Hecht authored
Minimal support without power management or SMP. Signed-off-by: Ulrich Hecht <ulrich.hecht+renesas@gmail.com> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit ec60d95b ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Geert Uytterhoeven authored
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit bd82aff9 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Geert Uytterhoeven authored
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 5afcd90f ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Geert Uytterhoeven authored
Simplify the power request code by passing an "on" flag, and picking the right status bit and register offset in the innermost function, based on this flag. This allows to remove the rcar_sysc_pwr_{off,on}() helper functions, and the function pointer through which they were called. Make sr_bit and reg_offs unsigned while we're at it. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit bcb82437 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Geert Uytterhoeven authored
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 21437c53 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Geert Uytterhoeven authored
The passed struct rcar_sysc_ch is never modified, so it can be const. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 624deb39 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Geert Uytterhoeven authored
rcar_sysc_update() loops (with interrupts disabled and while holding a spinlock) until submitting a power shutoff or resume request fails, or until the submitted request was accepted. If none of these conditions becomes true, this forms an infinite loop. Put a limit on the maximum number of loop iterations, and add a small delay to each iteration, to fix this. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 2f575fcf ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Geert Uytterhoeven authored
Shrink the individual fields in struct rcar_sysc_ch, as unsigned long or int is overkill: - chan_offs contains a register offset relative to a base value (< 512), - chan_bit and isr_bit contain bit indices (0-31). This reduces the size of each instance from 3 (4 on 64-bit) 32-bit words to 1 32-bit word. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 6fd2242e ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Geert Uytterhoeven authored
Add more SYSC register documentation. Use definitions instead of hardcoded numbers. Comment important operations. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 577d104d ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Magnus Damm authored
Adjust the r8a7779 SoC DTS and the Marzen Reference C board code to use DTS only for INTC-IRQPIN IRLM setup. Signed-off-by: Magnus Damm <damm+renesas@opensource.se> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 7bf46d0b ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Geert Uytterhoeven authored
Replace the "arm,cortex-a15-gic" compatible value for the GIC by "arm,gic-400", as the R-Car Gen2 GIC is assumed to be a GIC-400. This has been confirmed by reading the GICD_IIDR register (on r8a7791), which reports 0x0200043b (GIC-400 = 0x02, ARM = 0x43b). This has no effect on runtime behavior, as currently the GIC driver treats both compatible values the same. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit c73ddf42 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Geert Uytterhoeven authored
Replace the "arm,cortex-a15-gic" compatible value for the GIC by "arm,gic-400", as the R-Car Gen2 GIC is assumed to be a GIC-400. This has been confirmed by reading the GICD_IIDR register (on r8a7791), which reports 0x0200043b (GIC-400 = 0x02, ARM = 0x43b). This has no effect on runtime behavior, as currently the GIC driver treats both compatible values the same. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit 5b3b3268 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-
Geert Uytterhoeven authored
Replace the "arm,cortex-a15-gic" compatible value for the GIC by "arm,gic-400", as the R-Car Gen2 GIC is assumed to be a GIC-400. This has been confirmed by reading the GICD_IIDR register, which reports 0x0200043b (GIC-400 = 0x02, ARM = 0x43b). This has no effect on runtime behavior, as currently the GIC driver treats both compatible values the same. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> (cherry picked from commit d238b5e6 ) Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-