kernel_optimize_test/drivers/pinctrl
Giuseppe Cavallaro 4e6a609fb7 pinctrl: st: Enhance the controller to manage unavailable registers
This patch adds a new logic inside the st pinctrl to manage
an unsupported scenario: some sysconfig are not available!

This is the case of STiH407 where, although documented, the
following registers from SYSCFG_FLASH have been removed from the SoC.

SYSTEM_CONFIG3040
   Output Enable pad control for all PIO Alternate Functions
and
SYSTEM_ CONFIG3050
   Pull Up pad control for all PIO Alternate Functions

Without managing this condition an imprecise external abort
will be detect.

To do this the patch also reviews the st_parse_syscfgs
and other routines to manipulate the registers only if
actually available.
In any case, for example the st_parse_syscfgs detected
an error condition but no action was made in the
st_pctl_probe_dt.

Acked-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Acked-by: Srinivas Kandagatla <srinivas.kandagatla@st.com>
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2014-03-12 15:15:34 +01:00
..
mvebu pinctrl: mvebu: silence WARN to dev_warn 2014-03-12 15:00:04 +01:00
sh-pfc pinctrl: sh-pfc: r8a7791: Add alternative MSIOF pin groups 2014-03-05 09:53:49 +08:00
sirf pinctrl: sirf: update copyright years to 2014 2014-02-25 10:49:13 +01:00
spear pinctrl: remove redundant of_match_ptr 2013-10-08 10:02:25 +02:00
vt8500 pinctrl: vt8500: Change devicetree data parsing 2014-02-03 09:08:01 +01:00
core.c pinctrl: do not init debugfs entries for unimplemented functionalities 2014-02-06 13:48:17 +01:00
core.h
devicetree.c pinctrl: Quiet logging about missing DT nodes when not using DT 2014-02-24 10:44:54 +01:00
devicetree.h
Kconfig pinctrl: msm: Drop OF_IRQ dependency 2014-03-12 15:12:27 +01:00
Makefile ARM: pinctrl: Add Broadcom Capri pinctrl driver 2014-01-16 14:25:38 +01:00
pinconf-generic.c pinctrl: Adds slew-rate, input-enable/disable 2013-12-16 10:55:03 +01:00
pinconf.c pinctrl: pinconf: remove warning: unused variable 'ops' 2013-12-13 13:55:15 +01:00
pinconf.h
pinctrl-ab8500.c
pinctrl-ab8505.c
pinctrl-ab8540.c
pinctrl-ab9540.c
pinctrl-abx500.c mfd/pinctrl: Delete platform data header 2014-01-21 08:27:42 +00:00
pinctrl-abx500.h mfd/pinctrl: Delete platform data header 2014-01-21 08:27:42 +00:00
pinctrl-adi2-bf54x.c pinctrl: pinctrl-adi: combine multiple groups of one function together 2014-02-25 10:49:13 +01:00
pinctrl-adi2-bf60x.c pinctrl: pinctrl-adi: combine multiple groups of one function together 2014-02-25 10:49:13 +01:00
pinctrl-adi2.c pinctrl: pinctrl-adi: combine multiple groups of one function together 2014-02-25 10:49:13 +01:00
pinctrl-adi2.h pinctrl: pinctrl-adi: combine multiple groups of one function together 2014-02-25 10:49:13 +01:00
pinctrl-as3722.c Bulk pin control changes for the v3.14 cycle: 2014-01-21 10:14:10 -08:00
pinctrl-at91.c pinctrl: at91: implement get_direction 2014-02-25 10:49:15 +01:00
pinctrl-baytrail.c pinctrl-baytrail: add function mux checking in gpio pin request 2014-03-11 11:22:54 +01:00
pinctrl-bcm2835.c gpio/pinctrl: make gpio_chip members typed boolean 2013-12-04 14:42:46 +01:00
pinctrl-capri.c ARM: pinctrl: Add Broadcom Capri pinctrl driver 2014-01-16 14:25:38 +01:00
pinctrl-coh901.c pinctrl: coh901: mark GPIO lines used for IRQ 2013-10-16 09:59:55 +02:00
pinctrl-coh901.h
pinctrl-exynos.c pinctrl: exynos: add exynos5260 SoC specific data 2014-02-11 09:35:19 +01:00
pinctrl-exynos.h
pinctrl-exynos5440.c pinctrl: remove redundant of_match_ptr 2013-10-08 10:02:25 +02:00
pinctrl-falcon.c
pinctrl-imx.c pinctrl: imx: Fix pin name in debug message. 2014-02-25 10:49:14 +01:00
pinctrl-imx.h
pinctrl-imx1-core.c pinctrl: imx27: fix offset calculation in imx_read_2bit 2014-02-03 09:08:09 +01:00
pinctrl-imx1.h pinctrl: imx1 core driver 2013-10-29 06:54:37 -07:00
pinctrl-imx6dl.c pinctrl: remove redundant of_match_ptr 2013-10-08 10:02:25 +02:00
pinctrl-imx6q.c pinctrl: remove redundant of_match_ptr 2013-10-08 10:02:25 +02:00
pinctrl-imx6sl.c pinctrl: remove redundant of_match_ptr 2013-10-08 10:02:25 +02:00
pinctrl-imx23.c
pinctrl-imx25.c pinctrl: pinctrl-imx: add imx25 pinctrl driver 2013-11-25 09:08:30 +01:00
pinctrl-imx27.c pinctrl: imx27: imx27 pincontrol driver 2013-10-29 08:58:06 -07:00
pinctrl-imx28.c
pinctrl-imx35.c pinctrl: remove redundant of_match_ptr 2013-10-08 10:02:25 +02:00
pinctrl-imx50.c pinctrl: imx50: add pinctrl support code for the IMX50 SoC 2013-11-06 10:06:59 +01:00
pinctrl-imx51.c pinctrl: remove redundant of_match_ptr 2013-10-08 10:02:25 +02:00
pinctrl-imx53.c pinctrl: remove redundant of_match_ptr 2013-10-08 10:02:25 +02:00
pinctrl-lantiq.c
pinctrl-lantiq.h
pinctrl-msm.c pinctrl: msm: Simplify msm_config_reg() and callers 2014-03-12 15:12:29 +01:00
pinctrl-msm.h pinctrl: msm: Drop unused includes 2014-03-12 15:12:27 +01:00
pinctrl-msm8x74.c pinctrl: msm: Drop unused includes 2014-03-12 15:12:27 +01:00
pinctrl-mxs.c
pinctrl-mxs.h
pinctrl-nomadik-db8500.c
pinctrl-nomadik-db8540.c
pinctrl-nomadik-stn8815.c
pinctrl-nomadik.c pinctrl: nomadik: Convert to modern pm_ops 2014-02-25 10:49:12 +01:00
pinctrl-nomadik.h pinctrl: nomadik: move platform data handling into driver 2013-11-26 21:01:58 +01:00
pinctrl-palmas.c pinctrl: palmas: remove pin config BIAS_PULL_PIN_DEFAULT support 2013-10-08 13:27:27 +02:00
pinctrl-rockchip.c pinctrl: rockchip: missing unlock on error in rockchip_set_pull() 2013-11-25 09:08:18 +01:00
pinctrl-s3c24xx.c
pinctrl-s3c64xx.c
pinctrl-samsung.c pinctrl: exynos: add exynos5260 SoC specific data 2014-02-11 09:35:19 +01:00
pinctrl-samsung.h pinctrl: exynos: add exynos5260 SoC specific data 2014-02-11 09:35:19 +01:00
pinctrl-single.c pinctrl: single: add low power mode support 2014-02-10 10:13:08 +01:00
pinctrl-st.c pinctrl: st: Enhance the controller to manage unavailable registers 2014-03-12 15:15:34 +01:00
pinctrl-sunxi-pins.h pinctrl-sunxi: Fix sun5i-a13 port F multiplexing 2014-02-25 10:49:14 +01:00
pinctrl-sunxi.c Bulk pin control changes for the v3.14 cycle: 2014-01-21 10:14:10 -08:00
pinctrl-sunxi.h
pinctrl-tb10x.c pinctrl: tb10x: use module_platform_driver to simplify the code 2013-10-23 10:46:00 +02:00
pinctrl-tegra.c pinctrl: tegra: return correct error type 2014-02-06 14:21:19 +01:00
pinctrl-tegra.h
pinctrl-tegra20.c
pinctrl-tegra30.c
pinctrl-tegra114.c pinctrl: tegra: fix some typos and inconsistencies 2014-03-11 11:16:28 +01:00
pinctrl-tegra124.c pinctrl: tegra: fix some typos and inconsistencies 2014-03-11 11:16:28 +01:00
pinctrl-tz1090-pdc.c
pinctrl-tz1090.c
pinctrl-u300.c
pinctrl-utils.c
pinctrl-utils.h
pinctrl-vf610.c pinctrl: remove redundant of_match_ptr 2013-10-08 10:02:25 +02:00
pinctrl-xway.c pinctrl/lantiq: fix typo 2014-01-08 10:13:38 +01:00
pinmux.c pinctrl: remove minor dead code 2013-11-04 13:07:05 +01:00
pinmux.h