Skip to content

Conversation

@dreamliner787-9
Copy link
Contributor

@dreamliner787-9 dreamliner787-9 commented May 13, 2025

This PR adds implmentation and documentations of the pinctrl subsystem and driver for imx8-based platforms.

Limitations:

Checklist before we can merge this:

@dreamliner787-9 dreamliner787-9 marked this pull request as ready for review May 14, 2025 04:11
from sdfgen import SystemDescription, Sddf, DeviceTree
from importlib.metadata import version

# @billn fix
Copy link
Contributor Author

Choose a reason for hiding this comment

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

@dreamliner787-9 dreamliner787-9 added the hardware-test Run the hardware tests on this PR. label May 27, 2025
@Courtney3141 Courtney3141 self-requested a review September 9, 2025 02:08
Copy link
Contributor

@Courtney3141 Courtney3141 left a comment

Choose a reason for hiding this comment

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

Looks like a good first implementation. Needs to be rebased and ensure all docs files have line length < 100 chars.

@dreamliner787-9 dreamliner787-9 force-pushed the imx_pinctrl branch 2 times, most recently from f25b16b to ebc332d Compare September 9, 2025 05:33
Signed-off-by: Bill Nguyen <[email protected]>
Copy link
Contributor

@Courtney3141 Courtney3141 left a comment

Choose a reason for hiding this comment

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

The only remaining change not mentioned (that I think we should do something about) is the Python devicetree module.

* Copyright 2025, UNSW
* SPDX-License-Identifier: BSD-2-Clause
*/

Copy link
Member

Choose a reason for hiding this comment

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

I see this is approved already, but is this example meant to have been replaced with something new? This doesn't appear to do anything with pinctrl just yet.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I just copied the serial example to demonstrate how you can compile the pinctrl driver as we don't have any drivers for the IMX platform that requires pinctrl configuration yet (afaik).

Copy link
Member

Choose a reason for hiding this comment

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

That's fair enough, although it would definitely be good to somehow have an example that specifically shows that the pinctrl driver works so we can use it for CI. Is it possible to write an example that does something like assign a constant value to an output pin? E.g. connect a voltage line -> GPIO pin. (contrived, ik).

It would be strongly preferable if something like that can happen so that we can always narrow the failing example back to pinctrl instead of also needing to wonder if the associated driver class is the issue.

Copy link
Contributor Author

@dreamliner787-9 dreamliner787-9 Nov 11, 2025

Choose a reason for hiding this comment

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

I did thought of that when I cloned the serial example. But since this driver doesn't support dynamic pinctrl configuration (yet). We would have to bundle an edited device tree with the example then explain where things differ. Which I thought was more complicated than necessary when serial is the most basic of devices that should work. Plus if the pinctrl driver is broken, it would break the "pinctrl" example rather than the "serial" example so we can always narrow down any failures.

We can revisit implementing your idea once the driver supports dynamic pinctrl reconfiguration?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

hardware-test Run the hardware tests on this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants