diff mbox

[U-Boot,3/3] usb: configs: Clean up CONFIG_SYS_USB_EVENT_POLL_(xxx) in board configs

Message ID 20170730210147.foupapvcfenrruhx@localhost
State Changes Requested
Headers show

Commit Message

Rask Ingemann Lambertsen July 30, 2017, 9:01 p.m. UTC
On Mon, Jun 26, 2017 at 04:05:41AM -0700, Bin Meng wrote:
> The following 3 Kconfig options
> - CONFIG_SYS_USB_EVENT_POLL
> - CONFIG_SYS_USB_EVENT_POLL_VIA_CONTROL_EP
> - CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE
> 
> are already converted to Kconfig. Let's clean up all board configs to
> switch over to use them.
> 
> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
[snip]
> diff --git a/configs/Sunchip_CX-A99_defconfig b/configs/Sunchip_CX-A99_defconfig
> index 0641b1f..2284bd3 100644
> --- a/configs/Sunchip_CX-A99_defconfig
> +++ b/configs/Sunchip_CX-A99_defconfig
> @@ -18,3 +18,4 @@ CONFIG_SPL=y
>  # CONFIG_SPL_DOS_PARTITION is not set
>  # CONFIG_SPL_ISO_PARTITION is not set
>  # CONFIG_SPL_EFI_PARTITION is not set
> +CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
[snip]
> diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
> index ee669cb..da91117 100644
> --- a/include/configs/sunxi-common.h
> +++ b/include/configs/sunxi-common.h
> @@ -340,7 +340,6 @@ extern int soft_i2c_gpio_scl;
>  
>  #ifdef CONFIG_USB_KEYBOARD
>  #define CONFIG_PREBOOT
> -#define CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE
>  #endif
>  
>  #define CONFIG_MISC_INIT_R

Rather than adding that option to each and every SUNXI board's defconfig
when removing it from include/configs/sunxi-common.h, wouldn't it better
to set it from arch/arm/Kconfig instead? Something like this (untested):


Because it seems to me that it's common to the SUNXI architecture boards
rather than something board specific.

Comments

Bin Meng July 30, 2017, 10:30 p.m. UTC | #1
On Mon, Jul 31, 2017 at 5:01 AM, Rask Ingemann Lambertsen
<rask@formelder.dk> wrote:
> On Mon, Jun 26, 2017 at 04:05:41AM -0700, Bin Meng wrote:
>> The following 3 Kconfig options
>> - CONFIG_SYS_USB_EVENT_POLL
>> - CONFIG_SYS_USB_EVENT_POLL_VIA_CONTROL_EP
>> - CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE
>>
>> are already converted to Kconfig. Let's clean up all board configs to
>> switch over to use them.
>>
>> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> [snip]
>> diff --git a/configs/Sunchip_CX-A99_defconfig b/configs/Sunchip_CX-A99_defconfig
>> index 0641b1f..2284bd3 100644
>> --- a/configs/Sunchip_CX-A99_defconfig
>> +++ b/configs/Sunchip_CX-A99_defconfig
>> @@ -18,3 +18,4 @@ CONFIG_SPL=y
>>  # CONFIG_SPL_DOS_PARTITION is not set
>>  # CONFIG_SPL_ISO_PARTITION is not set
>>  # CONFIG_SPL_EFI_PARTITION is not set
>> +CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
> [snip]
>> diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
>> index ee669cb..da91117 100644
>> --- a/include/configs/sunxi-common.h
>> +++ b/include/configs/sunxi-common.h
>> @@ -340,7 +340,6 @@ extern int soft_i2c_gpio_scl;
>>
>>  #ifdef CONFIG_USB_KEYBOARD
>>  #define CONFIG_PREBOOT
>> -#define CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE
>>  #endif
>>
>>  #define CONFIG_MISC_INIT_R
>
> Rather than adding that option to each and every SUNXI board's defconfig
> when removing it from include/configs/sunxi-common.h, wouldn't it better
> to set it from arch/arm/Kconfig instead? Something like this (untested):
>

Makes sense.

