On 25/06/2026 15:26, Sunyun Yang wrote:
> Krzysztof Kozlowski <[email protected]> 于2026年6月25日周四 21:17写道:
>>
>> On 25/06/2026 15:14, Sunyun Yang wrote:
>>> Krzysztof Kozlowski <[email protected]> 于2026年6月25日周四 20:54写道:
>>>>
>>>> On 08/05/2026 15:40, [email protected] wrote:
>>>>> +
>>>>> +static void lt9611c_reset(struct lt9611c *lt9611c)
>>>>> +{
>>>>> +     gpiod_set_value_cansleep(lt9611c->reset_gpio, 1);
>>>>> +     msleep(20);
>>>>> +
>>>>> +     gpiod_set_value_cansleep(lt9611c->reset_gpio, 0);
>>>>> +     msleep(20);
>>>>> +
>>>>> +     gpiod_set_value_cansleep(lt9611c->reset_gpio, 1);
>>>>
>>>> This is just plain wrong. Why do you assert, then de-assert and then
>>>> finally assert AGAIN the reset leaving the device in powerdown stage?
>>>>
>>> I am using software to emulate the hardware RESET button on our EVB.
>>> When the hardware RESET button is pressed while our chip is running,
>>> the signal level changes from HIGH to LOW and then back to HIGH.
>>>
>>> Of course, we can also use the following:
>>> static void lt9611c_reset(struct lt9611c *lt9611c)
>>> {
>>>     gpiod_set_value_cansleep(lt9611c->reset_gpio, 0);
>>>     msleep(50);
>>>     gpiod_set_value_cansleep(lt9611c->reset_gpio, 1);
>>>     msleep(20);
>>> }
>>
>> Makes no sense either and you just did not get the point and did not
>> answer my question. I asked WHY you leave asserted. Answer "we emulate"
>> is just plain wrong.
>>
>> So again please answer:
>>
>> Why do you leave device with reset asserted?
>>
> 
>  devicetree:   reset-gpios = <&tlmm 128 GPIO_ACTIVE_HIGH>;

That's irrelevant. I do not talk about DT.

Review is happening in specific place - here I question driver code. If
you do not have actual arguments why device is left in reset stage, then
please fix it.


Best regards,
Krzysztof

Reply via email to