Commit Graph

20 Commits

Author SHA1 Message Date
Manikanta Maddireddy
ca5d1bdfbe PCI: edma_test: Fix UBSAN error due to overflow
Stress count is of type u32, large value of stress count is overflowing
to channel number in priv variable. Define priv as u64 and store channel
number after 32-bits.

Bug 3682571
Bug 3877429

Change-Id: I981cee442da298e967837262b4d63657373af1e2
Signed-off-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2759479
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2815929
Reviewed-by: Nagarjuna Kristam <nkristam@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Tested-by: Nagarjuna Kristam <nkristam@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2022-11-29 04:17:27 -08:00
Manikanta Maddireddy
319fa69bd5 PCI: Add data integrity check for PCIe DMA
Add CRC check after PCIe DMA to verify data integrity.

Bug 3636902
Bug 3868928

Change-Id: If497ce769571c6c837acbfbbb64b2242dfabef26
Signed-off-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2718787
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2720336
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2815927
Reviewed-by: Nagarjuna Kristam <nkristam@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Tested-by: Nagarjuna Kristam <nkristam@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2022-11-29 04:17:18 -08:00
Nagarjuna Kristam
b26885400f pcie: EDMA: fix EDMA init condition.
EDMA library needs to be initialized if there is change in EDMA
channel config or when cookie is NULL. Set the condition accordingly.

Bug 3622706
Bug 3877429

Change-Id: If919752cce08e203aa9d0b501f26f2e00b523575
Signed-off-by: Nagarjuna Kristam <nkristam@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2717246
(cherry picked from commit 7434fc757e6c4b23aeb91b73f8e2a62f080c6d24)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2815926
Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2022-11-29 04:17:14 -08:00
Nagarjuna Kristam
2b9e2da317 PCI: tegra: edmatest: use stop edma API for abort
Use tegra_pcie_edma_stop() API to perform abort testing.

Bug 3626323
Bug 3868928

Change-Id: Idc90b8ab2836ab535414cc1bd8b99bfda508d129
Signed-off-by: Nagarjuna Kristam <nkristam@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2708632
(cherry picked from commit d7fc5eebce85ac670a1a62d38c1572ff5a679258)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2815925
Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2022-11-29 04:17:08 -08:00
Nagarjuna Kristam
0c594b0c0b PCI: tegra: Add stop edma support
Add support for tegra_pcie_edma_stop to stop EDMA engine and abort
any queued transfers. Once EDMA is stopped, any new transfer submits
will fail.

Bug 3626323
Bug 3868928

Change-Id: Id0e0a662f366e7b2b4d82465a9424037636ffd9c
Signed-off-by: Nagarjuna Kristam <nkristam@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2708631
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2815924
Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2022-11-29 04:17:01 -08:00
Ashish Mhetre
25074f2a0c platform: tegra: Add OOT driver for MC utilities
Add mc-utils OOT module which is used by clients to get information
regarding MC and EMC parameters.

Bug 3826001

Change-Id: Ic03405bd1f6f6ba4bb11082c0e94c67e99cfbb6d
Signed-off-by: Ashish Mhetre <amhetre@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2805684
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2022-11-10 07:07:07 -08:00
Rahul Bedarkar
1f45d1e993 Remove tegra-epl driver
tegra-epl driver is added in kernel-oot repo so that i2c, pcie and
other upstream drivers can use interface to report errors.

Bug 3847981

Change-Id: I9dfe5cd92eb9955a35753ce14a12dc4799258b70
Signed-off-by: Rahul Bedarkar <rabedarkar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2799410
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2022-11-02 12:17:10 -07:00
Manish Bhardwaj
27f17e56d1 crypto: sync crypto driver from kernel/nvidia
Using this patch we are pulling in the missing changes
from kernel/nvidia directory.

JIRA ESLC-6885

Signed-off-by: Manish Bhardwaj <mbhardwaj@nvidia.com>
Change-Id: I9376e14971be0f4d40f759858fcc9db90a7b9d72
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2785534
Reviewed-by: Suresh Venkatachalam <skathirampat@nvidia.com>
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2022-10-06 17:22:00 -07:00
Manish Bhardwaj
a2fdb986b0 nvidia-oot: add nvpps and ptp driver
Using this patch we are adding support for
ptp and nvpps driver in oot kernel.

JIRA ESLC-6885

Signed-off-by: Manish Bhardwaj <mbhardwaj@nvidia.com>
Change-Id: Id47ac5602d11ce417f9d421b4f672578922ca94f
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2785318
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Reviewed-by: David Tao <tehyut@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2022-10-03 21:31:01 -07:00
Sanjay Chandrashekara
d61f30d568 t23x: ari: build mce ari driver as a module
Bug 3680143

Change-Id: I1092b85239222b6af9a9ecfc536801f298706e60
Signed-off-by: Sanjay Chandrashekara <sanjayc@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2774586
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2022-09-21 01:11:14 -07:00
Nagarjuna Kristam
750f3ebecd net: ethernet: nvidia: add pcie vnet driver
Add PCIe virtual network driver from Nvidai repo

Bug 3583632

Change-Id: I8449e507978dbbdf0d4a66e53739b532c8df264d
Signed-off-by: Nagarjuna Kristam <nkristam@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2736263
Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit
2022-07-05 14:32:20 -07:00
Nagarjuna Kristam
87f4a51862 pci: epf: Add dma test function driver
Add DMA test function driver from Nvidia repro

Bug 3583632

Change-Id: I603d16f74cba2b4752ab31af59b12e7c784f042e
Signed-off-by: Nagarjuna Kristam <nkristam@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2736247
Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit
2022-07-05 14:32:06 -07:00
Nagarjuna Kristam
0d83600487 PCI: tegra194: Add PCIe EDMA and its RP drivers
Add PCI EDMA drivers from nvidia repo.

Bug 3583632

Change-Id: Id54bec8d70424d56d4b91f781568edbfa27c5a82
Signed-off-by: Nagarjuna Kristam <nkristam@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2736242
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit
2022-07-05 14:32:02 -07:00
Rahul Bedarkar
6f854558c1 drivers/platform/tegra: Add tegra-epl driver
Add tegra-epl driver. It is used to report software detected errors via
HSP mailbox or MISC-EC registers to safety service module running on
the Functional Safety Island (FSI)

Bug 3583609

Change-Id: I5bd3e4bd261d00a353743b01c83ed8df6f00e90a
Signed-off-by: Rahul Bedarkar <rabedarkar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2710277
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit
2022-05-13 14:56:18 -07:00
Laxman Dewangan
a01851131c tegra/platform: Add driver for firmware class and inventory
Add driver for common utility API for firmware class and
dumping the inventory for all firmware.

Bug 3583607

Change-Id: I259bc7f80b8842cea090f67b067f63e5f85cb79c
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2708890
GVS: Gerrit_Virtual_Submit
2022-05-07 15:21:39 -07:00
Laxman Dewangan
e37c28218e platform/tegra: Add common central actmon implementation
Add central actmon common functionality for actomon
driver implementation instead of dummy implementation.

Bug 3583573

Change-Id: Iff1512e62fc01431899515c78717d5afdae8d910
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2705646
GVS: Gerrit_Virtual_Submit
2022-05-01 12:43:29 -07:00
Laxman Dewangan
3637fb99cb arm64: Add RAS driver for ARM64-RAS
RAS are three aspects of the dependability of a system:
   Reliability: continuity of correct service
   Availability: readiness for correct service
   Serviceability: ability to undergo modifications and repairs

ARMv8.2 provides RAS extensions to achieve the above features in a system.

arm64_ras driver allows you to handle Correctable errors using per core
Fault Handling Interrupt (or FHI). Un-correactable errors are handled by
raising SError exception to kernel or Trusted Firmware(EL3) on CCLEX.

The driver provides an API for CPU specific RAS drivers to
register callbacks in case of FHI. When FHI occurs, the FHI
ISR goes through the list of registered callbacks and executes
them. Similarly, the driver allows registering SError callbacks
for Un-correctable errors within Core, Core-Cluster & CCPLEX.
When SError is reported, then those callbacks are scanned to
find and report error in a Core, Cluster or CCPLEX

Bug 3625675

Change-Id: I6dba7178fa7bbcf55bfa083be1b077874f4865c9
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2705396
GVS: Gerrit_Virtual_Submit
2022-05-01 09:26:37 -07:00
Laxman Dewangan
527743a5c3 platform/tegra: Add Tegra Central Activity Monitor driver
Actmon is a hardware block that can be used to track the activity of
certain hardware units. It can boost EMC clock depending
on the memory traffic among various client. It is called central actmon
as it monitors central activity for example MC activity.

Add central activity monitor driver.

Bug 3625675

Change-Id: I1a5918e7d84bc247f694f53f965c28888b773c91
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2705395
GVS: Gerrit_Virtual_Submit
2022-05-01 09:26:33 -07:00
Laxman Dewangan
7243c92f8e include: linux: Add header for tegra-prod apis
Add header file for tegra-prod APIs so that driver
can use the prod APIs. The implementation is kept as
dummy i.e. not supported.

Bug 3621816

Change-Id: I0aeada74eace74770bc3c5d2964b57ba9ba8f1c5
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2704358
GVS: Gerrit_Virtual_Submit
2022-04-30 06:17:49 -07:00
Laxman Dewangan
95b8f25957 mfd: Add mfd driver for nvidia VRS sequence
Add mfd driver for NVIDIA VRS sequencer. This device sequence
the power rail required by SoCs.

Bug 3583627

Change-Id: I774c286a61a5192478b9e8ceea839193c7cf6fe5
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2702275
GVS: Gerrit_Virtual_Submit
2022-04-25 22:44:28 -07:00