[PATCH 0/9] Incorrect Kconfig dependencies

classic Classic list List threaded Threaded
32 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 8/9] cmd: Kconfig: Fix dependencies for CMD_USB_MASS_STORAGE

Tom Rini-4
On Wed, Aug 19, 2020 at 10:44:22AM +0200, Michal Simek wrote:

> There are missing dependencies for selecting USB_FUNCTION_MASS_STORAGE.
> Change select to depends on instead of selecting all required options.
> Kconfig reports this issue as:
> WARNING: unmet direct dependencies detected for USB_FUNCTION_MASS_STORAGE
>   Depends on [n]: USB [=n] && USB_GADGET [=n] && USB_GADGET_DOWNLOAD [=n]
>   Selected by [y]:
>   - CMD_USB_MASS_STORAGE [=y]
>
> Signed-off-by: Michal Simek <[hidden email]>
> ---
>
>  cmd/Kconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/cmd/Kconfig b/cmd/Kconfig
> index f291c8cbf423..eebaaa420bf1 100644
> --- a/cmd/Kconfig
> +++ b/cmd/Kconfig
> @@ -1367,7 +1367,7 @@ config CMD_ROCKUSB
>  
>  config CMD_USB_MASS_STORAGE
>   bool "UMS usb mass storage"
> - select USB_FUNCTION_MASS_STORAGE
> + depends on USB_FUNCTION_MASS_STORAGE
>   help
>    USB mass storage support
Similar to the SDP issue, perhaps we have USB symbols that in turn need
to be select'ing other library functions they use?

--
Tom

signature.asc (673 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 4/9] nand: Kconfig: Change dependency for NAND_ARASAN

Tom Rini-4
In reply to this post by Michal Simek-3
On Wed, Aug 19, 2020 at 02:36:20PM +0200, Michal Simek wrote:

> On 19. 08. 20 14:31, Tom Rini wrote:
> > On Wed, Aug 19, 2020 at 10:44:18AM +0200, Michal Simek wrote:
> >
> >> NAND_ARASAN selecting DM_MTD uunconditionally. Driver can be enabled with
> >> !DM that's why Kconfig it showing it as error:
> >>
> >> WARNING: unmet direct dependencies detected for DM_MTD
> >>   Depends on [n]: DM [=n]
> >>   Selected by [y]:
> >>   - NAND_ARASAN [=y] && MTD_RAW_NAND [=y]
> >>
> >> Signed-off-by: Michal Simek <[hidden email]>
> >> ---
> >>
> >>  drivers/mtd/nand/raw/Kconfig | 2 +-
> >>  1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig
> >> index 06b2ff972cad..df4cbd52cf5c 100644
> >> --- a/drivers/mtd/nand/raw/Kconfig
> >> +++ b/drivers/mtd/nand/raw/Kconfig
> >> @@ -233,7 +233,7 @@ endif
> >>  config NAND_ARASAN
> >>   bool "Configure Arasan Nand"
> >>   select SYS_NAND_SELF_INIT
> >> - select DM_MTD
> >> + depends on DM_MTD
> >>   imply CMD_NAND
> >>   help
> >>    This enables Nand driver support for Arasan nand flash
> >
> > If we can use the driver without DM then we can't depend nor select
> > DM_MTD.  Is someone using the driver still without DM_MTD?
> >
>
> Driver has been converted to DM already. It is used by ZynqMP platforms.
> And it can't be used without DM_MTD.
>
> commit b014b833bd627d27542b50e71df9cf0628f241e7
> Author:     Ashok Reddy Soma <[hidden email]>
> AuthorDate: Thu Dec 19 02:27:42 2019 -0700
> Commit:     Michal Simek <[hidden email]>
> CommitDate: Tue Jan 14 09:05:52 2020 +0100
>
>     mtd: nand: Move arasan nand driver to driver model
>
>     Make changes to arasan nand driver to move it to driver model.
>     Select DM_MTD if arasan nand driver is selected.
>
>     Signed-off-by: Ashok Reddy Soma <[hidden email]>
>     Signed-off-by: Michal Simek <[hidden email]>
Ah, I misunderstood the comment, sorry.  Yes, this is right then,
thanks.

Reviewed-by: Tom Rini <[hidden email]>

--
Tom

signature.asc (673 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 4/9] nand: Kconfig: Change dependency for NAND_ARASAN

Michal Simek-3


On 19. 08. 20 14:43, Tom Rini wrote:

> On Wed, Aug 19, 2020 at 02:36:20PM +0200, Michal Simek wrote:
>> On 19. 08. 20 14:31, Tom Rini wrote:
>>> On Wed, Aug 19, 2020 at 10:44:18AM +0200, Michal Simek wrote:
>>>
>>>> NAND_ARASAN selecting DM_MTD uunconditionally. Driver can be enabled with
>>>> !DM that's why Kconfig it showing it as error:
>>>>
>>>> WARNING: unmet direct dependencies detected for DM_MTD
>>>>   Depends on [n]: DM [=n]
>>>>   Selected by [y]:
>>>>   - NAND_ARASAN [=y] && MTD_RAW_NAND [=y]
>>>>
>>>> Signed-off-by: Michal Simek <[hidden email]>
>>>> ---
>>>>
>>>>  drivers/mtd/nand/raw/Kconfig | 2 +-
>>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig
>>>> index 06b2ff972cad..df4cbd52cf5c 100644
>>>> --- a/drivers/mtd/nand/raw/Kconfig
>>>> +++ b/drivers/mtd/nand/raw/Kconfig
>>>> @@ -233,7 +233,7 @@ endif
>>>>  config NAND_ARASAN
>>>>   bool "Configure Arasan Nand"
>>>>   select SYS_NAND_SELF_INIT
>>>> - select DM_MTD
>>>> + depends on DM_MTD
>>>>   imply CMD_NAND
>>>>   help
>>>>    This enables Nand driver support for Arasan nand flash
>>>
>>> If we can use the driver without DM then we can't depend nor select
>>> DM_MTD.  Is someone using the driver still without DM_MTD?
>>>
>>
>> Driver has been converted to DM already. It is used by ZynqMP platforms.
>> And it can't be used without DM_MTD.
>>
>> commit b014b833bd627d27542b50e71df9cf0628f241e7
>> Author:     Ashok Reddy Soma <[hidden email]>
>> AuthorDate: Thu Dec 19 02:27:42 2019 -0700
>> Commit:     Michal Simek <[hidden email]>
>> CommitDate: Tue Jan 14 09:05:52 2020 +0100
>>
>>     mtd: nand: Move arasan nand driver to driver model
>>
>>     Make changes to arasan nand driver to move it to driver model.
>>     Select DM_MTD if arasan nand driver is selected.
>>
>>     Signed-off-by: Ashok Reddy Soma <[hidden email]>
>>     Signed-off-by: Michal Simek <[hidden email]>
>
> Ah, I misunderstood the comment, sorry.  Yes, this is right then,
> thanks.
>
> Reviewed-by: Tom Rini <[hidden email]>
>
ok. I just need to enable this symbol for zynqmp platforms.

Thanks,
Michal


signature.asc (201 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 4/9] nand: Kconfig: Change dependency for NAND_ARASAN

Tom Rini-4
On Wed, Aug 19, 2020 at 02:52:11PM +0200, Michal Simek wrote:

