History log of /freebsd-current/sys/arm/nvidia/tegra_pcie.c
Revision Date Author Comments
# 950a6087 26-Dec-2023 Emmanuel Vadot <manu@FreeBSD.org>

phy: Move phy code in dev/phy

We've removed kernel option EXT_RESOURCES almost two years ago.
While it was ok to have some code under a common 'extres' subdirectory
at first, we now have a lot of consumer of it and we made it mandatory
so no need to have it under a cryptic name.

Reviewed by: emaste, imp
Sponsored by: Beckhoff Automation GmbH & Co. KG
Differential Revision: https://reviews.freebsd.org/D43195


# b2f0caf1 26-Dec-2023 Emmanuel Vadot <manu@FreeBSD.org>

regulator: Move regulator code in dev/regulator

We've removed kernel option EXT_RESOURCES almost two years ago.
While it was ok to have some code under a common 'extres' subdirectory
at first, we now have a lot of consumer of it and we made it mandatory
so no need to have it under a cryptic name.

Reviewed by: emaste, imp
Sponsored by: Beckhoff Automation GmbH & Co. KG
Differential Revision: https://reviews.freebsd.org/D43194


# 1f469a9f 26-Dec-2023 Emmanuel Vadot <manu@FreeBSD.org>

hwreset: Move reset code in dev/hwreset

We've removed kernel option EXT_RESOURCES almost two years ago.
While it was ok to have some code under a common 'extres' subdirectory
at first, we now have a lot of consumer of it and we made it mandatory
so no need to have it under a cryptic name.

Reviewed by: imp
Sponsored by: Beckhoff Automation GmbH & Co. KG
Differential Revision: https://reviews.freebsd.org/D43192


# be82b3a0 26-Dec-2023 Emmanuel Vadot <manu@FreeBSD.org>

clk: Move clock code in dev/clk

We've removed kernel option EXT_RESOURCES almost two years ago.
While it was ok to have some code under a common 'extres' subdirectory
at first, we now have a lot of consumer of it and we made it mandatory
so no need to have it under a cryptic name.

Reviewed by: mhorne
Sponsored by: Beckhoff Automation GmbH & Co. KG
Differential Revision: https://reviews.freebsd.org/D43191


# 685dc743 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: one-line .c pattern

Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/


# cb894f74 04-Mar-2023 Andrew Turner <andrew@FreeBSD.org>

Map arm64 pci config memory as non-posted

On arm64 PCI config memory is expected to be mapped with a non-posted
device type. To handle this use the new bus_map_resource support in
arm64 to map memory with the new VM_MEMATTR_DEVICE_NP attribute. This
memory has already been allocated and activated, it just needs to be
mapped.

Reviewed by: kevans, mmel
Differential Revision: https://reviews.freebsd.org/D30079


# f49fd63a 22-Sep-2022 John Baldwin <jhb@FreeBSD.org>

kmem_malloc/free: Use void * instead of vm_offset_t for kernel pointers.

Reviewed by: kib, markj
Sponsored by: DARPA
Differential Revision: https://reviews.freebsd.org/D36549


# 415e8d12 04-Jun-2022 Gordon Bergling <gbe@FreeBSD.org>

tegra: Fix a typo in a source code comment

- s/Disble/Disable/

MFC after: 3 days


# 289f133b 09-May-2022 John Baldwin <jhb@FreeBSD.org>

arm/arm64 nvidia: Remove unused devclass arguments to DRIVER_MODULE.


# 4b9b6a50 08-Apr-2022 John Baldwin <jhb@FreeBSD.org>

arm/arm64 nvidia: Remove unused variables.


# 8df71ea1 01-Jul-2021 Ferhat Gecdogan <ferhatgec@users.noreply.github.com>

tegra_pcie: use switch instead of if in tegra_pcib_pex_ctrl

Simplify obtaining per-port data in tegra_pcib_pex_ctrl() routine.

Reviewed by: imp, mw
Pull Request: https://github.com/freebsd/freebsd-src/pull/481


# 24042910 19-May-2021 Marcin Wojtas <mw@FreeBSD.org>

Rename ofwpci.c to ofw_pcib.c

It's a class0 driver that implements some pcib methods and creates
a pci bus as its children.
The "ofw_pci" name will be used by a new driver that will be a subclass
of the pci bus.
No functional changes intended.

Submitted by: Kornel Duleba <mindal@semihalf.com>
Reviewed by: andrew
Obtained from: Semihalf
Sponsored by: Alstom Group
Differential Revision: https://reviews.freebsd.org/D30226


# b9cbd68d 03-Jan-2018 Michal Meloun <strejda@users.noreply.github.com>

ARM: Enhance common Nvidia Tegra drivers by support for Tegra210 SoC.

MFC after: 4 weeks


# 65454883 01-Sep-2020 Mateusz Guzik <mjg@FreeBSD.org>

arm: clean up empty lines in .c and .h files


# 87380273 16-Apr-2020 Emmanuel Vadot <manu@FreeBSD.org>

arm: nvidia: pcie: Rename class name to pcib

Reported by: jhb


# 5b2a48fb 16-Apr-2020 Emmanuel Vadot <manu@FreeBSD.org>

arm: Fix duplicate pcib DRIVER_MODULE

Name each pcib driver uniquely.
This remove the warning printed at each arm boot :
module_register: cannot register simplebus/pcib from kernel; already loaded from kernel


# 44d0efb2 20-Aug-2018 Alan Cox <alc@FreeBSD.org>

Eliminate kmem_alloc_contig()'s unused arena parameter.

Reviewed by: hselasky, kib, markj
Discussed with: jeff
Differential Revision: https://reviews.freebsd.org/D16799


# f8759fac 20-Jan-2018 Michal Meloun <mmel@FreeBSD.org>

Convert extres/phy to kobj model.
Similarly as other extres pseudo-drivers, implement phy by using kobj model.
This detaches it from provider device, so single device driver can export
multiple different phys. Additionally, this allows phy to be subclassed to
more specialized drivers, like is USB OTG phy, or PCIe phy with hot-plug
capability.

Tested by: manu (previous version, on Allwinner board)
MFC after: 1 month


# 28586889 24-Feb-2017 Warner Losh <imp@FreeBSD.org>

Convert PCIe Hot Plug to using pci_request_feature

Convert PCIe hot plug support over to asking the firmware, if any, for
permission to use the HotPlug hardware. Implement pci_request_feature
for ACPI. All other host pci connections to allowing all valid feature
requests.

Sponsored by: Netflix


# df767535 14-Nov-2016 Andrew Turner <andrew@FreeBSD.org>

Stop including fdt_common.h from the arm code when it's unneeded.

Sponsored by: ABT Systems Ltd


# 5031b2a0 08-Oct-2016 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Fix release MSI method for NVidia Tegra PCI controller


# de2929ff 08-Oct-2016 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Fix MSI allocation for NVidia Tegra

- Fix range check
- Due to checking found value in for(;;) condition irq after loop was
always + 1 from actually found slot and wrong entry was marked as
used which lead to returning slot 0 for all requests.


# c7533311 04-Oct-2016 Michal Meloun <mmel@FreeBSD.org>

TEGRA: Fix PCIe link timeout.

MFC after: 2 weeks


# 4bda238a 29-Sep-2016 Michal Meloun <mmel@FreeBSD.org>

TEGRA: Prepare Tegra subtree for inclusion into ARM generic kernel.
- use DEFINE_CLASS_0() for driver classes
- unify driver names
- cleanup driver definitions and bindings


# ee484d5b 25-Sep-2016 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Update PCI driver to match new dts tree

In new dts tree phy is a property of port, not the controller node, also
the name was changed from "pcie" to "pcie-0"


# 032bdb1b 19-Aug-2016 Michal Meloun <mmel@FreeBSD.org>

TEGRA: Remove forgotten debug printf.


# 7709abd1 19-Aug-2016 Michal Meloun <mmel@FreeBSD.org>

TEGRA: Implement MSI/MSIX interrupts for pcie controller.


# 79cceaac 17-Jul-2016 Michal Meloun <mmel@FreeBSD.org>

TEGRA: Subclass Tegra PCIE driver from ofw_pci base driver.
Remove now redundant code.


# dac93553 10-Jul-2016 Michal Meloun <mmel@FreeBSD.org>

EXTRES: Add OF node as argument to all <foo>_get_by_ofw_<bar>() functions.
In some cases, the driver must handle given properties located in
specific OF subnode. Instead of creating duplicate set of function, add
'node' as argument to existing functions, defaulting it to device OF node.

MFC after: 3 weeks


# 04d18df9 09-Jul-2016 Andrew Turner <andrew@FreeBSD.org>

Remove an unneeded call to fdt_get_unit, the return value is unused.

MFC after: 1 month
Sponsored by: ABT Systems Ltd


# 30b72b68 26-Apr-2016 Ruslan Bukin <br@FreeBSD.org>

Move arm's devmap to some generic place, so it can be used
by other architectures.

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D6091
Sponsored by: DARPA, AFRL
Sponsored by: HEIF5


# 3501273d 18-Mar-2016 Michal Meloun <mmel@FreeBSD.org>

TEGRA: Fix tegra_pcie driver after rman_res_t size change.


# ef2ee5d0 16-Mar-2016 Michal Meloun <mmel@FreeBSD.org>

Import basic support for Nvidia Jetson TK1 board and tegra124 SoC.
The following pheripherals are supported: UART, MMC, AHCI, EHCI, PCIe, I2C,
PMIC, GPIO, CPU temperature and clock.

Note: The PCIe driver is pure mash at this moment. It will be reworked
immediately when both D5237 and D2579 enter the current tree.