Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/100185/?format=api
{ "id": 100185, "url": "http://patchwork.ozlabs.org/api/patches/100185/?format=api", "web_url": "http://patchwork.ozlabs.org/project/uboot/patch/1308006792-22544-4-git-send-email-sjg@chromium.org/", "project": { "id": 18, "url": "http://patchwork.ozlabs.org/api/projects/18/?format=api", "name": "U-Boot", "link_name": "uboot", "list_id": "u-boot.lists.denx.de", "list_email": "u-boot@lists.denx.de", "web_url": null, "scm_url": null, "webscm_url": null, "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<1308006792-22544-4-git-send-email-sjg@chromium.org>", "list_archive_url": null, "date": "2011-06-13T23:13:11", "name": "[U-Boot,v8,3/4] Add documentation for USB Host Networking", "commit_ref": null, "pull_url": null, "state": "new", "archived": true, "hash": "5f5928e4e5602823af1975877f091895e9492b51", "submitter": { "id": 6170, "url": "http://patchwork.ozlabs.org/api/people/6170/?format=api", "name": "Simon Glass", "email": "sjg@chromium.org" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/uboot/patch/1308006792-22544-4-git-send-email-sjg@chromium.org/mbox/", "series": [], "comments": "http://patchwork.ozlabs.org/api/patches/100185/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/100185/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<u-boot-bounces@lists.denx.de>", "X-Original-To": "incoming@patchwork.ozlabs.org", "Delivered-To": "patchwork-incoming@bilbo.ozlabs.org", "Received": [ "from theia.denx.de (theia.denx.de [85.214.87.163])\n\tby ozlabs.org (Postfix) with ESMTP id 788A2B6FA9\n\tfor <incoming@patchwork.ozlabs.org>;\n\tTue, 14 Jun 2011 09:14:05 +1000 (EST)", "from localhost (localhost [127.0.0.1])\n\tby theia.denx.de (Postfix) with ESMTP id F3DF728186;\n\tTue, 14 Jun 2011 01:13:59 +0200 (CEST)", "from theia.denx.de ([127.0.0.1])\n\tby localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id z3qUYWWeTl5O; Tue, 14 Jun 2011 01:13:59 +0200 (CEST)", "from theia.denx.de (localhost [127.0.0.1])\n\tby theia.denx.de (Postfix) with ESMTP id 68E0B28169;\n\tTue, 14 Jun 2011 01:13:58 +0200 (CEST)", "from localhost (localhost [127.0.0.1])\n\tby theia.denx.de (Postfix) with ESMTP id 3A34328163\n\tfor <u-boot@lists.denx.de>; Tue, 14 Jun 2011 01:13:56 +0200 (CEST)", "from theia.denx.de ([127.0.0.1])\n\tby localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id n8QJoWsO+MId for <u-boot@lists.denx.de>;\n\tTue, 14 Jun 2011 01:13:55 +0200 (CEST)", "from smtp-out.google.com (smtp-out.google.com [74.125.121.67])\n\tby theia.denx.de (Postfix) with ESMTPS id 788C428169\n\tfor <u-boot@lists.denx.de>; Tue, 14 Jun 2011 01:13:54 +0200 (CEST)", "from hpaq5.eem.corp.google.com (hpaq5.eem.corp.google.com\n\t[172.25.149.5]) by smtp-out.google.com with ESMTP id p5DNDd2w012528; \n\tMon, 13 Jun 2011 16:13:39 -0700", "from sglass.mtv.corp.google.com (sglass.mtv.corp.google.com\n\t[172.22.72.144])\n\tby hpaq5.eem.corp.google.com with ESMTP id p5DNDbWx032366;\n\tMon, 13 Jun 2011 16:13:38 -0700", "by sglass.mtv.corp.google.com (Postfix, from userid 121222)\n\tid 6656B140C1B; Mon, 13 Jun 2011 16:13:37 -0700 (PDT)" ], "X-Virus-Scanned": [ "Debian amavisd-new at theia.denx.de", "Debian amavisd-new at theia.denx.de" ], "X-policyd-weight": "NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5\n\tNOT_IN_BL_NJABL=-1.5 (only DNSBL check requested)", "From": "Simon Glass <sjg@chromium.org>", "To": "U-Boot Mailing List <u-boot@lists.denx.de>", "Date": "Mon, 13 Jun 2011 16:13:11 -0700", "Message-Id": "<1308006792-22544-4-git-send-email-sjg@chromium.org>", "X-Mailer": "git-send-email 1.7.3.1", "In-Reply-To": "<1308006792-22544-1-git-send-email-sjg@chromium.org>", "References": "<1308006792-22544-1-git-send-email-sjg@chromium.org>", "MIME-Version": "1.0", "X-System-Of-Record": "true", "Cc": "Andy Fleming <afleming@gmail.com>", "Subject": "[U-Boot] [PATCH v8 3/4] Add documentation for USB Host Networking", "X-BeenThere": "u-boot@lists.denx.de", "X-Mailman-Version": "2.1.9", "Precedence": "list", "List-Id": "U-Boot discussion <u-boot.lists.denx.de>", "List-Unsubscribe": "<http://lists.denx.de/mailman/listinfo/u-boot>,\n\t<mailto:u-boot-request@lists.denx.de?subject=unsubscribe>", "List-Archive": "<http://lists.denx.de/pipermail/u-boot>", "List-Post": "<mailto:u-boot@lists.denx.de>", "List-Help": "<mailto:u-boot-request@lists.denx.de?subject=help>", "List-Subscribe": "<http://lists.denx.de/mailman/listinfo/u-boot>,\n\t<mailto:u-boot-request@lists.denx.de?subject=subscribe>", "Content-Type": "text/plain; charset=\"utf-8\"", "Content-Transfer-Encoding": "base64", "Sender": "u-boot-bounces@lists.denx.de", "Errors-To": "u-boot-bounces@lists.denx.de" }, "content": "This describes what it is for, devices supported, how to enable for your\nboard in U-Boot, setting up the server, and notes about MAC addresses.\n\nChanges for v6:\n- Adjust documentation file according to Wolfgang's comments\n\nSigned-off-by: Simon Glass <sjg@chromium.org>\nTested-by: Eric Bénard <eric@eukrea.com>\n---\n doc/README.usb | 157 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-\n 1 files changed, 156 insertions(+), 1 deletions(-)", "diff": "diff --git a/doc/README.usb b/doc/README.usb\nindex 9aa4f62..a8a4058 100644\n--- a/doc/README.usb\n+++ b/doc/README.usb\n@@ -79,4 +79,159 @@ CONFIG_USB_UHCI\t defines the lowlevel part.A lowlevel part must be defined\n \t\t if using CONFIG_CMD_USB\n CONFIG_USB_KEYBOARD enables the USB Keyboard\n CONFIG_USB_STORAGE enables the USB storage devices\n-CONFIG_USB_HOST_ETHER\tenables USB ethernet dongle support\n+CONFIG_USB_HOST_ETHER\tenables USB ethernet adapter support\n+\n+\n+USB Host Networking\n+===================\n+\n+If you have a supported USB Ethernet adapter you can use it in U-Boot\n+to obtain an IP address and load a kernel from a network server.\n+\n+Note: USB Host Networking is not the same as making your board act as a USB\n+client. In that case your board is pretending to be an Ethernet adapter\n+and will appear as a network interface to an attached computer. In that\n+case the connection is via a USB cable with the computer acting as the host.\n+\n+With USB Host Networking, your board is the USB host. It controls the\n+Ethernet adapter to which it is directly connected and the connection to\n+the outside world is your adapter's Ethernet cable. Your board becomes an\n+independent network device, able to connect and perform network operations\n+independently of your computer.\n+\n+\n+Device support\n+--------------\n+\n+Currently supported devices are listed in the drivers according to\n+their vendor and product IDs. You can check your device by connecting it\n+to a Linux machine and typing 'lsusb'. The drivers are in\n+drivers/usb/eth.\n+\n+For example this lsusb output line shows a device with Vendor ID 0x0x95\n+and product ID 0x7720:\n+\n+Bus 002 Device 010: ID 0b95:7720 ASIX Electronics Corp. AX88772\n+\n+If you look at drivers/usb/eth/asix.c you will see this line within the\n+supported device list, so we know this adapter is supported.\n+\n+ { 0x0b95, 0x7720 }, /* Trendnet TU2-ET100 V3.0R */\n+\n+If your adapter is not listed there is a still a chance that it will\n+work. Try looking up the manufacturer of the chip inside your adapter.\n+or take the adapter apart and look for chip markings. Then add a line\n+for your vendor/product ID into the table of the appropriate driver,\n+build U-Boot and see if it works. If not then there might be differences\n+between the chip in your adapter and the driver. You could try to get a\n+datasheet for your device and add support for it to U-Boot. This is not\n+particularly difficult - you only need to provide support for four basic\n+functions: init, halt, send and recv.\n+\n+\n+Enabling USB Host Networking\n+----------------------------\n+\n+The normal U-Boot commands are used with USB networking, but you must\n+start USB first. For example:\n+\n+usb start\n+setenv bootfile /tftpboot/uImage\n+bootp\n+\n+\n+To enable USB Host Ethernet in U-Boot, your platform must of course\n+support USB with CONFIG_CMD_USB enabled and working. You will need to\n+add some config settings to your board header file:\n+\n+#define CONFIG_USB_HOST_ETHER /* Enable USB Ethernet adapters */\n+#define CONFIG_USB_ETHER_ASIX /* Asix, or whatever driver(s) you want */\n+\n+As with built-in networking, you will also want to enable some network\n+commands, for example:\n+\n+#define CONFIG_CMD_NET\n+#define CONFIG_NET_MULTI\n+#define CONFIG_CMD_PING\n+#define CONFIG_CMD_DHCP\n+\n+and some bootp options, which tell your board to obtain its subnet,\n+gateway IP, host name and boot path from the bootp/dhcp server. These\n+settings should start you off:\n+\n+#define CONFIG_BOOTP_SUBNETMASK\n+#define CONFIG_BOOTP_GATEWAY\n+#define CONFIG_BOOTP_HOSTNAME\n+#define CONFIG_BOOTP_BOOTPATH\n+\n+You can also set the default IP address of your board and the server\n+as well as the default file to load when a 'bootp' command is issued.\n+All of these can be obtained from the bootp server if not set.\n+\n+#define CONFIG_IPADDR 10.0.0.2 (replace with your value)\n+#define CONFIG_SERVERIP 10.0.0.1 (replace with your value)\n+#define CONFIG_BOOTFILE uImage\n+\n+\n+The 'usb start' command should identify the adapter something like this:\n+\n+CrOS> usb start\n+(Re)start USB...\n+USB EHCI 1.00\n+scanning bus for devices... 3 USB Device(s) found\n+ scanning bus for storage devices... 0 Storage Device(s) found\n+ scanning bus for ethernet devices... 1 Ethernet Device(s) found\n+CrOS> print ethact\n+ethact=asx0\n+\n+You can see that it found an ethernet device and we can print out the\n+device name (asx0 in this case).\n+\n+Then 'bootp' or 'dhcp' should use it to obtain an IP address from DHCP,\n+perhaps something like this:\n+\n+CrOS> bootp\n+Waiting for Ethernet connection... done.\n+BOOTP broadcast 1\n+BOOTP broadcast 2\n+DHCP client bound to address 172.22.73.81\n+Using asx0 device\n+TFTP from server 172.22.72.144; our IP address is 172.22.73.81\n+Filename '/tftpboot/uImage-sjg-seaboard-261347'.\n+Load address: 0x40c000\n+Loading: #################################################################\n+ #################################################################\n+ #################################################################\n+ ################################################\n+done\n+Bytes transferred = 3557464 (364858 hex)\n+CrOS>\n+\n+\n+Another way of doing this is to issue a tftp command, which will cause the\n+bootp to happen automatically.\n+\n+\n+MAC Addresses\n+-------------\n+\n+Most Ethernet dongles have a built-in MAC address which is unique in the\n+world. This is important so that devices on the network can be\n+distinguised from each other. MAC address conflicts are evil and\n+generally result in strange and eratic behaviour.\n+\n+Some boards have USB Ethernet chips on-board, and these sometimes do not\n+have an assigned MAC address. In this case it is up to you to assign\n+one which is unique. You should obtain a valid MAC address from a range\n+assigned to you before you ship the product.\n+\n+Built-in Ethernet adapters support setting the MAC address by means of\n+an ethaddr environment variable for each interface (ethaddr, eth1addr,\n+eth2addr). There is similar support on the USB network side, using the\n+names usbethaddr, usbeth1addr, etc. They are kept separate since we\n+don't want a USB device taking the MAC address of a built-in device or\n+vice versa.\n+\n+So if your USB Ethernet chip doesn't have a MAC address available then\n+you must set usbethaddr to a suitable MAC address. At the time of\n+writing this functionality is only supported by the SMSC driver.\n", "prefixes": [ "U-Boot", "v8", "3/4" ] }