Re: [PATCH 2/3] usb: gadget: at91_udc: mention proper dependency

From: Nicolas Ferre
Date: Wed Sep 30 2015 - 12:35:23 EST


Le 30/09/2015 18:24, Sudip Mukherjee a Ãcrit :
> On Wed, Sep 30, 2015 at 11:04:54AM -0500, Felipe Balbi wrote:
>> On Wed, Sep 23, 2015 at 09:22:48PM +0530, Sudip Mukherjee wrote:
>>> On Mon, Sep 21, 2015 at 04:40:57PM +0530, Sudip Mukherjee wrote:
>>>> On Sun, Sep 20, 2015 at 11:15:28AM -0500, Felipe Balbi wrote:
>>>>> On Sat, Sep 19, 2015 at 10:42:58PM +0530, Sudip Mukherjee wrote:
>>>>>> While building allmodconfig on avr32 the build failed with the error:
>>>>>> "at91_pmc_base" [drivers/usb/gadget/udc/atmel_usba_udc.ko] undefined!
>>>>>>
>>>>>> On checking the code it turned out that if CONFIG_OF is defined then it
>>>>>> is using at91_pmc_read() which is using at91_pmc_base. And unless
>>>>>> COMMON_CLK_AT91 is defined we donot have at91_pmc_base. And
>>>>>> COMMON_CLK_AT91 is available with AT91 architecture.
>>>>>> Mention the dependency such that this driver builds with avr32 only if
>>>>>> OF is not enabled.
>>>>>>
>>>>>> Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
>>>>>> ---
>>>>>>
>>>>>> Tested build with at91_dt_defconfig and allmodconfig of avr32. Build log
>>>>>> at:
>>>>>> https://travis-ci.org/sudipm-mukherjee/parport/builds/81168845
>>>>>>
>>>>>> drivers/usb/gadget/udc/Kconfig | 2 +-
>>>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>>
>>>>>> diff --git a/drivers/usb/gadget/udc/Kconfig b/drivers/usb/gadget/udc/Kconfig
>>>>>> index 9a3a6b0..cdbff54 100644
>>>>>> --- a/drivers/usb/gadget/udc/Kconfig
>>>>>> +++ b/drivers/usb/gadget/udc/Kconfig
>>>>>> @@ -55,7 +55,7 @@ config USB_LPC32XX
>>>>>>
>>>>>> config USB_ATMEL_USBA
>>>>>> tristate "Atmel USBA"
>>>>>> - depends on AVR32 || ARCH_AT91
>>>>>> + depends on ((AVR32 && !OF) || ARCH_AT91)
>>>>>
>>>>> any chance you can add || COMPILE_TEST here ? I'd like to make
>>>>> sure this builds on my end too.
>>>> With "depends on ((AVR32 && !OF) || ARCH_AT91 || COMPILE_TEST)"
>>>> normal allmodconfig builiding for x86_64 failed with:
>>>>
>>>> drivers/usb/gadget/udc/atmel_usba_udc.c: In function âusba_startâ:
>>>> drivers/usb/gadget/udc/atmel_usba_udc.c:1783:25: error: âUSBA_ENABLE_MASKâ undeclared (first use in this function)
>>>> usba_writel(udc, CTRL, USBA_ENABLE_MASK);
>>>> ^
>>>> drivers/usb/gadget/udc/atmel_usba_udc.c: In function âusba_stopâ:
>>>> drivers/usb/gadget/udc/atmel_usba_udc.c:1800:25: error: âUSBA_DISABLE_MASKâ undeclared (first use in this function)
>>>> usba_writel(udc, CTRL, USBA_DISABLE_MASK);
>>>> ^
>>>>
>>>> Looks like USBA_DISABLE_MASK and USBA_ENABLE_MASK is defined under
>>>> #if defined(CONFIG_AVR32). :(
>>> Can i check anything else here? Like I said with COMPILE_TEST
>>> allmodconfig on x86_64 is failing.
>>
>> then keep it as is, but it would be nice to get that sorted out
>> so I can do compile tests on my end too.
>
> Maybe Nicolas can give some idea. Adding Nicolas Ferre to CC.

Hi,

I'm thinking about something like this:

8<----------------------------------------------------------
--- a/drivers/usb/gadget/udc/atmel_usba_udc.h
+++ b/drivers/usb/gadget/udc/atmel_usba_udc.h
@@ -46,10 +46,10 @@
#if defined(CONFIG_AVR32)
#define USBA_ENABLE_MASK USBA_EN_USBA
#define USBA_DISABLE_MASK 0
-#elif defined(CONFIG_ARCH_AT91)
+#else
#define USBA_ENABLE_MASK (USBA_EN_USBA | USBA_PULLD_DIS)
#define USBA_DISABLE_MASK USBA_DETACH
-#endif /* CONFIG_ARCH_AT91 */
+#endif

/* Bitfields in FNUM */
#define USBA_MICRO_FRAME_NUM_OFFSET 0

it can be sensible and will all to compile with the COMPILE_TEST directive.

Bye,
--
Nicolas Ferre
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/