tgabor84> I think it is the same issue CYGPKG_IO_USB and
tgabor84> CYGPKG_IO_USB_SLAVE, which are also marked as hadware
tgabor84> packages and not included in the templates.
CYGPKG_IO_USB and CYGPKG_IO_USB_SLAVE are included in the target
definitions for some targets, e.g. assabet, corresponding to the
boards for which slave-side USB first became available. The reasoning
is the same as for SPI and I2C: if the application does not use the
functionality then it gets eliminated at link-time. Again I do not
know if this works properly with more recent drivers. Also, USB is
somewhat more complicated than SPI.
Side issue: please be careful with terminology. A template is a
hardware-independent description of functionality, e.g. "default",
"redboot", or "net". Templates live in separate files below the
templates/ subdirectory of the eCos repository. A target definition
describes a hardware target, i.e. a specific board. Target definitions
live in the ecos.db file. The combination of a target definition and a
template gives an initial configuration.
Bart