Home | History | Annotate | Download | only in nvidia
History log of /src/sys/arch/arm/nvidia/tegra_ehci.c
RevisionDateAuthorComments
 1.20  07-Aug-2021  thorpej Merge thorpej-cfargs2.
 1.19  24-Apr-2021  thorpej branches: 1.19.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.18  27-Jan-2021  thorpej branches: 1.18.2;
Rename of_match_compat_data() to of_compatible_match(). Similarly,
rename of_search_compatible() to of_compatible_lookup().

Standardize on of_compatible_match() for driver matching, and adapt
all call sites.
 1.17  15-Jan-2021  jmcneill use fdtbus_intr_establish_xname
 1.16  09-Apr-2018  jakllsch branches: 1.16.14;
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.15  25-May-2017  jmcneill branches: 1.15.8; 1.15.10;
Match nvidia,tegra210-ehci and nvidia,tegra30-ehci compat strings.
 1.14  23-May-2016  jmcneill IST_MPSAFE is not a valid flag for fdtbus_intr_establish; use
FDT_INTR_MPSAFE instead.
 1.13  23-Apr-2016  skrll 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.12  22-Dec-2015  jmcneill Switch Tegra over to fdt based clocks and reset controls.
 1.11  13-Dec-2015  jmcneill Use fdt for device enumeration.
 1.10  19-Nov-2015  jmcneill Remove HOST1X and AHB_A2 from pmap_devmap
 1.9  21-Oct-2015  jmcneill Split out USB PHY support out of the ehci glue and into a separate driver.
 1.8  21-Oct-2015  jmcneill reduce the number of magic numbers in phy setup, pull settings from device properties instead.
 1.7  22-May-2015  skrll Whitespace.
 1.6  18-May-2015  skrll Use the right IO handle to get HOSTPC. Also, mask out LS and HS from
reported status just-in-case and misc tidyup.

HS, FS and LS now all probe correctly.
 1.5  18-May-2015  skrll Re-enable EHCIF_ETTF and provide a sc_vendor_port_status to get port
speed from HOSTSC1

My FS usb stick works with this change.
 1.4  09-May-2015  jmcneill Tegra USB PHY support
 1.3  09-May-2015  jmcneill if vbus gpio pin is provided, use it to enable vdd
 1.2  26-Apr-2015  jmcneill ehci registers start at +0x100 from USB base address
 1.1  29-Mar-2015  jmcneill branches: 1.1.2;
NVIDIA Tegra K1 support, work in progress.
 1.1.2.7  28-Aug-2017  skrll Sync with HEAD
 1.1.2.6  29-May-2016  skrll Sync with HEAD
 1.1.2.5  16-Feb-2016  skrll ehci_intr is MPSAFE now
 1.1.2.4  27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.3  06-Jun-2015  skrll Sync with HEAD
 1.1.2.2  06-Apr-2015  skrll Sync with HEAD
 1.1.2.1  29-Mar-2015  skrll file tegra_ehci.c was added on branch nick-nhusb on 2015-04-06 15:17:53 +0000
 1.15.10.1  16-Apr-2018  pgoyette Sync with HEAD, resolve some conflicts
 1.15.8.2  03-Dec-2017  jdolecek update from HEAD
 1.15.8.1  25-May-2017  jdolecek file tegra_ehci.c was added on branch tls-maxphys on 2017-12-03 11:35:54 +0000
 1.16.14.1  03-Apr-2021  thorpej Sync with HEAD.
 1.18.2.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.19.8.1  04-Aug-2021  thorpej Adapt to CFARGS().

RSS XML Feed