[U-Boot] [PATCH 4/9] arm:goni:dfu Add support for DFU to Goni target

Mateusz Zalega m.zalega at samsung.com
Mon Jan 13 15:45:01 CET 2014


On 01/10/14 05:55, Jaehoon Chung wrote:
> On 01/09/2014 11:31 PM, Mateusz Zalega wrote:
>> Proper adjustment for supporting DFU at GONI target has been made.
>> The s5p_goni.h file has been updated. Moreover, the code for low level
>> USB initialization has been added to Goni board code.
>>
>> The malloc pool has been enlarged in order to support larger buffer
>> sizes needed by DFU implementation.
>>
>> Change-Id: I7812f395a3ee3660cec31f4d8c954057c0149863
>> Signed-off-by: Arkadiusz Wlodarczyk <a.wlodarczyk at samsung.com>
>> Signed-off-by: Kyungmin Park <kyungmin.park at samsung.com>
>> Signed-off-by: Mateusz Zalega <m.zalega at samsung.com>
>> Tested-by: Arkadiusz Wlodarczyk <a.wlodarczyk at samsung.com>
>> Tested-by: Mateusz Zalega <m.zalega at samsung.com>
>> Cc: Minkyu Kang <mk7.kang at samsung.com>
>> ---
>>  board/samsung/goni/goni.c  | 10 +++++++++
>>  include/configs/s5p_goni.h | 54 ++++++++++++++++++++++++++++++++++++----------
>>  2 files changed, 53 insertions(+), 11 deletions(-)
>>
>> diff --git a/board/samsung/goni/goni.c b/board/samsung/goni/goni.c
>> index 366f648..5498daa 100644
>> --- a/board/samsung/goni/goni.c
>> +++ b/board/samsung/goni/goni.c
>> @@ -13,6 +13,9 @@
>>  #include <usb/s3c_udc.h>
>>  #include <asm/arch/cpu.h>
>>  #include <power/max8998_pmic.h>
>> +#include <usb.h>
>> +#include <usb_mass_storage.h>
>> +
>>  DECLARE_GLOBAL_DATA_PTR;
>>  
>>  static struct s5pc110_gpio *s5pc110_gpio;
>> @@ -172,4 +175,11 @@ struct s3c_plat_otg_data s5pc110_otg_data = {
>>  	.regs_otg = S5PC110_OTG_BASE,
>>  	.usb_phy_ctrl = S5PC110_USB_PHY_CONTROL,
>>  };
>> +
>> +int board_usb_init(int index, enum usb_init_type init)
>> +{
>> +	debug("USB_udc_probe\n");
>> +	s3c_udc_probe(&s5pc110_otg_data);
>> +	return 0;
> Always return 0? return s3c_udc_probe(&s5pc110_otg_data);

ACK, will fix.

>> +}
>>  #endif
>> diff --git a/include/configs/s5p_goni.h b/include/configs/s5p_goni.h
>> index 1d2dcc0..24a0fcc 100644
>> --- a/include/configs/s5p_goni.h
>> +++ b/include/configs/s5p_goni.h
>> @@ -39,7 +39,7 @@
>>  #define CONFIG_CMDLINE_EDITING
>>  
>>  /* Size of malloc() pool.*/
>> -#define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + SZ_1M)
>> +#define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + 80 * SZ_1M)
>>  
>>  /*
>>   * select serial console configuration
>> @@ -70,14 +70,18 @@
>>  #define CONFIG_CMD_CACHE
>>  #define CONFIG_CMD_REGINFO
>>  #define CONFIG_CMD_ONENAND
>> -#define CONFIG_CMD_MTDPARTS
>>  #define CONFIG_CMD_MMC
>> +#define CONFIG_CMD_DFU
>>  
>> -#define CONFIG_BOOTDELAY		1
>> -#define CONFIG_ZERO_BOOTDELAY_CHECK
>> +/* USB Composite download gadget - g_dnl */
>> +#define CONFIG_USBDOWNLOAD_GADGET
>> +#define CONFIG_DFU_FUNCTION
>> +#define CONFIG_DFU_MMC
>>  
>> -#define CONFIG_MTD_DEVICE
>> -#define CONFIG_MTD_PARTITIONS
>> +/* USB Samsung's IDs */
>> +#define CONFIG_G_DNL_VENDOR_NUM 0x04E8
>> +#define CONFIG_G_DNL_PRODUCT_NUM 0x6601
>> +#define CONFIG_G_DNL_MANUFACTURER "Samsung"
>>  
>>  /* Actual modem binary size is 16MiB. Add 2MiB for bad block handling */
>>  #define MTDIDS_DEFAULT		"onenand0=samsung-onenand"
>> @@ -90,7 +94,34 @@
>>  				",12m(modem)"\
>>  				",60m(qboot)\0"
>>  
>> -#define NORMAL_MTDPARTS_DEFAULT MTDPARTS_DEFAULT
>> +#define CONFIG_BOOTDELAY		1
>> +#define CONFIG_ZERO_BOOTDELAY_CHECK
>> +
>> +/* partitions definitions */
>> +#define PARTS_CSA			"csa-mmc"
>> +#define PARTS_BOOTLOADER	"u-boot"
>> +#define PARTS_BOOT			"boot"
>> +#define PARTS_ROOT			"platform"
>> +#define PARTS_DATA			"data"
>> +#define PARTS_CSC			"csc"
>> +#define PARTS_UMS			"ums"
>> +
>> +#define CONFIG_DFU_ALT \
>> +	"u-boot raw 0x80 0x400;" \
>> +	"uImage ext4 0 2;" \
>> +	"exynos3-goni.dtb ext4 0 2;" \
> exynos3-goni.dtb?

Correct. It's a DFU entry for the relevant devicetree blob.

(...)

Regards,
-- 
Mateusz Zalega
Samsung R&D Institute Poland


More information about the U-Boot mailing list