aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Starkjohann <cs+github@obdev.at>2010-07-15 15:56:31 +0000
committerChristian Starkjohann <cs+github@obdev.at>2010-07-15 15:56:31 +0000
commit6914ca0b7229096771de74861e390ca94a85409f (patch)
treede11f41239a80892463a7ed2bab465f9c0d05369
parentb9a65d9d1dad0ec5ca762aad9dc36af62eeffb72 (diff)
downloadv-usb-6914ca0b7229096771de74861e390ca94a85409f.tar.gz
v-usb-6914ca0b7229096771de74861e390ca94a85409f.tar.bz2
v-usb-6914ca0b7229096771de74861e390ca94a85409f.zip
- documented changes
-rw-r--r--Readme.txt13
-rw-r--r--usbdrv/Changelog.txt8
-rw-r--r--usbdrv/Readme.txt29
3 files changed, 32 insertions, 18 deletions
diff --git a/Readme.txt b/Readme.txt
index 2d37433..84d27f9 100644
--- a/Readme.txt
+++ b/Readme.txt
@@ -24,7 +24,8 @@ for device and host and fully working examples for device and host:
USB-IDs-for-free.txt .... List and terms of use for free shared PIDs.
Each subdirectory contains a separate Readme file which explains its
-contents.
+contents. We recommend that you also read the Readme.txt file in the
+usbdrv subdirectory.
PREREQUISITES
@@ -61,13 +62,7 @@ Documentation for host and device library files are in the respective header
files. For more information, see our documentation wiki at
http://www.obdev.at/goto.php?t=vusb-wiki.
-Since code size is often an issue when V-USB is used (especially with boot
-loaders), we add a link to a page with optimization hints:
-
- http://www.tty1.net/blog/2008-04-29-avr-gcc-optimisations_en.html
-
-These optimizations are good for gcc 4.x. Version 3.x of gcc produces good
-code even without these flags.
+See the file usbdrv/Readme.txt for more info about the driver itself.
LICENSE
@@ -84,5 +79,5 @@ GPL. See CommercialLicense.txt for details.
----------------------------------------------------------------------------
-(c) 2009 by OBJECTIVE DEVELOPMENT Software GmbH.
+(c) 2010 by OBJECTIVE DEVELOPMENT Software GmbH.
http://www.obdev.at/
diff --git a/usbdrv/Changelog.txt b/usbdrv/Changelog.txt
index 88e3d74..df00013 100644
--- a/usbdrv/Changelog.txt
+++ b/usbdrv/Changelog.txt
@@ -300,5 +300,9 @@ Scroll down to the bottom to see the most recent changes.
V-USB compatible with the new "p" suffix devices (e.g. ATMega328p).
- USB_CFG_CLOCK_KHZ setting is now required in usbconfig.h (no default any
more).
- - New USB_CFG_DRIVER_FLASH_PAGE allows boot loaders on devices with more
- than 64 kB flash.
+ - New option USB_CFG_DRIVER_FLASH_PAGE allows boot loaders on devices with
+ more than 64 kB flash.
+ - Built-in configuration descriptor allows custom definition for second
+ endpoint now.
+
+* Release 2009-07-15
diff --git a/usbdrv/Readme.txt b/usbdrv/Readme.txt
index 8de396d..970dc66 100644
--- a/usbdrv/Readme.txt
+++ b/usbdrv/Readme.txt
@@ -113,13 +113,28 @@ IDs. See http://www.obdev.at/vusb/ for details.
DEVELOPMENT SYSTEM
==================
This driver has been developed and optimized for the GNU compiler version 3
-(gcc 3). It does work well with gcc 4, but with bigger code size. We recommend
-that you use the GNU compiler suite because it is freely available. V-USB
-has also been ported to the IAR compiler and assembler. It has been tested
-with IAR 4.10B/W32 and 4.12A/W32 on an ATmega8 with the "small" and "tiny"
-memory model. Not every release is tested with IAR CC and the driver may
-therefore fail to compile with IAR. Please note that gcc is more efficient for
-usbdrv.c because this module has been deliberately optimized for gcc.
+and 4. We recommend that you use the GNU compiler suite because it is freely
+available. V-USB has also been ported to the IAR compiler and assembler. It
+has been tested with IAR 4.10B/W32 and 4.12A/W32 on an ATmega8 with the
+"small" and "tiny" memory model. Not every release is tested with IAR CC and
+the driver may therefore fail to compile with IAR. Please note that gcc is
+more efficient for usbdrv.c because this module has been deliberately
+optimized for gcc.
+
+Gcc version 3 produces smaller code than version 4 due to new optimizing
+capabilities which don't always improve things on 8 bit CPUs. The code size
+generated by gcc 4 can be reduced with the compiler options
+-fno-move-loop-invariants, -fno-tree-scev-cprop and
+-fno-inline-small-functions in addition to -Os. On devices with more than
+8k of flash memory, we also recommend the linker option --relax (written as
+-Wl,--relax for gcc) to convert absolute calls into relative where possible.
+
+For more information about optimizing options see:
+
+ http://www.tty1.net/blog/2008-04-29-avr-gcc-optimisations_en.html
+
+These optimizations are good for gcc 4.x. Version 3.x of gcc does not support
+most of these options and produces good code anyway.
USING V-USB FOR FREE