Port-arm archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: FDT access from a driver during attach



Thank you, Robert.

I've had a quick look at the C2's Ethernet.
Does that mean I need an overlay to add interrupt-parent = <&gpio_intc> to the gpio?

Also, I feel I miss too many fundamentals on NetBSD's internal structure and organisation.
Are there any resources I can use to improve on this?

On 28/07/2025 17:53, Robert Swindells wrote:
Vincent DEFERT <vincent.defert%posteo.net@localhost> wrote:
I want to add interrupt handling to the Meson pinctrl driver.
I have seen that this is handled by attaching gpioirq to the desired pin
with gpioctl(8) and there's an example of how to implement the
underlying capability in sunxi_gpio.c.
I also have the S905 documentation and the source code of the vendor
Linux driver as reference. So far, so good.
You could also look at rk_gpio.c and sys/dev/i2c/fusbtc.c, combined
with a dump of the dtb for the Pinebook Pro.

The only thing I don't know is how to retrieve the GPIO interrupt
controller configuration.
It is stored in a gpio_intc node with the "amlogic,meson-gpio-intc"
compatible string, but none of the 2 gpio instances reference it.
How can I search the full FDT to find this node?
I don't think you should need to search the device tree for this.

I would expect you to write a driver that matches on that compat
string, it would map the registers of the interrupt controller
and hook up this interrupt controller to the main one.

Then your device tree overlay to go with a driver for whatever you are
planning to connect to the gpio would specify an interrupt-parent that
points to the meson-gpio-intc node.

The Ethernet PHY seems to be the only place in the Odroid-C2 device tree
that uses this kind of thing but our driver isn't using GPIO interrupts
to make it work.



Home | Main Index | Thread Index | Old Index