All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] extcon: int3496: process id-pin first so that we start with the right status
@ 2018-01-25 19:39 ` Hans de Goede
  2018-02-01 21:46   ` Chanwoo Choi
  2018-02-02  0:32   ` Chanwoo Choi
  0 siblings, 2 replies; 6+ messages in thread
From: Hans de Goede @ 2018-01-25 19:39 UTC (permalink / raw)
  To: MyungJoo Ham, Chanwoo Choi; +Cc: Hans de Goede, linux-kernel

Some other drivers may be waiting for our extcon to show-up (exiting their
probe methods with -EPROBE_DEFER until we show up).

These drivers will typically get the cable state directly after getting
the extcon, this commit changes the int3496 code to process the id-pin
before registering the extcon, so that other drivers see the correct state
right away.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
 drivers/extcon/extcon-intel-int3496.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/extcon/extcon-intel-int3496.c b/drivers/extcon/extcon-intel-int3496.c
index c8691b5a9cb0..b23ee9d993a3 100644
--- a/drivers/extcon/extcon-intel-int3496.c
+++ b/drivers/extcon/extcon-intel-int3496.c
@@ -131,6 +131,10 @@ static int int3496_probe(struct platform_device *pdev)
 	if (IS_ERR(data->gpio_usb_mux))
 		dev_info(dev, "can't request USB MUX GPIO\n");
 
+	/* process id-pin first so that we start with the right status */
+	queue_delayed_work(system_wq, &data->work, 0);
+	flush_delayed_work(&data->work);
+
 	/* register extcon device */
 	data->edev = devm_extcon_dev_allocate(dev, int3496_cable);
 	if (IS_ERR(data->edev))
@@ -153,9 +157,6 @@ static int int3496_probe(struct platform_device *pdev)
 		return ret;
 	}
 
-	/* queue initial processing of id-pin */
-	queue_delayed_work(system_wq, &data->work, 0);
-
 	platform_set_drvdata(pdev, data);
 
 	return 0;
-- 
2.14.3

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] extcon: int3496: process id-pin first so that we start with the right status
  2018-01-25 19:39 ` [PATCH] extcon: int3496: process id-pin first so that we start with the right status Hans de Goede
@ 2018-02-01 21:46   ` Chanwoo Choi
  2018-02-02  0:32   ` Chanwoo Choi
  1 sibling, 0 replies; 6+ messages in thread
From: Chanwoo Choi @ 2018-02-01 21:46 UTC (permalink / raw)
  To: Hans de Goede, MyungJoo Ham; +Cc: linux-kernel

On 2018년 01월 26일 04:39, Hans de Goede wrote:
> Some other drivers may be waiting for our extcon to show-up (exiting their
> probe methods with -EPROBE_DEFER until we show up).
> 
> These drivers will typically get the cable state directly after getting
> the extcon, this commit changes the int3496 code to process the id-pin
> before registering the extcon, so that other drivers see the correct state
> right away.
> 
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
>  drivers/extcon/extcon-intel-int3496.c | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/extcon/extcon-intel-int3496.c b/drivers/extcon/extcon-intel-int3496.c
> index c8691b5a9cb0..b23ee9d993a3 100644
> --- a/drivers/extcon/extcon-intel-int3496.c
> +++ b/drivers/extcon/extcon-intel-int3496.c
> @@ -131,6 +131,10 @@ static int int3496_probe(struct platform_device *pdev)
>  	if (IS_ERR(data->gpio_usb_mux))
>  		dev_info(dev, "can't request USB MUX GPIO\n");
>  
> +	/* process id-pin first so that we start with the right status */
> +	queue_delayed_work(system_wq, &data->work, 0);
> +	flush_delayed_work(&data->work);
> +
>  	/* register extcon device */
>  	data->edev = devm_extcon_dev_allocate(dev, int3496_cable);
>  	if (IS_ERR(data->edev))
> @@ -153,9 +157,6 @@ static int int3496_probe(struct platform_device *pdev)
>  		return ret;
>  	}
>  
> -	/* queue initial processing of id-pin */
> -	queue_delayed_work(system_wq, &data->work, 0);
> -
>  	platform_set_drvdata(pdev, data);
>  
>  	return 0;
> 

