Skip to content
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

drivers: interrupt-controller: Add TI VIM Interrupt Controller support #60856

Merged
merged 1 commit into from
Sep 4, 2023

Conversation

slpp95prashanth
Copy link
Contributor

@slpp95prashanth slpp95prashanth commented Jul 27, 2023

Add VIM (Vectored Interrupt Manager) interrupt controller support

TRM for J721e https://www.ti.com/lit/zip/spruil1
File: spruil1c.pdf
VIM: section 6.3.3.6

BeagleBone AI_64 https://beagleboard.org/ai-64

galak
galak previously requested changes Jul 28, 2023
Copy link
Collaborator

@galak galak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@slpp95prashanth
Copy link
Contributor Author

Please have devicetree binding match https://git.kernel.org/pub/scm/linux/kernel/git/devicetree/devicetree-rebasing.git/tree/Bindings/interrupt-controller/arm,vic.yaml

@galak I have added compatible property in arm,vim.yaml for devicetree binding match. Am I missing something?

@slpp95prashanth slpp95prashanth marked this pull request as ready for review July 28, 2023 13:07
@vaishnavachath vaishnavachath changed the title drivers: interrupt-controller: Add VIM Interrupt Controller support drivers: interrupt-controller: Add TI VIM Interrupt Controller support Aug 1, 2023
carlocaione
carlocaione previously approved these changes Aug 15, 2023
vaishnavachath
vaishnavachath previously approved these changes Aug 15, 2023
@vaishnavachath
Copy link
Collaborator

Please have devicetree binding match https://git.kernel.org/pub/scm/linux/kernel/git/devicetree/devicetree-rebasing.git/tree/Bindings/interrupt-controller/arm,vic.yaml

@galak Does the current binding look okay to you now? when this PR was created initially, the naming, compatible were chosen in a confusing manner which created the impression that the support being added here was for standard ARM Vectored Interrupt Controller while the support being added here is for a TI specific interrupt controller (VIM) which is R5F VIC port compatible but not equivalent.

Also the arm,vic.yaml binding in kernel has:

  "#interrupt-cells":
    const: 1
    description:
      The number of cells to define the interrupts.  It must be 1 as the
      VIC has no configuration options for interrupt sources. The single
      cell defines the interrupt number.

But in our case there is support for configuration for interrupt sources (flags, priority .etc).

Please let know if changes needs to be made.

@vaishnavachath
Copy link
Collaborator

Please have devicetree binding match https://git.kernel.org/pub/scm/linux/kernel/git/devicetree/devicetree-rebasing.git/tree/Bindings/interrupt-controller/arm,vic.yaml

@galak Does the current binding look okay to you now? when this PR was created initially, the naming, compatible were chosen in a confusing manner which created the impression that the support being added here was for standard ARM Vectored Interrupt Controller while the support being added here is for a TI specific interrupt controller (VIM) which is R5F VIC port compatible but not equivalent.

Also the arm,vic.yaml binding in kernel has:

  "#interrupt-cells":
    const: 1
    description:
      The number of cells to define the interrupts.  It must be 1 as the
      VIC has no configuration options for interrupt sources. The single
      cell defines the interrupt number.

But in our case there is support for configuration for interrupt sources (flags, priority .etc).

Please let know if changes needs to be made.

@galak , can you please let know if this is still relevant/if not can you remove the change requested label?

Copy link
Member

@cfriedt cfriedt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry - this comment was left in pending for a while.

drivers/interrupt_controller/intc_vim.c Outdated Show resolved Hide resolved
Add TI VIM (Vectored Interrupt Manager) interrupt controller support.
VIM is a TI specific custom interrupt controller for ARM cores.
In J721E soc, VIM aggregates interrupts to Cortex R5 cores.

TRM for J721e https://www.ti.com/lit/zip/spruil1
File: spruil1c.pdf
VIM: section 6.3.3.6

Signed-off-by: Prashanth S <slpp95prashanth@yahoo.com>
@carlescufi carlescufi merged commit 05fe627 into zephyrproject-rtos:main Sep 4, 2023
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: Devicetree Binding PR modifies or adds a Device Tree binding area: Interrupt Controller area: Testsuite Testsuite platform: TI SimpleLink Texas Instruments SimpleLink MCU
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants