Home | History | Annotate | Download | only in ingenic
History log of /src/sys/arch/mips/ingenic/ingenic_ehci.c
RevisionDateAuthorComments
 1.8  07-Aug-2021  thorpej Merge thorpej-cfargs2.
 1.7  24-Apr-2021  thorpej branches: 1.7.8;
Merge thorpej-cfargs branch:

Simplify and make extensible the config_search() / config_found() /
config_attach() interfaces: rather than having different variants for
which arguments you want pass along, just have a single call that
takes a variadic list of tag-value arguments.

Adjust all call sites:
- Simplify wherever possible; don't pass along arguments that aren't
actually needed.
- Don't be explicit about what interface attribute is attaching if
the device only has one. (More simplification.)
- Add a config_probe() function to be used in indirect configuiration
situations, making is visibly easier to see when indirect config is
in play, and allowing for future change in semantics. (As of now,
this is just a wrapper around config_match(), but that is an
implementation detail.)

Remove unnecessary or redundant interface attributes where they're not
needed.

There are currently 5 "cfargs" defined:
- CFARG_SUBMATCH (submatch function for direct config)
- CFARG_SEARCH (search function for indirect config)
- CFARG_IATTR (interface attribte)
- CFARG_LOCATORS (locators array)
- CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)

...and a sentinel value CFARG_EOL.

Add some extra sanity checking to ensure that interface attributes
aren't ambiguous.

Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark
ports to associate those device handles with device_t instance. This
will trickle trough to more places over time (need back-end for pre-OFW
Sun OBP; any others?).
 1.6  09-Apr-2018  jakllsch branches: 1.6.16;
Stop potential misuse of vendor names and USB vendor IDs in root hub
device and string descriptors.

Firstly: Few vendors have identical PCI-SIG vendor IDs and USB-IF vendor
IDs. As such, using the PCI vendor ID as a USB vendor ID may trample
on whomever is allocated that USB vendor ID.

Secondly: The vendor of the host controller hardware implementation has
little to nothing to do with our usbroothub implementation. Thus we
should not potentially associate any problems therewith to such third
party.

This change will result in root hubs being identified by USB Vendor ID
0x0000. Root hub vendor string will now be "NetBSD" (or, specifically:
ostype). Product ID (0x0000) and product strings remain unchanged.
 1.5  23-Apr-2016  skrll branches: 1.5.16; 1.5.18;
Merge nick-nhusb

- API / infrastructure changes to support memory management changes.
- Memory management improvements and bug fixes.
- HCDs should now be MP safe
- conversion to KERNHIST based debug
- FS/LS isoc support on ehci(4).
- conversion to kmem(9)
- Some USB 3 support - mostly from Takahiro HAYASHI (t-hash).
- interrupt transfers now get proper DMA operations
- general bug fixes
- kern/48308
- uhub status notification improvements
- umass(4) probe fix (applied to HEAD already)
- ohci(4) short transfer fix
 1.4  02-Jan-2016  macallan properly initialize the EHCI
from Alexander Kabaev ( kan at freebsd.org )
 1.3  17-Mar-2015  macallan branches: 1.3.2;
set root hub vendor IDs
 1.2  17-Mar-2015  macallan - keep a list of devices, addresses and interrupts in apbus.c
- pass irq numbers to devices
- reduce magic numbers in device drivers
- allow multiple instances of device drivers
 1.1  08-Mar-2015  macallan drivers for on-chip ohci and ehci
ohci works fine, ehci doesn't like high speed devices
 1.3.2.4  19-Mar-2016  skrll Adapt to branch
 1.3.2.3  19-Mar-2016  skrll Sync with HEAD
 1.3.2.2  06-Apr-2015  skrll Sync with HEAD
 1.3.2.1  17-Mar-2015  skrll file ingenic_ehci.c was added on branch nick-nhusb on 2015-04-06 15:17:59 +0000
 1.5.18.1  16-Apr-2018  pgoyette Sync with HEAD, resolve some conflicts
 1.5.16.2  03-Dec-2017  jdolecek update from HEAD
 1.5.16.1  23-Apr-2016  jdolecek file ingenic_ehci.c was added on branch tls-maxphys on 2017-12-03 11:36:28 +0000
 1.6.16.1  21-Mar-2021  thorpej Give config_found() the same variadic arguments treatment as
config_search(). This commit only adds the CFARG_EOL sentinel
to the existing config_found() calls. Conversion of config_found_sm_loc()
and config_found_ia() call sites will be in subsequent commits.
 1.7.8.1  04-Aug-2021  thorpej Adapt to CFARGS().

RSS XML Feed