All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH V7 0/4] introduce Rockchip rockusb
@ 2017-05-25  8:50 Eddie Cai
  2017-05-25  8:50 ` [U-Boot] [PATCH V7 1/4] usb: rockchip: add the rockusb gadget Eddie Cai
                   ` (3 more replies)
  0 siblings, 4 replies; 22+ messages in thread
From: Eddie Cai @ 2017-05-25  8:50 UTC (permalink / raw)
  To: u-boot

Changes in v7:
-use imply in the Kconfig to enable rockusb

Changes in v6:
-enable rockusb in defconfig
-move some data to f_rockusb structure

Changes in v5:
-fix build error when build other board
-fix checkpatch error

Changes in v4:
-use enum instead of macro define
-move some structure define and macro to f_rockusb.h
-add some function comment as Simon required
-address other comment from Simon
-fix build error as Lukasz point out

Changes in v3:
-switch back to use g_dnl code
-address comment from Lukasz and Simon
-fix checkpatch error

Changes in v2:
-switch to use usb masstorage framework
-add readme for rockusb

Eddie Cai (4):
  usb: rockchip: add the rockusb gadget
  usb: rockchip: add rockusb command
  rockchip:usb: add a simple readme for rockusb
  rockchip: rk3288: enable rockusb support on rk3288 based device

 arch/arm/include/asm/arch-rockchip/f_rockusb.h | 132 +++++
 arch/arm/mach-rockchip/Kconfig                 |   2 +
 cmd/Kconfig                                    |   9 +
 cmd/Makefile                                   |   1 +
 cmd/rockusb.c                                  |  74 +++
 configs/evb-rk3288_defconfig                   |   9 +
 configs/fennec-rk3288_defconfig                |   6 +
 configs/firefly-rk3288_defconfig               |   6 +
 configs/miqi-rk3288_defconfig                  |   6 +
 configs/popmetal-rk3288_defconfig              |   6 +
 configs/tinker-rk3288_defconfig                |   6 +
 doc/README.rockusb                             |  51 ++
 drivers/usb/gadget/Kconfig                     |   8 +
 drivers/usb/gadget/Makefile                    |   1 +
 drivers/usb/gadget/f_rockusb.c                 | 691 +++++++++++++++++++++++++
 include/configs/rk3288_common.h                |   7 -
 16 files changed, 1008 insertions(+), 7 deletions(-)
 create mode 100644 arch/arm/include/asm/arch-rockchip/f_rockusb.h
 create mode 100644 cmd/rockusb.c
 create mode 100644 doc/README.rockusb
 create mode 100644 drivers/usb/gadget/f_rockusb.c

-- 
1.9.1

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 1/4] usb: rockchip: add the rockusb gadget
  2017-05-25  8:50 [U-Boot] [PATCH V7 0/4] introduce Rockchip rockusb Eddie Cai
@ 2017-05-25  8:50 ` Eddie Cai
  2017-05-25  8:50 ` [U-Boot] [PATCH V7 2/4] usb: rockchip: add rockusb command Eddie Cai
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 22+ messages in thread
From: Eddie Cai @ 2017-05-25  8:50 UTC (permalink / raw)
  To: u-boot

this patch implement rockusb protocol on the device side. this is based on USB
download gadget infrastructure. the rockusb function implements the rd, wl, rid
commands. it can work with rkdeveloptool

Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>

Changes in v7:
-none

Changes in v6:
-move some data to f_rockusb structure

Changes in v5:
-fix build error when build non-rockchip board
-fix checkpatch error

Changes in v4:
-use enum instead of macro define
-move some structure define and macro to f_rockusb.h
-add some function comment as Simon required
-address other comment from Simon
-fix build error as Lukasz point out

Changes in v3:
-split the macro to f_rockusb.h
-use ALLOC_CACHE_ALIGN_BUFFER to define cache safe struct inside the function.
-fix checkpatch error

---
 arch/arm/include/asm/arch-rockchip/f_rockusb.h | 132 +++++
 drivers/usb/gadget/Kconfig                     |   8 +
 drivers/usb/gadget/Makefile                    |   1 +
 drivers/usb/gadget/f_rockusb.c                 | 691 +++++++++++++++++++++++++
 4 files changed, 832 insertions(+)
 create mode 100644 arch/arm/include/asm/arch-rockchip/f_rockusb.h
 create mode 100644 drivers/usb/gadget/f_rockusb.c

diff --git a/arch/arm/include/asm/arch-rockchip/f_rockusb.h b/arch/arm/include/asm/arch-rockchip/f_rockusb.h
new file mode 100644
index 0000000..c207a78
--- /dev/null
+++ b/arch/arm/include/asm/arch-rockchip/f_rockusb.h
@@ -0,0 +1,132 @@
+/*
+ * (C) Copyright 2017
+ *
+ * Eddie Cai <eddie.cai.linux@gmail.com>
+ *
+ * SPDX-License-Identifier:	GPL-2.0+
+ */
+
+#ifndef _F_ROCKUSB_H_
+#define _F_ROCKUSB_H_
+#include <blk.h>
+
+#define ROCKUSB_VERSION		"0.1"
+
+#define ROCKUSB_INTERFACE_CLASS	0xff
+#define ROCKUSB_INTERFACE_SUB_CLASS	0x06
+#define ROCKUSB_INTERFACE_PROTOCOL	0x05
+
+#define RX_ENDPOINT_MAXIMUM_PACKET_SIZE_2_0  (0x0200)
+#define RX_ENDPOINT_MAXIMUM_PACKET_SIZE_1_1  (0x0040)
+#define TX_ENDPOINT_MAXIMUM_PACKET_SIZE      (0x0040)
+
+#define EP_BUFFER_SIZE			4096
+/*
+ * EP_BUFFER_SIZE must always be an integral multiple of maxpacket size
+ * (64 or 512 or 1024), else we break on certain controllers like DWC3
+ * that expect bulk OUT requests to be divisible by maxpacket size.
+ */
+
+#define CONFIG_ROCKUSB_BUF_ADDR		CONFIG_SYS_LOAD_ADDR
+#define CONFIG_ROCKUSB_BUF_SIZE		0x08000000
+
+#define RKUSB_STATUS_IDLE			0
+#define RKUSB_STATUS_CMD			1
+#define RKUSB_STATUS_RXDATA			2
+#define RKUSB_STATUS_TXDATA			3
+#define RKUSB_STATUS_CSW			4
+#define RKUSB_STATUS_RXDATA_PREPARE		5
+#define RKUSB_STATUS_TXDATA_PREPARE		6
+
+enum rkusb_command {
+K_FW_TEST_UNIT_READY	= 0x00,
+K_FW_READ_FLASH_ID = 0x01,
+K_FW_SET_DEVICE_ID = 0x02,
+K_FW_TEST_BAD_BLOCK = 0x03,
+K_FW_READ_10 = 0x04,
+K_FW_WRITE_10 = 0x05,
+K_FW_ERASE_10 = 0x06,
+K_FW_WRITE_SPARE = 0x07,
+K_FW_READ_SPARE = 0x08,
+
+K_FW_ERASE_10_FORCE = 0x0b,
+K_FW_GET_VERSION = 0x0c,
+
+K_FW_LBA_READ_10 = 0x14,
+K_FW_LBA_WRITE_10 = 0x15,
+K_FW_ERASE_SYS_DISK = 0x16,
+K_FW_SDRAM_READ_10 = 0x17,
+K_FW_SDRAM_WRITE_10 = 0x18,
+K_FW_SDRAM_EXECUTE = 0x19,
+K_FW_READ_FLASH_INFO = 0x1A,
+K_FW_GET_CHIP_VER = 0x1B,
+K_FW_LOW_FORMAT = 0x1C,
+K_FW_SET_RESET_FLAG = 0x1E,
+K_FW_SPI_READ_10 = 0x21,
+K_FW_SPI_WRITE_10 = 0x22,
+
+K_FW_SESSION = 0X30,
+K_FW_RESET = 0xff,
+};
+
+#define CBW_DIRECTION_OUT		0x00
+#define CBW_DIRECTION_IN		0x80
+
+struct cmd_dispatch_info {
+	enum rkusb_command cmd;
+	/* call back function to handle rockusb command */
+	void (*cb)(struct usb_ep *ep, struct usb_request *req);
+};
+
+/* Bulk-only data structures */
+
+/* Command Block Wrapper */
+struct fsg_bulk_cb_wrap {
+	__le32  signature;              /* Contains 'USBC' */
+	u32     tag;                    /* Unique per command id */
+	__le32  data_transfer_length;   /* Size of the data */
+	u8      flags;                  /* Direction in bit 7 */
+	u8      lun;                    /* lun (normally 0) */
+	u8      length;                 /* Of the CDB, <= MAX_COMMAND_SIZE */
+	u8      CDB[16];                /* Command Data Block */
+};
+
+#define USB_BULK_CB_WRAP_LEN    31
+#define USB_BULK_CB_SIG         0x43425355      /* Spells out USBC */
+#define USB_BULK_IN_FLAG        0x80
+
+/* Command status Wrapper */
+struct bulk_cs_wrap {
+	__le32  signature;              /* Should = 'USBS' */
+	u32     tag;                    /* Same as original command */
+	__le32  residue;                /* Amount not transferred */
+	u8      status;                 /* See below */
+};
+
+#define USB_BULK_CS_WRAP_LEN    13
+#define USB_BULK_CS_SIG         0x53425355      /* Spells out 'USBS' */
+#define USB_STATUS_PASS         0
+#define USB_STATUS_FAIL         1
+#define USB_STATUS_PHASE_ERROR  2
+
+#define CSW_GOOD                0x00
+#define CSW_FAIL                0x01
+
+struct f_rockusb {
+	struct usb_function usb_function;
+	struct usb_ep *in_ep, *out_ep;
+	struct usb_request *in_req, *out_req;
+	char *rockusb_dev_type;
+	unsigned int rockusb_dev_index;
+	unsigned int download_tag;
+	unsigned int download_lba;
+	unsigned int download_size;
+	unsigned int download_bytes;
+	struct blk_desc *download_desc;
+	int reboot_flag;
+};
+
+/* init rockusb device, tell rockusb which device you want to read/write*/
+void rockusb_dev_init(char *dev_type, int dev_index);
+#endif /* _F_ROCKUSB_H_ */
+
diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig
index 261ed12..d61d9ad 100644
--- a/drivers/usb/gadget/Kconfig
+++ b/drivers/usb/gadget/Kconfig
@@ -112,6 +112,14 @@ config G_DNL_VENDOR_NUM
 config G_DNL_PRODUCT_NUM
 	hex "Product ID of USB device"
 
+config USB_FUNCTION_ROCKUSB
+	bool "Enable USB rockusb gadget"
+	help
+	  Rockusb protocol is widely used by Rockchip SoC based devices. It can
+	  read/write info, image to/from devices. This enables the USB part of
+	  the rockusb gadget.for more detail about Rockusb protocol, please see
+	  doc/README.rockusb
+
 config USBNET_DEVADDR
 	string "USB Gadget Ethernet device mac address"
 	default "de:ad:be:ef:00:01"
diff --git a/drivers/usb/gadget/Makefile b/drivers/usb/gadget/Makefile
index 0fbbb7c..0eb27a3 100644
--- a/drivers/usb/gadget/Makefile
+++ b/drivers/usb/gadget/Makefile
@@ -28,6 +28,7 @@ obj-$(CONFIG_USB_FUNCTION_THOR) += f_thor.o
 obj-$(CONFIG_USB_FUNCTION_DFU) += f_dfu.o
 obj-$(CONFIG_USB_FUNCTION_MASS_STORAGE) += f_mass_storage.o
 obj-$(CONFIG_USB_FUNCTION_FASTBOOT) += f_fastboot.o
+obj-$(CONFIG_USB_FUNCTION_ROCKUSB) += f_rockusb.o
 endif
 endif
 ifdef CONFIG_USB_ETHER