Regards,
Bin
Marek Vasut July 30, 2017, 11:03 p.m. UTC | #2
On 07/31/2017 12:30 AM, Bin Meng wrote:
> On Mon, Jul 31, 2017 at 5:01 AM, Rask Ingemann Lambertsen
> <rask@formelder.dk> wrote:
>> On Mon, Jun 26, 2017 at 04:05:41AM -0700, Bin Meng wrote:
>>> The following 3 Kconfig options
>>> - CONFIG_SYS_USB_EVENT_POLL
>>> - CONFIG_SYS_USB_EVENT_POLL_VIA_CONTROL_EP
>>> - CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE
>>>
>>> are already converted to Kconfig. Let's clean up all board configs to
>>> switch over to use them.
>>>
>>> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
>> [snip]
>>> diff --git a/configs/Sunchip_CX-A99_defconfig b/configs/Sunchip_CX-A99_defconfig
>>> index 0641b1f..2284bd3 100644
>>> --- a/configs/Sunchip_CX-A99_defconfig
>>> +++ b/configs/Sunchip_CX-A99_defconfig
>>> @@ -18,3 +18,4 @@ CONFIG_SPL=y
>>>  # CONFIG_SPL_DOS_PARTITION is not set
>>>  # CONFIG_SPL_ISO_PARTITION is not set
>>>  # CONFIG_SPL_EFI_PARTITION is not set
>>> +CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
>> [snip]
>>> diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
>>> index ee669cb..da91117 100644
>>> --- a/include/configs/sunxi-common.h
>>> +++ b/include/configs/sunxi-common.h
>>> @@ -340,7 +340,6 @@ extern int soft_i2c_gpio_scl;
>>>
>>>  #ifdef CONFIG_USB_KEYBOARD
>>>  #define CONFIG_PREBOOT
>>> -#define CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE
>>>  #endif
>>>
>>>  #define CONFIG_MISC_INIT_R
>>
>> Rather than adding that option to each and every SUNXI board's defconfig
>> when removing it from include/configs/sunxi-common.h, wouldn't it better
>> to set it from arch/arm/Kconfig instead? Something like this (untested):
>>
> 
> Makes sense.

AFAIR this is a property of the USB controller driver implementation (if
it does / does not implement the interrupt transfers), but also not
everyone needs this, so putting it into defconfigs makes sense IMO.
Bin Meng July 30, 2017, 11:42 p.m. UTC | #3
On Mon, Jul 31, 2017 at 7:03 AM, Marek Vasut <marex@denx.de> wrote:
> On 07/31/2017 12:30 AM, Bin Meng wrote:
>> On Mon, Jul 31, 2017 at 5:01 AM, Rask Ingemann Lambertsen
>> <rask@formelder.dk> wrote:
>>> On Mon, Jun 26, 2017 at 04:05:41AM -0700, Bin Meng wrote:
>>>> The following 3 Kconfig options
>>>> - CONFIG_SYS_USB_EVENT_POLL
>>>> - CONFIG_SYS_USB_EVENT_POLL_VIA_CONTROL_EP
>>>> - CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE
>>>>
>>>> are already converted to Kconfig. Let's clean up all board configs to
>>>> switch over to use them.
>>>>
>>>> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
>>> [snip]
>>>> diff --git a/configs/Sunchip_CX-A99_defconfig b/configs/Sunchip_CX-A99_defconfig
>>>> index 0641b1f..2284bd3 100644
>>>> --- a/configs/Sunchip_CX-A99_defconfig
>>>> +++ b/configs/Sunchip_CX-A99_defconfig
>>>> @@ -18,3 +18,4 @@ CONFIG_SPL=y
>>>>  # CONFIG_SPL_DOS_PARTITION is not set
>>>>  # CONFIG_SPL_ISO_PARTITION is not set
>>>>  # CONFIG_SPL_EFI_PARTITION is not set
>>>> +CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
>>> [snip]
>>>> diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
>>>> index ee669cb..da91117 100644
>>>> --- a/include/configs/sunxi-common.h
>>>> +++ b/include/configs/sunxi-common.h
>>>> @@ -340,7 +340,6 @@ extern int soft_i2c_gpio_scl;
>>>>
>>>>  #ifdef CONFIG_USB_KEYBOARD
>>>>  #define CONFIG_PREBOOT
>>>> -#define CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE
>>>>  #endif
>>>>
>>>>  #define CONFIG_MISC_INIT_R
>>>
>>> Rather than adding that option to each and every SUNXI board's defconfig
>>> when removing it from include/configs/sunxi-common.h, wouldn't it better
>>> to set it from arch/arm/Kconfig instead? Something like this (untested):
>>>
>>
>> Makes sense.
>
> AFAIR this is a property of the USB controller driver implementation (if
> it does / does not implement the interrupt transfers), but also not
> everyone needs this, so putting it into defconfigs makes sense IMO.
>

Either way. If all sunxi needs this, that means something? (ie:
sunxi's EHCI controller only supports the int queue?) Frankly when I
was working on this, I don't quite understand why this Kconfig option
was introduced in the first place :)

Regards,
Bin
diff mbox

Patch

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index dce4105561..ab4837bd14 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -673,6 +673,7 @@  config ARCH_SUNXI
	select USB if DISTRO_DEFAULTS
	select USB_STORAGE if DISTRO_DEFAULTS
	select USB_KEYBOARD if DISTRO_DEFAULTS
+	select SYS_USB_EVENT_POLL_VIA_INT_QUEUE if DISTRO_DEFAULTS
	select USE_TINY_PRINTF
	imply FAT_WRITE
	imply PRE_CONSOLE_BUFFER