Applied it. Thanks.

-- 
Best Regards,
Chanwoo Choi
Samsung Electronics

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] extcon: int3496: process id-pin first so that we start with the right status
  2018-01-25 19:39 ` [PATCH] extcon: int3496: process id-pin first so that we start with the right status Hans de Goede
  2018-02-01 21:46   ` Chanwoo Choi
@ 2018-02-02  0:32   ` Chanwoo Choi
  2018-02-02  8:10     ` Hans de Goede
  1 sibling, 1 reply; 6+ messages in thread
From: Chanwoo Choi @ 2018-02-02  0:32 UTC (permalink / raw)
  To: Hans de Goede, MyungJoo Ham; +Cc: linux-kernel

On 2018년 01월 26일 04:39, Hans de Goede wrote:
> Some other drivers may be waiting for our extcon to show-up (exiting their
> probe methods with -EPROBE_DEFER until we show up).
> 
> These drivers will typically get the cable state directly after getting
> the extcon, this commit changes the int3496 code to process the id-pin
> before registering the extcon, so that other drivers see the correct state
> right away.
> 
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
>  drivers/extcon/extcon-intel-int3496.c | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/extcon/extcon-intel-int3496.c b/drivers/extcon/extcon-intel-int3496.c
> index c8691b5a9cb0..b23ee9d993a3 100644
> --- a/drivers/extcon/extcon-intel-int3496.c
> +++ b/drivers/extcon/extcon-intel-int3496.c
> @@ -131,6 +131,10 @@ static int int3496_probe(struct platform_device *pdev)
>  	if (IS_ERR(data->gpio_usb_mux))
>  		dev_info(dev, "can't request USB MUX GPIO\n");
>  
> +	/* process id-pin first so that we start with the right status */
> +	queue_delayed_work(system_wq, &data->work, 0);
> +	flush_delayed_work(&data->work);
> +
>  	/* register extcon device */
>  	data->edev = devm_extcon_dev_allocate(dev, int3496_cable);
>  	if (IS_ERR(data->edev))
> @@ -153,9 +157,6 @@ static int int3496_probe(struct platform_device *pdev)
>  		return ret;
>  	}
>  
> -	/* queue initial processing of id-pin */
> -	queue_delayed_work(system_wq, &data->work, 0);
> -
>  	platform_set_drvdata(pdev, data);
>  
>  	return 0;
> 

Looks good to me.
How about adding the 'Fixes' commit id on patch description?
I think that your revert patch of axp288 and this patch
should be included in extcon-fixes branch.

