History log of /netbsd-current/sys/dev/acpi/xhci_acpi.c
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.13 07-Aug-2021 thorpej

Merge thorpej-cfargs2.


Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base
# 1.12 24-Apr-2021 thorpej

branches: 1.12.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?).


Revision tags: thorpej-cfargs-base thorpej-futex-base
# 1.11 29-Jan-2021 thorpej

branches: 1.11.2;
Use acpi_compatible_match().


# 1.10 07-Dec-2020 jmcneill

Fix 32-bit build.


# 1.9 27-Oct-2020 skrll

branches: 1.9.2;
Report HW DMA capability and if the DMA tag limits it.


# 1.8 24-Oct-2020 skrll

Fix DMA size reporting. Previously it could report 64bit DMA when the tag
wasn't available (and it fell back to 32bit tag)


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
# 1.7 31-Jan-2020 jmcneill

Match HID 808622B7 (DesignWare USB3)


Revision tags: ad-namecache-base2
# 1.6 21-Jan-2020 jmcneill

Choose between dmat and dmat64, instead of relying on subregion of the 32-bit tag


Revision tags: netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
# 1.5 22-Jun-2019 jmcneill

branches: 1.5.4;
Use bus_dmatag_subregion to get a 32-bit tag


# 1.4 19-Jun-2019 jmcneill

Conditionally use a 32- or 64-bit DMA tag based on HCCPARAMS


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.3 16-Feb-2019 tron

branches: 1.3.4;
Fix cut & paste error in comment


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
# 1.2 16-Nov-2018 jmcneill

branches: 1.2.2;
Use acpi_intr_establish


# 1.1 26-Oct-2018 jmcneill

Add xhci at acpi glue


# 1.12 24-Apr-2021 thorpej

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?).


Revision tags: thorpej-cfargs-base thorpej-futex-base
# 1.11 29-Jan-2021 thorpej

branches: 1.11.2;
Use acpi_compatible_match().


# 1.10 07-Dec-2020 jmcneill

Fix 32-bit build.


# 1.9 27-Oct-2020 skrll

branches: 1.9.2;
Report HW DMA capability and if the DMA tag limits it.


# 1.8 24-Oct-2020 skrll

Fix DMA size reporting. Previously it could report 64bit DMA when the tag
wasn't available (and it fell back to 32bit tag)


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
# 1.7 31-Jan-2020 jmcneill

Match HID 808622B7 (DesignWare USB3)


Revision tags: ad-namecache-base2
# 1.6 21-Jan-2020 jmcneill

Choose between dmat and dmat64, instead of relying on subregion of the 32-bit tag


Revision tags: netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
# 1.5 22-Jun-2019 jmcneill

branches: 1.5.4;
Use bus_dmatag_subregion to get a 32-bit tag


# 1.4 19-Jun-2019 jmcneill

Conditionally use a 32- or 64-bit DMA tag based on HCCPARAMS


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.3 16-Feb-2019 tron

branches: 1.3.4;
Fix cut & paste error in comment


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
# 1.2 16-Nov-2018 jmcneill

branches: 1.2.2;
Use acpi_intr_establish


# 1.1 26-Oct-2018 jmcneill

Add xhci at acpi glue


# 1.11 29-Jan-2021 thorpej

Use acpi_compatible_match().


Revision tags: thorpej-futex-base
# 1.10 07-Dec-2020 jmcneill

Fix 32-bit build.


# 1.9 27-Oct-2020 skrll

branches: 1.9.2;
Report HW DMA capability and if the DMA tag limits it.


# 1.8 24-Oct-2020 skrll

Fix DMA size reporting. Previously it could report 64bit DMA when the tag
wasn't available (and it fell back to 32bit tag)


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
# 1.7 31-Jan-2020 jmcneill

Match HID 808622B7 (DesignWare USB3)


Revision tags: ad-namecache-base2
# 1.6 21-Jan-2020 jmcneill

Choose between dmat and dmat64, instead of relying on subregion of the 32-bit tag


Revision tags: netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
# 1.5 22-Jun-2019 jmcneill

branches: 1.5.4;
Use bus_dmatag_subregion to get a 32-bit tag


# 1.4 19-Jun-2019 jmcneill

Conditionally use a 32- or 64-bit DMA tag based on HCCPARAMS


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.3 16-Feb-2019 tron

branches: 1.3.4;
Fix cut & paste error in comment


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
# 1.2 16-Nov-2018 jmcneill

branches: 1.2.2;
Use acpi_intr_establish


# 1.1 26-Oct-2018 jmcneill

Add xhci at acpi glue


# 1.10 07-Dec-2020 jmcneill

Fix 32-bit build.


Revision tags: thorpej-futex-base
# 1.9 27-Oct-2020 skrll

Report HW DMA capability and if the DMA tag limits it.


# 1.8 24-Oct-2020 skrll

Fix DMA size reporting. Previously it could report 64bit DMA when the tag
wasn't available (and it fell back to 32bit tag)


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
# 1.7 31-Jan-2020 jmcneill

Match HID 808622B7 (DesignWare USB3)


Revision tags: ad-namecache-base2
# 1.6 21-Jan-2020 jmcneill

Choose between dmat and dmat64, instead of relying on subregion of the 32-bit tag


Revision tags: netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
# 1.5 22-Jun-2019 jmcneill

