Martyn Welch <martyn.we...@collabora.com> writes: > On Thu, 2024-05-23 at 15:08 -0500, Jon Humphreys wrote: >> Martyn Welch <martyn.we...@collabora.com> writes: >> >> > From: Sjoerd Simons <sjo...@collabora.com> >> > >> > Provide config fragments to enable USB host as well as USB gadget >> > and DFU >> > support for a53 and r5. This relevant fragment is included into the >> > am62x EVM a53 defconfig. For the r5, due to the smaller available >> > size, >> > the config fragment also disables support for persistent storage to >> > free >> > up space for USB support. This fragment needs to be included is DFU >> > booting is desired. >> > >> > The CONFIG_DFU_SF option is placed in the defconfig rather than the >> > fragment as this is known not to be supported on all boards that >> > can >> > support DFU. >> > >> > Signed-off-by: Sjoerd Simons <sjo...@collabora.com> >> > Signed-off-by: Martyn Welch <martyn.we...@collabora.com> >> > --- >> > Changes in v5: >> > - Switch to config fragment for a53 most DFU configuration >> > >> > Changes in v4: >> > - Move R5 dfu config to a config fragment rather then a full >> > defconfig >> > - Don't enable XHCI for the R5 SPL, unneeded >> > >> > Changes in v3: >> > - Run savedefconfig to adjust to more recent u-boot >> > >> > Changes in v2: >> > - Create a seperate defconfig for R5 >> > >> > >> > >> > configs/am62x_a53_usbdfu.config | 30 >> > ++++++++++++++++++++++++++++++ >> > configs/am62x_evm_a53_defconfig | 2 ++ >> > configs/am62x_r5_usbdfu.config | 28 ++++++++++++++++++++++++++++ >> > 3 files changed, 60 insertions(+) >> > create mode 100644 configs/am62x_a53_usbdfu.config >> > create mode 100644 configs/am62x_r5_usbdfu.config >> > >> > diff --git a/configs/am62x_a53_usbdfu.config >> > b/configs/am62x_a53_usbdfu.config >> > new file mode 100644 >> > index 0000000000..3a19cf2328 >> > --- /dev/null >> > +++ b/configs/am62x_a53_usbdfu.config >> > @@ -0,0 +1,29 @@ >> > +CONFIG_SYS_MALLOC_LEN=0x2000000 >> > +CONFIG_SPL_ENV_SUPPORT=y >> > +CONFIG_SPL_RAM_SUPPORT=y >> > +CONFIG_SPL_RAM_DEVICE=y >> > +CONFIG_SPL_USB_GADGET=y >> > +CONFIG_SPL_DFU=y >> > +CONFIG_CMD_DFU=y >> > +CONFIG_CMD_USB=y >> > +CONFIG_SYSCON=y >> > +CONFIG_SPL_SYSCON=y >> > +CONFIG_DFU_MMC=y >> > +CONFIG_DFU_RAM=y >> > +CONFIG_SYS_DFU_DATA_BUF_SIZE=0x5000 >> > +CONFIG_SYS_DFU_MAX_FILE_SIZE=0x800000 >> > +CONFIG_USB=y >> > +CONFIG_DM_USB_GADGET=y >> > +CONFIG_SPL_DM_USB_GADGET=y >> > +CONFIG_USB_XHCI_HCD=y >> > +CONFIG_USB_XHCI_DWC3=y >> > +CONFIG_USB_DWC3=y >> > +CONFIG_USB_DWC3_GENERIC=y >> > +CONFIG_SPL_USB_DWC3_GENERIC=y >> > +CONFIG_SPL_USB_DWC3_AM62=y >> > +CONFIG_USB_DWC3_AM62=y >> > +CONFIG_USB_GADGET=y >> > +CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments" >> > +CONFIG_USB_GADGET_VENDOR_NUM=0x0451 >> > +CONFIG_USB_GADGET_PRODUCT_NUM=0x6165 >> > +CONFIG_USB_GADGET_DOWNLOAD=y >> > diff --git a/configs/am62x_evm_a53_defconfig >> > b/configs/am62x_evm_a53_defconfig >> > index 6c708dcb05..16294a6a79 100644 >> > --- a/configs/am62x_evm_a53_defconfig >> > +++ b/configs/am62x_evm_a53_defconfig >> > @@ -68,6 +68,7 @@ CONFIG_SPL_OF_TRANSLATE=y >> > CONFIG_CLK=y >> > CONFIG_SPL_CLK=y >> > CONFIG_CLK_TI_SCI=y >> > +CONFIG_DFU_SF=y >> > CONFIG_DMA_CHANNELS=y >> > CONFIG_TI_K3_NAVSS_UDMA=y >> > CONFIG_TI_SCI_PROTOCOL=y >> > @@ -111,3 +112,5 @@ CONFIG_SPL_SYSRESET=y >> > CONFIG_SYSRESET_TI_SCI=y >> > CONFIG_FS_FAT_MAX_CLUSTSIZE=16384 >> > CONFIG_EFI_SET_TIME=y >> > + >> > +#include <configs/am62x_a53_usbdfu.config> >> > diff --git a/configs/am62x_r5_usbdfu.config >> > b/configs/am62x_r5_usbdfu.config >> > new file mode 100644 >> > index 0000000000..772bb2ab93 >> > --- /dev/null >> > +++ b/configs/am62x_r5_usbdfu.config >> > @@ -0,0 +1,28 @@ >> > +CONFIG_SPL_ENV_SUPPORT=y >> > +CONFIG_SYSCON=y >> > +CONFIG_SPL_SYSCON=y >> > +CONFIG_SYS_DFU_DATA_BUF_SIZE=0x5000 >> > +CONFIG_MISC=y >> > +CONFIG_USB=y >> > +CONFIG_DM_USB_GADGET=y >> > +CONFIG_SPL_DM_USB_GADGET=y >> > +CONFIG_USB_DWC3=y >> > +CONFIG_USB_DWC3_GENERIC=y >> > +CONFIG_SPL_USB_DWC3_GENERIC=y >> > +CONFIG_SPL_USB_DWC3_AM62=y >> > +CONFIG_USB_GADGET=y >> > +CONFIG_SPL_USB_GADGET=y >> > +CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments" >> > +CONFIG_USB_GADGET_VENDOR_NUM=0x0451 >> > +CONFIG_USB_GADGET_PRODUCT_NUM=0x6165 >> > +CONFIG_USB_GADGET_DOWNLOAD=y >> > +CONFIG_SPL_DFU=y >> > +# CONFIG_SPL_MMC is not set >> > +# CONFIG_SPL_FS_FAT is not set >> > +# CONFIG_SPL_LIBDISK_SUPPORT is not set >> > +# CONFIG_SPL_SPI is not set >> > +# CONFIG_SPL_SYS_MALLOC is not set >> > +# CONFIG_CMD_GPT is not set >> > +# CONFIG_CMD_MMC is not set >> > +# CONFIG_CMD_FAT is not set >> > +# CONFIG_MMC_SDHCI is not set >> > -- >> > 2.43.0 >> >> Hi all, it appears that this patch breaks OSPI DFU on the board. In >> particular, changing the CONFIG_SYS_DFU_DATA_BUF_SIZE seems to be the >> culprit. >> >> I see the error as a DFU timeout when applying capsules. >> >> SF: Detected s28hs512t with page size 256 Bytes, erase size 256 >> KiB, total 64 MiB >> ############jedec_spi_nor flash@0: flash operation timed out >> #DFU write failed >> > > I'm not seeing this failure using the `-next` branch from yesterday > (2f96033923). > > I've attempted to use both the `uboot-capsule.bin` produced with and > without the DFU config enabled whilst booting the SK-AM62 via DFU and > from an SD card. I seem to be consistently getting the following: > > => ext2ls mmc 1:1 > <DIR> 4096 . > <DIR> 4096 .. > <DIR> 16384 lost+found > 1132791 uboot-capsule.bin > => load mmc 1:1 ${loadaddr} /uboot-capsule.bin > 1132791 bytes read in 57 ms (19 MiB/s) > => efidebug capsule update ${loadaddr} > ** File not found ubootefi.var ** > Failed to load EFI variables > ** Unable to write file ubootefi.var ** > Failed to persist EFI variables > ** Unable to write file ubootefi.var ** > Failed to persist EFI variables > ** Unable to write file ubootefi.var ** > Failed to persist EFI variables > ** Unable to write file ubootefi.var ** > Failed to persist EFI variables > ** Unable to write file ubootefi.var ** > Failed to persist EFI variables > SF: Detected s28hs512t with page size 256 Bytes, erase size 256 KiB, > total 64 Mi > B > ######################################################## > ** Unable to write file ubootefi.var ** > Failed to persist EFI variables > => > > TBH, I'm not sure if this is good or bad at this point, but I'm not > seeing the error that you reported. As can be seen above, I don't have > a `ubootefi.var` file, but then I don't boot using EFI mechanisms, so I > guess that's expected? > > But then, the commands I've used above aren't applying the capsule > either right? > > Martyn > >> Jon
Hi Martyn, you are not seeing the error. I am on vacation until the 10th so I cannot follow up. When I return, I'll see if I can reproduce from the exact sha you listed and we can go from there. Thanks Jon