Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 98cca250 authored by Kyle Moffett's avatar Kyle Moffett Committed by Benjamin Herrenschmidt
Browse files

fsl/mpic: Document and use the "big-endian" device-tree flag



The MPIC code checks for a "big-endian" property and sets the flag
MPIC_BIG_ENDIAN if one is present, although prior to the "mpic->flags"
fixup that would never have worked anways.

Unfortunately, even now that it works properly, the Freescale mpic
device-node (the "PowerQUICC-III"-compatible one) does not specify it,
so all of the board ports need to manually pass it to mpic_alloc().

Document the flag and add it to the pq3 device tree.  Existing code will
still need to pass the MPIC_BIG_ENDIAN flag because their dtb may not
have this property, but new platforms shouldn't need to do so.

Signed-off-by: default avatarKyle Moffett <Kyle.D.Moffett@boeing.com>
Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
parent 3a7a7176
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -57,6 +57,13 @@ PROPERTIES
          that any initialization related to interrupt sources shall
          be limited to sources explicitly referenced in the device tree.

  - big-endian
      Usage: optional
      Value type: <empty>
          If present the MPIC will be assumed to be big-endian.  Some
          device-trees omit this property on MPIC nodes even when the MPIC is
          in fact big-endian, so certain boards override this property.

INTERRUPT SPECIFIER DEFINITION

  Interrupt specifiers consists of 4 cells encoded as
+1 −0
Original line number Diff line number Diff line
@@ -39,6 +39,7 @@ mpic: pic@40000 {
	reg = <0x40000 0x40000>;
	compatible = "fsl,mpic";
	device_type = "open-pic";
	big-endian;
};

timer@41100 {