-- 
Best Regards,
Chanwoo Choi
Samsung Electronics

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] extcon: int3496: process id-pin first so that we start with the right status
  2018-02-02  0:32   ` Chanwoo Choi
@ 2018-02-02  8:10     ` Hans de Goede
  2018-02-04 23:28       ` Chanwoo Choi
  0 siblings, 1 reply; 6+ messages in thread
From: Hans de Goede @ 2018-02-02  8:10 UTC (permalink / raw)
  To: Chanwoo Choi, MyungJoo Ham; +Cc: linux-kernel

Hi,

On 02-02-18 01:32, Chanwoo Choi wrote:
> On 2018년 01월 26일 04:39, Hans de Goede wrote:
>> Some other drivers may be waiting for our extcon to show-up (exiting their
>> probe methods with -EPROBE_DEFER until we show up).
>>
>> These drivers will typically get the cable state directly after getting
>> the extcon, this commit changes the int3496 code to process the id-pin
>> before registering the extcon, so that other drivers see the correct state
>> right away.
>>
>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>> ---
>>   drivers/extcon/extcon-intel-int3496.c | 7 ++++---
>>   1 file changed, 4 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/extcon/extcon-intel-int3496.c b/drivers/extcon/extcon-intel-int3496.c
>> index c8691b5a9cb0..b23ee9d993a3 100644
>> --- a/drivers/extcon/extcon-intel-int3496.c
>> +++ b/drivers/extcon/extcon-intel-int3496.c
>> @@ -131,6 +131,10 @@ static int int3496_probe(struct platform_device *pdev)
>>   	if (IS_ERR(data->gpio_usb_mux))
>>   		dev_info(dev, "can't request USB MUX GPIO\n");
>>   
>> +	/* process id-pin first so that we start with the right status */
>> +	queue_delayed_work(system_wq, &data->work, 0);
>> +	flush_delayed_work(&data->work);
>> +
>>   	/* register extcon device */
>>   	data->edev = devm_extcon_dev_allocate(dev, int3496_cable);
>>   	if (IS_ERR(data->edev))
>> @@ -153,9 +157,6 @@ static int int3496_probe(struct platform_device *pdev)
>>   		return ret;
>>   	}
>>   
>> -	/* queue initial processing of id-pin */
>> -	queue_delayed_work(system_wq, &data->work, 0);
>> -
>>   	platform_set_drvdata(pdev, data);
>>   
>>   	return 0;
>>
> 
> Looks good to me.
> How about adding the 'Fixes' commit id on patch description?

Right, this could use a:

Fixes: 2f556bdb9f2e ("extcon: int3496: Add Intel INT3496 ACPI device extcon driver")

tag.

> I think that your revert patch of axp288 and this patch
> should be included in extcon-fixes branch.

Ack.

Regards,

Hans

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] extcon: int3496: process id-pin first so that we start with the right status
  2018-02-02  8:10     ` Hans de Goede
@ 2018-02-04 23:28       ` Chanwoo Choi
  2018-02-06  8:11         ` Hans de Goede
  0 siblings, 1 reply; 6+ messages in thread
From: Chanwoo Choi @ 2018-02-04 23:28 UTC (permalink / raw)
  To: Hans de Goede, MyungJoo Ham; +Cc: linux-kernel

On 2018년 02월 02일 17:10, Hans de Goede wrote:
> Hi,
> 
> On 02-02-18 01:32, Chanwoo Choi wrote:
>> On 2018년 01월 26일 04:39, Hans de Goede wrote:
>>> Some other drivers may be waiting for our extcon to show-up (exiting their
>>> probe methods with -EPROBE_DEFER until we show up).
>>>
>>> These drivers will typically get the cable state directly after getting
>>> the extcon, this commit changes the int3496 code to process the id-pin
>>> before registering the extcon, so that other drivers see the correct state
>>> right away.
>>>
>>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>>> ---
>>>   drivers/extcon/extcon-intel-int3496.c | 7 ++++---
>>>   1 file changed, 4 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/drivers/extcon/extcon-intel-int3496.c b/drivers/extcon/extcon-intel-int3496.c
>>> index c8691b5a9cb0..b23ee9d993a3 100644
>>> --- a/drivers/extcon/extcon-intel-int3496.c
>>> +++ b/drivers/extcon/extcon-intel-int3496.c
>>> @@ -131,6 +131,10 @@ static int int3496_probe(struct platform_device *pdev)
>>>       if (IS_ERR(data->gpio_usb_mux))
>>>           dev_info(dev, "can't request USB MUX GPIO\n");
>>>   +    /* process id-pin first so that we start with the right status */
>>> +    queue_delayed_work(system_wq, &data->work, 0);
>>> +    flush_delayed_work(&data->work);
>>> +
>>>       /* register extcon device */
>>>       data->edev = devm_extcon_dev_allocate(dev, int3496_cable);
>>>       if (IS_ERR(data->edev))
>>> @@ -153,9 +157,6 @@ static int int3496_probe(struct platform_device *pdev)
>>>           return ret;
>>>       }
>>>   -    /* queue initial processing of id-pin */
>>> -    queue_delayed_work(system_wq, &data->work, 0);
>>> -
>>>       platform_set_drvdata(pdev, data);
>>>         return 0;
>>>
>>
>> Looks good to me.
>> How about adding the 'Fixes' commit id on patch description?
> 
> Right, this could use a:
> 
> Fixes: 2f556bdb9f2e ("extcon: int3496: Add Intel INT3496 ACPI device extcon driver")
>