diff --git a/drivers/usb/gadget/f_rockusb.c b/drivers/usb/gadget/f_rockusb.c
new file mode 100644
index 0000000..efd110b
--- /dev/null
+++ b/drivers/usb/gadget/f_rockusb.c
@@ -0,0 +1,691 @@
+/*
+ * (C) Copyright 2017
+ *
+ * Eddie Cai <eddie.cai.linux@gmail.com>
+ *
+ * SPDX-License-Identifier:	GPL-2.0+
+ */
+
+#include <config.h>
+#include <common.h>
+#include <errno.h>
+#include <malloc.h>
+#include <memalign.h>
+#include <linux/usb/ch9.h>
+#include <linux/usb/gadget.h>
+#include <linux/usb/composite.h>
+#include <linux/compiler.h>
+#include <version.h>
+#include <g_dnl.h>
+#include <asm/arch/f_rockusb.h>
+
+static inline struct f_rockusb *func_to_rockusb(struct usb_function *f)
+{
+	return container_of(f, struct f_rockusb, usb_function);
+}
+
+static struct usb_endpoint_descriptor fs_ep_in = {
+	.bLength            = USB_DT_ENDPOINT_SIZE,
+	.bDescriptorType    = USB_DT_ENDPOINT,
+	.bEndpointAddress   = USB_DIR_IN,
+	.bmAttributes       = USB_ENDPOINT_XFER_BULK,
+	.wMaxPacketSize     = cpu_to_le16(64),
+};
+
+static struct usb_endpoint_descriptor fs_ep_out = {
+	.bLength		= USB_DT_ENDPOINT_SIZE,
+	.bDescriptorType	= USB_DT_ENDPOINT,
+	.bEndpointAddress	= USB_DIR_OUT,
+	.bmAttributes		= USB_ENDPOINT_XFER_BULK,
+	.wMaxPacketSize		= cpu_to_le16(64),
+};
+
+static struct usb_endpoint_descriptor hs_ep_in = {
+	.bLength		= USB_DT_ENDPOINT_SIZE,
+	.bDescriptorType	= USB_DT_ENDPOINT,
+	.bEndpointAddress	= USB_DIR_IN,
+	.bmAttributes		= USB_ENDPOINT_XFER_BULK,
+	.wMaxPacketSize		= cpu_to_le16(512),
+};
+
+static struct usb_endpoint_descriptor hs_ep_out = {
+	.bLength		= USB_DT_ENDPOINT_SIZE,
+	.bDescriptorType	= USB_DT_ENDPOINT,
+	.bEndpointAddress	= USB_DIR_OUT,
+	.bmAttributes		= USB_ENDPOINT_XFER_BULK,
+	.wMaxPacketSize		= cpu_to_le16(512),
+};
+
+static struct usb_interface_descriptor interface_desc = {
+	.bLength		= USB_DT_INTERFACE_SIZE,
+	.bDescriptorType	= USB_DT_INTERFACE,
+	.bInterfaceNumber	= 0x00,
+	.bAlternateSetting	= 0x00,
+	.bNumEndpoints		= 0x02,
+	.bInterfaceClass	= ROCKUSB_INTERFACE_CLASS,
+	.bInterfaceSubClass	= ROCKUSB_INTERFACE_SUB_CLASS,
+	.bInterfaceProtocol	= ROCKUSB_INTERFACE_PROTOCOL,
+};
+
+static struct usb_descriptor_header *rkusb_fs_function[] = {
+	(struct usb_descriptor_header *)&interface_desc,
+	(struct usb_descriptor_header *)&fs_ep_in,
+	(struct usb_descriptor_header *)&fs_ep_out,
+};
+
+static struct usb_descriptor_header *rkusb_hs_function[] = {
+	(struct usb_descriptor_header *)&interface_desc,
+	(struct usb_descriptor_header *)&hs_ep_in,
+	(struct usb_descriptor_header *)&hs_ep_out,
+	NULL,
+};
+
+static const char rkusb_name[] = "Rockchip Rockusb";
+
+static struct usb_string rkusb_string_defs[] = {
+	[0].s = rkusb_name,
+	{  }			/* end of list */
+};
+
+static struct usb_gadget_strings stringtab_rkusb = {
+	.language	= 0x0409,	/* en-us */
+	.strings	= rkusb_string_defs,
+};
+
+static struct usb_gadget_strings *rkusb_strings[] = {
+	&stringtab_rkusb,
+	NULL,
+};
+
+static struct f_rockusb *rockusb_func;
+static void rx_handler_command(struct usb_ep *ep, struct usb_request *req);
+static int rockusb_tx_write_csw(u32 tag, int residue, u8 status, int size);
+
+struct f_rockusb *get_rkusb(void)
+{
+	struct f_rockusb *f_rkusb = rockusb_func;
+	if (!f_rkusb) {
+		f_rkusb = memalign(CONFIG_SYS_CACHELINE_SIZE, sizeof(*f_rkusb));
+		if (!f_rkusb)
+			return 0;
+
+		rockusb_func = f_rkusb;
+		memset(f_rkusb, 0, sizeof(*f_rkusb));
+	}
+	return f_rkusb;
+}
+
+static struct usb_endpoint_descriptor *rkusb_ep_desc(
+struct usb_gadget *g,
+struct usb_endpoint_descriptor *fs,
+struct usb_endpoint_descriptor *hs)
+{
+	if (gadget_is_dualspeed(g) && g->speed == USB_SPEED_HIGH)
+		return hs;
+	return fs;
+}
+
+static void rockusb_complete(struct usb_ep *ep, struct usb_request *req)
+{
+	int status = req->status;
+	if (!status)
+		return;
+	debug("status: %d ep '%s' trans: %d\n", status, ep->name, req->actual);
+}
+
+/* config the rockusb device*/
+static int rockusb_bind(struct usb_configuration *c, struct usb_function *f)
+{
+	int id;
+	struct usb_gadget *gadget = c->cdev->gadget;
+	struct f_rockusb *f_rkusb = func_to_rockusb(f);
+	const char *s;
+
+	id = usb_interface_id(c, f);
+	if (id < 0)
+		return id;
+	interface_desc.bInterfaceNumber = id;
+
+	id = usb_string_id(c->cdev);
+	if (id < 0)
+		return id;
+
+	rkusb_string_defs[0].id = id;
+	interface_desc.iInterface = id;
+
+	f_rkusb->in_ep = usb_ep_autoconfig(gadget, &fs_ep_in);
+	if (!f_rkusb->in_ep)
+		return -ENODEV;
+	f_rkusb->in_ep->driver_data = c->cdev;
+
+	f_rkusb->out_ep = usb_ep_autoconfig(gadget, &fs_ep_out);
+	if (!f_rkusb->out_ep)
+		return -ENODEV;
+	f_rkusb->out_ep->driver_data = c->cdev;
+
+	f->descriptors = rkusb_fs_function;
+
+	if (gadget_is_dualspeed(gadget)) {
+		hs_ep_in.bEndpointAddress = fs_ep_in.bEndpointAddress;
+		hs_ep_out.bEndpointAddress = fs_ep_out.bEndpointAddress;
+		f->hs_descriptors = rkusb_hs_function;
+	}
+
+	s = getenv("serial#");
+	if (s)
+		g_dnl_set_serialnumber((char *)s);
+
+	return 0;
+}
+
+static void rockusb_unbind(struct usb_configuration *c, struct usb_function *f)
+{
+	/* clear the configuration*/
+	memset(rockusb_func, 0, sizeof(*rockusb_func));
+}
+
+static void rockusb_disable(struct usb_function *f)
+{
+	struct f_rockusb *f_rkusb = func_to_rockusb(f);
+
+	usb_ep_disable(f_rkusb->out_ep);
+	usb_ep_disable(f_rkusb->in_ep);
+
+	if (f_rkusb->out_req) {
+		free(f_rkusb->out_req->buf);
+		usb_ep_free_request(f_rkusb->out_ep, f_rkusb->out_req);
+		f_rkusb->out_req = NULL;
+	}
+	if (f_rkusb->in_req) {
+		free(f_rkusb->in_req->buf);
+		usb_ep_free_request(f_rkusb->in_ep, f_rkusb->in_req);
+		f_rkusb->in_req = NULL;
+	}
+}
+
+static struct usb_request *rockusb_start_ep(struct usb_ep *ep)
+{
+	struct usb_request *req;
+
+	req = usb_ep_alloc_request(ep, 0);
+	if (!req)
+		return NULL;
+
+	req->length = EP_BUFFER_SIZE;
+	req->buf = memalign(CONFIG_SYS_CACHELINE_SIZE, EP_BUFFER_SIZE);
+	if (!req->buf) {
+		usb_ep_free_request(ep, req);
+		return NULL;
+	}
+	memset(req->buf, 0, req->length);
+
+	return req;
+}
+
+static int rockusb_set_alt(struct usb_function *f,
+			    unsigned interface, unsigned alt)
+{
+	int ret;
+	struct usb_composite_dev *cdev = f->config->cdev;
+	struct usb_gadget *gadget = cdev->gadget;
+	struct f_rockusb *f_rkusb = func_to_rockusb(f);
+	const struct usb_endpoint_descriptor *d;
+
+	debug("%s: func: %s intf: %d alt: %d\n",
+	      __func__, f->name, interface, alt);
+
+	d = rkusb_ep_desc(gadget, &fs_ep_out, &hs_ep_out);
+	ret = usb_ep_enable(f_rkusb->out_ep, d);
+	if (ret) {
+		printf("failed to enable out ep\n");
+		return ret;
+	}
+
+	f_rkusb->out_req = rockusb_start_ep(f_rkusb->out_ep);
+	if (!f_rkusb->out_req) {
+		printf("failed to alloc out req\n");
+		ret = -EINVAL;
+		goto err;
+	}
+	f_rkusb->out_req->complete = rx_handler_command;
+
+	d = rkusb_ep_desc(gadget, &fs_ep_in, &hs_ep_in);
+	ret = usb_ep_enable(f_rkusb->in_ep, d);
+	if (ret) {
+		printf("failed to enable in ep\n");
+		goto err;
+	}
+
+	f_rkusb->in_req = rockusb_start_ep(f_rkusb->in_ep);
+	if (!f_rkusb->in_req) {
+		printf("failed alloc req in\n");
+		ret = -EINVAL;
+		goto err;
+	}
+	f_rkusb->in_req->complete = rockusb_complete;
+
+	ret = usb_ep_queue(f_rkusb->out_ep, f_rkusb->out_req, 0);
+	if (ret)
+		goto err;
+
+	return 0;
+err:
+	rockusb_disable(f);
+	return ret;
+}
+
+static int rockusb_add(struct usb_configuration *c)
+{
+	struct f_rockusb *f_rkusb = get_rkusb();
+	int status;
+
+	debug("%s: cdev: 0x%p\n", __func__, c->cdev);
+
+	f_rkusb->usb_function.name = "f_rockusb";
+	f_rkusb->usb_function.bind = rockusb_bind;
+	f_rkusb->usb_function.unbind = rockusb_unbind;
+	f_rkusb->usb_function.set_alt = rockusb_set_alt;
+	f_rkusb->usb_function.disable = rockusb_disable;
+	f_rkusb->usb_function.strings = rkusb_strings;
+
+	status = usb_add_function(c, &f_rkusb->usb_function);
+	if (status) {
+		free(f_rkusb);
+		rockusb_func = f_rkusb;
+	}
+	return status;
+}
+
+void rockusb_dev_init(char *dev_type, int dev_index)
+{
+	struct f_rockusb *f_rkusb = get_rkusb();
+	f_rkusb->rockusb_dev_type = dev_type;
+	f_rkusb->rockusb_dev_index = dev_index;
+}
+
+DECLARE_GADGET_BIND_CALLBACK(usb_dnl_rockusb, rockusb_add);
+
+static int rockusb_tx_write(const char *buffer, unsigned int buffer_size)
+{
+	struct usb_request *in_req = rockusb_func->in_req;
+	int ret;
+
+	memcpy(in_req->buf, buffer, buffer_size);
+	in_req->length = buffer_size;
+	usb_ep_dequeue(rockusb_func->in_ep, in_req);
+	ret = usb_ep_queue(rockusb_func->in_ep, in_req, 0);
+	if (ret)
+		printf("Error %d on queue\n", ret);
+	return 0;
+}
+
+static int rockusb_tx_write_str(const char *buffer)
+{
+	return rockusb_tx_write(buffer, strlen(buffer));
+}
+
+#ifdef DEBUG
+static void printcbw(char *buf)
+{
+	ALLOC_CACHE_ALIGN_BUFFER(struct fsg_bulk_cb_wrap, cbw,
+				 sizeof(struct fsg_bulk_cb_wrap));
+
+	memcpy((char *)cbw, buf, USB_BULK_CB_WRAP_LEN);
+
+	debug("cbw: signature:%x\n", cbw->signature);
+	debug("cbw: tag=%x\n", cbw->tag);
+	debug("cbw: data_transfer_length=%d\n", cbw->data_transfer_length);
+	debug("cbw: flags=%x\n", cbw->flags);
+	debug("cbw: lun=%d\n", cbw->lun);
+	debug("cbw: length=%d\n", cbw->length);
+	debug("cbw: ucOperCode=%x\n", cbw->CDB[0]);
+	debug("cbw: ucReserved=%x\n", cbw->CDB[1]);
+	debug("cbw: dwAddress:%x %x %x %x\n", cbw->CDB[5], cbw->CDB[4],
+	      cbw->CDB[3], cbw->CDB[2]);
+	debug("cbw: ucReserved2=%x\n", cbw->CDB[6]);
+	debug("cbw: uslength:%x %x\n", cbw->CDB[8], cbw->CDB[7]);
+}
+
+static void printcsw(char *buf)
+{
+	ALLOC_CACHE_ALIGN_BUFFER(struct bulk_cs_wrap, csw,
+				 sizeof(struct bulk_cs_wrap));
+	memcpy((char *)csw, buf, USB_BULK_CS_WRAP_LEN);
+	debug("csw: signature:%x\n", csw->signature);
+	debug("csw: tag:%x\n", csw->tag);
+	debug("csw: residue:%x\n", csw->residue);
+	debug("csw: status:%x\n", csw->status);
+}
+#endif
+
+static int rockusb_tx_write_csw(u32 tag, int residue, u8 status, int size)
+{
+	ALLOC_CACHE_ALIGN_BUFFER(struct bulk_cs_wrap, csw,
+				 sizeof(struct bulk_cs_wrap));
+	csw->signature = cpu_to_le32(USB_BULK_CS_SIG);
+	csw->tag = tag;
+	csw->residue = cpu_to_be32(residue);
+	csw->status = status;
+#ifdef DEBUG
+	printcsw((char *)&csw);
+#endif
+	return rockusb_tx_write((char *)csw, size);
+}
+
+static unsigned int rx_bytes_expected(struct usb_ep *ep)
+{
+	struct f_rockusb *f_rkusb = get_rkusb();
+	int rx_remain = f_rkusb->download_size - f_rkusb->download_bytes;
+	unsigned int rem;
+	unsigned int maxpacket = ep->maxpacket;
+
+	if (rx_remain <= 0)
+		return 0;
+	else if (rx_remain > EP_BUFFER_SIZE)
+		return EP_BUFFER_SIZE;
+
+	rem = rx_remain % maxpacket;
+	if (rem > 0)
+		rx_remain = rx_remain + (maxpacket - rem);
+
+	return rx_remain;
+}
+
+/* usb_request complete call back to handle down load image */
+static void rx_handler_dl_image(struct usb_ep *ep, struct usb_request *req)
+{
+	struct f_rockusb *f_rkusb = get_rkusb();
+	unsigned int transfer_size = 0;
+	const unsigned char *buffer = req->buf;
+	unsigned int buffer_size = req->actual;
+
+	transfer_size = f_rkusb->download_size - f_rkusb->download_bytes;
+	if (!f_rkusb->download_desc) {
+		printf("rx_handler_dl_image blk_get_dev\n");
+		f_rkusb->download_desc = blk_get_dev(f_rkusb->rockusb_dev_type,
+				f_rkusb->rockusb_dev_index);
+		if (!f_rkusb->download_desc ||
+		    f_rkusb->download_desc->type == DEV_TYPE_UNKNOWN) {
+			error("invalid mmc device\n");
+			rockusb_tx_write_csw(f_rkusb->download_tag, 0, CSW_FAIL,
+					     USB_BULK_CS_WRAP_LEN);
+			return;
+		}
+	}
+
+	if (req->status != 0) {
+		printf("Bad status: %d\n", req->status);
+		rockusb_tx_write_csw(f_rkusb->download_tag, 0,
+				     CSW_FAIL, USB_BULK_CS_WRAP_LEN);
+		return;
+	}
+
+	if (buffer_size < transfer_size)
+		transfer_size = buffer_size;
+
+	memcpy((void *)CONFIG_ROCKUSB_BUF_ADDR + f_rkusb->download_bytes,
+	       buffer, transfer_size);
+	f_rkusb->download_bytes += transfer_size;
+
+	/* Check if transfer is done */
+	if (f_rkusb->download_bytes >= f_rkusb->download_size) {
+		int blks = 0, blkcnt = f_rkusb->download_size/512;
+		printf("download %d bytes finished, start writing to lba %x\n",
+		       f_rkusb->download_bytes, f_rkusb->download_lba);
+		blks = blk_dwrite(f_rkusb->download_desc,
+				  f_rkusb->download_lba, blkcnt,
+					(char *)CONFIG_ROCKUSB_BUF_ADDR);
+		if (blks != blkcnt) {
+			error("failed writing to device %s: %d\n",
+			      f_rkusb->rockusb_dev_type,
+			      f_rkusb->rockusb_dev_index);
+			rockusb_tx_write_csw(f_rkusb->download_tag, 0,
+					     CSW_FAIL, USB_BULK_CS_WRAP_LEN);
+			return;
+		}
+
+		req->complete = rx_handler_command;
+		req->length = EP_BUFFER_SIZE;
+		f_rkusb->download_size = 0;
+		printf("done\n");
+		rockusb_tx_write_csw(f_rkusb->download_tag, 0, CSW_GOOD,
+				     USB_BULK_CS_WRAP_LEN);
+	} else {
+		req->length = rx_bytes_expected(ep);
+	}
+
+	req->actual = 0;
+	usb_ep_queue(ep, req, 0);
+}
+
+static void cb_test_unit_ready(struct usb_ep *ep, struct usb_request *req)
+{
+	ALLOC_CACHE_ALIGN_BUFFER(struct fsg_bulk_cb_wrap, cbw,
+				 sizeof(struct fsg_bulk_cb_wrap));
+
+	memcpy((char *)cbw, req->buf, USB_BULK_CB_WRAP_LEN);
+
+	rockusb_tx_write_csw(cbw->tag, cbw->data_transfer_length,
+			     CSW_GOOD, USB_BULK_CS_WRAP_LEN);
+}
+
+static void cb_read_storage_id(struct usb_ep *ep, struct usb_request *req)
+{
+	ALLOC_CACHE_ALIGN_BUFFER(struct fsg_bulk_cb_wrap, cbw,
+				 sizeof(struct fsg_bulk_cb_wrap));
+	char emmc_id[] = "EMMC ";
+
+	printf("cb_read_storage_id\n");
+	memcpy((char *)cbw, req->buf, USB_BULK_CB_WRAP_LEN);
+	rockusb_tx_write_str(emmc_id);
+	rockusb_tx_write_csw(cbw->tag, cbw->data_transfer_length, CSW_GOOD,
+			     USB_BULK_CS_WRAP_LEN);
+}
+
+static void cb_write_lba(struct usb_ep *ep, struct usb_request *req)
+{
+	ALLOC_CACHE_ALIGN_BUFFER(struct fsg_bulk_cb_wrap, cbw,
+				 sizeof(struct fsg_bulk_cb_wrap));
+	int sector_count;
+	struct f_rockusb *f_rkusb = get_rkusb();
+
+	memcpy((char *)cbw, req->buf, USB_BULK_CB_WRAP_LEN);
+	sector_count = (int)get_unaligned_be16(&cbw->CDB[7]);
+	f_rkusb->download_lba = get_unaligned_be32(&cbw->CDB[2]);
+	f_rkusb->download_size = sector_count * 512;
+	f_rkusb->download_bytes = 0;
+	f_rkusb->download_tag = cbw->tag;
+	if ((0 == f_rkusb->download_size) ||
+	    (f_rkusb->download_size > CONFIG_ROCKUSB_BUF_SIZE)) {
+		rockusb_tx_write_csw(cbw->tag, cbw->data_transfer_length,
+				     CSW_FAIL, USB_BULK_CS_WRAP_LEN);
+	} else {
+		req->complete = rx_handler_dl_image;
+		req->length = rx_bytes_expected(ep);
+	}
+}
+
+int __weak rkusb_set_reboot_flag(int flag)
+{
+	struct f_rockusb *f_rkusb = get_rkusb();
+
+	printf("rkusb_set_reboot_flag: %d\n", f_rkusb->reboot_flag);
+	return -ENOSYS;
+}
+
+static void compl_do_reset(struct usb_ep *ep, struct usb_request *req)
+{
+	struct f_rockusb *f_rkusb = get_rkusb();
+
+	rkusb_set_reboot_flag(f_rkusb->reboot_flag);
+	do_reset(NULL, 0, 0, NULL);
+}
+
+static void cb_reboot(struct usb_ep *ep, struct usb_request *req)
+{
+	ALLOC_CACHE_ALIGN_BUFFER(struct fsg_bulk_cb_wrap, cbw,
+				 sizeof(struct fsg_bulk_cb_wrap));
+	struct f_rockusb *f_rkusb = get_rkusb();
+
+	f_rkusb->reboot_flag = 0;
+	memcpy((char *)cbw, req->buf, USB_BULK_CB_WRAP_LEN);
+	f_rkusb->reboot_flag = cbw->CDB[1];
+	rockusb_func->in_req->complete = compl_do_reset;
+	rockusb_tx_write_csw(cbw->tag, cbw->data_transfer_length, CSW_GOOD,
+			     USB_BULK_CS_WRAP_LEN);
+}
+
+static void cb_not_support(struct usb_ep *ep, struct usb_request *req)
+{
+	ALLOC_CACHE_ALIGN_BUFFER(struct fsg_bulk_cb_wrap, cbw,
+				 sizeof(struct fsg_bulk_cb_wrap));
+
+	memcpy((char *)cbw, req->buf, USB_BULK_CB_WRAP_LEN);
+	printf("Rockusb command %x not support yet\n", cbw->CDB[0]);
+	rockusb_tx_write_csw(cbw->tag, 0, CSW_FAIL, USB_BULK_CS_WRAP_LEN);
+}
+
+static const struct cmd_dispatch_info cmd_dispatch_info[] = {
+	{
+		.cmd = K_FW_TEST_UNIT_READY,
+		.cb = cb_test_unit_ready,
+	},
+	{
+		.cmd = K_FW_READ_FLASH_ID,
+		.cb = cb_read_storage_id,
+	},
+	{
+		.cmd = K_FW_SET_DEVICE_ID,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_TEST_BAD_BLOCK,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_READ_10,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_WRITE_10,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_ERASE_10,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_WRITE_SPARE,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_READ_SPARE,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_ERASE_10_FORCE,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_GET_VERSION,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_LBA_READ_10,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_LBA_WRITE_10,
+		.cb = cb_write_lba,
+	},
+	{
+		.cmd = K_FW_ERASE_SYS_DISK,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_SDRAM_READ_10,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_SDRAM_WRITE_10,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_SDRAM_EXECUTE,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_READ_FLASH_INFO,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_GET_CHIP_VER,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_LOW_FORMAT,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_SET_RESET_FLAG,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_SPI_READ_10,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_SPI_WRITE_10,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_SESSION,
+		.cb = cb_not_support,
+	},
+	{
+		.cmd = K_FW_RESET,
+		.cb = cb_reboot,
+	},
+};
+
+static void rx_handler_command(struct usb_ep *ep, struct usb_request *req)
+{
+	void (*func_cb)(struct usb_ep *ep, struct usb_request *req) = NULL;
+	ALLOC_CACHE_ALIGN_BUFFER(struct fsg_bulk_cb_wrap, cbw,
+				 sizeof(struct fsg_bulk_cb_wrap));
+	char *cmdbuf = req->buf;
+	int i;
+
+	if (req->status || req->length == 0)
+		return;
+
+	memcpy((char *)cbw, req->buf, USB_BULK_CB_WRAP_LEN);
+#ifdef DEBUG
+	printcbw(req->buf);
+#endif
+
+	for (i = 0; i < ARRAY_SIZE(cmd_dispatch_info); i++) {
+		if (cmd_dispatch_info[i].cmd == cbw->CDB[0]) {
+			func_cb = cmd_dispatch_info[i].cb;
+			break;
+		}
+	}
+
+	if (!func_cb) {
+		error("unknown command: %s", (char *)req->buf);
+		rockusb_tx_write_str("FAILunknown command");
+	} else {
+		if (req->actual < req->length) {
+			u8 *buf = (u8 *)req->buf;
+			buf[req->actual] = 0;
+			func_cb(ep, req);
+		} else {
+			error("buffer overflow");
+			rockusb_tx_write_str("FAILbuffer overflow");
+		}
+	}
+
+	*cmdbuf = '\0';
+	req->actual = 0;
+	usb_ep_queue(ep, req, 0);
+}
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 2/4] usb: rockchip: add rockusb command
  2017-05-25  8:50 [U-Boot] [PATCH V7 0/4] introduce Rockchip rockusb Eddie Cai
  2017-05-25  8:50 ` [U-Boot] [PATCH V7 1/4] usb: rockchip: add the rockusb gadget Eddie Cai
@ 2017-05-25  8:50 ` Eddie Cai
  2017-05-25  8:50 ` [U-Boot] [PATCH V7 3/4] rockchip:usb: add a simple readme for rockusb Eddie Cai
  2017-05-25  8:50 ` [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device Eddie Cai
  3 siblings, 0 replies; 22+ messages in thread
From: Eddie Cai @ 2017-05-25  8:50 UTC (permalink / raw)
  To: u-boot

this patch add rockusb command. the usage is
rockusb <USB_controller> <devtype> <dev[:part]>
e.g. rockusb 0 mmc 0

Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>

Changes in v7:
-none

Changes in v6:
-none

Changes in v5:
-none

Changes in v4:
-move USB_FUNCTION_ROCKUSB to drivers/usb/gadget/Kconfig
-modify the dependence

Changes in v3:
-fix comment from Simon and Lukasz
-fix checkpactch error

---
 cmd/Kconfig   |  9 ++++++++
 cmd/Makefile  |  1 +
 cmd/rockusb.c | 74 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 84 insertions(+)
 create mode 100644 cmd/rockusb.c

diff --git a/cmd/Kconfig b/cmd/Kconfig
index d9f7151..81e9bdf 100644
--- a/cmd/Kconfig
+++ b/cmd/Kconfig
@@ -518,6 +518,15 @@ config CMD_DFU
 	  Enables the command "dfu" which is used to have U-Boot create a DFU
 	  class device via USB.
 
+config CMD_ROCKUSB
+	bool "rockusb"
+	depends on USB_FUNCTION_ROCKUSB
+	help
+          Rockusb protocol is widely used by Rockchip SoC based devices. It can
+	  read/write info, image to/from devices. This enable rockusb command
+	  support to comunication with rockusb device. for more detail about
+	  this command, please read doc/README.rockusb.
+
 config CMD_USB_MASS_STORAGE
 	bool "UMS usb mass storage"
 	help
diff --git a/cmd/Makefile b/cmd/Makefile
index e987868..65d998d 100644
--- a/cmd/Makefile
+++ b/cmd/Makefile
@@ -109,6 +109,7 @@ obj-$(CONFIG_CMD_READ) += read.o
 obj-$(CONFIG_CMD_REGINFO) += reginfo.o
 obj-$(CONFIG_CMD_REISER) += reiser.o
 obj-$(CONFIG_CMD_REMOTEPROC) += remoteproc.o
+obj-$(CONFIG_CMD_ROCKUSB) += rockusb.o
 obj-$(CONFIG_SANDBOX) += host.o
 obj-$(CONFIG_CMD_SATA) += sata.o
 obj-$(CONFIG_CMD_SF) += sf.o
diff --git a/cmd/rockusb.c b/cmd/rockusb.c
new file mode 100644
index 0000000..ae2baa6
--- /dev/null
+++ b/cmd/rockusb.c
@@ -0,0 +1,74 @@
+/*
+ * Copyright (C) 2017 Eddie Cai <eddie.cai.linux@gmail.com>
+ *
+ * SPDX-License-Identifier:	GPL-2.0+
+ */
+
+#include <common.h>
+#include <command.h>
+#include <console.h>
+#include <g_dnl.h>
+#include <usb.h>
+#include <asm/arch/f_rockusb.h>
+
+static int do_rockusb(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[])
+{
+	int controller_index, dev_index;
+	char *usb_controller;
+	char *devtype;
+	char *devnum;
+	int ret;
+
+	if (argc < 2)
+		return CMD_RET_USAGE;
+
+	usb_controller = argv[1];
+	controller_index = simple_strtoul(usb_controller, NULL, 0);
+
+	if (argc >= 4) {
+		devtype = argv[2];
+		devnum  = argv[3];
+	} else {
+		return CMD_RET_USAGE;
+	}
+	dev_index = simple_strtoul(devnum, NULL, 0);
+	rockusb_dev_init(devtype, dev_index);
+
+	ret = board_usb_init(controller_index, USB_INIT_DEVICE);
+	if (ret) {
+		error("USB init failed: %d", ret);
+		return CMD_RET_FAILURE;
+	}
+
+	g_dnl_clear_detach();
+	ret = g_dnl_register("usb_dnl_rockusb");
+	if (ret)
+		return CMD_RET_FAILURE;
+
+	if (!g_dnl_board_usb_cable_connected()) {
+		puts("\rUSB cable not detected, Command exit.\n");
+		ret = CMD_RET_FAILURE;
+		goto exit;
+	}
+
+	while (1) {
+		if (g_dnl_detach())
+			break;
+		if (ctrlc())
+			break;
+		usb_gadget_handle_interrupts(controller_index);
+	}
+	ret = CMD_RET_SUCCESS;
+
+exit:
+	g_dnl_unregister();
+	g_dnl_clear_detach();
+	board_usb_cleanup(controller_index, USB_INIT_DEVICE);
+
+	return ret;
+}
+
+U_BOOT_CMD(rockusb, 4, 1, do_rockusb,
+	   "use the rockusb protocol",
+	   "<USB_controller> <devtype> <dev[:part]>  e.g. rockusb 0 mmc 0\n"
+);
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 3/4] rockchip:usb: add a simple readme for rockusb
  2017-05-25  8:50 [U-Boot] [PATCH V7 0/4] introduce Rockchip rockusb Eddie Cai
  2017-05-25  8:50 ` [U-Boot] [PATCH V7 1/4] usb: rockchip: add the rockusb gadget Eddie Cai
  2017-05-25  8:50 ` [U-Boot] [PATCH V7 2/4] usb: rockchip: add rockusb command Eddie Cai