branches: 1.5.4;
Use bus_dmatag_subregion to get a 32-bit tag


# 1.4 19-Jun-2019 jmcneill

Conditionally use a 32- or 64-bit DMA tag based on HCCPARAMS


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.3 16-Feb-2019 tron

branches: 1.3.4;
Fix cut & paste error in comment


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
# 1.2 16-Nov-2018 jmcneill

branches: 1.2.2;
Use acpi_intr_establish


# 1.1 26-Oct-2018 jmcneill

Add xhci at acpi glue


# 1.9 27-Oct-2020 skrll

Report HW DMA capability and if the DMA tag limits it.


# 1.8 24-Oct-2020 skrll

Fix DMA size reporting. Previously it could report 64bit DMA when the tag
wasn't available (and it fell back to 32bit tag)


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
# 1.7 31-Jan-2020 jmcneill

Match HID 808622B7 (DesignWare USB3)


Revision tags: ad-namecache-base2
# 1.6 21-Jan-2020 jmcneill

Choose between dmat and dmat64, instead of relying on subregion of the 32-bit tag


Revision tags: netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
# 1.5 22-Jun-2019 jmcneill

branches: 1.5.4;
Use bus_dmatag_subregion to get a 32-bit tag


# 1.4 19-Jun-2019 jmcneill

Conditionally use a 32- or 64-bit DMA tag based on HCCPARAMS


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.3 16-Feb-2019 tron

branches: 1.3.4;
Fix cut & paste error in comment


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
# 1.2 16-Nov-2018 jmcneill

branches: 1.2.2;
Use acpi_intr_establish


# 1.1 26-Oct-2018 jmcneill

Add xhci at acpi glue


# 1.8 24-Oct-2020 skrll

Fix DMA size reporting. Previously it could report 64bit DMA when the tag
wasn't available (and it fell back to 32bit tag)


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
# 1.7 31-Jan-2020 jmcneill

Match HID 808622B7 (DesignWare USB3)


Revision tags: ad-namecache-base2
# 1.6 21-Jan-2020 jmcneill

Choose between dmat and dmat64, instead of relying on subregion of the 32-bit tag


Revision tags: netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
# 1.5 22-Jun-2019 jmcneill

branches: 1.5.4;
Use bus_dmatag_subregion to get a 32-bit tag


# 1.4 19-Jun-2019 jmcneill

Conditionally use a 32- or 64-bit DMA tag based on HCCPARAMS


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.3 16-Feb-2019 tron

branches: 1.3.4;
Fix cut & paste error in comment


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
# 1.2 16-Nov-2018 jmcneill

branches: 1.2.2;
Use acpi_intr_establish


# 1.1 26-Oct-2018 jmcneill

Add xhci at acpi glue


# 1.7 31-Jan-2020 jmcneill

Match HID 808622B7 (DesignWare USB3)


Revision tags: ad-namecache-base2
# 1.6 21-Jan-2020 jmcneill

Choose between dmat and dmat64, instead of relying on subregion of the 32-bit tag


Revision tags: netbsd-9-0-RC2 ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
# 1.5 22-Jun-2019 jmcneill

branches: 1.5.4;
Use bus_dmatag_subregion to get a 32-bit tag


# 1.4 19-Jun-2019 jmcneill

Conditionally use a 32- or 64-bit DMA tag based on HCCPARAMS


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.3 16-Feb-2019 tron

branches: 1.3.4;
Fix cut & paste error in comment


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
# 1.2 16-Nov-2018 jmcneill

branches: 1.2.2;
Use acpi_intr_establish


# 1.1 26-Oct-2018 jmcneill

Add xhci at acpi glue


# 1.6 21-Jan-2020 jmcneill

Choose between dmat and dmat64, instead of relying on subregion of the 32-bit tag


Revision tags: ad-namecache-base1 ad-namecache-base netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
# 1.5 22-Jun-2019 jmcneill

Use bus_dmatag_subregion to get a 32-bit tag


# 1.4 19-Jun-2019 jmcneill

Conditionally use a 32- or 64-bit DMA tag based on HCCPARAMS


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.3 16-Feb-2019 tron

branches: 1.3.4;
Fix cut & paste error in comment


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
# 1.2 16-Nov-2018 jmcneill

branches: 1.2.2;
Use acpi_intr_establish


# 1.1 26-Oct-2018 jmcneill

Add xhci at acpi glue


# 1.5 22-Jun-2019 jmcneill

Use bus_dmatag_subregion to get a 32-bit tag


# 1.4 19-Jun-2019 jmcneill

Conditionally use a 32- or 64-bit DMA tag based on HCCPARAMS


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.3 16-Feb-2019 tron

branches: 1.3.4;
Fix cut & paste error in comment


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
# 1.2 16-Nov-2018 jmcneill

branches: 1.2.2;
Use acpi_intr_establish


# 1.1 26-Oct-2018 jmcneill

Add xhci at acpi glue


# 1.4 19-Jun-2019 jmcneill

Conditionally use a 32- or 64-bit DMA tag based on HCCPARAMS


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.3 16-Feb-2019 tron

branches: 1.3.4;
Fix cut & paste error in comment


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
# 1.2 16-Nov-2018 jmcneill

branches: 1.2.2;
Use acpi_intr_establish


# 1.1 26-Oct-2018 jmcneill

Add xhci at acpi glue