[RFC] MIPS: BCM63XX: add Device Tree glue code for IRQ handling

Stephen Warren swarren at wwwdotorg.org
Tue Nov 13 16:00:44 EST 2012


On 11/11/2012 05:50 AM, Jonas Gorski wrote:
> Register IRQ domains through Device Tree for the internal and external
> interrupt controllers. Register the same IRQ ranges as previously to
> provide backward compatibility for non-DT drivers.

> diff --git a/Documentation/devicetree/bindings/mips/bcm63xx/epic.txt b/Documentation/devicetree/bindings/mips/bcm63xx/epic.txt

Rather than putting binding docs in an arch-specific directory, perhaps
put them into a device-type-specific directory, such as
bindings/interrupt-controller/brcm,bcm63xx-epic.txt?

> +- #interrupt-cells: <2>
> +  This controller supports level and edge triggered interrupts. The
> +  first cell is the interrupt number, the second is a 1:1 mapping to
> +  the linux interrupt flags.

The DT documentation should be self-contained, and not reference
anything OS-specific. In this case, you could reference
Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
for the interrupt flags.

> diff --git a/arch/mips/bcm63xx/dts/bcm6328.dtsi b/arch/mips/bcm63xx/dts/bcm6328.dtsi

>  		ranges = <0 0x10000000 0x20000>;
>  		compatible = "simple-bus";
> +
> +		interrupt-parent = <&ipic>;
> +
> +		perf at 0 {
> +			epic: interrupt-controller at 18 {

Don't you need some reg properties in the perf and interrupt-controller
nodes so that the register address can be determined?

> +				compatible = "brcm,bcm63xx-epic";
> +				interrupt-controller;
> +				#interrupt-cells = <2>;
> +			};



More information about the devicetree-discuss mailing list