@ 2017-05-25  8:50 ` Eddie Cai
  2017-05-25  8:50 ` [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device Eddie Cai
  3 siblings, 0 replies; 22+ messages in thread
From: Eddie Cai @ 2017-05-25  8:50 UTC (permalink / raw)
  To: u-boot

add a simple readme to introduce rockusb and tell people how to use it

Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>

Changes in v7:
-none

Changes in v6:
-none

Changes in v5:
-none

Changes in v4:
-add some blank line to make it look better

Changes in v3:
-fix checkpatch error

---
 doc/README.rockusb | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 51 insertions(+)
 create mode 100644 doc/README.rockusb

diff --git a/doc/README.rockusb b/doc/README.rockusb
new file mode 100644
index 0000000..5405dc4
--- /dev/null
+++ b/doc/README.rockusb
@@ -0,0 +1,51 @@
+Rockusb (Rockchip USB protocol)
+=====================================================
+
+Overview
+--------
+
+Rockusb protocol is widely used by Rockchip SoC based devices. It can
+read/write info, image to/from devices. This document briefly describes how to
+use Rockusb for upgrading firmware (e.g. kernel, u-boot, rootfs, etc.).
+
+Tools
+--------
+There are many tools can support Rockusb protocol. rkdeveloptool
+(https://github.com/rockchip-linux/rkdeveloptool) is open source,
+It is maintained by Rockchip. People don't want to build from source
+can download from here
+(https://github.com/rockchip-linux/rkbin/blob/master/tools/rkdeveloptool)
+
+Usage
+--------
+The Usage of Rockusb command is:
+
+rockusb <USB_controller> <devtype> <dev[:part]>
+
+e.g. rockusb 0 mmc 0
+
+On your U-Boot console, type this command to enter rockusb mode.
+On your host PC. use lsusb command. you should see a usb device
+using 0x2207 as its USB verdor id.
+
+for more detail about the rkdeveloptool. please read the usage.
+
+rkdeveloptool -h
+
+use rkdeveloptool wl command to write lba. BeginSec is the lba on device
+you want to write.
+
+sudo rkdeveloptool wl  <BeginSec> <File>
+
+to flash U-Boot image use below command. U-Boot binary is made by mkimage.
+see doc/README.rockchip for more detail about how to get U-Boot binary.
+
+sudo rkdeveloptool wl  64 <U-Boot binary>
+
+There are plenty of Rockusb command. but wl(write lba) and
+rd(reboot) command. These two command can let people flash
+image to device.
+
+To do
+-----
+* Fully support Rockusb protocol
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-05-25  8:50 [U-Boot] [PATCH V7 0/4] introduce Rockchip rockusb Eddie Cai
                   ` (2 preceding siblings ...)
  2017-05-25  8:50 ` [U-Boot] [PATCH V7 3/4] rockchip:usb: add a simple readme for rockusb Eddie Cai
@ 2017-05-25  8:50 ` Eddie Cai
  2017-05-29  7:51   ` Lukasz Majewski
  3 siblings, 1 reply; 22+ messages in thread
From: Eddie Cai @ 2017-05-25  8:50 UTC (permalink / raw)
  To: u-boot

this patch enable rockusb support on rk3288 based device.

Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>

Changes in v7:
-use imply in the Kconfig to enable rockusb

Changes in v6:
-enable rockusb in defconfig

Changes in v5:
-none

Changes in v4:
-move to rk3288_common.h

Changes in v3:
-move to defconfig

---
 arch/arm/mach-rockchip/Kconfig    | 2 ++
 configs/evb-rk3288_defconfig      | 9 +++++++++
 configs/fennec-rk3288_defconfig   | 6 ++++++
 configs/firefly-rk3288_defconfig  | 6 ++++++
 configs/miqi-rk3288_defconfig     | 6 ++++++
 configs/popmetal-rk3288_defconfig | 6 ++++++
 configs/tinker-rk3288_defconfig   | 6 ++++++
 include/configs/rk3288_common.h   | 7 -------
 8 files changed, 41 insertions(+), 7 deletions(-)

diff --git a/arch/arm/mach-rockchip/Kconfig b/arch/arm/mach-rockchip/Kconfig
index 2b752ad..8a87812 100644
--- a/arch/arm/mach-rockchip/Kconfig
+++ b/arch/arm/mach-rockchip/Kconfig
@@ -32,6 +32,8 @@ config ROCKCHIP_RK3288
 	select CPU_V7
 	select SUPPORT_SPL
 	select SPL
+	imply USB_FUNCTION_ROCKUSB
+	imply CMD_ROCKUSB
 	help
 	  The Rockchip RK3288 is a ARM-based SoC with a quad-core Cortex-A17
 	  including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two
diff --git a/configs/evb-rk3288_defconfig b/configs/evb-rk3288_defconfig
index 227150d..cf66e09 100644
--- a/configs/evb-rk3288_defconfig
+++ b/configs/evb-rk3288_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_MMC=y
 CONFIG_CMD_SF=y
 CONFIG_CMD_SPI=y
 CONFIG_CMD_I2C=y
+CONFIG_CMD_USB=y
 CONFIG_CMD_GPIO=y
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_CACHE=y
@@ -61,6 +62,14 @@ CONFIG_DEBUG_UART_CLOCK=24000000
 CONFIG_DEBUG_UART_SHIFT=2
 CONFIG_SYS_NS16550=y
 CONFIG_SYSRESET=y
+CONFIG_USB=y
+CONFIG_USB_STORAGE=y
 CONFIG_USE_TINY_PRINTF=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
+CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_DOWNLOAD=y
+CONFIG_USB_GADGET_VBUS_DRAW=0
+CONFIG_G_DNL_MANUFACTURER="Rockchip"
+CONFIG_G_DNL_VENDOR_NUM=0x2207
+CONFIG_G_DNL_PRODUCT_NUM=0x320a
diff --git a/configs/fennec-rk3288_defconfig b/configs/fennec-rk3288_defconfig
index befba18..eb33d00 100644
--- a/configs/fennec-rk3288_defconfig
+++ b/configs/fennec-rk3288_defconfig
@@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
 CONFIG_USE_TINY_PRINTF=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
+CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_DOWNLOAD=y
+CONFIG_USB_GADGET_VBUS_DRAW=0
+CONFIG_G_DNL_MANUFACTURER="Rockchip"
+CONFIG_G_DNL_VENDOR_NUM=0x2207
+CONFIG_G_DNL_PRODUCT_NUM=0x320a
diff --git a/configs/firefly-rk3288_defconfig b/configs/firefly-rk3288_defconfig
index f2872a6..1f4ca32 100644
--- a/configs/firefly-rk3288_defconfig
+++ b/configs/firefly-rk3288_defconfig
@@ -73,3 +73,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
 CONFIG_USE_TINY_PRINTF=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
+CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_DOWNLOAD=y
+CONFIG_USB_GADGET_VBUS_DRAW=0
+CONFIG_G_DNL_MANUFACTURER="Rockchip"
+CONFIG_G_DNL_VENDOR_NUM=0x2207
+CONFIG_G_DNL_PRODUCT_NUM=0x320a
diff --git a/configs/miqi-rk3288_defconfig b/configs/miqi-rk3288_defconfig
index d93bd97..b8b6fd5 100644
--- a/configs/miqi-rk3288_defconfig
+++ b/configs/miqi-rk3288_defconfig
@@ -70,3 +70,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
 CONFIG_USE_TINY_PRINTF=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
+CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_DOWNLOAD=y
+CONFIG_USB_GADGET_VBUS_DRAW=0
+CONFIG_G_DNL_MANUFACTURER="Rockchip"
+CONFIG_G_DNL_VENDOR_NUM=0x2207
+CONFIG_G_DNL_PRODUCT_NUM=0x320a
diff --git a/configs/popmetal-rk3288_defconfig b/configs/popmetal-rk3288_defconfig
index 748cda4..1181a20 100644
--- a/configs/popmetal-rk3288_defconfig
+++ b/configs/popmetal-rk3288_defconfig
@@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
 CONFIG_USE_TINY_PRINTF=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
+CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_DOWNLOAD=y
+CONFIG_USB_GADGET_VBUS_DRAW=0
+CONFIG_G_DNL_MANUFACTURER="Rockchip"
+CONFIG_G_DNL_VENDOR_NUM=0x2207
+CONFIG_G_DNL_PRODUCT_NUM=0x320a
diff --git a/configs/tinker-rk3288_defconfig b/configs/tinker-rk3288_defconfig
index ada5950..f863df8 100644
--- a/configs/tinker-rk3288_defconfig
+++ b/configs/tinker-rk3288_defconfig
@@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
 CONFIG_USE_TINY_PRINTF=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
+CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_DOWNLOAD=y
+CONFIG_USB_GADGET_VBUS_DRAW=0
+CONFIG_G_DNL_MANUFACTURER="Rockchip"
+CONFIG_G_DNL_VENDOR_NUM=0x2207
+CONFIG_G_DNL_PRODUCT_NUM=0x320a
diff --git a/include/configs/rk3288_common.h b/include/configs/rk3288_common.h
index e7a8f72..421ba60 100644
--- a/include/configs/rk3288_common.h
+++ b/include/configs/rk3288_common.h
@@ -58,11 +58,9 @@
 
 #ifndef CONFIG_SPL_BUILD
 /* usb otg */
-#define CONFIG_USB_GADGET
 #define CONFIG_USB_GADGET_DUALSPEED
 #define CONFIG_USB_GADGET_DWC2_OTG
 #define CONFIG_ROCKCHIP_USB2_PHY
-#define CONFIG_USB_GADGET_VBUS_DRAW	0
 
 /* fastboot  */
 #define CONFIG_CMD_FASTBOOT
@@ -76,11 +74,6 @@
 #define CONFIG_USB_FUNCTION_MASS_STORAGE
 #define CONFIG_CMD_USB_MASS_STORAGE
 
-#define CONFIG_USB_GADGET_DOWNLOAD
-#define CONFIG_G_DNL_MANUFACTURER	"Rockchip"
-#define CONFIG_G_DNL_VENDOR_NUM		0x2207
-#define CONFIG_G_DNL_PRODUCT_NUM	0x320a
-
 /* usb host support */
 #ifdef CONFIG_CMD_USB
 #define CONFIG_USB_DWC2
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-05-25  8:50 ` [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device Eddie Cai
@ 2017-05-29  7:51   ` Lukasz Majewski
  2017-05-31  2:27     ` Eddie Cai
  0 siblings, 1 reply; 22+ messages in thread
From: Lukasz Majewski @ 2017-05-29  7:51 UTC (permalink / raw)
  To: u-boot

Good morning Eddie,

> this patch enable rockusb support on rk3288 based device.
> 
> Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
> 

I've give this patch set a try on travisCI:

https://travis-ci.org/lmajewski/u-boot-dfu/jobs/237068149

Unfortunately, there are some problem with following boards:

chromebook_jerry, chromebook_minnie ...

caused by "undefined references to ...."

I've tried your patches on top of:
u-boot-usb/HEAD
SHA1: 3426b2038cfb831d74ac0407fc7a04e990b44540

Maybe you have built tested it on other branch/commit?

Best regards,
Łukasz Majewski

p.s. My travis CI .travis.yml attached.

> Changes in v7:
> -use imply in the Kconfig to enable rockusb
> 
> Changes in v6:
> -enable rockusb in defconfig
> 
> Changes in v5:
> -none
> 
> Changes in v4:
> -move to rk3288_common.h
> 
> Changes in v3:
> -move to defconfig
> 
> ---
>  arch/arm/mach-rockchip/Kconfig    | 2 ++
>  configs/evb-rk3288_defconfig      | 9 +++++++++
>  configs/fennec-rk3288_defconfig   | 6 ++++++
>  configs/firefly-rk3288_defconfig  | 6 ++++++
>  configs/miqi-rk3288_defconfig     | 6 ++++++
>  configs/popmetal-rk3288_defconfig | 6 ++++++
>  configs/tinker-rk3288_defconfig   | 6 ++++++
>  include/configs/rk3288_common.h   | 7 -------
>  8 files changed, 41 insertions(+), 7 deletions(-)
> 
> diff --git a/arch/arm/mach-rockchip/Kconfig
> b/arch/arm/mach-rockchip/Kconfig index 2b752ad..8a87812 100644
> --- a/arch/arm/mach-rockchip/Kconfig
> +++ b/arch/arm/mach-rockchip/Kconfig
> @@ -32,6 +32,8 @@ config ROCKCHIP_RK3288
>  	select CPU_V7
>  	select SUPPORT_SPL
>  	select SPL
> +	imply USB_FUNCTION_ROCKUSB
> +	imply CMD_ROCKUSB
>  	help
>  	  The Rockchip RK3288 is a ARM-based SoC with a quad-core
> Cortex-A17 including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two
> diff --git a/configs/evb-rk3288_defconfig
> b/configs/evb-rk3288_defconfig index 227150d..cf66e09 100644
> --- a/configs/evb-rk3288_defconfig
> +++ b/configs/evb-rk3288_defconfig
> @@ -17,6 +17,7 @@ CONFIG_CMD_MMC=y
>  CONFIG_CMD_SF=y
>  CONFIG_CMD_SPI=y
>  CONFIG_CMD_I2C=y
> +CONFIG_CMD_USB=y
>  CONFIG_CMD_GPIO=y
>  # CONFIG_CMD_SETEXPR is not set
>  CONFIG_CMD_CACHE=y
> @@ -61,6 +62,14 @@ CONFIG_DEBUG_UART_CLOCK=24000000
>  CONFIG_DEBUG_UART_SHIFT=2
>  CONFIG_SYS_NS16550=y
>  CONFIG_SYSRESET=y
> +CONFIG_USB=y
> +CONFIG_USB_STORAGE=y
>  CONFIG_USE_TINY_PRINTF=y
>  CONFIG_CMD_DHRYSTONE=y
>  CONFIG_ERRNO_STR=y
> +CONFIG_USB_GADGET=y
> +CONFIG_USB_GADGET_DOWNLOAD=y
> +CONFIG_USB_GADGET_VBUS_DRAW=0
> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> diff --git a/configs/fennec-rk3288_defconfig
> b/configs/fennec-rk3288_defconfig index befba18..eb33d00 100644
> --- a/configs/fennec-rk3288_defconfig
> +++ b/configs/fennec-rk3288_defconfig
> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>  CONFIG_USE_TINY_PRINTF=y
>  CONFIG_CMD_DHRYSTONE=y
>  CONFIG_ERRNO_STR=y
> +CONFIG_USB_GADGET=y
> +CONFIG_USB_GADGET_DOWNLOAD=y
> +CONFIG_USB_GADGET_VBUS_DRAW=0
> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> diff --git a/configs/firefly-rk3288_defconfig
> b/configs/firefly-rk3288_defconfig index f2872a6..1f4ca32 100644
> --- a/configs/firefly-rk3288_defconfig
> +++ b/configs/firefly-rk3288_defconfig
> @@ -73,3 +73,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
>  CONFIG_USE_TINY_PRINTF=y
>  CONFIG_CMD_DHRYSTONE=y
>  CONFIG_ERRNO_STR=y
> +CONFIG_USB_GADGET=y
> +CONFIG_USB_GADGET_DOWNLOAD=y
> +CONFIG_USB_GADGET_VBUS_DRAW=0
> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> diff --git a/configs/miqi-rk3288_defconfig
> b/configs/miqi-rk3288_defconfig index d93bd97..b8b6fd5 100644
> --- a/configs/miqi-rk3288_defconfig
> +++ b/configs/miqi-rk3288_defconfig
> @@ -70,3 +70,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
>  CONFIG_USE_TINY_PRINTF=y
>  CONFIG_CMD_DHRYSTONE=y
>  CONFIG_ERRNO_STR=y
> +CONFIG_USB_GADGET=y
> +CONFIG_USB_GADGET_DOWNLOAD=y
> +CONFIG_USB_GADGET_VBUS_DRAW=0
> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> diff --git a/configs/popmetal-rk3288_defconfig
> b/configs/popmetal-rk3288_defconfig index 748cda4..1181a20 100644
> --- a/configs/popmetal-rk3288_defconfig
> +++ b/configs/popmetal-rk3288_defconfig
> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>  CONFIG_USE_TINY_PRINTF=y
>  CONFIG_CMD_DHRYSTONE=y
>  CONFIG_ERRNO_STR=y
> +CONFIG_USB_GADGET=y
> +CONFIG_USB_GADGET_DOWNLOAD=y
> +CONFIG_USB_GADGET_VBUS_DRAW=0
> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> diff --git a/configs/tinker-rk3288_defconfig
> b/configs/tinker-rk3288_defconfig index ada5950..f863df8 100644
> --- a/configs/tinker-rk3288_defconfig
> +++ b/configs/tinker-rk3288_defconfig
> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>  CONFIG_USE_TINY_PRINTF=y
>  CONFIG_CMD_DHRYSTONE=y
>  CONFIG_ERRNO_STR=y
> +CONFIG_USB_GADGET=y
> +CONFIG_USB_GADGET_DOWNLOAD=y
> +CONFIG_USB_GADGET_VBUS_DRAW=0
> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> diff --git a/include/configs/rk3288_common.h
> b/include/configs/rk3288_common.h index e7a8f72..421ba60 100644
> --- a/include/configs/rk3288_common.h
> +++ b/include/configs/rk3288_common.h
> @@ -58,11 +58,9 @@
>  
>  #ifndef CONFIG_SPL_BUILD
>  /* usb otg */
> -#define CONFIG_USB_GADGET
>  #define CONFIG_USB_GADGET_DUALSPEED
>  #define CONFIG_USB_GADGET_DWC2_OTG
>  #define CONFIG_ROCKCHIP_USB2_PHY
> -#define CONFIG_USB_GADGET_VBUS_DRAW	0
>  
>  /* fastboot  */
>  #define CONFIG_CMD_FASTBOOT
> @@ -76,11 +74,6 @@
>  #define CONFIG_USB_FUNCTION_MASS_STORAGE
>  #define CONFIG_CMD_USB_MASS_STORAGE
>  
> -#define CONFIG_USB_GADGET_DOWNLOAD
> -#define CONFIG_G_DNL_MANUFACTURER	"Rockchip"
> -#define CONFIG_G_DNL_VENDOR_NUM		0x2207
> -#define CONFIG_G_DNL_PRODUCT_NUM	0x320a
> -
>  /* usb host support */
>  #ifdef CONFIG_CMD_USB
>  #define CONFIG_USB_DWC2




Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dot_travis.yml
Type: application/x-yaml
Size: 2938 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170529/dc7ee0e3/attachment.bin>

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-05-29  7:51   ` Lukasz Majewski
@ 2017-05-31  2:27     ` Eddie Cai
  2017-05-31  2:30       ` Tom Rini
  2017-05-31  7:12       ` Lukasz Majewski
  0 siblings, 2 replies; 22+ messages in thread
From: Eddie Cai @ 2017-05-31  2:27 UTC (permalink / raw)
  To: u-boot

Hi Lukasz

2017-05-29 15:51 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> Good morning Eddie,
>
>> this patch enable rockusb support on rk3288 based device.
>>
>> Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
>> Reviewed-by: Simon Glass <sjg@chromium.org>
>>
>
> I've give this patch set a try on travisCI:
>
> https://travis-ci.org/lmajewski/u-boot-dfu/jobs/237068149
>
> Unfortunately, there are some problem with following boards:
>
> chromebook_jerry, chromebook_minnie ...
I did it by myself last week. i got the same error. then i fix those
chromebook error
and test again. I still got some 3036 board error. But it build
successfully when i
build it on my computer. here is the travis-ci.org error log
https://travis-ci.org/eddiecailinux/u-boot/jobs/236232837
I have no idea what can i do to fix it.
>
> caused by "undefined references to ...."
>
> I've tried your patches on top of:
> u-boot-usb/HEAD
> SHA1: 3426b2038cfb831d74ac0407fc7a04e990b44540
>
> Maybe you have built tested it on other branch/commit?
>
> Best regards,
> Łukasz Majewski
>
> p.s. My travis CI .travis.yml attached.
>
>> Changes in v7:
>> -use imply in the Kconfig to enable rockusb
>>
>> Changes in v6:
>> -enable rockusb in defconfig
>>
>> Changes in v5:
>> -none
>>
>> Changes in v4:
>> -move to rk3288_common.h
>>
>> Changes in v3:
>> -move to defconfig
>>
>> ---
>>  arch/arm/mach-rockchip/Kconfig    | 2 ++
>>  configs/evb-rk3288_defconfig      | 9 +++++++++
>>  configs/fennec-rk3288_defconfig   | 6 ++++++
>>  configs/firefly-rk3288_defconfig  | 6 ++++++
>>  configs/miqi-rk3288_defconfig     | 6 ++++++
>>  configs/popmetal-rk3288_defconfig | 6 ++++++
>>  configs/tinker-rk3288_defconfig   | 6 ++++++
>>  include/configs/rk3288_common.h   | 7 -------
>>  8 files changed, 41 insertions(+), 7 deletions(-)
>>
>> diff --git a/arch/arm/mach-rockchip/Kconfig
>> b/arch/arm/mach-rockchip/Kconfig index 2b752ad..8a87812 100644
>> --- a/arch/arm/mach-rockchip/Kconfig
>> +++ b/arch/arm/mach-rockchip/Kconfig
>> @@ -32,6 +32,8 @@ config ROCKCHIP_RK3288
>>       select CPU_V7
>>       select SUPPORT_SPL
>>       select SPL
>> +     imply USB_FUNCTION_ROCKUSB
>> +     imply CMD_ROCKUSB
>>       help
>>         The Rockchip RK3288 is a ARM-based SoC with a quad-core
>> Cortex-A17 including NEON and GPU, 1MB L2 cache, Mali-T7 graphics, two
>> diff --git a/configs/evb-rk3288_defconfig
>> b/configs/evb-rk3288_defconfig index 227150d..cf66e09 100644
>> --- a/configs/evb-rk3288_defconfig
>> +++ b/configs/evb-rk3288_defconfig
>> @@ -17,6 +17,7 @@ CONFIG_CMD_MMC=y
>>  CONFIG_CMD_SF=y
>>  CONFIG_CMD_SPI=y
>>  CONFIG_CMD_I2C=y
>> +CONFIG_CMD_USB=y
>>  CONFIG_CMD_GPIO=y
>>  # CONFIG_CMD_SETEXPR is not set
>>  CONFIG_CMD_CACHE=y
>> @@ -61,6 +62,14 @@ CONFIG_DEBUG_UART_CLOCK=24000000
>>  CONFIG_DEBUG_UART_SHIFT=2
>>  CONFIG_SYS_NS16550=y
>>  CONFIG_SYSRESET=y
>> +CONFIG_USB=y
>> +CONFIG_USB_STORAGE=y
>>  CONFIG_USE_TINY_PRINTF=y
>>  CONFIG_CMD_DHRYSTONE=y
>>  CONFIG_ERRNO_STR=y
>> +CONFIG_USB_GADGET=y
>> +CONFIG_USB_GADGET_DOWNLOAD=y
>> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> diff --git a/configs/fennec-rk3288_defconfig
>> b/configs/fennec-rk3288_defconfig index befba18..eb33d00 100644
>> --- a/configs/fennec-rk3288_defconfig
>> +++ b/configs/fennec-rk3288_defconfig
>> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>>  CONFIG_USE_TINY_PRINTF=y
>>  CONFIG_CMD_DHRYSTONE=y
>>  CONFIG_ERRNO_STR=y
>> +CONFIG_USB_GADGET=y
>> +CONFIG_USB_GADGET_DOWNLOAD=y
>> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> diff --git a/configs/firefly-rk3288_defconfig
>> b/configs/firefly-rk3288_defconfig index f2872a6..1f4ca32 100644
>> --- a/configs/firefly-rk3288_defconfig
>> +++ b/configs/firefly-rk3288_defconfig
>> @@ -73,3 +73,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
>>  CONFIG_USE_TINY_PRINTF=y
>>  CONFIG_CMD_DHRYSTONE=y
>>  CONFIG_ERRNO_STR=y
>> +CONFIG_USB_GADGET=y
>> +CONFIG_USB_GADGET_DOWNLOAD=y
>> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> diff --git a/configs/miqi-rk3288_defconfig
>> b/configs/miqi-rk3288_defconfig index d93bd97..b8b6fd5 100644
>> --- a/configs/miqi-rk3288_defconfig
>> +++ b/configs/miqi-rk3288_defconfig
>> @@ -70,3 +70,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
>>  CONFIG_USE_TINY_PRINTF=y
>>  CONFIG_CMD_DHRYSTONE=y
>>  CONFIG_ERRNO_STR=y
>> +CONFIG_USB_GADGET=y
>> +CONFIG_USB_GADGET_DOWNLOAD=y
>> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> diff --git a/configs/popmetal-rk3288_defconfig
>> b/configs/popmetal-rk3288_defconfig index 748cda4..1181a20 100644
>> --- a/configs/popmetal-rk3288_defconfig
>> +++ b/configs/popmetal-rk3288_defconfig
>> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>>  CONFIG_USE_TINY_PRINTF=y
>>  CONFIG_CMD_DHRYSTONE=y
>>  CONFIG_ERRNO_STR=y
>> +CONFIG_USB_GADGET=y
>> +CONFIG_USB_GADGET_DOWNLOAD=y
>> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> diff --git a/configs/tinker-rk3288_defconfig
>> b/configs/tinker-rk3288_defconfig index ada5950..f863df8 100644
>> --- a/configs/tinker-rk3288_defconfig
>> +++ b/configs/tinker-rk3288_defconfig
>> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>>  CONFIG_USE_TINY_PRINTF=y
>>  CONFIG_CMD_DHRYSTONE=y
>>  CONFIG_ERRNO_STR=y
>> +CONFIG_USB_GADGET=y
>> +CONFIG_USB_GADGET_DOWNLOAD=y
>> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> diff --git a/include/configs/rk3288_common.h
>> b/include/configs/rk3288_common.h index e7a8f72..421ba60 100644
>> --- a/include/configs/rk3288_common.h
>> +++ b/include/configs/rk3288_common.h
>> @@ -58,11 +58,9 @@
>>
>>  #ifndef CONFIG_SPL_BUILD
>>  /* usb otg */
>> -#define CONFIG_USB_GADGET
>>  #define CONFIG_USB_GADGET_DUALSPEED
>>  #define CONFIG_USB_GADGET_DWC2_OTG
>>  #define CONFIG_ROCKCHIP_USB2_PHY
>> -#define CONFIG_USB_GADGET_VBUS_DRAW  0
>>
>>  /* fastboot  */
>>  #define CONFIG_CMD_FASTBOOT
>> @@ -76,11 +74,6 @@
>>  #define CONFIG_USB_FUNCTION_MASS_STORAGE
>>  #define CONFIG_CMD_USB_MASS_STORAGE
>>
>> -#define CONFIG_USB_GADGET_DOWNLOAD
>> -#define CONFIG_G_DNL_MANUFACTURER    "Rockchip"
>> -#define CONFIG_G_DNL_VENDOR_NUM              0x2207
>> -#define CONFIG_G_DNL_PRODUCT_NUM     0x320a
>> -
>>  /* usb host support */
>>  #ifdef CONFIG_CMD_USB
>>  #define CONFIG_USB_DWC2
>
>
>
>
> Best regards,
>
> Lukasz Majewski
>
> --
>
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-05-31  2:27     ` Eddie Cai
@ 2017-05-31  2:30       ` Tom Rini
  2017-05-31  7:12       ` Lukasz Majewski
  1 sibling, 0 replies; 22+ messages in thread
From: Tom Rini @ 2017-05-31  2:30 UTC (permalink / raw)
  To: u-boot

On Wed, May 31, 2017 at 10:27:23AM +0800, Eddie Cai wrote:
> Hi Lukasz
> 
> 2017-05-29 15:51 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> > Good morning Eddie,
> >
> >> this patch enable rockusb support on rk3288 based device.
> >>
> >> Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
> >> Reviewed-by: Simon Glass <sjg@chromium.org>
> >>
> >
> > I've give this patch set a try on travisCI:
> >
> > https://travis-ci.org/lmajewski/u-boot-dfu/jobs/237068149
> >
> > Unfortunately, there are some problem with following boards:
> >
> > chromebook_jerry, chromebook_minnie ...
> I did it by myself last week. i got the same error. then i fix those
> chromebook error
> and test again. I still got some 3036 board error. But it build
> successfully when i
> build it on my computer. here is the travis-ci.org error log
> https://travis-ci.org/eddiecailinux/u-boot/jobs/236232837
> I have no idea what can i do to fix it.

You can try using the same toolchain, from .travis.yml:
       wget http://releases.linaro.org/components/toolchain/binaries/6.3-2017.02/aarch64-linux-gnu/gcc-linaro-6.3.1-2017.02-x86_64_aarch64-linux-gnu.tar.xz &&
       wget http://releases.linaro.org/components/toolchain/binaries/6.3-2017.02/arm-linux-gnueabihf/gcc-linaro-6.3.1-2017.02-x86_64_arm-linux-gnueabihf.tar.xz &&
       tar -C /tmp -xf gcc-linaro-6.3.1-2017.02-x86_64_aarch64-linux-gnu.tar.xz &&
       tar -C /tmp -xf gcc-linaro-6.3.1-2017.02-x86_64_arm-linux-gnueabihf.tar.xz;

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170530/6d11ce5a/attachment.sig>

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-05-31  2:27     ` Eddie Cai
  2017-05-31  2:30       ` Tom Rini
@ 2017-05-31  7:12       ` Lukasz Majewski
  2017-05-31  8:02         ` Eddie Cai
  1 sibling, 1 reply; 22+ messages in thread
From: Lukasz Majewski @ 2017-05-31  7:12 UTC (permalink / raw)
  To: u-boot

On Wed, 31 May 2017 10:27:23 +0800
Eddie Cai <eddie.cai.linux@gmail.com> wrote:

> Hi Lukasz
> 
> 2017-05-29 15:51 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> > Good morning Eddie,
> >
> >> this patch enable rockusb support on rk3288 based device.
> >>
> >> Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
> >> Reviewed-by: Simon Glass <sjg@chromium.org>
> >>
> >
> > I've give this patch set a try on travisCI:
> >
> > https://travis-ci.org/lmajewski/u-boot-dfu/jobs/237068149
> >
> > Unfortunately, there are some problem with following boards:
> >
> > chromebook_jerry, chromebook_minnie ...
> I did it by myself last week. i got the same error. then i fix those
> chromebook error
> and test again. I still got some 3036 board error. But it build
> successfully when i
> build it on my computer. here is the travis-ci.org error log
> https://travis-ci.org/eddiecailinux/u-boot/jobs/236232837
> I have no idea what can i do to fix it.

Can you share the SHA1 of commit on top of which you applied your
patches?

I take u-boot-usb (the USB u-boot tree from Marek Vasut) as a base and
then apply commits on top of it.

> >
> > caused by "undefined references to ...."
> >
> > I've tried your patches on top of:
> > u-boot-usb/HEAD
> > SHA1: 3426b2038cfb831d74ac0407fc7a04e990b44540
> >
> > Maybe you have built tested it on other branch/commit?
> >
> > Best regards,
> > Łukasz Majewski
> >
> > p.s. My travis CI .travis.yml attached.
> >
> >> Changes in v7:
> >> -use imply in the Kconfig to enable rockusb
> >>
> >> Changes in v6:
> >> -enable rockusb in defconfig
> >>
> >> Changes in v5:
> >> -none
> >>
> >> Changes in v4:
> >> -move to rk3288_common.h
> >>
> >> Changes in v3:
> >> -move to defconfig
> >>
> >> ---
> >>  arch/arm/mach-rockchip/Kconfig    | 2 ++
> >>  configs/evb-rk3288_defconfig      | 9 +++++++++
> >>  configs/fennec-rk3288_defconfig   | 6 ++++++
> >>  configs/firefly-rk3288_defconfig  | 6 ++++++
> >>  configs/miqi-rk3288_defconfig     | 6 ++++++
> >>  configs/popmetal-rk3288_defconfig | 6 ++++++
> >>  configs/tinker-rk3288_defconfig   | 6 ++++++
> >>  include/configs/rk3288_common.h   | 7 -------
> >>  8 files changed, 41 insertions(+), 7 deletions(-)
> >>
> >> diff --git a/arch/arm/mach-rockchip/Kconfig
> >> b/arch/arm/mach-rockchip/Kconfig index 2b752ad..8a87812 100644
> >> --- a/arch/arm/mach-rockchip/Kconfig
> >> +++ b/arch/arm/mach-rockchip/Kconfig
> >> @@ -32,6 +32,8 @@ config ROCKCHIP_RK3288
> >>       select CPU_V7
> >>       select SUPPORT_SPL
> >>       select SPL
> >> +     imply USB_FUNCTION_ROCKUSB
> >> +     imply CMD_ROCKUSB
> >>       help
> >>         The Rockchip RK3288 is a ARM-based SoC with a quad-core
> >> Cortex-A17 including NEON and GPU, 1MB L2 cache, Mali-T7 graphics,
> >> two diff --git a/configs/evb-rk3288_defconfig
> >> b/configs/evb-rk3288_defconfig index 227150d..cf66e09 100644
> >> --- a/configs/evb-rk3288_defconfig
> >> +++ b/configs/evb-rk3288_defconfig
> >> @@ -17,6 +17,7 @@ CONFIG_CMD_MMC=y
> >>  CONFIG_CMD_SF=y
> >>  CONFIG_CMD_SPI=y
> >>  CONFIG_CMD_I2C=y
> >> +CONFIG_CMD_USB=y
> >>  CONFIG_CMD_GPIO=y
> >>  # CONFIG_CMD_SETEXPR is not set
> >>  CONFIG_CMD_CACHE=y
> >> @@ -61,6 +62,14 @@ CONFIG_DEBUG_UART_CLOCK=24000000
> >>  CONFIG_DEBUG_UART_SHIFT=2
> >>  CONFIG_SYS_NS16550=y
> >>  CONFIG_SYSRESET=y
> >> +CONFIG_USB=y
> >> +CONFIG_USB_STORAGE=y
> >>  CONFIG_USE_TINY_PRINTF=y
> >>  CONFIG_CMD_DHRYSTONE=y
> >>  CONFIG_ERRNO_STR=y
> >> +CONFIG_USB_GADGET=y
> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> diff --git a/configs/fennec-rk3288_defconfig
> >> b/configs/fennec-rk3288_defconfig index befba18..eb33d00 100644
> >> --- a/configs/fennec-rk3288_defconfig
> >> +++ b/configs/fennec-rk3288_defconfig
> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> >>  CONFIG_USE_TINY_PRINTF=y
> >>  CONFIG_CMD_DHRYSTONE=y
> >>  CONFIG_ERRNO_STR=y
> >> +CONFIG_USB_GADGET=y
> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> diff --git a/configs/firefly-rk3288_defconfig
> >> b/configs/firefly-rk3288_defconfig index f2872a6..1f4ca32 100644
> >> --- a/configs/firefly-rk3288_defconfig
> >> +++ b/configs/firefly-rk3288_defconfig
> >> @@ -73,3 +73,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
> >>  CONFIG_USE_TINY_PRINTF=y
> >>  CONFIG_CMD_DHRYSTONE=y
> >>  CONFIG_ERRNO_STR=y
> >> +CONFIG_USB_GADGET=y
> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> diff --git a/configs/miqi-rk3288_defconfig
> >> b/configs/miqi-rk3288_defconfig index d93bd97..b8b6fd5 100644
> >> --- a/configs/miqi-rk3288_defconfig
> >> +++ b/configs/miqi-rk3288_defconfig
> >> @@ -70,3 +70,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
> >>  CONFIG_USE_TINY_PRINTF=y
> >>  CONFIG_CMD_DHRYSTONE=y
> >>  CONFIG_ERRNO_STR=y
> >> +CONFIG_USB_GADGET=y
> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> diff --git a/configs/popmetal-rk3288_defconfig
> >> b/configs/popmetal-rk3288_defconfig index 748cda4..1181a20 100644
> >> --- a/configs/popmetal-rk3288_defconfig
> >> +++ b/configs/popmetal-rk3288_defconfig
> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> >>  CONFIG_USE_TINY_PRINTF=y
> >>  CONFIG_CMD_DHRYSTONE=y
> >>  CONFIG_ERRNO_STR=y
> >> +CONFIG_USB_GADGET=y
> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> diff --git a/configs/tinker-rk3288_defconfig
> >> b/configs/tinker-rk3288_defconfig index ada5950..f863df8 100644
> >> --- a/configs/tinker-rk3288_defconfig
> >> +++ b/configs/tinker-rk3288_defconfig
> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> >>  CONFIG_USE_TINY_PRINTF=y
> >>  CONFIG_CMD_DHRYSTONE=y
> >>  CONFIG_ERRNO_STR=y
> >> +CONFIG_USB_GADGET=y
> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> diff --git a/include/configs/rk3288_common.h
> >> b/include/configs/rk3288_common.h index e7a8f72..421ba60 100644
> >> --- a/include/configs/rk3288_common.h
> >> +++ b/include/configs/rk3288_common.h
> >> @@ -58,11 +58,9 @@
> >>
> >>  #ifndef CONFIG_SPL_BUILD
> >>  /* usb otg */
> >> -#define CONFIG_USB_GADGET
> >>  #define CONFIG_USB_GADGET_DUALSPEED
> >>  #define CONFIG_USB_GADGET_DWC2_OTG
> >>  #define CONFIG_ROCKCHIP_USB2_PHY
> >> -#define CONFIG_USB_GADGET_VBUS_DRAW  0
> >>
> >>  /* fastboot  */
> >>  #define CONFIG_CMD_FASTBOOT
> >> @@ -76,11 +74,6 @@
> >>  #define CONFIG_USB_FUNCTION_MASS_STORAGE
> >>  #define CONFIG_CMD_USB_MASS_STORAGE
> >>
> >> -#define CONFIG_USB_GADGET_DOWNLOAD
> >> -#define CONFIG_G_DNL_MANUFACTURER    "Rockchip"
> >> -#define CONFIG_G_DNL_VENDOR_NUM              0x2207
> >> -#define CONFIG_G_DNL_PRODUCT_NUM     0x320a
> >> -
> >>  /* usb host support */
> >>  #ifdef CONFIG_CMD_USB
> >>  #define CONFIG_USB_DWC2
> >
> >
> >
> >
> > Best regards,
> >
> > Lukasz Majewski
> >
> > --
> >
> > DENX Software Engineering GmbH,      Managing Director: Wolfgang
> > Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell,
> > Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email:
> > wd at denx.de




Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-05-31  7:12       ` Lukasz Majewski
@ 2017-05-31  8:02         ` Eddie Cai
  2017-05-31  8:18           ` Lukasz Majewski
  2017-06-03 14:23           ` Lukasz Majewski
  0 siblings, 2 replies; 22+ messages in thread
From: Eddie Cai @ 2017-05-31  8:02 UTC (permalink / raw)
  To: u-boot

2017-05-31 15:12 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> On Wed, 31 May 2017 10:27:23 +0800
> Eddie Cai <eddie.cai.linux@gmail.com> wrote:
>
>> Hi Lukasz
>>
>> 2017-05-29 15:51 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
>> > Good morning Eddie,
>> >
>> >> this patch enable rockusb support on rk3288 based device.
>> >>
>> >> Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
>> >> Reviewed-by: Simon Glass <sjg@chromium.org>
>> >>
>> >
>> > I've give this patch set a try on travisCI:
>> >
>> > https://travis-ci.org/lmajewski/u-boot-dfu/jobs/237068149
>> >
>> > Unfortunately, there are some problem with following boards:
>> >
>> > chromebook_jerry, chromebook_minnie ...
>> I did it by myself last week. i got the same error. then i fix those
>> chromebook error
>> and test again. I still got some 3036 board error. But it build
>> successfully when i
>> build it on my computer. here is the travis-ci.org error log
>> https://travis-ci.org/eddiecailinux/u-boot/jobs/236232837
>> I have no idea what can i do to fix it.
>
> Can you share the SHA1 of commit on top of which you applied your
> patches?
>
> I take u-boot-usb (the USB u-boot tree from Marek Vasut) as a base and
> then apply commits on top of it.
here is my branch https://github.com/eddiecailinux/u-boot/tree/rockusb-v8
I apply my patch on top of below commit
commit a63d800196ebee59b0f8ff924f67843cd597a8c1
Author: Tom Rini <trini@konsulko.com>
Date:   Mon May 1 19:54:41 2017 -0400

    Prepare v2017.05-rc3

    Signed-off-by: Tom Rini <trini@konsulko.com>
>
>> >
>> > caused by "undefined references to ...."
>> >
>> > I've tried your patches on top of:
>> > u-boot-usb/HEAD
>> > SHA1: 3426b2038cfb831d74ac0407fc7a04e990b44540
>> >
>> > Maybe you have built tested it on other branch/commit?
>> >
>> > Best regards,
>> > Łukasz Majewski
>> >
>> > p.s. My travis CI .travis.yml attached.
>> >
>> >> Changes in v7:
>> >> -use imply in the Kconfig to enable rockusb
>> >>
>> >> Changes in v6:
>> >> -enable rockusb in defconfig
>> >>
>> >> Changes in v5:
>> >> -none
>> >>
>> >> Changes in v4:
>> >> -move to rk3288_common.h
>> >>
>> >> Changes in v3:
>> >> -move to defconfig
>> >>
>> >> ---
>> >>  arch/arm/mach-rockchip/Kconfig    | 2 ++
>> >>  configs/evb-rk3288_defconfig      | 9 +++++++++
>> >>  configs/fennec-rk3288_defconfig   | 6 ++++++
>> >>  configs/firefly-rk3288_defconfig  | 6 ++++++
>> >>  configs/miqi-rk3288_defconfig     | 6 ++++++
>> >>  configs/popmetal-rk3288_defconfig | 6 ++++++
>> >>  configs/tinker-rk3288_defconfig   | 6 ++++++
>> >>  include/configs/rk3288_common.h   | 7 -------
>> >>  8 files changed, 41 insertions(+), 7 deletions(-)
>> >>
>> >> diff --git a/arch/arm/mach-rockchip/Kconfig
>> >> b/arch/arm/mach-rockchip/Kconfig index 2b752ad..8a87812 100644
>> >> --- a/arch/arm/mach-rockchip/Kconfig
>> >> +++ b/arch/arm/mach-rockchip/Kconfig
>> >> @@ -32,6 +32,8 @@ config ROCKCHIP_RK3288
>> >>       select CPU_V7
>> >>       select SUPPORT_SPL
>> >>       select SPL
>> >> +     imply USB_FUNCTION_ROCKUSB
>> >> +     imply CMD_ROCKUSB
>> >>       help
>> >>         The Rockchip RK3288 is a ARM-based SoC with a quad-core
>> >> Cortex-A17 including NEON and GPU, 1MB L2 cache, Mali-T7 graphics,
>> >> two diff --git a/configs/evb-rk3288_defconfig
>> >> b/configs/evb-rk3288_defconfig index 227150d..cf66e09 100644
>> >> --- a/configs/evb-rk3288_defconfig
>> >> +++ b/configs/evb-rk3288_defconfig
>> >> @@ -17,6 +17,7 @@ CONFIG_CMD_MMC=y
>> >>  CONFIG_CMD_SF=y
>> >>  CONFIG_CMD_SPI=y
>> >>  CONFIG_CMD_I2C=y
>> >> +CONFIG_CMD_USB=y
>> >>  CONFIG_CMD_GPIO=y
>> >>  # CONFIG_CMD_SETEXPR is not set
>> >>  CONFIG_CMD_CACHE=y
>> >> @@ -61,6 +62,14 @@ CONFIG_DEBUG_UART_CLOCK=24000000
>> >>  CONFIG_DEBUG_UART_SHIFT=2
>> >>  CONFIG_SYS_NS16550=y
>> >>  CONFIG_SYSRESET=y
>> >> +CONFIG_USB=y
>> >> +CONFIG_USB_STORAGE=y
>> >>  CONFIG_USE_TINY_PRINTF=y
>> >>  CONFIG_CMD_DHRYSTONE=y
>> >>  CONFIG_ERRNO_STR=y
>> >> +CONFIG_USB_GADGET=y
>> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> >> diff --git a/configs/fennec-rk3288_defconfig
>> >> b/configs/fennec-rk3288_defconfig index befba18..eb33d00 100644
>> >> --- a/configs/fennec-rk3288_defconfig
>> >> +++ b/configs/fennec-rk3288_defconfig
>> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>> >>  CONFIG_USE_TINY_PRINTF=y
>> >>  CONFIG_CMD_DHRYSTONE=y
>> >>  CONFIG_ERRNO_STR=y
>> >> +CONFIG_USB_GADGET=y
>> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> >> diff --git a/configs/firefly-rk3288_defconfig
>> >> b/configs/firefly-rk3288_defconfig index f2872a6..1f4ca32 100644
>> >> --- a/configs/firefly-rk3288_defconfig
>> >> +++ b/configs/firefly-rk3288_defconfig
>> >> @@ -73,3 +73,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
>> >>  CONFIG_USE_TINY_PRINTF=y
>> >>  CONFIG_CMD_DHRYSTONE=y
>> >>  CONFIG_ERRNO_STR=y
>> >> +CONFIG_USB_GADGET=y
>> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> >> diff --git a/configs/miqi-rk3288_defconfig
>> >> b/configs/miqi-rk3288_defconfig index d93bd97..b8b6fd5 100644
>> >> --- a/configs/miqi-rk3288_defconfig
>> >> +++ b/configs/miqi-rk3288_defconfig
>> >> @@ -70,3 +70,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
>> >>  CONFIG_USE_TINY_PRINTF=y
>> >>  CONFIG_CMD_DHRYSTONE=y
>> >>  CONFIG_ERRNO_STR=y
>> >> +CONFIG_USB_GADGET=y
>> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> >> diff --git a/configs/popmetal-rk3288_defconfig
>> >> b/configs/popmetal-rk3288_defconfig index 748cda4..1181a20 100644
>> >> --- a/configs/popmetal-rk3288_defconfig
>> >> +++ b/configs/popmetal-rk3288_defconfig
>> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>> >>  CONFIG_USE_TINY_PRINTF=y
>> >>  CONFIG_CMD_DHRYSTONE=y
>> >>  CONFIG_ERRNO_STR=y
>> >> +CONFIG_USB_GADGET=y
>> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> >> diff --git a/configs/tinker-rk3288_defconfig
>> >> b/configs/tinker-rk3288_defconfig index ada5950..f863df8 100644
>> >> --- a/configs/tinker-rk3288_defconfig
>> >> +++ b/configs/tinker-rk3288_defconfig
>> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>> >>  CONFIG_USE_TINY_PRINTF=y
>> >>  CONFIG_CMD_DHRYSTONE=y
>> >>  CONFIG_ERRNO_STR=y
>> >> +CONFIG_USB_GADGET=y
>> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> >> diff --git a/include/configs/rk3288_common.h
>> >> b/include/configs/rk3288_common.h index e7a8f72..421ba60 100644
>> >> --- a/include/configs/rk3288_common.h
>> >> +++ b/include/configs/rk3288_common.h
>> >> @@ -58,11 +58,9 @@
>> >>
>> >>  #ifndef CONFIG_SPL_BUILD
>> >>  /* usb otg */
>> >> -#define CONFIG_USB_GADGET
>> >>  #define CONFIG_USB_GADGET_DUALSPEED
>> >>  #define CONFIG_USB_GADGET_DWC2_OTG
>> >>  #define CONFIG_ROCKCHIP_USB2_PHY
>> >> -#define CONFIG_USB_GADGET_VBUS_DRAW  0
>> >>
>> >>  /* fastboot  */
>> >>  #define CONFIG_CMD_FASTBOOT
>> >> @@ -76,11 +74,6 @@
>> >>  #define CONFIG_USB_FUNCTION_MASS_STORAGE
>> >>  #define CONFIG_CMD_USB_MASS_STORAGE
>> >>
>> >> -#define CONFIG_USB_GADGET_DOWNLOAD
>> >> -#define CONFIG_G_DNL_MANUFACTURER    "Rockchip"
>> >> -#define CONFIG_G_DNL_VENDOR_NUM              0x2207
>> >> -#define CONFIG_G_DNL_PRODUCT_NUM     0x320a
>> >> -
>> >>  /* usb host support */
>> >>  #ifdef CONFIG_CMD_USB
>> >>  #define CONFIG_USB_DWC2
>> >
>> >
>> >
>> >
>> > Best regards,
>> >
>> > Lukasz Majewski
>> >
>> > --
>> >
>> > DENX Software Engineering GmbH,      Managing Director: Wolfgang
>> > Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell,
>> > Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email:
>> > wd at denx.de
>
>
>
>
> Best regards,
>
> Lukasz Majewski
>
> --
>
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-05-31  8:02         ` Eddie Cai
@ 2017-05-31  8:18           ` Lukasz Majewski
  2017-05-31  8:22             ` Lukasz Majewski
  2017-06-03 14:23           ` Lukasz Majewski
  1 sibling, 1 reply; 22+ messages in thread
From: Lukasz Majewski @ 2017-05-31  8:18 UTC (permalink / raw)
  To: u-boot

On Wed, 31 May 2017 16:02:27 +0800
Eddie Cai <eddie.cai.linux@gmail.com> wrote:

> 2017-05-31 15:12 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> > On Wed, 31 May 2017 10:27:23 +0800
> > Eddie Cai <eddie.cai.linux@gmail.com> wrote:
> >
> >> Hi Lukasz
> >>
> >> 2017-05-29 15:51 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> >> > Good morning Eddie,
> >> >
> >> >> this patch enable rockusb support on rk3288 based device.
> >> >>
> >> >> Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
> >> >> Reviewed-by: Simon Glass <sjg@chromium.org>
> >> >>
> >> >
> >> > I've give this patch set a try on travisCI:
> >> >
> >> > https://travis-ci.org/lmajewski/u-boot-dfu/jobs/237068149
> >> >
> >> > Unfortunately, there are some problem with following boards:
> >> >
> >> > chromebook_jerry, chromebook_minnie ...
> >> I did it by myself last week. i got the same error. then i fix
> >> those chromebook error
> >> and test again. I still got some 3036 board error. But it build
> >> successfully when i
> >> build it on my computer. here is the travis-ci.org error log
> >> https://travis-ci.org/eddiecailinux/u-boot/jobs/236232837
> >> I have no idea what can i do to fix it.
> >
> > Can you share the SHA1 of commit on top of which you applied your
> > patches?
> >
> > I take u-boot-usb (the USB u-boot tree from Marek Vasut) as a base
> > and then apply commits on top of it.
> here is my branch
> https://github.com/eddiecailinux/u-boot/tree/rockusb-v8 I apply my
> patch on top of below commit commit
> a63d800196ebee59b0f8ff924f67843cd597a8c1 Author: Tom Rini
> <trini@konsulko.com> Date:   Mon May 1 19:54:41 2017 -0400
> 
>     Prepare v2017.05-rc3
> 
>     Signed-off-by: Tom Rini <trini@konsulko.com>

Ok. Thanks for the info.

The u-boot-usb seems to be a bit older.

Anyway, have you tried with compiling your code with toolchains
suggested by Tom?

Best regards,
Łukasz Majewski

> >
> >> >
> >> > caused by "undefined references to ...."
> >> >
> >> > I've tried your patches on top of:
> >> > u-boot-usb/HEAD
> >> > SHA1: 3426b2038cfb831d74ac0407fc7a04e990b44540
> >> >
> >> > Maybe you have built tested it on other branch/commit?
> >> >
> >> > Best regards,
> >> > Łukasz Majewski
> >> >
> >> > p.s. My travis CI .travis.yml attached.
> >> >
> >> >> Changes in v7:
> >> >> -use imply in the Kconfig to enable rockusb
> >> >>
> >> >> Changes in v6:
> >> >> -enable rockusb in defconfig
> >> >>
> >> >> Changes in v5:
> >> >> -none
> >> >>
> >> >> Changes in v4:
> >> >> -move to rk3288_common.h
> >> >>
> >> >> Changes in v3:
> >> >> -move to defconfig
> >> >>
> >> >> ---
> >> >>  arch/arm/mach-rockchip/Kconfig    | 2 ++
> >> >>  configs/evb-rk3288_defconfig      | 9 +++++++++
> >> >>  configs/fennec-rk3288_defconfig   | 6 ++++++
> >> >>  configs/firefly-rk3288_defconfig  | 6 ++++++
> >> >>  configs/miqi-rk3288_defconfig     | 6 ++++++
> >> >>  configs/popmetal-rk3288_defconfig | 6 ++++++
> >> >>  configs/tinker-rk3288_defconfig   | 6 ++++++
> >> >>  include/configs/rk3288_common.h   | 7 -------
> >> >>  8 files changed, 41 insertions(+), 7 deletions(-)
> >> >>
> >> >> diff --git a/arch/arm/mach-rockchip/Kconfig
> >> >> b/arch/arm/mach-rockchip/Kconfig index 2b752ad..8a87812 100644
> >> >> --- a/arch/arm/mach-rockchip/Kconfig
> >> >> +++ b/arch/arm/mach-rockchip/Kconfig
> >> >> @@ -32,6 +32,8 @@ config ROCKCHIP_RK3288
> >> >>       select CPU_V7
> >> >>       select SUPPORT_SPL
> >> >>       select SPL
> >> >> +     imply USB_FUNCTION_ROCKUSB
> >> >> +     imply CMD_ROCKUSB
> >> >>       help
> >> >>         The Rockchip RK3288 is a ARM-based SoC with a quad-core
> >> >> Cortex-A17 including NEON and GPU, 1MB L2 cache, Mali-T7
> >> >> graphics, two diff --git a/configs/evb-rk3288_defconfig
> >> >> b/configs/evb-rk3288_defconfig index 227150d..cf66e09 100644
> >> >> --- a/configs/evb-rk3288_defconfig
> >> >> +++ b/configs/evb-rk3288_defconfig
> >> >> @@ -17,6 +17,7 @@ CONFIG_CMD_MMC=y
> >> >>  CONFIG_CMD_SF=y
> >> >>  CONFIG_CMD_SPI=y
> >> >>  CONFIG_CMD_I2C=y
> >> >> +CONFIG_CMD_USB=y
> >> >>  CONFIG_CMD_GPIO=y
> >> >>  # CONFIG_CMD_SETEXPR is not set
> >> >>  CONFIG_CMD_CACHE=y
> >> >> @@ -61,6 +62,14 @@ CONFIG_DEBUG_UART_CLOCK=24000000
> >> >>  CONFIG_DEBUG_UART_SHIFT=2
> >> >>  CONFIG_SYS_NS16550=y
> >> >>  CONFIG_SYSRESET=y
> >> >> +CONFIG_USB=y
> >> >> +CONFIG_USB_STORAGE=y
> >> >>  CONFIG_USE_TINY_PRINTF=y
> >> >>  CONFIG_CMD_DHRYSTONE=y
> >> >>  CONFIG_ERRNO_STR=y
> >> >> +CONFIG_USB_GADGET=y
> >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> >> diff --git a/configs/fennec-rk3288_defconfig
> >> >> b/configs/fennec-rk3288_defconfig index befba18..eb33d00 100644
> >> >> --- a/configs/fennec-rk3288_defconfig
> >> >> +++ b/configs/fennec-rk3288_defconfig
> >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> >> >>  CONFIG_USE_TINY_PRINTF=y
> >> >>  CONFIG_CMD_DHRYSTONE=y
> >> >>  CONFIG_ERRNO_STR=y
> >> >> +CONFIG_USB_GADGET=y
> >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> >> diff --git a/configs/firefly-rk3288_defconfig
> >> >> b/configs/firefly-rk3288_defconfig index f2872a6..1f4ca32 100644
> >> >> --- a/configs/firefly-rk3288_defconfig
> >> >> +++ b/configs/firefly-rk3288_defconfig
> >> >> @@ -73,3 +73,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
> >> >>  CONFIG_USE_TINY_PRINTF=y
> >> >>  CONFIG_CMD_DHRYSTONE=y
> >> >>  CONFIG_ERRNO_STR=y
> >> >> +CONFIG_USB_GADGET=y
> >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> >> diff --git a/configs/miqi-rk3288_defconfig
> >> >> b/configs/miqi-rk3288_defconfig index d93bd97..b8b6fd5 100644
> >> >> --- a/configs/miqi-rk3288_defconfig
> >> >> +++ b/configs/miqi-rk3288_defconfig
> >> >> @@ -70,3 +70,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
> >> >>  CONFIG_USE_TINY_PRINTF=y
> >> >>  CONFIG_CMD_DHRYSTONE=y
> >> >>  CONFIG_ERRNO_STR=y
> >> >> +CONFIG_USB_GADGET=y
> >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> >> diff --git a/configs/popmetal-rk3288_defconfig
> >> >> b/configs/popmetal-rk3288_defconfig index 748cda4..1181a20
> >> >> 100644 --- a/configs/popmetal-rk3288_defconfig
> >> >> +++ b/configs/popmetal-rk3288_defconfig
> >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> >> >>  CONFIG_USE_TINY_PRINTF=y
> >> >>  CONFIG_CMD_DHRYSTONE=y
> >> >>  CONFIG_ERRNO_STR=y
> >> >> +CONFIG_USB_GADGET=y
> >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> >> diff --git a/configs/tinker-rk3288_defconfig
> >> >> b/configs/tinker-rk3288_defconfig index ada5950..f863df8 100644
> >> >> --- a/configs/tinker-rk3288_defconfig
> >> >> +++ b/configs/tinker-rk3288_defconfig
> >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> >> >>  CONFIG_USE_TINY_PRINTF=y
> >> >>  CONFIG_CMD_DHRYSTONE=y
> >> >>  CONFIG_ERRNO_STR=y
> >> >> +CONFIG_USB_GADGET=y
> >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> >> diff --git a/include/configs/rk3288_common.h
> >> >> b/include/configs/rk3288_common.h index e7a8f72..421ba60 100644
> >> >> --- a/include/configs/rk3288_common.h
> >> >> +++ b/include/configs/rk3288_common.h
> >> >> @@ -58,11 +58,9 @@
> >> >>
> >> >>  #ifndef CONFIG_SPL_BUILD
> >> >>  /* usb otg */
> >> >> -#define CONFIG_USB_GADGET
> >> >>  #define CONFIG_USB_GADGET_DUALSPEED
> >> >>  #define CONFIG_USB_GADGET_DWC2_OTG
> >> >>  #define CONFIG_ROCKCHIP_USB2_PHY
> >> >> -#define CONFIG_USB_GADGET_VBUS_DRAW  0
> >> >>
> >> >>  /* fastboot  */
> >> >>  #define CONFIG_CMD_FASTBOOT
> >> >> @@ -76,11 +74,6 @@
> >> >>  #define CONFIG_USB_FUNCTION_MASS_STORAGE
> >> >>  #define CONFIG_CMD_USB_MASS_STORAGE
> >> >>
> >> >> -#define CONFIG_USB_GADGET_DOWNLOAD
> >> >> -#define CONFIG_G_DNL_MANUFACTURER    "Rockchip"
> >> >> -#define CONFIG_G_DNL_VENDOR_NUM              0x2207
> >> >> -#define CONFIG_G_DNL_PRODUCT_NUM     0x320a
> >> >> -
> >> >>  /* usb host support */
> >> >>  #ifdef CONFIG_CMD_USB
> >> >>  #define CONFIG_USB_DWC2
> >> >
> >> >
> >> >
> >> >
> >> > Best regards,
> >> >
> >> > Lukasz Majewski
> >> >
> >> > --
> >> >
> >> > DENX Software Engineering GmbH,      Managing Director: Wolfgang
> >> > Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194
> >> > Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax:
> >> > (+49)-8142-66989-80 Email: wd at denx.de
> >
> >
> >
> >
> > Best regards,
> >
> > Lukasz Majewski
> >
> > --
> >
> > DENX Software Engineering GmbH,      Managing Director: Wolfgang
> > Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell,
> > Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email:
> > wd at denx.de




Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-05-31  8:18           ` Lukasz Majewski
@ 2017-05-31  8:22             ` Lukasz Majewski
  2017-05-31  8:41               ` Eddie Cai
  0 siblings, 1 reply; 22+ messages in thread
From: Lukasz Majewski @ 2017-05-31  8:22 UTC (permalink / raw)
  To: u-boot

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="windows-1254", Size: 687 bytes --]

Hi Eddie,

> >     Prepare v2017.05-rc3
> > 
> >     Signed-off-by: Tom Rini <trini@konsulko.com>  
> 
> Ok. Thanks for the info.
> 
> The u-boot-usb seems to be a bit older.
				   ^^^^^^ sorry newer :-)

"usb: ehci: Add Renesas RCar M3/H3 EHCI support"
3426b2038cfb831d74ac0407fc7a04e990b44540

> 
> Anyway, have you tried with compiling your code with toolchains
> suggested by Tom?
> 
> Best regards,
> Łukasz Majewski
> 
> > >  



Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-05-31  8:22             ` Lukasz Majewski
@ 2017-05-31  8:41               ` Eddie Cai
  2017-05-31  8:43                 ` Eddie Cai
  0 siblings, 1 reply; 22+ messages in thread
From: Eddie Cai @ 2017-05-31  8:41 UTC (permalink / raw)
  To: u-boot

2017-05-31 16:22 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> Hi Eddie,
>
>> >     Prepare v2017.05-rc3
>> >
>> >     Signed-off-by: Tom Rini <trini@konsulko.com>
>>
>> Ok. Thanks for the info.
>>
>> The u-boot-usb seems to be a bit older.
>                                    ^^^^^^ sorry newer :-)
>
> "usb: ehci: Add Renesas RCar M3/H3 EHCI support"
> 3426b2038cfb831d74ac0407fc7a04e990b44540
>
>>
>> Anyway, have you tried with compiling your code with toolchains
>> suggested by Tom?
Yes. I tried to build with this toolchain on my computer. It build
successfully, but i got below warning.

  CC      spl/arch/arm/mach-rockchip/rk3036-board-spl.o
arch/arm/mach-rockchip/rk3036-board-spl.c:20:34: warning: ‘grf’
defined but not used [-Wunused-const-variable=]
 static struct rk3036_grf * const grf = (void *)GRF_BASE;

I don't think it relate to my patches. so i checkout below commit and
build with the same toolchain again. i got the same warning.
commit a63d800196ebee59b0f8ff924f67843cd597a8c1
Author: Tom Rini <trini@konsulko.com>
Date:   Mon May 1 19:54:41 2017 -0400

    Prepare v2017.05-rc3

    Signed-off-by: Tom Rini <trini@konsulko.com>
>>
>> Best regards,
>> Łukasz Majewski
>>
>> > >
>
>
>
> Best regards,
>
> Lukasz Majewski
>
> --
>
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-05-31  8:41               ` Eddie Cai
@ 2017-05-31  8:43                 ` Eddie Cai
  0 siblings, 0 replies; 22+ messages in thread
From: Eddie Cai @ 2017-05-31  8:43 UTC (permalink / raw)
  To: u-boot

2017-05-31 16:41 GMT+08:00 Eddie Cai <eddie.cai.linux@gmail.com>:
> 2017-05-31 16:22 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
>> Hi Eddie,
>>
>>> >     Prepare v2017.05-rc3
>>> >
>>> >     Signed-off-by: Tom Rini <trini@konsulko.com>
>>>
>>> Ok. Thanks for the info.
>>>
>>> The u-boot-usb seems to be a bit older.
>>                                    ^^^^^^ sorry newer :-)
>>
>> "usb: ehci: Add Renesas RCar M3/H3 EHCI support"
>> 3426b2038cfb831d74ac0407fc7a04e990b44540
>>
>>>
>>> Anyway, have you tried with compiling your code with toolchains
>>> suggested by Tom?
> Yes. I tried to build with this toolchain on my computer. It build
> successfully, but i got below warning.
>
>   CC      spl/arch/arm/mach-rockchip/rk3036-board-spl.o
> arch/arm/mach-rockchip/rk3036-board-spl.c:20:34: warning: ‘grf’
> defined but not used [-Wunused-const-variable=]
>  static struct rk3036_grf * const grf = (void *)GRF_BASE;
>
> I don't think it relate to my patches. so i checkout below commit and
> build with the same toolchain again. i got the same warning.
> commit a63d800196ebee59b0f8ff924f67843cd597a8c1
> Author: Tom Rini <trini@konsulko.com>
> Date:   Mon May 1 19:54:41 2017 -0400
>
>     Prepare v2017.05-rc3
>
>     Signed-off-by: Tom Rini <trini@konsulko.com>
Anyway, This warning is not the same error travis-ci report.
>>>
>>> Best regards,
>>> Łukasz Majewski
>>>
>>> > >
>>
>>
>>
>> Best regards,
>>
>> Lukasz Majewski
>>
>> --
>>
>> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
>> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
>> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-05-31  8:02         ` Eddie Cai
  2017-05-31  8:18           ` Lukasz Majewski
@ 2017-06-03 14:23           ` Lukasz Majewski
  2017-06-21  7:44             ` Lukasz Majewski
  1 sibling, 1 reply; 22+ messages in thread
From: Lukasz Majewski @ 2017-06-03 14:23 UTC (permalink / raw)
  To: u-boot

Hi Eddie,

> 2017-05-31 15:12 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> > On Wed, 31 May 2017 10:27:23 +0800
> > Eddie Cai <eddie.cai.linux@gmail.com> wrote:
> >
> >> Hi Lukasz
> >>
> >> 2017-05-29 15:51 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> >> > Good morning Eddie,
> >> >
> >> >> this patch enable rockusb support on rk3288 based device.
> >> >>
> >> >> Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
> >> >> Reviewed-by: Simon Glass <sjg@chromium.org>
> >> >>
> >> >
> >> > I've give this patch set a try on travisCI:
> >> >
> >> > https://travis-ci.org/lmajewski/u-boot-dfu/jobs/237068149
> >> >
> >> > Unfortunately, there are some problem with following boards:
> >> >
> >> > chromebook_jerry, chromebook_minnie ...
> >> I did it by myself last week. i got the same error. then i fix
> >> those chromebook error
> >> and test again. I still got some 3036 board error. But it build
> >> successfully when i
> >> build it on my computer. here is the travis-ci.org error log
> >> https://travis-ci.org/eddiecailinux/u-boot/jobs/236232837
> >> I have no idea what can i do to fix it.
> >
> > Can you share the SHA1 of commit on top of which you applied your
> > patches?
> >
> > I take u-boot-usb (the USB u-boot tree from Marek Vasut) as a base
> > and then apply commits on top of it.
> here is my branch
> https://github.com/eddiecailinux/u-boot/tree/rockusb-v8 I apply my
> patch on top of below commit commit
> a63d800196ebee59b0f8ff924f67843cd597a8c1 Author: Tom Rini
> <trini@konsulko.com> Date:   Mon May 1 19:54:41 2017 -0400
> 
>     Prepare v2017.05-rc3
> 
>     Signed-off-by: Tom Rini <trini@konsulko.com>

I've looked thoroughly at your patches:

Your patches has been applied on top of the above commit:
SHA1: a63d800196ebee59b0f8ff924f67843cd597a8c1

Before applying your patches:
https://travis-ci.org/lmajewski/u-boot-dfu/builds/239069544

After applying them:
https://travis-ci.org/lmajewski/u-boot-dfu/builds/239074799

To be more precise:
https://travis-ci.org/lmajewski/u-boot-dfu/jobs/239074800


For example:

      arm:  +   rock2
+cmd/built-in.o: In function `do_fastboot':
+cmd/fastboot.c:28: undefined reference to `board_usb_init'
+cmd/fastboot.c:34: undefined reference to `g_dnl_clear_detach'
+cmd/fastboot.c:35: undefined reference to `g_dnl_register'
+cmd/fastboot.c:39: undefined reference to
      `g_dnl_board_usb_cable_connected' +cmd/fastboot.c:57: undefined
      reference to `g_dnl_unregister' +cmd/fastboot.c:58: undefined
      reference to `g_dnl_clear_detach' +cmd/fastboot.c:59: undefined
      reference to `board_usb_cleanup' +cmd/fastboot.c:47: undefined
      reference to `g_dnl_detach' +cmd/fastboot.c:51: undefined
      reference to `usb_gadget_handle_interrupts' +cmd/built-in.o: In
      function `do_usb_mass_storage':



For me it seems like you have enabled fastboot support on too many
rochchip's boards.

Can you look on it?

I've also updated my .travis.ml file to be in sync with mainline, so we
will use recommended arm toolchain.

Please find this file attached.

If there are any other patches required before applying this patch
series, please let me know (or better post them to ML).


Best regards,
Łukasz Majewski

> >
> >> >
> >> > caused by "undefined references to ...."
> >> >
> >> > I've tried your patches on top of:
> >> > u-boot-usb/HEAD
> >> > SHA1: 3426b2038cfb831d74ac0407fc7a04e990b44540
> >> >
> >> > Maybe you have built tested it on other branch/commit?
> >> >
> >> > Best regards,
> >> > Łukasz Majewski
> >> >
> >> > p.s. My travis CI .travis.yml attached.
> >> >
> >> >> Changes in v7:
> >> >> -use imply in the Kconfig to enable rockusb
> >> >>
> >> >> Changes in v6:
> >> >> -enable rockusb in defconfig
> >> >>
> >> >> Changes in v5:
> >> >> -none
> >> >>
> >> >> Changes in v4:
> >> >> -move to rk3288_common.h
> >> >>
> >> >> Changes in v3:
> >> >> -move to defconfig
> >> >>
> >> >> ---
> >> >>  arch/arm/mach-rockchip/Kconfig    | 2 ++
> >> >>  configs/evb-rk3288_defconfig      | 9 +++++++++
> >> >>  configs/fennec-rk3288_defconfig   | 6 ++++++
> >> >>  configs/firefly-rk3288_defconfig  | 6 ++++++
> >> >>  configs/miqi-rk3288_defconfig     | 6 ++++++
> >> >>  configs/popmetal-rk3288_defconfig | 6 ++++++
> >> >>  configs/tinker-rk3288_defconfig   | 6 ++++++
> >> >>  include/configs/rk3288_common.h   | 7 -------
> >> >>  8 files changed, 41 insertions(+), 7 deletions(-)
> >> >>
> >> >> diff --git a/arch/arm/mach-rockchip/Kconfig
> >> >> b/arch/arm/mach-rockchip/Kconfig index 2b752ad..8a87812 100644
> >> >> --- a/arch/arm/mach-rockchip/Kconfig
> >> >> +++ b/arch/arm/mach-rockchip/Kconfig
> >> >> @@ -32,6 +32,8 @@ config ROCKCHIP_RK3288
> >> >>       select CPU_V7
> >> >>       select SUPPORT_SPL
> >> >>       select SPL
> >> >> +     imply USB_FUNCTION_ROCKUSB
> >> >> +     imply CMD_ROCKUSB
> >> >>       help
> >> >>         The Rockchip RK3288 is a ARM-based SoC with a quad-core
> >> >> Cortex-A17 including NEON and GPU, 1MB L2 cache, Mali-T7
> >> >> graphics, two diff --git a/configs/evb-rk3288_defconfig
> >> >> b/configs/evb-rk3288_defconfig index 227150d..cf66e09 100644
> >> >> --- a/configs/evb-rk3288_defconfig
> >> >> +++ b/configs/evb-rk3288_defconfig
> >> >> @@ -17,6 +17,7 @@ CONFIG_CMD_MMC=y
> >> >>  CONFIG_CMD_SF=y
> >> >>  CONFIG_CMD_SPI=y
> >> >>  CONFIG_CMD_I2C=y
> >> >> +CONFIG_CMD_USB=y
> >> >>  CONFIG_CMD_GPIO=y
> >> >>  # CONFIG_CMD_SETEXPR is not set
> >> >>  CONFIG_CMD_CACHE=y
> >> >> @@ -61,6 +62,14 @@ CONFIG_DEBUG_UART_CLOCK=24000000
> >> >>  CONFIG_DEBUG_UART_SHIFT=2
> >> >>  CONFIG_SYS_NS16550=y
> >> >>  CONFIG_SYSRESET=y
> >> >> +CONFIG_USB=y
> >> >> +CONFIG_USB_STORAGE=y
> >> >>  CONFIG_USE_TINY_PRINTF=y
> >> >>  CONFIG_CMD_DHRYSTONE=y
> >> >>  CONFIG_ERRNO_STR=y
> >> >> +CONFIG_USB_GADGET=y
> >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> >> diff --git a/configs/fennec-rk3288_defconfig
> >> >> b/configs/fennec-rk3288_defconfig index befba18..eb33d00 100644
> >> >> --- a/configs/fennec-rk3288_defconfig
> >> >> +++ b/configs/fennec-rk3288_defconfig
> >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> >> >>  CONFIG_USE_TINY_PRINTF=y
> >> >>  CONFIG_CMD_DHRYSTONE=y
> >> >>  CONFIG_ERRNO_STR=y
> >> >> +CONFIG_USB_GADGET=y
> >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> >> diff --git a/configs/firefly-rk3288_defconfig
> >> >> b/configs/firefly-rk3288_defconfig index f2872a6..1f4ca32 100644
> >> >> --- a/configs/firefly-rk3288_defconfig
> >> >> +++ b/configs/firefly-rk3288_defconfig
> >> >> @@ -73,3 +73,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
> >> >>  CONFIG_USE_TINY_PRINTF=y
> >> >>  CONFIG_CMD_DHRYSTONE=y
> >> >>  CONFIG_ERRNO_STR=y
> >> >> +CONFIG_USB_GADGET=y
> >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> >> diff --git a/configs/miqi-rk3288_defconfig
> >> >> b/configs/miqi-rk3288_defconfig index d93bd97..b8b6fd5 100644
> >> >> --- a/configs/miqi-rk3288_defconfig
> >> >> +++ b/configs/miqi-rk3288_defconfig
> >> >> @@ -70,3 +70,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
> >> >>  CONFIG_USE_TINY_PRINTF=y
> >> >>  CONFIG_CMD_DHRYSTONE=y
> >> >>  CONFIG_ERRNO_STR=y
> >> >> +CONFIG_USB_GADGET=y
> >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> >> diff --git a/configs/popmetal-rk3288_defconfig
> >> >> b/configs/popmetal-rk3288_defconfig index 748cda4..1181a20
> >> >> 100644 --- a/configs/popmetal-rk3288_defconfig
> >> >> +++ b/configs/popmetal-rk3288_defconfig
> >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> >> >>  CONFIG_USE_TINY_PRINTF=y
> >> >>  CONFIG_CMD_DHRYSTONE=y
> >> >>  CONFIG_ERRNO_STR=y
> >> >> +CONFIG_USB_GADGET=y
> >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> >> diff --git a/configs/tinker-rk3288_defconfig
> >> >> b/configs/tinker-rk3288_defconfig index ada5950..f863df8 100644
> >> >> --- a/configs/tinker-rk3288_defconfig
> >> >> +++ b/configs/tinker-rk3288_defconfig
> >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> >> >>  CONFIG_USE_TINY_PRINTF=y
> >> >>  CONFIG_CMD_DHRYSTONE=y
> >> >>  CONFIG_ERRNO_STR=y
> >> >> +CONFIG_USB_GADGET=y
> >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> >> diff --git a/include/configs/rk3288_common.h
> >> >> b/include/configs/rk3288_common.h index e7a8f72..421ba60 100644
> >> >> --- a/include/configs/rk3288_common.h
> >> >> +++ b/include/configs/rk3288_common.h
> >> >> @@ -58,11 +58,9 @@
> >> >>
> >> >>  #ifndef CONFIG_SPL_BUILD
> >> >>  /* usb otg */
> >> >> -#define CONFIG_USB_GADGET
> >> >>  #define CONFIG_USB_GADGET_DUALSPEED
> >> >>  #define CONFIG_USB_GADGET_DWC2_OTG
> >> >>  #define CONFIG_ROCKCHIP_USB2_PHY
> >> >> -#define CONFIG_USB_GADGET_VBUS_DRAW  0
> >> >>
> >> >>  /* fastboot  */
> >> >>  #define CONFIG_CMD_FASTBOOT
> >> >> @@ -76,11 +74,6 @@
> >> >>  #define CONFIG_USB_FUNCTION_MASS_STORAGE
> >> >>  #define CONFIG_CMD_USB_MASS_STORAGE
> >> >>
> >> >> -#define CONFIG_USB_GADGET_DOWNLOAD
> >> >> -#define CONFIG_G_DNL_MANUFACTURER    "Rockchip"
> >> >> -#define CONFIG_G_DNL_VENDOR_NUM              0x2207
> >> >> -#define CONFIG_G_DNL_PRODUCT_NUM     0x320a
> >> >> -
> >> >>  /* usb host support */
> >> >>  #ifdef CONFIG_CMD_USB
> >> >>  #define CONFIG_USB_DWC2
> >> >
> >> >
> >> >
> >> >
> >> > Best regards,
> >> >
> >> > Lukasz Majewski
> >> >
> >> > --
> >> >
> >> > DENX Software Engineering GmbH,      Managing Director: Wolfgang
> >> > Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194
> >> > Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax:
> >> > (+49)-8142-66989-80 Email: wd at denx.de
> >
> >
> >
> >
> > Best regards,
> >
> > Lukasz Majewski
> >
> > --
> >
> > DENX Software Engineering GmbH,      Managing Director: Wolfgang
> > Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell,
> > Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email:
> > wd at denx.de




Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dot_travis.yml
Type: application/x-yaml
Size: 5478 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170603/14b0dbde/attachment.bin>

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-06-03 14:23           ` Lukasz Majewski
@ 2017-06-21  7:44             ` Lukasz Majewski
  2017-06-28  7:33               ` Eddie Cai
  0 siblings, 1 reply; 22+ messages in thread
From: Lukasz Majewski @ 2017-06-21  7:44 UTC (permalink / raw)
  To: u-boot

Hi Eddie,

> Hi Eddie,
> 
> > 2017-05-31 15:12 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> > > On Wed, 31 May 2017 10:27:23 +0800
> > > Eddie Cai <eddie.cai.linux@gmail.com> wrote:
> > >
> > >> Hi Lukasz
> > >>
> > >> 2017-05-29 15:51 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> > >> > Good morning Eddie,
> > >> >
> > >> >> this patch enable rockusb support on rk3288 based device.
> > >> >>
> > >> >> Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
> > >> >> Reviewed-by: Simon Glass <sjg@chromium.org>
> > >> >>
> > >> >
> > >> > I've give this patch set a try on travisCI:
> > >> >
> > >> > https://travis-ci.org/lmajewski/u-boot-dfu/jobs/237068149
> > >> >
> > >> > Unfortunately, there are some problem with following boards:
> > >> >
> > >> > chromebook_jerry, chromebook_minnie ...
> > >> I did it by myself last week. i got the same error. then i fix
> > >> those chromebook error
> > >> and test again. I still got some 3036 board error. But it build
> > >> successfully when i
> > >> build it on my computer. here is the travis-ci.org error log
> > >> https://travis-ci.org/eddiecailinux/u-boot/jobs/236232837
> > >> I have no idea what can i do to fix it.
> > >
> > > Can you share the SHA1 of commit on top of which you applied your
> > > patches?
> > >
> > > I take u-boot-usb (the USB u-boot tree from Marek Vasut) as a base
> > > and then apply commits on top of it.
> > here is my branch
> > https://github.com/eddiecailinux/u-boot/tree/rockusb-v8 I apply my
> > patch on top of below commit commit
> > a63d800196ebee59b0f8ff924f67843cd597a8c1 Author: Tom Rini
> > <trini@konsulko.com> Date:   Mon May 1 19:54:41 2017 -0400
> > 
> >     Prepare v2017.05-rc3
> > 
> >     Signed-off-by: Tom Rini <trini@konsulko.com>
> 
> I've looked thoroughly at your patches:
> 
> Your patches has been applied on top of the above commit:
> SHA1: a63d800196ebee59b0f8ff924f67843cd597a8c1
> 
> Before applying your patches:
> https://travis-ci.org/lmajewski/u-boot-dfu/builds/239069544
> 
> After applying them:
> https://travis-ci.org/lmajewski/u-boot-dfu/builds/239074799
> 
> To be more precise:
> https://travis-ci.org/lmajewski/u-boot-dfu/jobs/239074800
> 
> 
> For example:
> 
>       arm:  +   rock2
> +cmd/built-in.o: In function `do_fastboot':
> +cmd/fastboot.c:28: undefined reference to `board_usb_init'
> +cmd/fastboot.c:34: undefined reference to `g_dnl_clear_detach'
> +cmd/fastboot.c:35: undefined reference to `g_dnl_register'
> +cmd/fastboot.c:39: undefined reference to
>       `g_dnl_board_usb_cable_connected' +cmd/fastboot.c:57: undefined
>       reference to `g_dnl_unregister' +cmd/fastboot.c:58: undefined
>       reference to `g_dnl_clear_detach' +cmd/fastboot.c:59: undefined
>       reference to `board_usb_cleanup' +cmd/fastboot.c:47: undefined
>       reference to `g_dnl_detach' +cmd/fastboot.c:51: undefined
>       reference to `usb_gadget_handle_interrupts' +cmd/built-in.o: In
>       function `do_usb_mass_storage':
> 
> 
> 
> For me it seems like you have enabled fastboot support on too many
> rochchip's boards.
> 
> Can you look on it?

If I might ask - have you managed to investigate this issue?

> 
> I've also updated my .travis.ml file to be in sync with mainline, so
> we will use recommended arm toolchain.
> 
> Please find this file attached.
> 
> If there are any other patches required before applying this patch
> series, please let me know (or better post them to ML).
> 
> 
> Best regards,
> Łukasz Majewski
> 
> > >
> > >> >
> > >> > caused by "undefined references to ...."
> > >> >
> > >> > I've tried your patches on top of:
> > >> > u-boot-usb/HEAD
> > >> > SHA1: 3426b2038cfb831d74ac0407fc7a04e990b44540
> > >> >
> > >> > Maybe you have built tested it on other branch/commit?
> > >> >
> > >> > Best regards,
> > >> > Łukasz Majewski
> > >> >
> > >> > p.s. My travis CI .travis.yml attached.
> > >> >
> > >> >> Changes in v7:
> > >> >> -use imply in the Kconfig to enable rockusb
> > >> >>
> > >> >> Changes in v6:
> > >> >> -enable rockusb in defconfig
> > >> >>
> > >> >> Changes in v5:
> > >> >> -none
> > >> >>
> > >> >> Changes in v4:
> > >> >> -move to rk3288_common.h
> > >> >>
> > >> >> Changes in v3:
> > >> >> -move to defconfig
> > >> >>
> > >> >> ---
> > >> >>  arch/arm/mach-rockchip/Kconfig    | 2 ++
> > >> >>  configs/evb-rk3288_defconfig      | 9 +++++++++
> > >> >>  configs/fennec-rk3288_defconfig   | 6 ++++++
> > >> >>  configs/firefly-rk3288_defconfig  | 6 ++++++
> > >> >>  configs/miqi-rk3288_defconfig     | 6 ++++++
> > >> >>  configs/popmetal-rk3288_defconfig | 6 ++++++
> > >> >>  configs/tinker-rk3288_defconfig   | 6 ++++++
> > >> >>  include/configs/rk3288_common.h   | 7 -------
> > >> >>  8 files changed, 41 insertions(+), 7 deletions(-)
> > >> >>
> > >> >> diff --git a/arch/arm/mach-rockchip/Kconfig
> > >> >> b/arch/arm/mach-rockchip/Kconfig index 2b752ad..8a87812 100644
> > >> >> --- a/arch/arm/mach-rockchip/Kconfig
> > >> >> +++ b/arch/arm/mach-rockchip/Kconfig
> > >> >> @@ -32,6 +32,8 @@ config ROCKCHIP_RK3288
> > >> >>       select CPU_V7
> > >> >>       select SUPPORT_SPL
> > >> >>       select SPL
> > >> >> +     imply USB_FUNCTION_ROCKUSB
> > >> >> +     imply CMD_ROCKUSB
> > >> >>       help
> > >> >>         The Rockchip RK3288 is a ARM-based SoC with a
> > >> >> quad-core Cortex-A17 including NEON and GPU, 1MB L2 cache,
> > >> >> Mali-T7 graphics, two diff --git
> > >> >> a/configs/evb-rk3288_defconfig b/configs/evb-rk3288_defconfig
> > >> >> index 227150d..cf66e09 100644 ---
> > >> >> a/configs/evb-rk3288_defconfig +++
> > >> >> b/configs/evb-rk3288_defconfig @@ -17,6 +17,7 @@
> > >> >> CONFIG_CMD_MMC=y CONFIG_CMD_SF=y
> > >> >>  CONFIG_CMD_SPI=y
> > >> >>  CONFIG_CMD_I2C=y
> > >> >> +CONFIG_CMD_USB=y
> > >> >>  CONFIG_CMD_GPIO=y
> > >> >>  # CONFIG_CMD_SETEXPR is not set
> > >> >>  CONFIG_CMD_CACHE=y
> > >> >> @@ -61,6 +62,14 @@ CONFIG_DEBUG_UART_CLOCK=24000000
> > >> >>  CONFIG_DEBUG_UART_SHIFT=2
> > >> >>  CONFIG_SYS_NS16550=y
> > >> >>  CONFIG_SYSRESET=y
> > >> >> +CONFIG_USB=y
> > >> >> +CONFIG_USB_STORAGE=y
> > >> >>  CONFIG_USE_TINY_PRINTF=y
> > >> >>  CONFIG_CMD_DHRYSTONE=y
> > >> >>  CONFIG_ERRNO_STR=y
> > >> >> +CONFIG_USB_GADGET=y
> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> > >> >> diff --git a/configs/fennec-rk3288_defconfig
> > >> >> b/configs/fennec-rk3288_defconfig index befba18..eb33d00
> > >> >> 100644 --- a/configs/fennec-rk3288_defconfig
> > >> >> +++ b/configs/fennec-rk3288_defconfig
> > >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> > >> >>  CONFIG_USE_TINY_PRINTF=y
> > >> >>  CONFIG_CMD_DHRYSTONE=y
> > >> >>  CONFIG_ERRNO_STR=y
> > >> >> +CONFIG_USB_GADGET=y
> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> > >> >> diff --git a/configs/firefly-rk3288_defconfig
> > >> >> b/configs/firefly-rk3288_defconfig index f2872a6..1f4ca32
> > >> >> 100644 --- a/configs/firefly-rk3288_defconfig
> > >> >> +++ b/configs/firefly-rk3288_defconfig
> > >> >> @@ -73,3 +73,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
> > >> >>  CONFIG_USE_TINY_PRINTF=y
> > >> >>  CONFIG_CMD_DHRYSTONE=y
> > >> >>  CONFIG_ERRNO_STR=y
> > >> >> +CONFIG_USB_GADGET=y
> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> > >> >> diff --git a/configs/miqi-rk3288_defconfig
> > >> >> b/configs/miqi-rk3288_defconfig index d93bd97..b8b6fd5 100644
> > >> >> --- a/configs/miqi-rk3288_defconfig
> > >> >> +++ b/configs/miqi-rk3288_defconfig
> > >> >> @@ -70,3 +70,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
> > >> >>  CONFIG_USE_TINY_PRINTF=y
> > >> >>  CONFIG_CMD_DHRYSTONE=y
> > >> >>  CONFIG_ERRNO_STR=y
> > >> >> +CONFIG_USB_GADGET=y
> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> > >> >> diff --git a/configs/popmetal-rk3288_defconfig
> > >> >> b/configs/popmetal-rk3288_defconfig index 748cda4..1181a20
> > >> >> 100644 --- a/configs/popmetal-rk3288_defconfig
> > >> >> +++ b/configs/popmetal-rk3288_defconfig
> > >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> > >> >>  CONFIG_USE_TINY_PRINTF=y
> > >> >>  CONFIG_CMD_DHRYSTONE=y
> > >> >>  CONFIG_ERRNO_STR=y
> > >> >> +CONFIG_USB_GADGET=y
> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> > >> >> diff --git a/configs/tinker-rk3288_defconfig
> > >> >> b/configs/tinker-rk3288_defconfig index ada5950..f863df8
> > >> >> 100644 --- a/configs/tinker-rk3288_defconfig
> > >> >> +++ b/configs/tinker-rk3288_defconfig
> > >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> > >> >>  CONFIG_USE_TINY_PRINTF=y
> > >> >>  CONFIG_CMD_DHRYSTONE=y
> > >> >>  CONFIG_ERRNO_STR=y
> > >> >> +CONFIG_USB_GADGET=y
> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> > >> >> diff --git a/include/configs/rk3288_common.h
> > >> >> b/include/configs/rk3288_common.h index e7a8f72..421ba60
> > >> >> 100644 --- a/include/configs/rk3288_common.h
> > >> >> +++ b/include/configs/rk3288_common.h
> > >> >> @@ -58,11 +58,9 @@
> > >> >>
> > >> >>  #ifndef CONFIG_SPL_BUILD
> > >> >>  /* usb otg */
> > >> >> -#define CONFIG_USB_GADGET
> > >> >>  #define CONFIG_USB_GADGET_DUALSPEED
> > >> >>  #define CONFIG_USB_GADGET_DWC2_OTG
> > >> >>  #define CONFIG_ROCKCHIP_USB2_PHY
> > >> >> -#define CONFIG_USB_GADGET_VBUS_DRAW  0
> > >> >>
> > >> >>  /* fastboot  */
> > >> >>  #define CONFIG_CMD_FASTBOOT
> > >> >> @@ -76,11 +74,6 @@
> > >> >>  #define CONFIG_USB_FUNCTION_MASS_STORAGE
> > >> >>  #define CONFIG_CMD_USB_MASS_STORAGE
> > >> >>
> > >> >> -#define CONFIG_USB_GADGET_DOWNLOAD
> > >> >> -#define CONFIG_G_DNL_MANUFACTURER    "Rockchip"
> > >> >> -#define CONFIG_G_DNL_VENDOR_NUM              0x2207
> > >> >> -#define CONFIG_G_DNL_PRODUCT_NUM     0x320a
> > >> >> -
> > >> >>  /* usb host support */
> > >> >>  #ifdef CONFIG_CMD_USB
> > >> >>  #define CONFIG_USB_DWC2
> > >> >
> > >> >
> > >> >
> > >> >
> > >> > Best regards,
> > >> >
> > >> > Lukasz Majewski
> > >> >
> > >> > --
> > >> >
> > >> > DENX Software Engineering GmbH,      Managing Director:
> > >> > Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194
> > >> > Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax:
> > >> > (+49)-8142-66989-80 Email: wd at denx.de
> > >
> > >
> > >
> > >
> > > Best regards,
> > >
> > > Lukasz Majewski
> > >
> > > --
> > >
> > > DENX Software Engineering GmbH,      Managing Director: Wolfgang
> > > Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell,
> > > Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email:
> > > wd at denx.de
> 
> 
> 
> 
> Best regards,
> 
> Lukasz Majewski
> 
> --
> 
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de




Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-06-21  7:44             ` Lukasz Majewski
@ 2017-06-28  7:33               ` Eddie Cai
  2017-06-28  7:55                 ` Lukasz Majewski
  0 siblings, 1 reply; 22+ messages in thread
From: Eddie Cai @ 2017-06-28  7:33 UTC (permalink / raw)
  To: u-boot

Hi Lukasz

2017-06-21 15:44 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> Hi Eddie,
>
>> Hi Eddie,
>>
>> > 2017-05-31 15:12 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
>> > > On Wed, 31 May 2017 10:27:23 +0800
>> > > Eddie Cai <eddie.cai.linux@gmail.com> wrote:
>> > >
>> > >> Hi Lukasz
>> > >>
>> > >> 2017-05-29 15:51 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
>> > >> > Good morning Eddie,
>> > >> >
>> > >> >> this patch enable rockusb support on rk3288 based device.
>> > >> >>
>> > >> >> Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
>> > >> >> Reviewed-by: Simon Glass <sjg@chromium.org>
>> > >> >>
>> > >> >
>> > >> > I've give this patch set a try on travisCI:
>> > >> >
>> > >> > https://travis-ci.org/lmajewski/u-boot-dfu/jobs/237068149
>> > >> >
>> > >> > Unfortunately, there are some problem with following boards:
>> > >> >
>> > >> > chromebook_jerry, chromebook_minnie ...
>> > >> I did it by myself last week. i got the same error. then i fix
>> > >> those chromebook error
>> > >> and test again. I still got some 3036 board error. But it build
>> > >> successfully when i
>> > >> build it on my computer. here is the travis-ci.org error log
>> > >> https://travis-ci.org/eddiecailinux/u-boot/jobs/236232837
>> > >> I have no idea what can i do to fix it.
>> > >
>> > > Can you share the SHA1 of commit on top of which you applied your
>> > > patches?
>> > >
>> > > I take u-boot-usb (the USB u-boot tree from Marek Vasut) as a base
>> > > and then apply commits on top of it.
>> > here is my branch
>> > https://github.com/eddiecailinux/u-boot/tree/rockusb-v8 I apply my
>> > patch on top of below commit commit
>> > a63d800196ebee59b0f8ff924f67843cd597a8c1 Author: Tom Rini
>> > <trini@konsulko.com> Date:   Mon May 1 19:54:41 2017 -0400
>> >
>> >     Prepare v2017.05-rc3
>> >
>> >     Signed-off-by: Tom Rini <trini@konsulko.com>
>>
>> I've looked thoroughly at your patches:
>>
>> Your patches has been applied on top of the above commit:
>> SHA1: a63d800196ebee59b0f8ff924f67843cd597a8c1
>>
>> Before applying your patches:
>> https://travis-ci.org/lmajewski/u-boot-dfu/builds/239069544
>>
>> After applying them:
>> https://travis-ci.org/lmajewski/u-boot-dfu/builds/239074799
>>
>> To be more precise:
>> https://travis-ci.org/lmajewski/u-boot-dfu/jobs/239074800
>>
>>
>> For example:
>>
>>       arm:  +   rock2
>> +cmd/built-in.o: In function `do_fastboot':
>> +cmd/fastboot.c:28: undefined reference to `board_usb_init'
>> +cmd/fastboot.c:34: undefined reference to `g_dnl_clear_detach'
>> +cmd/fastboot.c:35: undefined reference to `g_dnl_register'
>> +cmd/fastboot.c:39: undefined reference to
>>       `g_dnl_board_usb_cable_connected' +cmd/fastboot.c:57: undefined
>>       reference to `g_dnl_unregister' +cmd/fastboot.c:58: undefined
>>       reference to `g_dnl_clear_detach' +cmd/fastboot.c:59: undefined
>>       reference to `board_usb_cleanup' +cmd/fastboot.c:47: undefined
>>       reference to `g_dnl_detach' +cmd/fastboot.c:51: undefined
>>       reference to `usb_gadget_handle_interrupts' +cmd/built-in.o: In
>>       function `do_usb_mass_storage':
>>
>>
>>
>> For me it seems like you have enabled fastboot support on too many
>> rochchip's boards.
>>
>> Can you look on it?
>
> If I might ask - have you managed to investigate this issue?
I can fix the chromebook error. But i didn't enable rockusb support on
rk3036 based board. I built these board on my desktop. It work fine.
>
>>
>> I've also updated my .travis.ml file to be in sync with mainline, so
>> we will use recommended arm toolchain.
>>
>> Please find this file attached.
>>
>> If there are any other patches required before applying this patch
>> series, please let me know (or better post them to ML).
>>
>>
>> Best regards,
>> Łukasz Majewski
>>
>> > >
>> > >> >
>> > >> > caused by "undefined references to ...."
>> > >> >
>> > >> > I've tried your patches on top of:
>> > >> > u-boot-usb/HEAD
>> > >> > SHA1: 3426b2038cfb831d74ac0407fc7a04e990b44540
>> > >> >
>> > >> > Maybe you have built tested it on other branch/commit?
>> > >> >
>> > >> > Best regards,
>> > >> > Łukasz Majewski
>> > >> >
>> > >> > p.s. My travis CI .travis.yml attached.
>> > >> >
>> > >> >> Changes in v7:
>> > >> >> -use imply in the Kconfig to enable rockusb
>> > >> >>
>> > >> >> Changes in v6:
>> > >> >> -enable rockusb in defconfig
>> > >> >>
>> > >> >> Changes in v5:
>> > >> >> -none
>> > >> >>
>> > >> >> Changes in v4:
>> > >> >> -move to rk3288_common.h
>> > >> >>
>> > >> >> Changes in v3:
>> > >> >> -move to defconfig
>> > >> >>
>> > >> >> ---
>> > >> >>  arch/arm/mach-rockchip/Kconfig    | 2 ++
>> > >> >>  configs/evb-rk3288_defconfig      | 9 +++++++++
>> > >> >>  configs/fennec-rk3288_defconfig   | 6 ++++++
>> > >> >>  configs/firefly-rk3288_defconfig  | 6 ++++++
>> > >> >>  configs/miqi-rk3288_defconfig     | 6 ++++++
>> > >> >>  configs/popmetal-rk3288_defconfig | 6 ++++++
>> > >> >>  configs/tinker-rk3288_defconfig   | 6 ++++++
>> > >> >>  include/configs/rk3288_common.h   | 7 -------
>> > >> >>  8 files changed, 41 insertions(+), 7 deletions(-)
>> > >> >>
>> > >> >> diff --git a/arch/arm/mach-rockchip/Kconfig
>> > >> >> b/arch/arm/mach-rockchip/Kconfig index 2b752ad..8a87812 100644
>> > >> >> --- a/arch/arm/mach-rockchip/Kconfig
>> > >> >> +++ b/arch/arm/mach-rockchip/Kconfig
>> > >> >> @@ -32,6 +32,8 @@ config ROCKCHIP_RK3288
>> > >> >>       select CPU_V7
>> > >> >>       select SUPPORT_SPL
>> > >> >>       select SPL
>> > >> >> +     imply USB_FUNCTION_ROCKUSB
>> > >> >> +     imply CMD_ROCKUSB
>> > >> >>       help
>> > >> >>         The Rockchip RK3288 is a ARM-based SoC with a
>> > >> >> quad-core Cortex-A17 including NEON and GPU, 1MB L2 cache,
>> > >> >> Mali-T7 graphics, two diff --git
>> > >> >> a/configs/evb-rk3288_defconfig b/configs/evb-rk3288_defconfig
>> > >> >> index 227150d..cf66e09 100644 ---
>> > >> >> a/configs/evb-rk3288_defconfig +++
>> > >> >> b/configs/evb-rk3288_defconfig @@ -17,6 +17,7 @@
>> > >> >> CONFIG_CMD_MMC=y CONFIG_CMD_SF=y
>> > >> >>  CONFIG_CMD_SPI=y
>> > >> >>  CONFIG_CMD_I2C=y
>> > >> >> +CONFIG_CMD_USB=y
>> > >> >>  CONFIG_CMD_GPIO=y
>> > >> >>  # CONFIG_CMD_SETEXPR is not set
>> > >> >>  CONFIG_CMD_CACHE=y
>> > >> >> @@ -61,6 +62,14 @@ CONFIG_DEBUG_UART_CLOCK=24000000
>> > >> >>  CONFIG_DEBUG_UART_SHIFT=2
>> > >> >>  CONFIG_SYS_NS16550=y
>> > >> >>  CONFIG_SYSRESET=y
>> > >> >> +CONFIG_USB=y
>> > >> >> +CONFIG_USB_STORAGE=y
>> > >> >>  CONFIG_USE_TINY_PRINTF=y
>> > >> >>  CONFIG_CMD_DHRYSTONE=y
>> > >> >>  CONFIG_ERRNO_STR=y
>> > >> >> +CONFIG_USB_GADGET=y
>> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> > >> >> diff --git a/configs/fennec-rk3288_defconfig
>> > >> >> b/configs/fennec-rk3288_defconfig index befba18..eb33d00
>> > >> >> 100644 --- a/configs/fennec-rk3288_defconfig
>> > >> >> +++ b/configs/fennec-rk3288_defconfig
>> > >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>> > >> >>  CONFIG_USE_TINY_PRINTF=y
>> > >> >>  CONFIG_CMD_DHRYSTONE=y
>> > >> >>  CONFIG_ERRNO_STR=y
>> > >> >> +CONFIG_USB_GADGET=y
>> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> > >> >> diff --git a/configs/firefly-rk3288_defconfig
>> > >> >> b/configs/firefly-rk3288_defconfig index f2872a6..1f4ca32
>> > >> >> 100644 --- a/configs/firefly-rk3288_defconfig
>> > >> >> +++ b/configs/firefly-rk3288_defconfig
>> > >> >> @@ -73,3 +73,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
>> > >> >>  CONFIG_USE_TINY_PRINTF=y
>> > >> >>  CONFIG_CMD_DHRYSTONE=y
>> > >> >>  CONFIG_ERRNO_STR=y
>> > >> >> +CONFIG_USB_GADGET=y
>> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> > >> >> diff --git a/configs/miqi-rk3288_defconfig
>> > >> >> b/configs/miqi-rk3288_defconfig index d93bd97..b8b6fd5 100644
>> > >> >> --- a/configs/miqi-rk3288_defconfig
>> > >> >> +++ b/configs/miqi-rk3288_defconfig
>> > >> >> @@ -70,3 +70,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
>> > >> >>  CONFIG_USE_TINY_PRINTF=y
>> > >> >>  CONFIG_CMD_DHRYSTONE=y
>> > >> >>  CONFIG_ERRNO_STR=y
>> > >> >> +CONFIG_USB_GADGET=y
>> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> > >> >> diff --git a/configs/popmetal-rk3288_defconfig
>> > >> >> b/configs/popmetal-rk3288_defconfig index 748cda4..1181a20
>> > >> >> 100644 --- a/configs/popmetal-rk3288_defconfig
>> > >> >> +++ b/configs/popmetal-rk3288_defconfig
>> > >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>> > >> >>  CONFIG_USE_TINY_PRINTF=y
>> > >> >>  CONFIG_CMD_DHRYSTONE=y
>> > >> >>  CONFIG_ERRNO_STR=y
>> > >> >> +CONFIG_USB_GADGET=y
>> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> > >> >> diff --git a/configs/tinker-rk3288_defconfig
>> > >> >> b/configs/tinker-rk3288_defconfig index ada5950..f863df8
>> > >> >> 100644 --- a/configs/tinker-rk3288_defconfig
>> > >> >> +++ b/configs/tinker-rk3288_defconfig
>> > >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>> > >> >>  CONFIG_USE_TINY_PRINTF=y
>> > >> >>  CONFIG_CMD_DHRYSTONE=y
>> > >> >>  CONFIG_ERRNO_STR=y
>> > >> >> +CONFIG_USB_GADGET=y
>> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> > >> >> diff --git a/include/configs/rk3288_common.h
>> > >> >> b/include/configs/rk3288_common.h index e7a8f72..421ba60
>> > >> >> 100644 --- a/include/configs/rk3288_common.h
>> > >> >> +++ b/include/configs/rk3288_common.h
>> > >> >> @@ -58,11 +58,9 @@
>> > >> >>
>> > >> >>  #ifndef CONFIG_SPL_BUILD
>> > >> >>  /* usb otg */
>> > >> >> -#define CONFIG_USB_GADGET
>> > >> >>  #define CONFIG_USB_GADGET_DUALSPEED
>> > >> >>  #define CONFIG_USB_GADGET_DWC2_OTG
>> > >> >>  #define CONFIG_ROCKCHIP_USB2_PHY
>> > >> >> -#define CONFIG_USB_GADGET_VBUS_DRAW  0
>> > >> >>
>> > >> >>  /* fastboot  */
>> > >> >>  #define CONFIG_CMD_FASTBOOT
>> > >> >> @@ -76,11 +74,6 @@
>> > >> >>  #define CONFIG_USB_FUNCTION_MASS_STORAGE
>> > >> >>  #define CONFIG_CMD_USB_MASS_STORAGE
>> > >> >>
>> > >> >> -#define CONFIG_USB_GADGET_DOWNLOAD
>> > >> >> -#define CONFIG_G_DNL_MANUFACTURER    "Rockchip"
>> > >> >> -#define CONFIG_G_DNL_VENDOR_NUM              0x2207
>> > >> >> -#define CONFIG_G_DNL_PRODUCT_NUM     0x320a
>> > >> >> -
>> > >> >>  /* usb host support */
>> > >> >>  #ifdef CONFIG_CMD_USB
>> > >> >>  #define CONFIG_USB_DWC2
>> > >> >
>> > >> >
>> > >> >
>> > >> >
>> > >> > Best regards,
>> > >> >
>> > >> > Lukasz Majewski
>> > >> >
>> > >> > --
>> > >> >
>> > >> > DENX Software Engineering GmbH,      Managing Director:
>> > >> > Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194
>> > >> > Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax:
>> > >> > (+49)-8142-66989-80 Email: wd at denx.de
>> > >
>> > >
>> > >
>> > >
>> > > Best regards,
>> > >
>> > > Lukasz Majewski
>> > >
>> > > --
>> > >
>> > > DENX Software Engineering GmbH,      Managing Director: Wolfgang
>> > > Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell,
>> > > Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email:
>> > > wd at denx.de
>>
>>
>>
>>
>> Best regards,
>>
>> Lukasz Majewski
>>
>> --
>>
>> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
>> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
>> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
>
>
>
>
> Best regards,
>
> Lukasz Majewski
>
> --
>
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-06-28  7:33               ` Eddie Cai
@ 2017-06-28  7:55                 ` Lukasz Majewski
  2017-06-29  0:44                   ` Eddie Cai
  0 siblings, 1 reply; 22+ messages in thread
From: Lukasz Majewski @ 2017-06-28  7:55 UTC (permalink / raw)
  To: u-boot

Hi Eddie,

> Hi Lukasz
> 
> 2017-06-21 15:44 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> > Hi Eddie,
> >
> >> Hi Eddie,
> >>
> >> > 2017-05-31 15:12 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> >> > > On Wed, 31 May 2017 10:27:23 +0800
> >> > > Eddie Cai <eddie.cai.linux@gmail.com> wrote:
> >> > >
> >> > >> Hi Lukasz
> >> > >>
> >> > >> 2017-05-29 15:51 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> >> > >> > Good morning Eddie,
> >> > >> >
> >> > >> >> this patch enable rockusb support on rk3288 based device.
> >> > >> >>
> >> > >> >> Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
> >> > >> >> Reviewed-by: Simon Glass <sjg@chromium.org>
> >> > >> >>
> >> > >> >
> >> > >> > I've give this patch set a try on travisCI:
> >> > >> >
> >> > >> > https://travis-ci.org/lmajewski/u-boot-dfu/jobs/237068149
> >> > >> >
> >> > >> > Unfortunately, there are some problem with following boards:
> >> > >> >
> >> > >> > chromebook_jerry, chromebook_minnie ...
> >> > >> I did it by myself last week. i got the same error. then i fix
> >> > >> those chromebook error
> >> > >> and test again. I still got some 3036 board error. But it
> >> > >> build successfully when i
> >> > >> build it on my computer. here is the travis-ci.org error log
> >> > >> https://travis-ci.org/eddiecailinux/u-boot/jobs/236232837
> >> > >> I have no idea what can i do to fix it.
> >> > >
> >> > > Can you share the SHA1 of commit on top of which you applied
> >> > > your patches?
> >> > >
> >> > > I take u-boot-usb (the USB u-boot tree from Marek Vasut) as a
> >> > > base and then apply commits on top of it.
> >> > here is my branch
> >> > https://github.com/eddiecailinux/u-boot/tree/rockusb-v8 I apply
> >> > my patch on top of below commit commit
> >> > a63d800196ebee59b0f8ff924f67843cd597a8c1 Author: Tom Rini
> >> > <trini@konsulko.com> Date:   Mon May 1 19:54:41 2017 -0400
> >> >
> >> >     Prepare v2017.05-rc3
> >> >
> >> >     Signed-off-by: Tom Rini <trini@konsulko.com>
> >>
> >> I've looked thoroughly at your patches:
> >>
> >> Your patches has been applied on top of the above commit:
> >> SHA1: a63d800196ebee59b0f8ff924f67843cd597a8c1
> >>
> >> Before applying your patches:
> >> https://travis-ci.org/lmajewski/u-boot-dfu/builds/239069544
> >>
> >> After applying them:
> >> https://travis-ci.org/lmajewski/u-boot-dfu/builds/239074799
> >>
> >> To be more precise:
> >> https://travis-ci.org/lmajewski/u-boot-dfu/jobs/239074800
> >>
> >>
> >> For example:
> >>
> >>       arm:  +   rock2
> >> +cmd/built-in.o: In function `do_fastboot':
> >> +cmd/fastboot.c:28: undefined reference to `board_usb_init'
> >> +cmd/fastboot.c:34: undefined reference to `g_dnl_clear_detach'
> >> +cmd/fastboot.c:35: undefined reference to `g_dnl_register'
> >> +cmd/fastboot.c:39: undefined reference to
> >>       `g_dnl_board_usb_cable_connected' +cmd/fastboot.c:57:
> >> undefined reference to `g_dnl_unregister' +cmd/fastboot.c:58:
> >> undefined reference to `g_dnl_clear_detach' +cmd/fastboot.c:59:
> >> undefined reference to `board_usb_cleanup' +cmd/fastboot.c:47:
> >> undefined reference to `g_dnl_detach' +cmd/fastboot.c:51: undefined
> >>       reference to `usb_gadget_handle_interrupts' +cmd/built-in.o:
> >> In function `do_usb_mass_storage':
> >>
> >>
> >>
> >> For me it seems like you have enabled fastboot support on too many
> >> rochchip's boards.
> >>
> >> Can you look on it?
> >
> > If I might ask - have you managed to investigate this issue?
> I can fix the chromebook error.

Ok.

> But i didn't enable rockusb support on
> rk3036 based board. I built these board on my desktop. It work fine.

The issue is not with this one particular board.

I'm concerned, since your patch set causes build errors for other
boards.

Can you build test (with travis-CI) your patches and check if you can
reproduce those errors?

Best regards,
Łukasz

> >
> >>
> >> I've also updated my .travis.ml file to be in sync with mainline,
> >> so we will use recommended arm toolchain.
> >>
> >> Please find this file attached.
> >>
> >> If there are any other patches required before applying this patch
> >> series, please let me know (or better post them to ML).
> >>
> >>
> >> Best regards,
> >> Łukasz Majewski
> >>
> >> > >
> >> > >> >
> >> > >> > caused by "undefined references to ...."
> >> > >> >
> >> > >> > I've tried your patches on top of:
> >> > >> > u-boot-usb/HEAD
> >> > >> > SHA1: 3426b2038cfb831d74ac0407fc7a04e990b44540
> >> > >> >
> >> > >> > Maybe you have built tested it on other branch/commit?
> >> > >> >
> >> > >> > Best regards,
> >> > >> > Łukasz Majewski
> >> > >> >
> >> > >> > p.s. My travis CI .travis.yml attached.
> >> > >> >
> >> > >> >> Changes in v7:
> >> > >> >> -use imply in the Kconfig to enable rockusb
> >> > >> >>
> >> > >> >> Changes in v6:
> >> > >> >> -enable rockusb in defconfig
> >> > >> >>
> >> > >> >> Changes in v5:
> >> > >> >> -none
> >> > >> >>
> >> > >> >> Changes in v4:
> >> > >> >> -move to rk3288_common.h
> >> > >> >>
> >> > >> >> Changes in v3:
> >> > >> >> -move to defconfig
> >> > >> >>
> >> > >> >> ---
> >> > >> >>  arch/arm/mach-rockchip/Kconfig    | 2 ++
> >> > >> >>  configs/evb-rk3288_defconfig      | 9 +++++++++
> >> > >> >>  configs/fennec-rk3288_defconfig   | 6 ++++++
> >> > >> >>  configs/firefly-rk3288_defconfig  | 6 ++++++
> >> > >> >>  configs/miqi-rk3288_defconfig     | 6 ++++++
> >> > >> >>  configs/popmetal-rk3288_defconfig | 6 ++++++
> >> > >> >>  configs/tinker-rk3288_defconfig   | 6 ++++++
> >> > >> >>  include/configs/rk3288_common.h   | 7 -------
> >> > >> >>  8 files changed, 41 insertions(+), 7 deletions(-)
> >> > >> >>
> >> > >> >> diff --git a/arch/arm/mach-rockchip/Kconfig
> >> > >> >> b/arch/arm/mach-rockchip/Kconfig index 2b752ad..8a87812
> >> > >> >> 100644 --- a/arch/arm/mach-rockchip/Kconfig
> >> > >> >> +++ b/arch/arm/mach-rockchip/Kconfig
> >> > >> >> @@ -32,6 +32,8 @@ config ROCKCHIP_RK3288
> >> > >> >>       select CPU_V7
> >> > >> >>       select SUPPORT_SPL
> >> > >> >>       select SPL
> >> > >> >> +     imply USB_FUNCTION_ROCKUSB
> >> > >> >> +     imply CMD_ROCKUSB
> >> > >> >>       help
> >> > >> >>         The Rockchip RK3288 is a ARM-based SoC with a
> >> > >> >> quad-core Cortex-A17 including NEON and GPU, 1MB L2 cache,
> >> > >> >> Mali-T7 graphics, two diff --git
> >> > >> >> a/configs/evb-rk3288_defconfig
> >> > >> >> b/configs/evb-rk3288_defconfig index 227150d..cf66e09
> >> > >> >> 100644 --- a/configs/evb-rk3288_defconfig +++
> >> > >> >> b/configs/evb-rk3288_defconfig @@ -17,6 +17,7 @@
> >> > >> >> CONFIG_CMD_MMC=y CONFIG_CMD_SF=y
> >> > >> >>  CONFIG_CMD_SPI=y
> >> > >> >>  CONFIG_CMD_I2C=y
> >> > >> >> +CONFIG_CMD_USB=y
> >> > >> >>  CONFIG_CMD_GPIO=y
> >> > >> >>  # CONFIG_CMD_SETEXPR is not set
> >> > >> >>  CONFIG_CMD_CACHE=y
> >> > >> >> @@ -61,6 +62,14 @@ CONFIG_DEBUG_UART_CLOCK=24000000
> >> > >> >>  CONFIG_DEBUG_UART_SHIFT=2
> >> > >> >>  CONFIG_SYS_NS16550=y
> >> > >> >>  CONFIG_SYSRESET=y
> >> > >> >> +CONFIG_USB=y
> >> > >> >> +CONFIG_USB_STORAGE=y
> >> > >> >>  CONFIG_USE_TINY_PRINTF=y
> >> > >> >>  CONFIG_CMD_DHRYSTONE=y
> >> > >> >>  CONFIG_ERRNO_STR=y
> >> > >> >> +CONFIG_USB_GADGET=y
> >> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> > >> >> diff --git a/configs/fennec-rk3288_defconfig
> >> > >> >> b/configs/fennec-rk3288_defconfig index befba18..eb33d00
> >> > >> >> 100644 --- a/configs/fennec-rk3288_defconfig
> >> > >> >> +++ b/configs/fennec-rk3288_defconfig
> >> > >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> >> > >> >>  CONFIG_USE_TINY_PRINTF=y
> >> > >> >>  CONFIG_CMD_DHRYSTONE=y
> >> > >> >>  CONFIG_ERRNO_STR=y
> >> > >> >> +CONFIG_USB_GADGET=y
> >> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> > >> >> diff --git a/configs/firefly-rk3288_defconfig
> >> > >> >> b/configs/firefly-rk3288_defconfig index f2872a6..1f4ca32
> >> > >> >> 100644 --- a/configs/firefly-rk3288_defconfig
> >> > >> >> +++ b/configs/firefly-rk3288_defconfig
> >> > >> >> @@ -73,3 +73,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
> >> > >> >>  CONFIG_USE_TINY_PRINTF=y
> >> > >> >>  CONFIG_CMD_DHRYSTONE=y
> >> > >> >>  CONFIG_ERRNO_STR=y
> >> > >> >> +CONFIG_USB_GADGET=y
> >> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> > >> >> diff --git a/configs/miqi-rk3288_defconfig
> >> > >> >> b/configs/miqi-rk3288_defconfig index d93bd97..b8b6fd5
> >> > >> >> 100644 --- a/configs/miqi-rk3288_defconfig
> >> > >> >> +++ b/configs/miqi-rk3288_defconfig
> >> > >> >> @@ -70,3 +70,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
> >> > >> >>  CONFIG_USE_TINY_PRINTF=y
> >> > >> >>  CONFIG_CMD_DHRYSTONE=y
> >> > >> >>  CONFIG_ERRNO_STR=y
> >> > >> >> +CONFIG_USB_GADGET=y
> >> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> > >> >> diff --git a/configs/popmetal-rk3288_defconfig
> >> > >> >> b/configs/popmetal-rk3288_defconfig index 748cda4..1181a20
> >> > >> >> 100644 --- a/configs/popmetal-rk3288_defconfig
> >> > >> >> +++ b/configs/popmetal-rk3288_defconfig
> >> > >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> >> > >> >>  CONFIG_USE_TINY_PRINTF=y
> >> > >> >>  CONFIG_CMD_DHRYSTONE=y
> >> > >> >>  CONFIG_ERRNO_STR=y
> >> > >> >> +CONFIG_USB_GADGET=y
> >> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> > >> >> diff --git a/configs/tinker-rk3288_defconfig
> >> > >> >> b/configs/tinker-rk3288_defconfig index ada5950..f863df8
> >> > >> >> 100644 --- a/configs/tinker-rk3288_defconfig
> >> > >> >> +++ b/configs/tinker-rk3288_defconfig
> >> > >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
> >> > >> >>  CONFIG_USE_TINY_PRINTF=y
> >> > >> >>  CONFIG_CMD_DHRYSTONE=y
> >> > >> >>  CONFIG_ERRNO_STR=y
> >> > >> >> +CONFIG_USB_GADGET=y
> >> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
> >> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
> >> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
> >> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
> >> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
> >> > >> >> diff --git a/include/configs/rk3288_common.h
> >> > >> >> b/include/configs/rk3288_common.h index e7a8f72..421ba60
> >> > >> >> 100644 --- a/include/configs/rk3288_common.h
> >> > >> >> +++ b/include/configs/rk3288_common.h
> >> > >> >> @@ -58,11 +58,9 @@
> >> > >> >>
> >> > >> >>  #ifndef CONFIG_SPL_BUILD
> >> > >> >>  /* usb otg */
> >> > >> >> -#define CONFIG_USB_GADGET
> >> > >> >>  #define CONFIG_USB_GADGET_DUALSPEED
> >> > >> >>  #define CONFIG_USB_GADGET_DWC2_OTG
> >> > >> >>  #define CONFIG_ROCKCHIP_USB2_PHY
> >> > >> >> -#define CONFIG_USB_GADGET_VBUS_DRAW  0
> >> > >> >>
> >> > >> >>  /* fastboot  */
> >> > >> >>  #define CONFIG_CMD_FASTBOOT
> >> > >> >> @@ -76,11 +74,6 @@
> >> > >> >>  #define CONFIG_USB_FUNCTION_MASS_STORAGE
> >> > >> >>  #define CONFIG_CMD_USB_MASS_STORAGE
> >> > >> >>
> >> > >> >> -#define CONFIG_USB_GADGET_DOWNLOAD
> >> > >> >> -#define CONFIG_G_DNL_MANUFACTURER    "Rockchip"
> >> > >> >> -#define CONFIG_G_DNL_VENDOR_NUM              0x2207
> >> > >> >> -#define CONFIG_G_DNL_PRODUCT_NUM     0x320a
> >> > >> >> -
> >> > >> >>  /* usb host support */
> >> > >> >>  #ifdef CONFIG_CMD_USB
> >> > >> >>  #define CONFIG_USB_DWC2
> >> > >> >
> >> > >> >
> >> > >> >
> >> > >> >
> >> > >> > Best regards,
> >> > >> >
> >> > >> > Lukasz Majewski
> >> > >> >
> >> > >> > --
> >> > >> >
> >> > >> > DENX Software Engineering GmbH,      Managing Director:
> >> > >> > Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5,
> >> > >> > D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax:
> >> > >> > (+49)-8142-66989-80 Email: wd at denx.de
> >> > >
> >> > >
> >> > >
> >> > >
> >> > > Best regards,
> >> > >
> >> > > Lukasz Majewski
> >> > >
> >> > > --
> >> > >
> >> > > DENX Software Engineering GmbH,      Managing Director:
> >> > > Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194
> >> > > Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax:
> >> > > (+49)-8142-66989-80 Email: wd at denx.de
> >>
> >>
> >>
> >>
> >> Best regards,
> >>
> >> Lukasz Majewski
> >>
> >> --
> >>
> >> DENX Software Engineering GmbH,      Managing Director: Wolfgang
> >> Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell,
> >> Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email:
> >> wd at denx.de
> >
> >
> >
> >
> > Best regards,
> >
> > Lukasz Majewski
> >
> > --
> >
> > DENX Software Engineering GmbH,      Managing Director: Wolfgang
> > Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell,
> > Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email:
> > wd at denx.de




Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-06-28  7:55                 ` Lukasz Majewski
@ 2017-06-29  0:44                   ` Eddie Cai
  2017-06-29 10:49                     ` Lukasz Majewski
  0 siblings, 1 reply; 22+ messages in thread
From: Eddie Cai @ 2017-06-29  0:44 UTC (permalink / raw)
  To: u-boot

2017-06-28 15:55 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> Hi Eddie,
>
>> Hi Lukasz
>>
>> 2017-06-21 15:44 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
>> > Hi Eddie,
>> >
>> >> Hi Eddie,
>> >>
>> >> > 2017-05-31 15:12 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
>> >> > > On Wed, 31 May 2017 10:27:23 +0800
>> >> > > Eddie Cai <eddie.cai.linux@gmail.com> wrote:
>> >> > >
>> >> > >> Hi Lukasz
>> >> > >>
>> >> > >> 2017-05-29 15:51 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
>> >> > >> > Good morning Eddie,
>> >> > >> >
>> >> > >> >> this patch enable rockusb support on rk3288 based device.
>> >> > >> >>
>> >> > >> >> Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
>> >> > >> >> Reviewed-by: Simon Glass <sjg@chromium.org>
>> >> > >> >>
>> >> > >> >
>> >> > >> > I've give this patch set a try on travisCI:
>> >> > >> >
>> >> > >> > https://travis-ci.org/lmajewski/u-boot-dfu/jobs/237068149
>> >> > >> >
>> >> > >> > Unfortunately, there are some problem with following boards:
>> >> > >> >
>> >> > >> > chromebook_jerry, chromebook_minnie ...
>> >> > >> I did it by myself last week. i got the same error. then i fix
>> >> > >> those chromebook error
>> >> > >> and test again. I still got some 3036 board error. But it
>> >> > >> build successfully when i
>> >> > >> build it on my computer. here is the travis-ci.org error log
>> >> > >> https://travis-ci.org/eddiecailinux/u-boot/jobs/236232837
>> >> > >> I have no idea what can i do to fix it.
>> >> > >
>> >> > > Can you share the SHA1 of commit on top of which you applied
>> >> > > your patches?
>> >> > >
>> >> > > I take u-boot-usb (the USB u-boot tree from Marek Vasut) as a
>> >> > > base and then apply commits on top of it.
>> >> > here is my branch
>> >> > https://github.com/eddiecailinux/u-boot/tree/rockusb-v8 I apply
>> >> > my patch on top of below commit commit
>> >> > a63d800196ebee59b0f8ff924f67843cd597a8c1 Author: Tom Rini
>> >> > <trini@konsulko.com> Date:   Mon May 1 19:54:41 2017 -0400
>> >> >
>> >> >     Prepare v2017.05-rc3
>> >> >
>> >> >     Signed-off-by: Tom Rini <trini@konsulko.com>
>> >>
>> >> I've looked thoroughly at your patches:
>> >>
>> >> Your patches has been applied on top of the above commit:
>> >> SHA1: a63d800196ebee59b0f8ff924f67843cd597a8c1
>> >>
>> >> Before applying your patches:
>> >> https://travis-ci.org/lmajewski/u-boot-dfu/builds/239069544
>> >>
>> >> After applying them:
>> >> https://travis-ci.org/lmajewski/u-boot-dfu/builds/239074799
>> >>
>> >> To be more precise:
>> >> https://travis-ci.org/lmajewski/u-boot-dfu/jobs/239074800
>> >>
>> >>
>> >> For example:
>> >>
>> >>       arm:  +   rock2
>> >> +cmd/built-in.o: In function `do_fastboot':
>> >> +cmd/fastboot.c:28: undefined reference to `board_usb_init'
>> >> +cmd/fastboot.c:34: undefined reference to `g_dnl_clear_detach'
>> >> +cmd/fastboot.c:35: undefined reference to `g_dnl_register'
>> >> +cmd/fastboot.c:39: undefined reference to
>> >>       `g_dnl_board_usb_cable_connected' +cmd/fastboot.c:57:
>> >> undefined reference to `g_dnl_unregister' +cmd/fastboot.c:58:
>> >> undefined reference to `g_dnl_clear_detach' +cmd/fastboot.c:59:
>> >> undefined reference to `board_usb_cleanup' +cmd/fastboot.c:47:
>> >> undefined reference to `g_dnl_detach' +cmd/fastboot.c:51: undefined
>> >>       reference to `usb_gadget_handle_interrupts' +cmd/built-in.o:
>> >> In function `do_usb_mass_storage':
>> >>
>> >>
>> >>
>> >> For me it seems like you have enabled fastboot support on too many
>> >> rochchip's boards.
>> >>
>> >> Can you look on it?
>> >
>> > If I might ask - have you managed to investigate this issue?
>> I can fix the chromebook error.
>
> Ok.
>
>> But i didn't enable rockusb support on
>> rk3036 based board. I built these board on my desktop. It work fine.
>
> The issue is not with this one particular board.
>
> I'm concerned, since your patch set causes build errors for other
> boards.
>
> Can you build test (with travis-CI) your patches and check if you can
> reproduce those errors?
I can reproduce this error with travis-CI. but i can't not reproduce
this rk3036 board error on my desktop.
can you try to local build rk3036 board and see if can reproduce this error?
>
> Best regards,
> Łukasz
>
>> >
>> >>
>> >> I've also updated my .travis.ml file to be in sync with mainline,
>> >> so we will use recommended arm toolchain.
>> >>
>> >> Please find this file attached.
>> >>
>> >> If there are any other patches required before applying this patch
>> >> series, please let me know (or better post them to ML).
>> >>
>> >>
>> >> Best regards,
>> >> Łukasz Majewski
>> >>
>> >> > >
>> >> > >> >
>> >> > >> > caused by "undefined references to ...."
>> >> > >> >
>> >> > >> > I've tried your patches on top of:
>> >> > >> > u-boot-usb/HEAD
>> >> > >> > SHA1: 3426b2038cfb831d74ac0407fc7a04e990b44540
>> >> > >> >
>> >> > >> > Maybe you have built tested it on other branch/commit?
>> >> > >> >
>> >> > >> > Best regards,
>> >> > >> > Łukasz Majewski
>> >> > >> >
>> >> > >> > p.s. My travis CI .travis.yml attached.
>> >> > >> >
>> >> > >> >> Changes in v7:
>> >> > >> >> -use imply in the Kconfig to enable rockusb
>> >> > >> >>
>> >> > >> >> Changes in v6:
>> >> > >> >> -enable rockusb in defconfig
>> >> > >> >>
>> >> > >> >> Changes in v5:
>> >> > >> >> -none
>> >> > >> >>
>> >> > >> >> Changes in v4:
>> >> > >> >> -move to rk3288_common.h
>> >> > >> >>
>> >> > >> >> Changes in v3:
>> >> > >> >> -move to defconfig
>> >> > >> >>
>> >> > >> >> ---
>> >> > >> >>  arch/arm/mach-rockchip/Kconfig    | 2 ++
>> >> > >> >>  configs/evb-rk3288_defconfig      | 9 +++++++++
>> >> > >> >>  configs/fennec-rk3288_defconfig   | 6 ++++++
>> >> > >> >>  configs/firefly-rk3288_defconfig  | 6 ++++++
>> >> > >> >>  configs/miqi-rk3288_defconfig     | 6 ++++++
>> >> > >> >>  configs/popmetal-rk3288_defconfig | 6 ++++++
>> >> > >> >>  configs/tinker-rk3288_defconfig   | 6 ++++++
>> >> > >> >>  include/configs/rk3288_common.h   | 7 -------
>> >> > >> >>  8 files changed, 41 insertions(+), 7 deletions(-)
>> >> > >> >>
>> >> > >> >> diff --git a/arch/arm/mach-rockchip/Kconfig
>> >> > >> >> b/arch/arm/mach-rockchip/Kconfig index 2b752ad..8a87812
>> >> > >> >> 100644 --- a/arch/arm/mach-rockchip/Kconfig
>> >> > >> >> +++ b/arch/arm/mach-rockchip/Kconfig
>> >> > >> >> @@ -32,6 +32,8 @@ config ROCKCHIP_RK3288
>> >> > >> >>       select CPU_V7
>> >> > >> >>       select SUPPORT_SPL
>> >> > >> >>       select SPL
>> >> > >> >> +     imply USB_FUNCTION_ROCKUSB
>> >> > >> >> +     imply CMD_ROCKUSB
>> >> > >> >>       help
>> >> > >> >>         The Rockchip RK3288 is a ARM-based SoC with a
>> >> > >> >> quad-core Cortex-A17 including NEON and GPU, 1MB L2 cache,
>> >> > >> >> Mali-T7 graphics, two diff --git
>> >> > >> >> a/configs/evb-rk3288_defconfig
>> >> > >> >> b/configs/evb-rk3288_defconfig index 227150d..cf66e09
>> >> > >> >> 100644 --- a/configs/evb-rk3288_defconfig +++
>> >> > >> >> b/configs/evb-rk3288_defconfig @@ -17,6 +17,7 @@
>> >> > >> >> CONFIG_CMD_MMC=y CONFIG_CMD_SF=y
>> >> > >> >>  CONFIG_CMD_SPI=y
>> >> > >> >>  CONFIG_CMD_I2C=y
>> >> > >> >> +CONFIG_CMD_USB=y
>> >> > >> >>  CONFIG_CMD_GPIO=y
>> >> > >> >>  # CONFIG_CMD_SETEXPR is not set
>> >> > >> >>  CONFIG_CMD_CACHE=y
>> >> > >> >> @@ -61,6 +62,14 @@ CONFIG_DEBUG_UART_CLOCK=24000000
>> >> > >> >>  CONFIG_DEBUG_UART_SHIFT=2
>> >> > >> >>  CONFIG_SYS_NS16550=y
>> >> > >> >>  CONFIG_SYSRESET=y
>> >> > >> >> +CONFIG_USB=y
>> >> > >> >> +CONFIG_USB_STORAGE=y
>> >> > >> >>  CONFIG_USE_TINY_PRINTF=y
>> >> > >> >>  CONFIG_CMD_DHRYSTONE=y
>> >> > >> >>  CONFIG_ERRNO_STR=y
>> >> > >> >> +CONFIG_USB_GADGET=y
>> >> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> >> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> >> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> >> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> >> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> >> > >> >> diff --git a/configs/fennec-rk3288_defconfig
>> >> > >> >> b/configs/fennec-rk3288_defconfig index befba18..eb33d00
>> >> > >> >> 100644 --- a/configs/fennec-rk3288_defconfig
>> >> > >> >> +++ b/configs/fennec-rk3288_defconfig
>> >> > >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>> >> > >> >>  CONFIG_USE_TINY_PRINTF=y
>> >> > >> >>  CONFIG_CMD_DHRYSTONE=y
>> >> > >> >>  CONFIG_ERRNO_STR=y
>> >> > >> >> +CONFIG_USB_GADGET=y
>> >> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> >> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> >> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> >> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> >> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> >> > >> >> diff --git a/configs/firefly-rk3288_defconfig
>> >> > >> >> b/configs/firefly-rk3288_defconfig index f2872a6..1f4ca32
>> >> > >> >> 100644 --- a/configs/firefly-rk3288_defconfig
>> >> > >> >> +++ b/configs/firefly-rk3288_defconfig
>> >> > >> >> @@ -73,3 +73,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
>> >> > >> >>  CONFIG_USE_TINY_PRINTF=y
>> >> > >> >>  CONFIG_CMD_DHRYSTONE=y
>> >> > >> >>  CONFIG_ERRNO_STR=y
>> >> > >> >> +CONFIG_USB_GADGET=y
>> >> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> >> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> >> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> >> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> >> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> >> > >> >> diff --git a/configs/miqi-rk3288_defconfig
>> >> > >> >> b/configs/miqi-rk3288_defconfig index d93bd97..b8b6fd5
>> >> > >> >> 100644 --- a/configs/miqi-rk3288_defconfig
>> >> > >> >> +++ b/configs/miqi-rk3288_defconfig
>> >> > >> >> @@ -70,3 +70,9 @@ CONFIG_CONSOLE_SCROLL_LINES=10
>> >> > >> >>  CONFIG_USE_TINY_PRINTF=y
>> >> > >> >>  CONFIG_CMD_DHRYSTONE=y
>> >> > >> >>  CONFIG_ERRNO_STR=y
>> >> > >> >> +CONFIG_USB_GADGET=y
>> >> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> >> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> >> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> >> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> >> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> >> > >> >> diff --git a/configs/popmetal-rk3288_defconfig
>> >> > >> >> b/configs/popmetal-rk3288_defconfig index 748cda4..1181a20
>> >> > >> >> 100644 --- a/configs/popmetal-rk3288_defconfig
>> >> > >> >> +++ b/configs/popmetal-rk3288_defconfig
>> >> > >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>> >> > >> >>  CONFIG_USE_TINY_PRINTF=y
>> >> > >> >>  CONFIG_CMD_DHRYSTONE=y
>> >> > >> >>  CONFIG_ERRNO_STR=y
>> >> > >> >> +CONFIG_USB_GADGET=y
>> >> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> >> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> >> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> >> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> >> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> >> > >> >> diff --git a/configs/tinker-rk3288_defconfig
>> >> > >> >> b/configs/tinker-rk3288_defconfig index ada5950..f863df8
>> >> > >> >> 100644 --- a/configs/tinker-rk3288_defconfig
>> >> > >> >> +++ b/configs/tinker-rk3288_defconfig
>> >> > >> >> @@ -66,3 +66,9 @@ CONFIG_USB_STORAGE=y
>> >> > >> >>  CONFIG_USE_TINY_PRINTF=y
>> >> > >> >>  CONFIG_CMD_DHRYSTONE=y
>> >> > >> >>  CONFIG_ERRNO_STR=y
>> >> > >> >> +CONFIG_USB_GADGET=y
>> >> > >> >> +CONFIG_USB_GADGET_DOWNLOAD=y
>> >> > >> >> +CONFIG_USB_GADGET_VBUS_DRAW=0
>> >> > >> >> +CONFIG_G_DNL_MANUFACTURER="Rockchip"
>> >> > >> >> +CONFIG_G_DNL_VENDOR_NUM=0x2207
>> >> > >> >> +CONFIG_G_DNL_PRODUCT_NUM=0x320a
>> >> > >> >> diff --git a/include/configs/rk3288_common.h
>> >> > >> >> b/include/configs/rk3288_common.h index e7a8f72..421ba60
>> >> > >> >> 100644 --- a/include/configs/rk3288_common.h
>> >> > >> >> +++ b/include/configs/rk3288_common.h
>> >> > >> >> @@ -58,11 +58,9 @@
>> >> > >> >>
>> >> > >> >>  #ifndef CONFIG_SPL_BUILD
>> >> > >> >>  /* usb otg */
>> >> > >> >> -#define CONFIG_USB_GADGET
>> >> > >> >>  #define CONFIG_USB_GADGET_DUALSPEED
>> >> > >> >>  #define CONFIG_USB_GADGET_DWC2_OTG
>> >> > >> >>  #define CONFIG_ROCKCHIP_USB2_PHY
>> >> > >> >> -#define CONFIG_USB_GADGET_VBUS_DRAW  0
>> >> > >> >>
>> >> > >> >>  /* fastboot  */
>> >> > >> >>  #define CONFIG_CMD_FASTBOOT
>> >> > >> >> @@ -76,11 +74,6 @@
>> >> > >> >>  #define CONFIG_USB_FUNCTION_MASS_STORAGE
>> >> > >> >>  #define CONFIG_CMD_USB_MASS_STORAGE
>> >> > >> >>
>> >> > >> >> -#define CONFIG_USB_GADGET_DOWNLOAD
>> >> > >> >> -#define CONFIG_G_DNL_MANUFACTURER    "Rockchip"
>> >> > >> >> -#define CONFIG_G_DNL_VENDOR_NUM              0x2207
>> >> > >> >> -#define CONFIG_G_DNL_PRODUCT_NUM     0x320a
>> >> > >> >> -
>> >> > >> >>  /* usb host support */
>> >> > >> >>  #ifdef CONFIG_CMD_USB
>> >> > >> >>  #define CONFIG_USB_DWC2
>> >> > >> >
>> >> > >> >
>> >> > >> >
>> >> > >> >
>> >> > >> > Best regards,
>> >> > >> >
>> >> > >> > Lukasz Majewski
>> >> > >> >
>> >> > >> > --
>> >> > >> >
>> >> > >> > DENX Software Engineering GmbH,      Managing Director:
>> >> > >> > Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5,
>> >> > >> > D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax:
>> >> > >> > (+49)-8142-66989-80 Email: wd at denx.de
>> >> > >
>> >> > >
>> >> > >
>> >> > >
>> >> > > Best regards,
>> >> > >
>> >> > > Lukasz Majewski
>> >> > >
>> >> > > --
>> >> > >
>> >> > > DENX Software Engineering GmbH,      Managing Director:
>> >> > > Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194
>> >> > > Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax:
>> >> > > (+49)-8142-66989-80 Email: wd at denx.de
>> >>
>> >>
>> >>
>> >>
>> >> Best regards,
>> >>
>> >> Lukasz Majewski
>> >>
>> >> --
>> >>
>> >> DENX Software Engineering GmbH,      Managing Director: Wolfgang
>> >> Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell,
>> >> Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email:
>> >> wd at denx.de
>> >
>> >
>> >
>> >
>> > Best regards,
>> >
>> > Lukasz Majewski
>> >
>> > --
>> >
>> > DENX Software Engineering GmbH,      Managing Director: Wolfgang
>> > Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell,
>> > Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email:
>> > wd at denx.de
>
>
>
>
> Best regards,
>
> Lukasz Majewski
>
> --
>
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-06-29  0:44                   ` Eddie Cai
@ 2017-06-29 10:49                     ` Lukasz Majewski
  2017-06-30  3:38                       ` Eddie Cai
  0 siblings, 1 reply; 22+ messages in thread
From: Lukasz Majewski @ 2017-06-29 10:49 UTC (permalink / raw)
  To: u-boot

On Thu, 29 Jun 2017 08:44:47 +0800
Eddie Cai <eddie.cai.linux@gmail.com> wrote:

> >
> > The issue is not with this one particular board.
> >
> > I'm concerned, since your patch set causes build errors for other
> > boards.
> >
> > Can you build test (with travis-CI) your patches and check if you
> > can reproduce those errors?  
> I can reproduce this error with travis-CI. but i can't not reproduce
> this rk3036 board error on my desktop.
> can you try to local build rk3036 board and see if can reproduce this
> error?
> >
 The rk3036 (evb-rk3036_defconfig) builds fine (with my old 4.8 gcc).

However, your patches cause other issues [1]:
https://travis-ci.org/lmajewski/u-boot-dfu/jobs/248264628

And for example I can reproduce the issue on
rock2_defconfig at my local PC.

Can you build rock2 on your PC with your patches applied without any
issues?





[1] The "testing" tree can be found at:
https://github.com/lmajewski/u-boot-dfu/tree/testing

Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-06-29 10:49                     ` Lukasz Majewski
@ 2017-06-30  3:38                       ` Eddie Cai
  2017-06-30  8:15                         ` Lukasz Majewski
  0 siblings, 1 reply; 22+ messages in thread
From: Eddie Cai @ 2017-06-30  3:38 UTC (permalink / raw)
  To: u-boot

2017-06-29 18:49 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> On Thu, 29 Jun 2017 08:44:47 +0800
> Eddie Cai <eddie.cai.linux@gmail.com> wrote:
>
>> >
>> > The issue is not with this one particular board.
>> >
>> > I'm concerned, since your patch set causes build errors for other
>> > boards.
>> >
>> > Can you build test (with travis-CI) your patches and check if you
>> > can reproduce those errors?
>> I can reproduce this error with travis-CI. but i can't not reproduce
>> this rk3036 board error on my desktop.
>> can you try to local build rk3036 board and see if can reproduce this
>> error?
>> >
>  The rk3036 (evb-rk3036_defconfig) builds fine (with my old 4.8 gcc).
>
> However, your patches cause other issues [1]:
> https://travis-ci.org/lmajewski/u-boot-dfu/jobs/248264628
>
> And for example I can reproduce the issue on
> rock2_defconfig at my local PC.
>
> Can you build rock2 on your PC with your patches applied without any
> issues?
I reproduced and fixed this issue long time ago. I didn't send my next version
because i don't know how to reproduce 3036 issue. It looks like 3036 work fine
on your side now. Can i ignore this 3036 issue?
>
>
>
>
>
> [1] The "testing" tree can be found at:
> https://github.com/lmajewski/u-boot-dfu/tree/testing
>
> Best regards,
>
> Lukasz Majewski
>
> --
>
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device
  2017-06-30  3:38                       ` Eddie Cai
@ 2017-06-30  8:15                         ` Lukasz Majewski
  0 siblings, 0 replies; 22+ messages in thread
From: Lukasz Majewski @ 2017-06-30  8:15 UTC (permalink / raw)
  To: u-boot

Hi Eddie,

> 2017-06-29 18:49 GMT+08:00 Lukasz Majewski <lukma@denx.de>:
> > On Thu, 29 Jun 2017 08:44:47 +0800
> > Eddie Cai <eddie.cai.linux@gmail.com> wrote:
> >
> >> >
> >> > The issue is not with this one particular board.
> >> >
> >> > I'm concerned, since your patch set causes build errors for other
> >> > boards.
> >> >
> >> > Can you build test (with travis-CI) your patches and check if you
> >> > can reproduce those errors?
> >> I can reproduce this error with travis-CI. but i can't not
> >> reproduce this rk3036 board error on my desktop.
> >> can you try to local build rk3036 board and see if can reproduce
> >> this error?
> >> >
> >  The rk3036 (evb-rk3036_defconfig) builds fine (with my old 4.8
> > gcc).
> >
> > However, your patches cause other issues [1]:
> > https://travis-ci.org/lmajewski/u-boot-dfu/jobs/248264628
> >
> > And for example I can reproduce the issue on
> > rock2_defconfig at my local PC.
> >
> > Can you build rock2 on your PC with your patches applied without any
> > issues?
> I reproduced and fixed this issue long time ago. I didn't send my
> next version because i don't know how to reproduce 3036 issue. It
> looks like 3036 work fine on your side now. Can i ignore this 3036
> issue?

Please before posting next version make sure that no build breaks
shows up in TravisCI.

Please as a reference use mainline .travis.yml. (especially build for
rockchip)

Please let me know if you need any assistance at fixing problems.

> >
> >
> >
> >
> >
> > [1] The "testing" tree can be found at:
> > https://github.com/lmajewski/u-boot-dfu/tree/testing
> >
> > Best regards,
> >
> > Lukasz Majewski
> >
> > --
> >
> > DENX Software Engineering GmbH,      Managing Director: Wolfgang
> > Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell,
> > Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email:
> > wd at denx.de




Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de

^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2017-06-30  8:15 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-25  8:50 [U-Boot] [PATCH V7 0/4] introduce Rockchip rockusb Eddie Cai
2017-05-25  8:50 ` [U-Boot] [PATCH V7 1/4] usb: rockchip: add the rockusb gadget Eddie Cai
2017-05-25  8:50 ` [U-Boot] [PATCH V7 2/4] usb: rockchip: add rockusb command Eddie Cai
2017-05-25  8:50 ` [U-Boot] [PATCH V7 3/4] rockchip:usb: add a simple readme for rockusb Eddie Cai
2017-05-25  8:50 ` [U-Boot] [PATCH V7 4/4] rockchip: rk3288: enable rockusb support on rk3288 based device Eddie Cai
2017-05-29  7:51   ` Lukasz Majewski
2017-05-31  2:27     ` Eddie Cai
2017-05-31  2:30       ` Tom Rini
2017-05-31  7:12       ` Lukasz Majewski
2017-05-31  8:02         ` Eddie Cai
2017-05-31  8:18           ` Lukasz Majewski
2017-05-31  8:22             ` Lukasz Majewski
2017-05-31  8:41               ` Eddie Cai
2017-05-31  8:43                 ` Eddie Cai
2017-06-03 14:23           ` Lukasz Majewski
2017-06-21  7:44             ` Lukasz Majewski
2017-06-28  7:33               ` Eddie Cai
2017-06-28  7:55                 ` Lukasz Majewski
2017-06-29  0:44                   ` Eddie Cai
2017-06-29 10:49                     ` Lukasz Majewski
2017-06-30  3:38                       ` Eddie Cai
2017-06-30  8:15                         ` Lukasz Majewski

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.