>
>
> On 19. 08. 20 14:43, Tom Rini wrote:
> > On Wed, Aug 19, 2020 at 02:36:20PM +0200, Michal Simek wrote:
> >> On 19. 08. 20 14:31, Tom Rini wrote:
> >>> On Wed, Aug 19, 2020 at 10:44:18AM +0200, Michal Simek wrote:
> >>>
> >>>> NAND_ARASAN selecting DM_MTD uunconditionally. Driver can be enabled with
> >>>> !DM that's why Kconfig it showing it as error:
> >>>>
> >>>> WARNING: unmet direct dependencies detected for DM_MTD
> >>>>   Depends on [n]: DM [=n]
> >>>>   Selected by [y]:
> >>>>   - NAND_ARASAN [=y] && MTD_RAW_NAND [=y]
> >>>>
> >>>> Signed-off-by: Michal Simek <[hidden email]>
> >>>> ---
> >>>>
> >>>>  drivers/mtd/nand/raw/Kconfig | 2 +-
> >>>>  1 file changed, 1 insertion(+), 1 deletion(-)
> >>>>
> >>>> diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig
> >>>> index 06b2ff972cad..df4cbd52cf5c 100644
> >>>> --- a/drivers/mtd/nand/raw/Kconfig
> >>>> +++ b/drivers/mtd/nand/raw/Kconfig
> >>>> @@ -233,7 +233,7 @@ endif
> >>>>  config NAND_ARASAN
> >>>>   bool "Configure Arasan Nand"
> >>>>   select SYS_NAND_SELF_INIT
> >>>> - select DM_MTD
> >>>> + depends on DM_MTD
> >>>>   imply CMD_NAND
> >>>>   help
> >>>>    This enables Nand driver support for Arasan nand flash
> >>>
> >>> If we can use the driver without DM then we can't depend nor select
> >>> DM_MTD.  Is someone using the driver still without DM_MTD?
> >>>
> >>
> >> Driver has been converted to DM already. It is used by ZynqMP platforms.
> >> And it can't be used without DM_MTD.
> >>
> >> commit b014b833bd627d27542b50e71df9cf0628f241e7
> >> Author:     Ashok Reddy Soma <[hidden email]>
> >> AuthorDate: Thu Dec 19 02:27:42 2019 -0700
> >> Commit:     Michal Simek <[hidden email]>
> >> CommitDate: Tue Jan 14 09:05:52 2020 +0100
> >>
> >>     mtd: nand: Move arasan nand driver to driver model
> >>
> >>     Make changes to arasan nand driver to move it to driver model.
> >>     Select DM_MTD if arasan nand driver is selected.
> >>
> >>     Signed-off-by: Ashok Reddy Soma <[hidden email]>
> >>     Signed-off-by: Michal Simek <[hidden email]>
> >
> > Ah, I misunderstood the comment, sorry.  Yes, this is right then,
> > thanks.
> >
> > Reviewed-by: Tom Rini <[hidden email]>
> >
>
> ok. I just need to enable this symbol for zynqmp platforms.
That is the hard part about all of these patches, when you go from
"select X" to "depends on X", you also need to run a script and make
sure that every config that enables the main symbol (NAND_ARASAN) also
enables the now depended on symbol (DM_MTD) and sync the configs after
the change.

--
Tom

signature.asc (673 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 4/9] nand: Kconfig: Change dependency for NAND_ARASAN

Michal Simek-3


On 19. 08. 20 15:15, Tom Rini wrote:

> On Wed, Aug 19, 2020 at 02:52:11PM +0200, Michal Simek wrote:
>>
>>
>> On 19. 08. 20 14:43, Tom Rini wrote:
>>> On Wed, Aug 19, 2020 at 02:36:20PM +0200, Michal Simek wrote:
>>>> On 19. 08. 20 14:31, Tom Rini wrote:
>>>>> On Wed, Aug 19, 2020 at 10:44:18AM +0200, Michal Simek wrote:
>>>>>
>>>>>> NAND_ARASAN selecting DM_MTD uunconditionally. Driver can be enabled with
>>>>>> !DM that's why Kconfig it showing it as error:
>>>>>>
>>>>>> WARNING: unmet direct dependencies detected for DM_MTD
>>>>>>   Depends on [n]: DM [=n]
>>>>>>   Selected by [y]:
>>>>>>   - NAND_ARASAN [=y] && MTD_RAW_NAND [=y]
>>>>>>
>>>>>> Signed-off-by: Michal Simek <[hidden email]>
>>>>>> ---
>>>>>>
>>>>>>  drivers/mtd/nand/raw/Kconfig | 2 +-
>>>>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>>
>>>>>> diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig
>>>>>> index 06b2ff972cad..df4cbd52cf5c 100644
>>>>>> --- a/drivers/mtd/nand/raw/Kconfig
>>>>>> +++ b/drivers/mtd/nand/raw/Kconfig
>>>>>> @@ -233,7 +233,7 @@ endif
>>>>>>  config NAND_ARASAN
>>>>>>   bool "Configure Arasan Nand"
>>>>>>   select SYS_NAND_SELF_INIT
>>>>>> - select DM_MTD
>>>>>> + depends on DM_MTD
>>>>>>   imply CMD_NAND
>>>>>>   help
>>>>>>    This enables Nand driver support for Arasan nand flash
>>>>>
>>>>> If we can use the driver without DM then we can't depend nor select
>>>>> DM_MTD.  Is someone using the driver still without DM_MTD?
>>>>>
>>>>
>>>> Driver has been converted to DM already. It is used by ZynqMP platforms.
>>>> And it can't be used without DM_MTD.
>>>>
>>>> commit b014b833bd627d27542b50e71df9cf0628f241e7
>>>> Author:     Ashok Reddy Soma <[hidden email]>
>>>> AuthorDate: Thu Dec 19 02:27:42 2019 -0700
>>>> Commit:     Michal Simek <[hidden email]>
>>>> CommitDate: Tue Jan 14 09:05:52 2020 +0100
>>>>
>>>>     mtd: nand: Move arasan nand driver to driver model
>>>>
>>>>     Make changes to arasan nand driver to move it to driver model.
>>>>     Select DM_MTD if arasan nand driver is selected.
>>>>
>>>>     Signed-off-by: Ashok Reddy Soma <[hidden email]>
>>>>     Signed-off-by: Michal Simek <[hidden email]>
>>>
>>> Ah, I misunderstood the comment, sorry.  Yes, this is right then,
>>> thanks.
>>>
>>> Reviewed-by: Tom Rini <[hidden email]>
>>>
>>
>> ok. I just need to enable this symbol for zynqmp platforms.
>
> That is the hard part about all of these patches, when you go from
> "select X" to "depends on X", you also need to run a script and make
> sure that every config that enables the main symbol (NAND_ARASAN) also
> enables the now depended on symbol (DM_MTD) and sync the configs after
> the change.
This one is easy but others can be problematic.
But there is serious issue with these symbols. When you run make
randconfig you see unfortunately a lot of issues reported.

