[U-Boot] [PATCH v3 4/4] x86: minnowmax: initialize the pin-muxing from device tree
gabriel huau
contact at huau-gabriel.fr
Tue May 26 07:30:50 CEST 2015
Hi Simon,
I just submitted a new version of the patch, actually, when I tried to
use the GPIO on the header I saw a typo in the code.
To test it, you have to define these nodes in the device tree (should be
there by default or not?):
soc_gpio_s5_0 at 0 {
gpio-offset = <0x80 0>;
pad-offset = <0x1d0>;
mode-gpio;
output-value = <0>;
direction = <PIN_OUTPUT>;
};
soc_gpio_s5_1 at 0 {
gpio-offset = <0x80 1>;
pad-offset = <0x210>;
mode-gpio;
output-value = <0>;
direction = <PIN_OUTPUT>;
};
soc_gpio_s5_2 at 0 {
gpio-offset = <0x80 2>;
pad-offset = <0x1e0>;
mode-gpio;
output-value = <0>;
direction = <PIN_OUTPUT>;
};
And after, you can use the GPIO commands:
=> gpio set E0
gpio: pin E0 (gpio 128) value is 1
=> gpio clear E0
gpio: pin E0 (gpio 128) value is 0
=> gpio set E2
gpio: pin E2 (gpio 130) value is 1
=> gpio clear E2
gpio: pin E2 (gpio 130) value is 0
E0 E1 and E2 correspond to the GPIO0 1 and 2.
Regards,
Gabriel
On 05/20/2015 07:21 AM, Simon Glass wrote:
> Hi Gabriel,
>
> I have two patches in patchwork:
>
> http://patchwork.ozlabs.org/patch/471146/
> http://patchwork.ozlabs.org/patch/471147/
>
> Are they the correct ones? Also do you know how to use the gpio
> command to toggle a bin on the Minnowboard MAX header? I'd like to try
> that.
>
> Regards,
> Simon
>
>
> On 12 May 2015 at 00:20, gabriel huau <contact at huau-gabriel.fr> wrote:
>> Please ignore this email/patch, I put the wrong message id ...
>>
>>
>> On 05/11/2015 11:12 PM, Gabriel Huau wrote:
>>> Signed-off-by: Gabriel Huau <contact at huau-gabriel.fr>
>>> Acked-by: Simon Glass <sjg at chromium.org>
>>>
>>> ---
>>>
>>> Changes in v3:
>>> - Rebase to the origin/master
>>>
>>> Changes in v2:
>>> - Fix ordering of include header
>>>
>>> board/intel/minnowmax/minnowmax.c | 9 +++++++++
>>> include/configs/minnowmax.h | 1 +
>>> 2 files changed, 10 insertions(+)
>>>
>>> diff --git a/board/intel/minnowmax/minnowmax.c
>>> b/board/intel/minnowmax/minnowmax.c
>>> index 1f5549a..383cae0 100644
>>> --- a/board/intel/minnowmax/minnowmax.c
>>> +++ b/board/intel/minnowmax/minnowmax.c
>>> @@ -5,6 +5,7 @@
>>> */
>>> #include <common.h>
>>> +#include <asm/gpio.h>
>>> #include <asm/ibmpc.h>
>>> #include <asm/pnp_def.h>
>>> #include <netdev.h>
>>> @@ -12,6 +13,14 @@
>>> #define SERIAL_DEV PNP_DEV(0x2e, 4)
>>> +int arch_early_init_r(void)
>>> +{
>>> + /* do the pin-muxing */
>>> + gpio_ich6_pinctrl_init();
>>> +
>>> + return 0;
>>> +}
>>> +
>>> int board_early_init_f(void)
>>> {
>>> lpc47m_enable_serial(SERIAL_DEV, UART0_BASE, UART0_IRQ);
>>> diff --git a/include/configs/minnowmax.h b/include/configs/minnowmax.h
>>> index eb35a50..547765d 100644
>>> --- a/include/configs/minnowmax.h
>>> +++ b/include/configs/minnowmax.h
>>> @@ -15,6 +15,7 @@
>>> #define CONFIG_SYS_MONITOR_LEN (1 << 20)
>>> #define CONFIG_BOARD_EARLY_INIT_F
>>> +#define CONFIG_ARCH_EARLY_INIT_R
>>> #define CONFIG_X86_SERIAL
>>> #define CONFIG_SMSC_LPC47M
>>
More information about the U-Boot
mailing list