diff options
author | Gabriel Huau <contact@huau-gabriel.fr> | 2015-05-25 22:27:37 -0700 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2015-06-04 03:32:08 -0600 |
commit | 5318f18d2c002f505054b90bb95ba7c53532eedf (patch) | |
tree | c9e25f8c9fc57dbeba19b617f421b6f1ba7ca8d1 /arch/x86 | |
parent | afbbd413a3ef8a45155fcd083814ba645b09fcc7 (diff) | |
download | u-boot-imx-5318f18d2c002f505054b90bb95ba7c53532eedf.zip u-boot-imx-5318f18d2c002f505054b90bb95ba7c53532eedf.tar.gz u-boot-imx-5318f18d2c002f505054b90bb95ba7c53532eedf.tar.bz2 |
x86: gpio: add pinctrl support from the device tree
Every pin can be configured now from the device tree. A dt-bindings
has been added to describe the different property available.
Change-Id: I1668886062655f83700d0e7bbbe3ad09b19ee975
Signed-off-by: Gabriel Huau <contact@huau-gabriel.fr>
Acked-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch/x86')
-rw-r--r-- | arch/x86/dts/minnowmax.dts | 23 | ||||
-rw-r--r-- | arch/x86/include/asm/gpio.h | 1 |
2 files changed, 24 insertions, 0 deletions
diff --git a/arch/x86/dts/minnowmax.dts b/arch/x86/dts/minnowmax.dts index 7103bc5..bd21bfb 100644 --- a/arch/x86/dts/minnowmax.dts +++ b/arch/x86/dts/minnowmax.dts @@ -6,6 +6,8 @@ /dts-v1/; +#include <dt-bindings/gpio/x86-gpio.h> + /include/ "skeleton.dtsi" /include/ "serial.dtsi" @@ -22,6 +24,27 @@ silent_console = <0>; }; + pch_pinctrl { + compatible = "intel,x86-pinctrl"; + io-base = <0x4c>; + + pin_usb_host_en0@0 { + gpio-offset = <0x80 8>; + pad-offset = <0x260>; + mode-gpio; + output-value = <1>; + direction = <PIN_OUTPUT>; + }; + + pin_usb_host_en1@0 { + gpio-offset = <0x80 9>; + pad-offset = <0x258>; + mode-gpio; + output-value = <1>; + direction = <PIN_OUTPUT>; + }; + }; + gpioa { compatible = "intel,ich6-gpio"; u-boot,dm-pre-reloc; diff --git a/arch/x86/include/asm/gpio.h b/arch/x86/include/asm/gpio.h index 1099427..ed85b08 100644 --- a/arch/x86/include/asm/gpio.h +++ b/arch/x86/include/asm/gpio.h @@ -147,6 +147,7 @@ struct pch_gpio_map { } set3; }; +int gpio_ich6_pinctrl_init(void); void setup_pch_gpios(u16 gpiobase, const struct pch_gpio_map *gpio); void ich_gpio_set_gpio_map(const struct pch_gpio_map *map); |