Re: [RFC PATCH v3] irqchip: Add support for Tango interrupt controller

2 messages, 2 authors, 2016-01-20 · open the first message on its own page

Re: [RFC PATCH v3] irqchip: Add support for Tango interrupt controller

From: Måns Rullgård <hidden>
Date: 2016-01-20 16:25:32

Marc Zyngier [off-list ref] writes:
On 20/01/16 16:10, M?ns Rullg?rd wrote:
quoted
Marc Zyngier [off-list ref] writes:
quoted
quoted
+	if (of_property_read_u32(node, "reg", &ctl))
+		panic("%s: failed to get reg base", node->name);
+
+	chip = kzalloc(sizeof(*chip), GFP_KERNEL);
+	chip->ctl = ctl;
+	chip->base = base;
As I said before, this assumes the outer DT node uses a ranges
property.  Normally reg properties work the same whether they specify an
offset within an outer "ranges" or have a full address directly.  It
would be easy enough to make this work with either, so I don't see any
reason not to.
Yup, that is a good point. I guess Marc can address this in the next
round, since we need a DT binding anyway.
I'd suggest using of_address_to_resource() on both nodes and subtracting
the start addresses returned.

-- 
M?ns Rullg?rd

Re: [RFC PATCH v3] irqchip: Add support for Tango interrupt controller

From: Marc Gonzalez <hidden>
Date: 2016-01-20 16:37:05

On 20/01/2016 17:25, M?ns Rullg?rd wrote:
Marc Zyngier [off-list ref] writes:
quoted
On 20/01/16 16:10, M?ns Rullg?rd wrote:
quoted
Marc Zyngier [off-list ref] writes:
quoted
quoted
+	if (of_property_read_u32(node, "reg", &ctl))
+		panic("%s: failed to get reg base", node->name);
+
+	chip = kzalloc(sizeof(*chip), GFP_KERNEL);
+	chip->ctl = ctl;
+	chip->base = base;
As I said before, this assumes the outer DT node uses a ranges
property.  Normally reg properties work the same whether they specify an
offset within an outer "ranges" or have a full address directly.  It
would be easy enough to make this work with either, so I don't see any
reason not to.
Yup, that is a good point. I guess Marc can address this in the next
round, since we need a DT binding anyway.
I'd suggest using of_address_to_resource() on both nodes and subtracting
the start addresses returned.
For my own reference, Marc Zyngier suggested:
"you should use of_iomap to map the child nodes, and not mess with
the parent one."
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help