Do you use any tool/script for defconfig update when Kconfig layout has
changed?

Thanks,
Michal




signature.asc (201 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 6/9] arc: Kconfig: Add missing DM dependency

Simon Glass-3
In reply to this post by Michal Simek-3
On Wed, 19 Aug 2020 at 02:44, Michal Simek <[hidden email]> wrote:

>
> ARC is selecting TIMER which depends on DM but DM is not selected and
> doesn't need to be enabled. Fix it by selecting DM for ARC architecture.
>
> Kconfig is showing this missing dependency by:
> WARNING: unmet direct dependencies detected for TIMER
>   Depends on [n]: DM [=n]
>   Selected by [y]:
>   - ARC [=y] && <choice>
>
> Signed-off-by: Michal Simek <[hidden email]>
> ---
>
>  arch/Kconfig | 1 +
>  1 file changed, 1 insertion(+)

Reviewed-by: Simon Glass <[hidden email]>
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 1/9] pci: kconfig: Setup proper dependency for PCIE_ROCKCHIP

Tom Rini-4
In reply to this post by Michal Simek-3
On Wed, Aug 19, 2020 at 10:44:15AM +0200, Michal Simek wrote:

> There is missing dependency for PCIE_ROCKCHIP which selects
> PHY_ROCKCHIP_PCIE which directly depends on ARCH_ROCKCHIP.
>
> WARNING: unmet direct dependencies detected for PHY_ROCKCHIP_PCIE
>   Depends on [n]: ARCH_ROCKCHIP [=n]
>   Selected by [y]:
>   - PCIE_ROCKCHIP [=y] && PCI [=y]
>
> Signed-off-by: Michal Simek <[hidden email]>
> Reviewed-by: Tom Rini <[hidden email]>
Applied to u-boot/master, thanks!

--
Tom

signature.asc (673 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 3/9] cmd: Kconfig: Change dependency for CMD_ADC

Tom Rini-4
In reply to this post by Michal Simek-3
On Wed, Aug 19, 2020 at 10:44:17AM +0200, Michal Simek wrote:

> CMD_ADC selected DM_REGULATOR unconditionally without enabling DM.
> That's why change select to depends on to cover it.
>
> Kconfig is showing this issue as:
> WARNING: unmet direct dependencies detected for REGMAP
>   Depends on [n]: DM [=n]
>   Selected by [y]:
>   - DM_REGULATOR_PBIAS [=y] && DM_REGULATOR [=y]
>
> Signed-off-by: Michal Simek <[hidden email]>
> Reviewed-by: Tom Rini <[hidden email]>
Applied to u-boot/master, thanks!

--
Tom

signature.asc (673 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 6/9] arc: Kconfig: Add missing DM dependency

Tom Rini-4
In reply to this post by Michal Simek-3
On Wed, Aug 19, 2020 at 10:44:20AM +0200, Michal Simek wrote:

