Hello.
(2014/10/06 9:59), Yoshihiro Shimoda wrote:
> Hello.
>
> (2014/10/04 4:50), Sergei Shtylyov wrote:
>> On 10/02/2014 12:04 PM, Yoshihiro Shimoda wrote:
>>
>>> Signed-off-by: Yoshihiro Shimoda <[email protected]>
>>> ---
>>> arch/arm/boot/dts/r8a7790-lager.dts | 5 +++++
>>> 1 file changed, 5 insertions(+)
>>
>>> diff --git a/arch/arm/boot/dts/r8a7790-lager.dts
>>> b/arch/arm/boot/dts/r8a7790-lager.dts
>>> index 1698591..4badd0a 100644
>>> --- a/arch/arm/boot/dts/r8a7790-lager.dts
>>> +++ b/arch/arm/boot/dts/r8a7790-lager.dts
>>> @@ -445,3 +445,8 @@
>>> };
>>> };
>>> };
>>> +
>>> +&hsusb {
>>> + status = "okay";
>>> + renesas,enable-gpio = <&gpio5 18 GPIO_ACTIVE_LOW>;
>>
>> It's certainly active-high.
>
> Since the current code has the following, we have to set the active_low...
> However, the code is unreadable, I think. So, I will modify the code.
>
> /* check GPIO determining if USB function should be enabled */
> if (priv->dparam.enable_gpio) {
> gpio_request_one(priv->dparam.enable_gpio, GPIOF_IN, NULL);
> ret = !gpio_get_value(priv->dparam.enable_gpio);
> gpio_free(priv->dparam.enable_gpio);
> if (ret) {
> dev_warn(&pdev->dev,
> "USB function not selected (GPIO %d)\n",
> priv->dparam.enable_gpio);
> ret = -ENOTSUPP;
> goto probe_end_mod_exit;
> }
> }
I am confusing about the gpio_get_value()...
In case of ARM, gpio_get_value() will call gpiod_get_raw_value() finally.
gpio_get_value() in arch/arm/include/asm/gpio.h
--> __gpio_get_value() in include/asm-generic/gpio.h
--> gpiod_get_raw_value() in drivers/gpio/gpiolib.c
The gpiod_get_raw_value() doesn't care of the GPIO_ACTIVE_{HIGH,LOW}.
So, should I add gpiod_is_active_low() or someting in the renesas_usbhs driver?
Or, Do I misunderstand something?
Best regards,
Yoshihiro Shimoda
> Best regards,
> Yoshihiro Shimoda
>
>> WBR, Sergei
>>
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html