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

interrupts-extended helper is completely wrong #37

Open
tea opened this issue Jul 19, 2024 · 1 comment
Open

interrupts-extended helper is completely wrong #37

tea opened this issue Jul 19, 2024 · 1 comment

Comments

@tea
Copy link

tea commented Jul 19, 2024

This property consists of pairs phandle + interrupt-address, and each pair denotes an external interrupt. So, the helper should parse phandle, then interrupt-address for that phandle (using that phandle's #interrupt-cells), and output that pair. Its current behaviour is pretty much useless.
See e.g. from sifive dts:

	clint@2000000 {
			interrupts-extended = <0x07 0x03 0x07 0x07 0x06 0x03 0x06 0x07 0x05 0x03 0x05 0x07 0x04 0x03 0x04 0x07 0x03 0x03 0x03 0x07>;
			reg = <0x00 0x2000000 0x00 0x10000>;
			compatible = "riscv,clint0";
		};

This list means "interrupt 3 of phandle 7", "interrupt 7 of phandle 7", "interrupt 3 of phandle 6" etc.

@repnop
Copy link
Owner

repnop commented Jul 19, 2024

This is fixed in the ongoing rewrite (see the rewrite branch of the repo), along with a bunch of other issues. I don't have an ETA for the release but it's getting closer. I have the majority of the base work done, so it's mostly adding the various helper structs + other properties then cleaning up the API if need be. I don't think I'm looking to publish any newer versions of the current code at this point since so much is changing between the two, so hold tight and I'll hopefully have a rc version of the rewrite on crates.io in the somewhat near future if all goes well 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants