* [U-Boot-Users] [PATCH 1/1] Supplemental USB patch to previous 14 patches.
@ 2006-05-29 22:47 Bryan O'Donoghue
2006-05-30 18:09 ` Yuli Barcohen
0 siblings, 1 reply; 5+ messages in thread
From: Bryan O'Donoghue @ 2006-05-29 22:47 UTC (permalink / raw)
To: u-boot
Greetings list.
This is a supplemental patch to the 14 patches sent on the 26/05/06. It
implements the various changes to the patch set that I had with Yuli Barcohen
yesterday.
Let me know if further changes are required.
Best Regards,
Bryan
Signed-off-by: Bryan O'Donoghue
This patchset is a supplemental to the previous submitted USB patches.
The notable change here is that as a default VendorID/ProductID
topology U-Boot is pretending to be Linux, which should be fine, since
in U-Boot gserial and cdc_acm are protocol compatible with Linux and
ostensibly we should be booting to Linux anyway, as was discussed on the
mailing list recently.
modified: CHANGELOG
Update to the CHANGELOG.
modified: Makefile
Add AdderUSB to the top-level Makefile
modified: README
Ammend README to fix a typo and to give updated description of
the functioning of the USB console as it is implemented
currently in U-Boot
modified: drivers/usbdcore_mpc8xx.c
Fix a funny in this file that I noticed after submission to the
list 0xFF000000 should say CFG_IMMR.
modified: drivers/usbtty.c
Slight change to the preceeding patch to switch to the new way
to define Vendor/Product ids from either BoardName.h or to hook
the default Linux ids.
modified: drivers/usbtty.h
Defines for the standard Linux Vendor/Product ids have been
added to this header. gserial and cdc_acm are protocol
compatible with the Linux version of the same, so this change
should be fine.
modified: include/configs/Adder.h
Rolls back patch 06/14 from May 26th submission, in favour of
include/configs/AdderUSB.h
new file: include/configs/AdderUSB.h
Simple wrapper header to facilitate a super-set of the Adder87x
port, switching on the USB console.
---
CHANGELOG | 5 +++-
Makefile | 5 +++-
README | 41 ++++++++++++++++++++++-------------
drivers/usbdcore_mpc8xx.c | 8 +++----
drivers/usbtty.c | 14 +++++++++---
drivers/usbtty.h | 14 ++++++++++++
include/configs/Adder.h | 17 ---------------
include/configs/AdderUSB.h | 51 ++++++++++++++++++++++++++++++++++++++++++++
8 files changed, 112 insertions(+), 43 deletions(-)
create mode 100644 include/configs/AdderUSB.h
41469d4a6ea4030c262f5d0f363d9515543c415e
diff --git a/CHANGELOG b/CHANGELOG
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -10,8 +10,9 @@ Changes since U-Boot 1.1.4:
- Minor changes to usbdcore_omap1510.c usbdcore_omap1510.h
- Update usbcore slightly to ease host enumeration.
- Fix non-portable endian problems in usbdcore and usbdcore_ep0.
- - Switch on USB device as default in Adder_config
- Patch by Bryan O'Donoghue <bodonoghue@codehermit.ie>, 26 May 2006
+ - Add AdderUSB_config as a defconfig to enable usage of the USB console
+ by default with the Adder87x U-Boot port.
+ Patch by Bryan O'Donoghue <bodonoghue@codehermit.ie>, 29 May 2006
* Update Intel IXP4xx support
- Add IXP4xx NPE ethernet MAC support
diff --git a/Makefile b/Makefile
--- a/Makefile
+++ b/Makefile
@@ -58,7 +58,7 @@ ifeq ($(HOSTARCH),ppc)
CROSS_COMPILE =
else
ifeq ($(ARCH),ppc)
-CROSS_COMPILE = powerpc-linux-
+CROSS_COMPILE = ppc_8xx-
endif
ifeq ($(ARCH),arm)
CROSS_COMPILE = arm-linux-
@@ -437,6 +437,9 @@ AdderII_config \
@echo "#define CONFIG_MPC852T" > include/config.h)
@./mkconfig -a Adder ppc mpc8xx adder
+AdderUSB_config: unconfig
+ @./mkconfig -a AdderUSB ppc mpc8xx adder
+
ADS860_config \
FADS823_config \
FADS850SAR_config \
diff --git a/README b/README
--- a/README
+++ b/README
@@ -873,9 +873,10 @@ The following options need to be configu
Common Device Class Abstract Control Model serial device.
If you select usbtty = gserial you should be able to enumerate
a Linux host by
- # modprobe gserial vendor=0xVendorID product=0xProductID
- else if using cdc_acm you simply setting the environment
- variable usbtty to be cdc_acm should suffice.
+ # modprobe usbserial vendor=0xVendorID product=0xProductID
+ else if using cdc_acm, simply setting the environment
+ variable usbtty to be cdc_acm should suffice. The following
+ might be defined in YourBoardName.h
CONFIG_USB_DEVICE
Define this to build a UDC device
@@ -883,6 +884,26 @@ The following options need to be configu
CONFIG_USB_TTY
Define this to have a tty type of device available to
talk to the UDC device
+
+ CFG_CONSOLE_IS_IN_ENV
+ Define this if you want stdin, stdout &/or stderr to
+ be set to usbtty.
+
+ mpc8xx:
+ CFG_USB_EXTC_CLK 0xBLAH
+ Derive USB clock from external clock "blah"
+ - CFG_USB_EXTC_CLK 0x02
+
+ CFG_USB_BRG_CLK 0xBLAH
+ Derive USB clock from brgclk
+ - CFG_USB_BRG_CLK 0x04
+
+ If you have a USB-IF assigned VendorID then you may wish to
+ define your own vendor specific values either in BoardName.h
+ or directly in usbd_vendor_info.h. If you don't define
+ CONFIG_USBD_MANUFACTURER, CONFIG_USBD_PRODUCT_NAME,
+ CONFIG_USBD_VENDORID and CONFIG_USBD_PRODUCTID, then U-Boot
+ should pretend to be a Linux device to it's target host.
CONFIG_USBD_MANUFACTURER
Define this string as the name of your company for
@@ -903,19 +924,7 @@ The following options need to be configu
for your device
- CONFIG_USBD_PRODUCTID 0xFFFF
- CFG_CONSOLE_IS_IN_ENV
- Define this if you want stdin, stdout &/or stderr to
- be set to usbtty automatically.
-
- mpc8xx:
- CFG_USB_EXTC_CLK 0xBLAH
- Derive USB clock from external clock "blah"
- - CFG_USB_EXTC_CLK 0x02
-
- CFG_USB_BRG_CLK 0xBLAH
- Derive USB clock from brgclk
- - CFG_USB_BRG_CLK 0x04
-
+
- MMC Support:
The MMC controller on the Intel PXA is supported. To
enable this define CONFIG_MMC. The MMC can be
diff --git a/drivers/usbdcore_mpc8xx.c b/drivers/usbdcore_mpc8xx.c
--- a/drivers/usbdcore_mpc8xx.c
+++ b/drivers/usbdcore_mpc8xx.c
@@ -754,7 +754,7 @@ static void mpc8xx_udc_advance_rx(volati
{
if((*rx_cbdp)->cbd_sc & RX_BD_W){
*rx_cbdp = (volatile cbd_t*)
- (endpoints[epid]->rbase + 0xFF000000);
+ (endpoints[epid]->rbase + CFG_IMMR);
}else{
(*rx_cbdp)++;
@@ -782,7 +782,7 @@ static void mpc8xx_udc_flush_tx_fifo(int
usbp->uscom = 0x40 | 0;
/* reset ring */
- tx_cbdp = (cbd_t*)(endpoints[epid]->tbptr + 0xFF000000);
+ tx_cbdp = (cbd_t*)(endpoints[epid]->tbptr + CFG_IMMR);
tx_cbdp->cbd_sc = (TX_BD_I | TX_BD_W);
@@ -887,7 +887,7 @@ static int mpc8xx_udc_ep_tx (struct usb_
}
ep = epi->endpoint_address & 0x03;
- tx_cbdp = (cbd_t*)(endpoints[ep]->tbptr + 0xFF000000);
+ tx_cbdp = (cbd_t*)(endpoints[ep]->tbptr + CFG_IMMR);
if(tx_cbdp->cbd_sc&TX_BD_R || usbp->usber&USB_E_TXB){
mpc8xx_udc_flush_tx_fifo(ep);
@@ -904,7 +904,7 @@ static int mpc8xx_udc_ep_tx (struct usb_
return -1;
}
- tx_cbdp = (cbd_t*)(endpoints[ep]->tbptr + 0xFF000000);
+ tx_cbdp = (cbd_t*)(endpoints[ep]->tbptr + CFG_IMMR);
while(tx_cbdp->cbd_sc&TX_BD_R){};
tx_cbdp->cbd_sc = (tx_cbdp->cbd_sc&TX_BD_W);
diff --git a/drivers/usbtty.c b/drivers/usbtty.c
--- a/drivers/usbtty.c
+++ b/drivers/usbtty.c
@@ -30,15 +30,20 @@
#include "usbtty.h"
#include "usb_cdc_acm.h"
#include "usbdescriptors.h"
+#include <config.h> /* If defined, override Linux identifiers
with
+ * vendor specific ones */
#if 0
-#define TTYDBG(fmt,args...) serial_printf("[%s] %s %d: "fmt,
__FILE__,__FUNCTION__,__LINE__,##args) +#define TTYDBG(fmt,args...)\
+ serial_printf("[%s] %s %d: "fmt, __FILE__,__FUNCTION__,__LINE__,##args)
#else
#define TTYDBG(fmt,args...) do{}while(0)
#endif
#if 1
-#define TTYERR(fmt,args...) serial_printf("ERROR![%s] %s %d: "fmt,
__FILE__,__FUNCTION__,__LINE__,##args) +#define TTYERR(fmt,args...)\
+ serial_printf("ERROR![%s] %s %d: "fmt, __FILE__,__FUNCTION__,\
+ __LINE__,##args)
#else
#define TTYERR(fmt,args...) do{}while(0)
#endif
@@ -123,7 +128,6 @@ static struct usb_device_descriptor devi
.bDeviceProtocol = 0x00,
.bMaxPacketSize0 = EP0_MAX_PACKET_SIZE,
.idVendor = cpu_to_le16(CONFIG_USBD_VENDORID),
- .idProduct = cpu_to_le16(CONFIG_USBD_PRODUCTID),
.bcdDevice = cpu_to_le16(USBTTY_BCD_DEVICE),
.iManufacturer = STR_MANUFACTURER,
.iProduct = STR_PRODUCT,
@@ -742,6 +746,8 @@ static void usbtty_init_terminal_type(sh
/* Enumerate Device Descriptor */
device_descriptor.bDeviceClass =
COMMUNICATIONS_DEVICE_CLASS;
+ device_descriptor.idProduct =
+ cpu_to_le16(CONFIG_USBD_PRODUCTID_CDCACM);
/* Assign endpoint indices */
tx_endpoint = ACM_TX_ENDPOINT;
@@ -769,6 +775,8 @@ static void usbtty_init_terminal_type(sh
/* Enumerate Device Descriptor */
device_descriptor.bDeviceClass = 0xFF;
+ device_descriptor.idProduct =
+ cpu_to_le16(CONFIG_USBD_PRODUCTID_GSERIAL);
/* Assign endpoint indices */
tx_endpoint = GSERIAL_TX_ENDPOINT;
diff --git a/drivers/usbtty.h b/drivers/usbtty.h
--- a/drivers/usbtty.h
+++ b/drivers/usbtty.h
@@ -2,6 +2,9 @@
* (C) Copyright 2003
* Gerry Hamel, geh at ti.com, Texas Instruments
*
+ * (C) Copyright 2006
+ * Bryan O'Donoghue, bodonoghue at codehermit.ie, CodeHermit
+ *
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
@@ -28,6 +31,17 @@
#include "usbdcore_omap1510.h"
#endif
+#include <version_autogenerated.h>
+
+/* If no VendorID/ProductID is defined in config.h, pretend to be Linux
+ * DO NOT Reuse this Vendor/Product setup with protocol incompatible devices */
+
+#define CONFIG_USBD_VENDORID 0x0525 /* Linux/NetChip */
+#define CONFIG_USBD_PRODUCTID_GSERIAL 0xa4a6 /* gserial */
+#define CONFIG_USBD_PRODUCTID_CDCACM 0xa4a7 /* CDC ACM */
+#define CONFIG_USBD_MANUFACTURER "Das U-Boot"
+#define CONFIG_USBD_PRODUCT_NAME U_BOOT_VERSION
+
#define CONFIG_USBD_CONFIGURATION_STR "TTY via USB"
diff --git a/include/configs/Adder.h b/include/configs/Adder.h
--- a/include/configs/Adder.h
+++ b/include/configs/Adder.h
@@ -5,9 +5,6 @@
* Support for Analogue&Micro Adder boards family.
* Tested on AdderII and Adder87x.
*
- * Add USB console as default option.
- * Bryan O'Donoghue <bodonoghue@codehermit.ie>
- *
* See file CREDITS for list of people who contributed to this
* project.
*
@@ -41,20 +38,6 @@
#define CONFIG_ETHER_ON_FEC1
#define CONFIG_ETHER_ON_FEC2
-#if 1
-#define CONFIG_USB_DEVICE /* Include UDC driver */
-#define CONFIG_USB_TTY /* Bind the TTY driver to UDC */
-#define CONFIG_USBD_MANUFACTURER "CodeHermit.ie"
-#define CONFIG_USBD_PRODUCT_NAME "Das U-Boot"
-/* Never use the next two defines in any production system */
-#define CONFIG_USBD_VENDORID 0xFFFF /* Some mythical vendor */
-#define CONFIG_USBD_PRODUCTID 0xFFFF /* Some mythical device */
-
-#define CFG_USB_EXTC_CLK 0x02 /* Oscillator on EXTC_CLK 2 */
-#define CFG_USB_BRG_CLK 0x04 /* or use Baud rate
generator 0x04 */ -#define CFG_CONSOLE_IS_IN_ENV
-#endif
-
#if defined(CONFIG_ETHER_ON_FEC1) || defined(CONFIG_ETHER_ON_FEC2)
#define CFG_DISCOVER_PHY
#define FEC_ENET
diff --git a/include/configs/AdderUSB.h b/include/configs/AdderUSB.h
new file mode 100644
--- /dev/null
+++ b/include/configs/AdderUSB.h
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 2006 CodeHermit.
+ * Bryan O'Donoghue <bodonoghue@codehermit.ie>
+ *
+ * Provides support for USB console on the Analogue & Micro Adder87x
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+#ifndef __ADDERUSB__
+#define __ADDERUSB__
+
+/* Include the board port */
+#include "Adder.h"
+
+#define CONFIG_USB_DEVICE /* Include UDC driver */
+#define CONFIG_USB_TTY /* Bind the TTY driver to UDC */
+#define CFG_USB_EXTC_CLK 0x02 /* Oscillator on EXTC_CLK 2 */
+#define CFG_USB_BRG_CLK 0x04 /* or use Baud rate
generator 0x04 */ +#define CFG_CONSOLE_IS_IN_ENV /* Console is
in env */ +
+/* If you have a USB-IF assigned VendorID then you may wish to define
+ * your own vendor specific values either in BoardName.h or directly in
+ * usbd_vendor_info.h
+ */
+
+/*
+#define CONFIG_USBD_MANUFACTURER "CodeHermit.ie"
+#define CONFIG_USBD_PRODUCT_NAME "Das U-Boot"
+#define CONFIG_USBD_VENDORID 0xFFFF
+#define CONFIG_USBD_PRODUCTID_GSERIAL 0xFFFF
+#define CONFIG_USBD_PRODUCTID_CDCACM 0xFFFE
+*/
+
+#endif /* __ADDERUSB_H__ */
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot-Users] [PATCH 1/1] Supplemental USB patch to previous 14 patches.
2006-05-29 22:47 [U-Boot-Users] [PATCH 1/1] Supplemental USB patch to previous 14 patches Bryan O'Donoghue
@ 2006-05-30 18:09 ` Yuli Barcohen
2006-05-30 21:50 ` Bryan O'Donoghue
0 siblings, 1 reply; 5+ messages in thread
From: Yuli Barcohen @ 2006-05-30 18:09 UTC (permalink / raw)
To: u-boot
>>>>> Bryan O'Donoghue writes:
Bryan> Greetings list. This is a supplemental patch to the 14
Bryan> patches sent on the 26/05/06. It implements the various
Bryan> changes to the patch set that I had with Yuli Barcohen
Bryan> yesterday.
I'm afraid it's not exactly what we discussed. Please see below.
Bryan> Let me know if further changes are required.
Bryan> diff --git a/Makefile b/Makefile
Bryan> --- a/Makefile
Bryan> +++ b/Makefile
Bryan> @@ -58,7 +58,7 @@ ifeq ($(HOSTARCH),ppc)
Bryan> CROSS_COMPILE = else ifeq ($(ARCH),ppc)
Bryan> -CROSS_COMPILE = powerpc-linux-
Bryan> +CROSS_COMPILE = ppc_8xx-
I don't think changing default compiler for ALL PowerPC targets was your
intention.
Bryan> endif ifeq ($(ARCH),arm) CROSS_COMPILE = arm-linux-
Bryan> @@ -437,6 +437,9 @@ AdderII_config \
Bryan> @echo "#define CONFIG_MPC852T" > include/config.h)
Bryan> @./mkconfig -a Adder ppc mpc8xx adder
Bryan> +AdderUSB_config: unconfig
Bryan> + @./mkconfig -a AdderUSB ppc mpc8xx adder
Bryan> +
I didn't mean to add entirely new board target. I think a new target
should be added to the existing Adder targets which would add a #define
for USB console just like "#define CONFIG_MPC852T" is added for
AdderII. Conditional on this #define, BoardName.h can include
usbd_vendor.h which we decided to create. In the current version of your
patch, it's exactly opposite: usbd_vendor.h (AdderUSB.h in our case)
includes BoardName.h (Adder.h). This means that for every board wishing
to support USB console you have to create another BoardNameUSB.h (which
is a clone of AdderUSB.h). What's about creating CodeHermit.h containing
something like this:
#define CONFIG_USB_DEVICE /* Include UDC driver */
#define CFG_USB_EXTC_CLK 0x02 /* Oscillator on EXTC_CLK 2 */
#define CFG_USB_BRG_CLK 0x04
#define CFG_CONSOLE_IS_IN_ENV
#define CONFIG_USBD_MANUFACTURER "CodeHermit.ie"
#define CONFIG_USBD_PRODUCT_NAME "Das U-Boot"
#define CONFIG_USBD_VENDORID 0xFFFF
#define CONFIG_USBD_PRODUCTID_GSERIAL 0xFFFF
#define CONFIG_USBD_PRODUCTID_CDCACM 0xFFFE
and adding to Adder.h
#ifdef CONFIG_USB_TTY
#include <CodeHermit.h>
#endif
"#define CONFIG_USB_TTY" would be added by the configuration target in
the Makefile. Any other board can then include CodeHermit.h
unchanged. To allow IDs overwriting, you can even use the following in
CodeHermit.h:
#ifndef CONFIG_USBD_VENDORID
#define CONFIG_USBD_VENDORID 0xFFFF
#endif
and so on. Hopefully we can use Linux IDs (NetChip) instead of 0xFFFF as
the defaults.
--
========================================================================
Yuli Barcohen | Phone +972-9-765-1788 | Software Project Leader
yuli at arabellasw.com | Fax +972-9-765-7494 | Arabella Software, Israel
========================================================================
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot-Users] [PATCH 1/1] Supplemental USB patch to previous 14 patches.
2006-05-30 18:09 ` Yuli Barcohen
@ 2006-05-30 21:50 ` Bryan O'Donoghue
2006-05-30 23:59 ` Wolfgang Denk
0 siblings, 1 reply; 5+ messages in thread
From: Bryan O'Donoghue @ 2006-05-30 21:50 UTC (permalink / raw)
To: u-boot
On Tue, 30 May 2006 21:09:11 +0300
Yuli Barcohen <yuli@arabellasw.com> wrote:
> Bryan> -CROSS_COMPILE = powerpc-linux-
> Bryan> +CROSS_COMPILE = ppc_8xx-
>
Blink. How the hell did that get in there ?
> I didn't mean to add entirely new board target. I think a new target
> should be added to the existing Adder targets which would add a #define
> for USB console just like "#define CONFIG_MPC852T" is added for
> AdderII.
Actually I think that makes more sense then adding AdderUSB as the supplemental
patch does. I concur, this is definitely the more generic/portable way
to do this. I'll generate another supplemental patch in lieu of the previous
patch, which implements the above.
> Conditional on this #define, BoardName.h can include
> usbd_vendor.h which we decided to create. In the current version of your
> patch, it's exactly opposite: usbd_vendor.h (AdderUSB.h in our case)
> includes BoardName.h (Adder.h). This means that for every board wishing
> to support USB console you have to create another BoardNameUSB.h (which
> is a clone of AdderUSB.h). What's about creating CodeHermit.h containing
> something like this:
>
> #define CONFIG_USB_DEVICE /* Include UDC driver */
> #define CFG_USB_EXTC_CLK 0x02 /* Oscillator on EXTC_CLK 2 */
> #define CFG_USB_BRG_CLK 0x04
> #define CFG_CONSOLE_IS_IN_ENV
> #define CONFIG_USBD_MANUFACTURER "CodeHermit.ie"
> #define CONFIG_USBD_PRODUCT_NAME "Das U-Boot"
> #define CONFIG_USBD_VENDORID 0xFFFF
> #define CONFIG_USBD_PRODUCTID_GSERIAL 0xFFFF
> #define CONFIG_USBD_PRODUCTID_CDCACM 0xFFFE
> adding to Adder.h
>
> #ifdef CONFIG_USB_TTY
> #include <CodeHermit.h>
> #endif
>
> "#define CONFIG_USB_TTY" would be added by the configuration target in
> the Makefile. Any other board can then include CodeHermit.h
> unchanged. To allow IDs overwriting, you can even use the following in
> CodeHermit.h:
>
> #ifndef CONFIG_USBD_VENDORID
> #define CONFIG_USBD_VENDORID 0xFFFF
> #endif
Right. I have a suggestion, which if it is agreeable to you and everybody else
I will generate a new full supplemental patchset based upon.
1: For Adder ports, the Makefile shall be amended to optionally add
CONFIG_USB_TTY to config.h as CONFIG_MPC852T is added by make AdderII_config.
This will provisionally imply an appendation of USB to the config name. Hence
three new values should be added to Makefile AdderUSB_config,
Adder87xUSB_config and AdderIIUSB_config. - Do all these boards have USB
facility ?
2: include/usbd_vendor.h shall be created. This will look almost exactly like
the following.
#define CONFIG_USB_DEVICE /* Include UDC driver */
#define CFG_CONSOLE_IS_IN_ENV
/*
* Include your own Vendor specific defines here if you have been allocated a
* Vendor ID from the USB Implementors Forum. www.usb.org else DO NOT POLLUTE
* THE USB NAMESPACE !
*
* #define CONFIG_USBD_MANUFACTURER "CodeHermit.ie"
* #define CONFIG_USBD_PRODUCT_NAME "Das U-Boot"
* #define CONFIG_USBD_VENDORID 0xFFFF
* #define CONFIG_USBD_PRODUCTID_GSERIAL 0xFFFF
* #define CONFIG_USBD_PRODUCTID_CDCACM 0xFFFE
*/
If at a later date for argument sake, we were to implement RNDIS then the
appropiate thing to do would be to add an optional
CONFIG_USBD_PRODUCTID_RNDIS entry to usbd_vendor.h, with defaults for RNDIS
values residing in usbrndis.h, thus maintaining the structure established
with usbtty, thus far.
3: Adder.h shall be ammended with the following text in
a rational place.
#ifdef CONFIG_USB_TTY
#include <usbd_vendor.h>
#define CFG_USB_EXTC_CLK 0x02 /* Oscillator on EXTC_CLK 2 */
#define CFG_USB_BRG_CLK 0x04 /* Or optionally on brgc4 */
#endif
I think CFG_USB_*BLAH* above shoudln't be in usbd_vendor.h for the case
where the USB console is being compiled for a non 8xx port, say the omap1510/SX1
port, hence the two CFG options above should probably be board specific.
4:
usbtty.c shall stay pretty much the same.
usbtty.h - Shall be included in usbtty.c. CONFIG_USBD_VENDORID,
CONFIG_USBD_PRODUCTID_GSERIAL will default to Linux values
config.h - Shall be included subsequent to usbtty.h, thus facilitating
over-riding of default VENDORID/PRODUCTID values from Linux specific values to
Vendor specific values.
I think that with this in place we pretty much do all that needs to be done.
If everybody else is in agreement, I can have these changes made in <= 10
minutes.
Let me know what you think.
Best Regards,
Bryan
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot-Users] [PATCH 1/1] Supplemental USB patch to previous 14 patches.
2006-05-30 21:50 ` Bryan O'Donoghue
@ 2006-05-30 23:59 ` Wolfgang Denk
2006-05-31 10:42 ` Bryan O'Donoghue
0 siblings, 1 reply; 5+ messages in thread
From: Wolfgang Denk @ 2006-05-30 23:59 UTC (permalink / raw)
To: u-boot
In message <20060530225053.7575ab34@localhost.localdomain> you wrote:
>
> 1: For Adder ports, the Makefile shall be amended to optionally add
> CONFIG_USB_TTY to config.h as CONFIG_MPC852T is added by make AdderII_config.
> This will provisionally imply an appendation of USB to the config name. Hence
> three new values should be added to Makefile AdderUSB_config,
> Adder87xUSB_config and AdderIIUSB_config. - Do all these boards have USB
> facility ?
Please hold on for a minute. The Makefile's purpose is to define
dependencies. It is actually not the place to put code and
configuration trickery there. Yes, I know, this is already in use
with other boards, but I would like to ask you to use such features
only when absolutely necessary.
If you just define a new make target name this is simple and readable
(just a single word in the Makefile), and can be evaluated in the
board config file instead.
Best regards,
Wolfgang Denk
--
Software Engineering: Embedded and Realtime Systems, Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Behind every great man, there is a woman -- urging him on.
-- Harry Mudd, "I, Mudd", stardate 4513.3
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot-Users] [PATCH 1/1] Supplemental USB patch to previous 14 patches.
2006-05-30 23:59 ` Wolfgang Denk
@ 2006-05-31 10:42 ` Bryan O'Donoghue
0 siblings, 0 replies; 5+ messages in thread
From: Bryan O'Donoghue @ 2006-05-31 10:42 UTC (permalink / raw)
To: u-boot
On Wed, 31 May 2006 01:59:51 +0200
Wolfgang Denk <wd@denx.de> wrote:
Hello Wolfgang.
> Please hold on for a minute. The Makefile's purpose is to define
> dependencies. It is actually not the place to put code and
> configuration trickery there. Yes, I know, this is already in use
> with other boards, but I would like to ask you to use such features
> only when absolutely necessary.
OK I'll implement this whichever way is your preference.
I had made this addition to the Makefile as at last night's conversation
Adder_config \
Adder87x_config \
AdderII_config \
+AdderUSB_config \
+Adder87xUSB_config \
+AdderIIUSB_config \
: unconfig
$(if $(findstring AdderII,$@), \
@echo "#define CONFIG_MPC852T" > include/config.h)
+ $(if $(findstring USB,$@),\
+ @echo "#define CONFIG_USB_TTY" >> include/config.h)
@./mkconfig -a Adder ppc mpc8xx adder
with the following in Adder.h
/* USB TTY */
#ifdef CONFIG_USB_TTY
#include <usbd_vendor.h> /* Include optional Vendor info */
#define CFG_USB_EXTC_CLK 0x02 /* Oscillator on EXTC_CLK 2 */
#define CFG_USB_BRG_CLK 0x04 /* or use Baud rate generator 0x04 */
#define CFG_CONSOLE_IS_IN_ENV /* Console is in env */
#endif
> If you just define a new make target name this is simple and readable
> (just a single word in the Makefile), and can be evaluated in the
> board config file instead.
Hmm, I don't really understand how this would work, i.e. if the conditional
include CONFIG_USB_TTY or other *doesn't* go into config.h then how does
Adder.h know whether or not to include the console code?
Bryan
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2006-05-31 10:42 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-05-29 22:47 [U-Boot-Users] [PATCH 1/1] Supplemental USB patch to previous 14 patches Bryan O'Donoghue
2006-05-30 18:09 ` Yuli Barcohen
2006-05-30 21:50 ` Bryan O'Donoghue
2006-05-30 23:59 ` Wolfgang Denk
2006-05-31 10:42 ` Bryan O'Donoghue
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox