Hi Eugen, Zixun,

On lun., mars 24, 2025 at 11:23, Eugen Hristev <eugen.hris...@linaro.org> wrote:

> On 3/22/25 22:56, Zixun LI wrote:
>> Add compatible "microchip,sam9x60-udc" and device tree binding.
>> Compared to SAM9X5 the only difference is the DPRAM memory from the
>> USB High Speed Device Port (UDPHS) hardware block was increased,
>> so we can reuse the same endpoint data.
>> 
>> Tested on SAM9X60-Curiosity board with nfs and ums commands.
>
> Why no patch to enable it on the board as well then ?

Looking at configs/at91sam9x5ek_mmc_defconfig, I don't see
CMD_USB_MASS_STORAGE=y in there as well.

Could you elaborate on why you'd want this to be enabled as part of the
driver series?

On one hand, users has more built-in commands available and it eases the
testing. On the other hand, some users might not be interested in having
this by default. Enabling it via menuconfig is quite easy.

>
>> 
>> Signed-off-by: Zixun LI <ad...@hifiphile.com>
>> ---
>>  arch/arm/dts/sam9x60.dtsi                        | 14 ++++++++++++++
>>  arch/arm/mach-at91/include/mach/atmel_usba_udc.h |  2 +-
>>  drivers/usb/gadget/atmel_usba_udc.c              |  1 +
>
> Device tree and driver changes should be separate commits.

I agree with Eugen. Could you please split this out, Zixun?

>
>
>>  3 files changed, 16 insertions(+), 1 deletion(-)
>> 
>> diff --git a/arch/arm/dts/sam9x60.dtsi b/arch/arm/dts/sam9x60.dtsi
>> index 3b684fc63d5..96a8faf09b3 100644
>> --- a/arch/arm/dts/sam9x60.dtsi
>> +++ b/arch/arm/dts/sam9x60.dtsi
>> @@ -69,6 +69,20 @@
>>              #size-cells = <1>;
>>              ranges;
>>  
>> +            usb0: gadget@500000 {
>> +                    compatible = "microchip,sam9x60-udc";
>> +                    reg = <0x500000 0x100000>,
>> +                            <0xf803c000 0x400>;
>> +                    #address-cells = <1>;
>> +                    #size-cells = <0>;
> Can you please reorder these to have them in the same order as in Linux
> DTS ? (easier to diff...)

Agreed with Eugen.

>
>> +                    interrupts = <23 IRQ_TYPE_LEVEL_HIGH 2>;
>> +                    clocks = <&pmc PMC_TYPE_PERIPHERAL 23>, <&pmc 
>> PMC_TYPE_CORE 8>;
>> +                    clock-names = "pclk", "hclk";
>> +                    assigned-clocks = <&pmc PMC_TYPE_CORE 8>;
>> +                    assigned-clock-rates = <480000000>;
>> +                    status = "disabled";
>> +            };
>> +
>>              usb1: usb@600000 {
>>                      compatible = "atmel,at91rm9200-ohci", "usb-ohci";
>>                      reg = <0x00600000 0x100000>;
>> diff --git a/arch/arm/mach-at91/include/mach/atmel_usba_udc.h 
>> b/arch/arm/mach-at91/include/mach/atmel_usba_udc.h
>> index 835b47d91ba..23c71985c90 100644
>> --- a/arch/arm/mach-at91/include/mach/atmel_usba_udc.h
>> +++ b/arch/arm/mach-at91/include/mach/atmel_usba_udc.h
>> @@ -20,7 +20,7 @@
>>      }
>>  
>>  #if defined(CONFIG_AT91SAM9G45) || defined(CONFIG_AT91SAM9M10G45) || \
>> -    defined(CONFIG_AT91SAM9X5)
>> +    defined(CONFIG_AT91SAM9X5) || defined(CONFIG_SAM9X60)
>>  static struct usba_ep_data usba_udc_ep[] = {
>>      EP("ep0", 0, 64, 1, 0, 0),
>>      EP("ep1", 1, 1024, 2, 1, 1),
>> diff --git a/drivers/usb/gadget/atmel_usba_udc.c 
>> b/drivers/usb/gadget/atmel_usba_udc.c
>> index a77037a7094..f9326f0a7e7 100644
>> --- a/drivers/usb/gadget/atmel_usba_udc.c
>> +++ b/drivers/usb/gadget/atmel_usba_udc.c
>> @@ -1443,6 +1443,7 @@ static const struct udevice_id usba_udc_ids[] = {
>>      { .compatible = "atmel,at91sam9rl-udc" },
>>      { .compatible = "atmel,at91sam9g45-udc" },
>>      { .compatible = "atmel,sama5d3-udc" },
>> +    { .compatible = "microchip,sam9x60-udc" },
>>      {}
>>  };
>>  

Reply via email to