Skip to content

Nested indirect buses #167

@mbolivar-nordic

Description

@mbolivar-nordic

Is nesting indirect buses allowed? It seems to introduce a lot of
complication if so, and my guess is that it should just be explicitly
forbidden in the specification, but I'd like to know.

For example:

/ {
	parent {
		compatible = "indirect-bus";
		child {
			compatible = "indirect-bus";
			peripheral@deadbeef { /* ... */ };
		};
	};
};

If this is allowed, what are the semantics for mapping in
peripheral@deadbeef above in the address-map property of a
"cpus,cluster" node?

  • If I map in parent, do I automatically get peripheral@deadbeef
    too even if I don't map child?

    • If so, via what address map translation through child?
    • If not, does that mean I can simply ignore any "indirect-bus"
      node, along with all of its children, that aren't mapped
      explicitly (assuming peripheral@deadbeef is not present in the
      address-map property)?
  • If I map in child but not parent, how can I generate an
    equivalent devicetree? Do I need to lift child to be under the
    root node or something like that?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions