-
Notifications
You must be signed in to change notification settings - Fork 54
[6.17] Patches for I3C and SPD5118 support for Tegra410 DDR5 temperature monitoring #294
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
nirmoy
wants to merge
12
commits into
NVIDIA:24.04_linux-nvidia-6.17-next
Choose a base branch
from
nirmoy:i3c_vr
base: 24.04_linux-nvidia-6.17-next
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+405
−103
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…pport SETAASA Add the 'mipi-i3c-static-method' property to specify which discovery method an I3C device supports during bus initialization. The property will be used specifically if an I3C device requires SETAASA for device discovery and address assignment. ENTDAA and SETDASA will be supported by default if this property is absent. This also removes the requirement that all I3C devices should support Dynamic Address Assignment (DAA). Hence remove statements that mentions otherwise. Signed-off-by: Akhil R <akhilrajeev@nvidia.com> Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
ACPI 6.3 specifies byte 8 of I2C Serial Bus Connection descriptor to be used for Legacy Virtual Register (LVR) data as specified in the MIPI I3C Specification for an I2C device connected to an I3C Host Controller. Update the rsconvert_info to include this field. For I2C devices on an I2C bus, this field is Reserved and unused. Signed-off-by: Akhil R <akhilrajeev@nvidia.com> Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Replace all OF specific functions with unified device property functions as a pre-requisite to support both ACPI and device tree. Signed-off-by: Akhil R <akhilrajeev@nvidia.com> Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Use _ADR and mipi-i3c-static-address properties to follow the MIPI I3C Discovery and Configuration Specification [1] and get the I2C device from the ACPI I2C resource descriptor. [1] https://www.mipi.org/specifications/disco Signed-off-by: Akhil R <akhilrajeev@nvidia.com> Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Add device discovery support for SPD5118, SPD5108 and similar devices attached to DDR5 memory modules via I3C bus which uses SETAASA instead of ENTDAA. Follow the guidelines proposed by the MIPI Discovery and Configuration Specification [1] for discovering such devices. These devices differ from typical I3C devices in their initialization requirements. Unlike standard I3C devices that receive dynamic addresses through ENTDAA (Enter Dynamic Address Assignment), SPD devices require the SETAASA (Set All Addresses to Static Address) CCC command to map their static addresses to dynamic addresses. Additionally, it is not mandatory for these devices to implement standard CCC commands like GETPID, GETDCR, or BCR retrieval. [1] https://www.mipi.org/specifications/disco Signed-off-by: Akhil R <akhilrajeev@nvidia.com> Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Devices using SETAASA for address assignment are not required to have a 48-bit PID according to the I3C specification. Allow such devices to register and use the static address where PID was required. Signed-off-by: Akhil R <akhilrajeev@nvidia.com> Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Add SETAASA and SETHID to the supported CCC commands to support SPD devices which requires SETAASA for device enumeration. Signed-off-by: Akhil R <akhilrajeev@nvidia.com> Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
…ions for ACPI Clock and reset functions do not support ACPI based enumeration. Do not call them when using the ACPI. Also add a device property to read the clock frequency from ACPI table. Signed-off-by: Akhil R <akhilrajeev@nvidia.com> Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Update variable names to generic names and add Tegra410 ACPI ID to support the I3C controller in Tegra410. Signed-off-by: Akhil R <akhilrajeev@nvidia.com> Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Add support for I3C based communication to SPD5118 devices. Signed-off-by: Akhil R <akhilrajeev@nvidia.com> Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Add I3C and SPD5118 device as module to the defconfig Signed-off-by: Akhil R <akhilrajeev@nvidia.com> Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add I3C bus support, dw-i3c-master driver ACPI/Tegra410 enablement, and SPD5118 hwmon for DDR5 memory temperature monitoring
https://bugs.launchpad.net/ubuntu/+source/linux-nvidia/+bug/2139154