> ARC is selecting TIMER which depends on DM but DM is not selected and
> doesn't need to be enabled. Fix it by selecting DM for ARC architecture.
>
> Kconfig is showing this missing dependency by:
> WARNING: unmet direct dependencies detected for TIMER
>   Depends on [n]: DM [=n]
>   Selected by [y]:
>   - ARC [=y] && <choice>
>
> Signed-off-by: Michal Simek <[hidden email]>
> Reviewed-by: Simon Glass <[hidden email]>
Applied to u-boot/master, thanks!

--
Tom

signature.asc (673 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 9/9] env: Kconfig: Add missing dependency for ENV_IS_IN_EXT4

Tom Rini-4
In reply to this post by Michal Simek-3
On Wed, Aug 19, 2020 at 10:44:23AM +0200, Michal Simek wrote:

> ENV_IS_IN_EXT4 also need to enable FS_EXT4 which is not covered in Kconfig.
> Kconfig reports this as:
> WARNING: unmet direct dependencies detected for EXT4_WRITE
>   Depends on [n]: FS_EXT4 [=n]
>   Selected by [y]:
>   - ENV_IS_IN_EXT4 [=y] && !CHAIN_OF_TRUST [=n]
>
> Signed-off-by: Michal Simek <[hidden email]>
> Reviewed-by: Tom Rini <[hidden email]>

Applied to u-boot/master, thanks!

--
Tom

signature.asc (673 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 4/9] nand: Kconfig: Change dependency for NAND_ARASAN

Michal Simek-4
In reply to this post by Michal Simek-3
st 19. 8. 2020 v 10:44 odesílatel Michal Simek <[hidden email]> napsal:

>
> NAND_ARASAN selecting DM_MTD uunconditionally. Driver can be enabled with
> !DM that's why Kconfig it showing it as error:
>
> WARNING: unmet direct dependencies detected for DM_MTD
>   Depends on [n]: DM [=n]
>   Selected by [y]:
>   - NAND_ARASAN [=y] && MTD_RAW_NAND [=y]
>
> Signed-off-by: Michal Simek <[hidden email]>
> ---
>
>  drivers/mtd/nand/raw/Kconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig
> index 06b2ff972cad..df4cbd52cf5c 100644
> --- a/drivers/mtd/nand/raw/Kconfig
> +++ b/drivers/mtd/nand/raw/Kconfig
> @@ -233,7 +233,7 @@ endif
>  config NAND_ARASAN
>         bool "Configure Arasan Nand"
>         select SYS_NAND_SELF_INIT
> -       select DM_MTD
> +       depends on DM_MTD
>         imply CMD_NAND
>         help
>           This enables Nand driver support for Arasan nand flash
> --
> 2.28.0
>

Applied just this one patch with defconfig sync.
M

--
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Xilinx Microblaze
Maintainer of Linux kernel - Xilinx Zynq ARM and ZynqMP ARM64 SoCs
U-Boot custodian - Xilinx Microblaze/Zynq/ZynqMP/Versal SoCs
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 7/9] ARM: zynqmp: Fix SPL_DM_SPI dependencies

Michal Simek-4
In reply to this post by Michal Simek-3
st 19. 8. 2020 v 10:44 odesílatel Michal Simek <[hidden email]> napsal:

>
> Add missing dependencies for DM_SPI_FLASH.
> Kconfig reports it as:
> WARNING: unmet direct dependencies detected for SPL_DM_SPI_FLASH
>   Depends on [n]: SPL [=n] && SPL_DM [=n]
>   Selected by [y]:
>   - ARCH_ZYNQMP [=y] && <choice> && SPL_DM_SPI [=y]
>
> Signed-off-by: Michal Simek <[hidden email]>
> ---
>
>  arch/arm/Kconfig | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index bb71b1647650..1d8e6975fe57 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -1153,7 +1153,8 @@ config ARCH_ZYNQMP
>         select OF_CONTROL
>         select SPL_BOARD_INIT if SPL
>         select SPL_CLK if SPL
> -       select SPL_DM_SPI if SPI
> +       select SPL_DM if SPL
> +       select SPL_DM_SPI if SPI && SPL_DM
>         select SPL_DM_SPI_FLASH if SPL_DM_SPI
>         select SPL_DM_MAILBOX if SPL
>         select SPL_FIRMWARE if SPL
> --
> 2.28.0
>

Applied just this one.
M

--
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Xilinx Microblaze
Maintainer of Linux kernel - Xilinx Zynq ARM and ZynqMP ARM64 SoCs
U-Boot custodian - Xilinx Microblaze/Zynq/ZynqMP/Versal SoCs
12