Please resend this patch Because you need to send the Linux stable mailing list.

-- 
Best Regards,
Chanwoo Choi
Samsung Electronics

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] extcon: int3496: process id-pin first so that we start with the right status
  2018-02-04 23:28       ` Chanwoo Choi
@ 2018-02-06  8:11         ` Hans de Goede
  0 siblings, 0 replies; 6+ messages in thread
From: Hans de Goede @ 2018-02-06  8:11 UTC (permalink / raw)
  To: Chanwoo Choi, MyungJoo Ham; +Cc: linux-kernel

HI,

On 05-02-18 00:28, Chanwoo Choi wrote:
> On 2018년 02월 02일 17:10, Hans de Goede wrote:
>> Hi,
>>
>> On 02-02-18 01:32, Chanwoo Choi wrote:
>>> On 2018년 01월 26일 04:39, Hans de Goede wrote:
>>>> Some other drivers may be waiting for our extcon to show-up (exiting their
>>>> probe methods with -EPROBE_DEFER until we show up).
>>>>
>>>> These drivers will typically get the cable state directly after getting
>>>> the extcon, this commit changes the int3496 code to process the id-pin
>>>> before registering the extcon, so that other drivers see the correct state
>>>> right away.
>>>>
>>>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>>>> ---
>>>>    drivers/extcon/extcon-intel-int3496.c | 7 ++++---
>>>>    1 file changed, 4 insertions(+), 3 deletions(-)
>>>>
>>>> diff --git a/drivers/extcon/extcon-intel-int3496.c b/drivers/extcon/extcon-intel-int3496.c
>>>> index c8691b5a9cb0..b23ee9d993a3 100644
>>>> --- a/drivers/extcon/extcon-intel-int3496.c
>>>> +++ b/drivers/extcon/extcon-intel-int3496.c
>>>> @@ -131,6 +131,10 @@ static int int3496_probe(struct platform_device *pdev)
>>>>        if (IS_ERR(data->gpio_usb_mux))
>>>>            dev_info(dev, "can't request USB MUX GPIO\n");
>>>>    +    /* process id-pin first so that we start with the right status */
>>>> +    queue_delayed_work(system_wq, &data->work, 0);
>>>> +    flush_delayed_work(&data->work);
>>>> +
>>>>        /* register extcon device */
>>>>        data->edev = devm_extcon_dev_allocate(dev, int3496_cable);
>>>>        if (IS_ERR(data->edev))
>>>> @@ -153,9 +157,6 @@ static int int3496_probe(struct platform_device *pdev)
>>>>            return ret;
>>>>        }
>>>>    -    /* queue initial processing of id-pin */
>>>> -    queue_delayed_work(system_wq, &data->work, 0);
>>>> -
>>>>        platform_set_drvdata(pdev, data);
>>>>          return 0;
>>>>
>>>
>>> Looks good to me.
>>> How about adding the 'Fixes' commit id on patch description?
>>
>> Right, this could use a:
>>
>> Fixes: 2f556bdb9f2e ("extcon: int3496: Add Intel INT3496 ACPI device extcon driver")
>>
> 
> Please resend this patch Because you need to send the Linux stable mailing list.

Ok, I've just send a v2 with the Fixes and Cc: stable tags added.

Regards,

Hans

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2018-02-06  8:11 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <CGME20180125193930epcas1p15288db5193038561d6061fcaa2a802bb@epcas1p1.samsung.com>
2018-01-25 19:39 ` [PATCH] extcon: int3496: process id-pin first so that we start with the right status Hans de Goede
2018-02-01 21:46   ` Chanwoo Choi
2018-02-02  0:32   ` Chanwoo Choi
2018-02-02  8:10     ` Hans de Goede
2018-02-04 23:28       ` Chanwoo Choi
2018-02-06  8:11         ` Hans de Goede

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.