[4/5] dt-bindings: mtd: describe BCM963XX ImageTag format and usage
diff mbox series

Message ID 20180828111944.5956-5-jonas.gorski@gmail.com
State Changes Requested
Headers show
Series
  • mtd: bcm63xxpart: add device tree support
Related show

Commit Message

Jonas Gorski Aug. 28, 2018, 11:19 a.m. UTC
Describe how to use the BCM963XX ImageTag format in a mixed flash layout
environment.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
---
 .../mtd/partitions/brcm,bcm963xx-imagetag.txt      | 78 ++++++++++++++++++++++
 1 file changed, 78 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt

Comments

Jonas Gorski Sept. 10, 2018, 9:02 a.m. UTC | #1
On 4 September 2018 at 02:30, Rob Herring <robh@kernel.org> wrote:
> On Tue, Aug 28, 2018 at 01:19:43PM +0200, Jonas Gorski wrote:
>> Describe how to use the BCM963XX ImageTag format in a mixed flash layout
>> environment.
>>
>> Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
>> ---
>>  .../mtd/partitions/brcm,bcm963xx-imagetag.txt      | 78 ++++++++++++++++++++++
>>  1 file changed, 78 insertions(+)
>>  create mode 100644 Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt
>>
>> diff --git a/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt b/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt
>> new file mode 100644
>> index 000000000000..f4a444d69d9a
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt
>> @@ -0,0 +1,78 @@
>> +Broadcom BCM963XX ImageTag Partition Container
>> +==============================================
>> +
>> +Some Broadcom BCM63XX SoC based devices contain additional, non discoverable
>> +partitions or non standard bootloader partition sizes. For these a mixed layout
>> +needs to be used with an explicit firmware partition.
>> +
>> +The BCM963XX ImageTag is a simple firmware header describing the offsets and
>> +sizes of the rootfs and kernel parts contained in the firmware.
>> +
>> +Required properties:
>> +- compatible : must be "brcm,bcm963xx-imagetag"
>> +
>> +Examples:
>> +
>> +flash@1e000000 {
>> +     compatible = "cfi-flash";
>> +     reg = <0x1e000000 0x2000000>;
>> +     bank-width = <2>;
>> +
>> +     partitions {
>> +             compatible = "fixed-partitions";
>> +             #address-cells = <1>;
>> +             #size-cells = <1>;
>> +
>> +             cfe@0 {
>> +                     reg = <0x0 0x10000>;
>> +                     read-only;
>> +             };
>> +
>> +             firmware@10000 {
>> +                     reg = <0x10000 0x7d0000>;
>> +                     compatible = "brcm,bcm963xx-imagetag";
>> +             };
>> +
>> +             caldata@7e0000 {
>> +                     reg = <0x7e0000 0x10000>;
>> +                     read-only;
>> +             };
>> +
>> +             nvram@7f0000 {
>> +                     reg = <0x7f0000 0x10000>;
>> +             };
>> +     };
>> +};
>> +
>> +
>> +flash@1e000000 {
>> +     compatible = "cfi-flash";
>> +     reg = <0x1e000000 0x2000000>;
>> +     bank-width = <2>;
>> +
>> +     partitions {
>> +             compatible = "fixed-partitions";
>> +             #address-cells = <1>;
>> +             #size-cells = <1>;
>> +
>> +             /*
>> +              * Some devices use a flash chip with 64k erase blocks, some
>> +              * use one with 128k erase blocks, so the vendor decided to
>> +              * always use 128k as the firmware offset.
>> +              */
>
> That's a interesting piece of info, but not really a reason to have a
> second example.

Generally, I'd rather have one example too many than one too few, but
I can drop it if you think it's unnecessary. If I do that, can I add
your Ack then here as well for the v2?

>
>> +
>> +             cfe@0 {
>> +                     reg = <0x0 0x20000>;
>> +                     read-only;
>> +             };
>> +
>> +             firmware@20000 {
>> +                     reg = <0x20000 0x7c0000>;
>> +                     compatible = "brcm,bcm963xx-imagetag";
>> +             };
>> +
>> +             nvram@7e0000 {
>> +                     reg = <0x7e0000 0x20000>;
>> +             };
>> +     };
>> +};
>> --
>> 2.13.2
>>
>
Jonas Gorski Sept. 10, 2018, 9:09 a.m. UTC | #2
On 10 September 2018 at 11:02, Jonas Gorski <jonas.gorski@gmail.com> wrote:
> On 4 September 2018 at 02:30, Rob Herring <robh@kernel.org> wrote:
>> On Tue, Aug 28, 2018 at 01:19:43PM +0200, Jonas Gorski wrote:
>>> Describe how to use the BCM963XX ImageTag format in a mixed flash layout
>>> environment.
>>>
>>> Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
>>> ---
>>>  .../mtd/partitions/brcm,bcm963xx-imagetag.txt      | 78 ++++++++++++++++++++++
>>>  1 file changed, 78 insertions(+)
>>>  create mode 100644 Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt
>>>
>>> diff --git a/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt b/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt
>>> new file mode 100644
>>> index 000000000000..f4a444d69d9a
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt
>>> @@ -0,0 +1,78 @@
>>> +Broadcom BCM963XX ImageTag Partition Container
>>> +==============================================
>>> +
>>> +Some Broadcom BCM63XX SoC based devices contain additional, non discoverable
>>> +partitions or non standard bootloader partition sizes. For these a mixed layout
>>> +needs to be used with an explicit firmware partition.
>>> +
>>> +The BCM963XX ImageTag is a simple firmware header describing the offsets and
>>> +sizes of the rootfs and kernel parts contained in the firmware.
>>> +
>>> +Required properties:
>>> +- compatible : must be "brcm,bcm963xx-imagetag"
>>> +
>>> +Examples:
>>> +
>>> +flash@1e000000 {
>>> +     compatible = "cfi-flash";
>>> +     reg = <0x1e000000 0x2000000>;
>>> +     bank-width = <2>;
>>> +
>>> +     partitions {
>>> +             compatible = "fixed-partitions";
>>> +             #address-cells = <1>;
>>> +             #size-cells = <1>;
>>> +
>>> +             cfe@0 {
>>> +                     reg = <0x0 0x10000>;
>>> +                     read-only;
>>> +             };
>>> +
>>> +             firmware@10000 {
>>> +                     reg = <0x10000 0x7d0000>;
>>> +                     compatible = "brcm,bcm963xx-imagetag";
>>> +             };
>>> +
>>> +             caldata@7e0000 {
>>> +                     reg = <0x7e0000 0x10000>;
>>> +                     read-only;
>>> +             };
>>> +
>>> +             nvram@7f0000 {
>>> +                     reg = <0x7f0000 0x10000>;
>>> +             };
>>> +     };
>>> +};
>>> +
>>> +
>>> +flash@1e000000 {
>>> +     compatible = "cfi-flash";
>>> +     reg = <0x1e000000 0x2000000>;
>>> +     bank-width = <2>;
>>> +
>>> +     partitions {
>>> +             compatible = "fixed-partitions";
>>> +             #address-cells = <1>;
>>> +             #size-cells = <1>;
>>> +
>>> +             /*
>>> +              * Some devices use a flash chip with 64k erase blocks, some
>>> +              * use one with 128k erase blocks, so the vendor decided to
>>> +              * always use 128k as the firmware offset.
>>> +              */
>>
>> That's a interesting piece of info, but not really a reason to have a
>> second example.
>
> Generally, I'd rather have one example too many than one too few, but
> I can drop it if you think it's unnecessary. If I do that, can I add
> your Ack then here as well for the v2?

Of course a reviewed-by, not an Ack.


Jonas
Rob Herring Sept. 10, 2018, 12:12 p.m. UTC | #3
On Mon, Sep 10, 2018 at 4:09 AM Jonas Gorski <jonas.gorski@gmail.com> wrote:
>
> On 10 September 2018 at 11:02, Jonas Gorski <jonas.gorski@gmail.com> wrote:
> > On 4 September 2018 at 02:30, Rob Herring <robh@kernel.org> wrote:
> >> On Tue, Aug 28, 2018 at 01:19:43PM +0200, Jonas Gorski wrote:
> >>> Describe how to use the BCM963XX ImageTag format in a mixed flash layout
> >>> environment.
> >>>
> >>> Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
> >>> ---
> >>>  .../mtd/partitions/brcm,bcm963xx-imagetag.txt      | 78 ++++++++++++++++++++++
> >>>  1 file changed, 78 insertions(+)
> >>>  create mode 100644 Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt
> >>>
> >>> diff --git a/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt b/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt
> >>> new file mode 100644
> >>> index 000000000000..f4a444d69d9a
> >>> --- /dev/null
> >>> +++ b/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt
> >>> @@ -0,0 +1,78 @@
> >>> +Broadcom BCM963XX ImageTag Partition Container
> >>> +==============================================
> >>> +
> >>> +Some Broadcom BCM63XX SoC based devices contain additional, non discoverable
> >>> +partitions or non standard bootloader partition sizes. For these a mixed layout
> >>> +needs to be used with an explicit firmware partition.
> >>> +
> >>> +The BCM963XX ImageTag is a simple firmware header describing the offsets and
> >>> +sizes of the rootfs and kernel parts contained in the firmware.
> >>> +
> >>> +Required properties:
> >>> +- compatible : must be "brcm,bcm963xx-imagetag"
> >>> +
> >>> +Examples:
> >>> +
> >>> +flash@1e000000 {
> >>> +     compatible = "cfi-flash";
> >>> +     reg = <0x1e000000 0x2000000>;
> >>> +     bank-width = <2>;
> >>> +
> >>> +     partitions {
> >>> +             compatible = "fixed-partitions";
> >>> +             #address-cells = <1>;
> >>> +             #size-cells = <1>;
> >>> +
> >>> +             cfe@0 {
> >>> +                     reg = <0x0 0x10000>;
> >>> +                     read-only;
> >>> +             };
> >>> +
> >>> +             firmware@10000 {
> >>> +                     reg = <0x10000 0x7d0000>;
> >>> +                     compatible = "brcm,bcm963xx-imagetag";
> >>> +             };
> >>> +
> >>> +             caldata@7e0000 {
> >>> +                     reg = <0x7e0000 0x10000>;
> >>> +                     read-only;
> >>> +             };
> >>> +
> >>> +             nvram@7f0000 {
> >>> +                     reg = <0x7f0000 0x10000>;
> >>> +             };
> >>> +     };
> >>> +};
> >>> +
> >>> +
> >>> +flash@1e000000 {
> >>> +     compatible = "cfi-flash";
> >>> +     reg = <0x1e000000 0x2000000>;
> >>> +     bank-width = <2>;
> >>> +
> >>> +     partitions {
> >>> +             compatible = "fixed-partitions";
> >>> +             #address-cells = <1>;
> >>> +             #size-cells = <1>;
> >>> +
> >>> +             /*
> >>> +              * Some devices use a flash chip with 64k erase blocks, some
> >>> +              * use one with 128k erase blocks, so the vendor decided to
> >>> +              * always use 128k as the firmware offset.
> >>> +              */
> >>
> >> That's a interesting piece of info, but not really a reason to have a
> >> second example.
> >
> > Generally, I'd rather have one example too many than one too few, but
> > I can drop it if you think it's unnecessary. If I do that, can I add
> > your Ack then here as well for the v2?
>
> Of course a reviewed-by, not an Ack.

Yes.

Rob

Patch
diff mbox series

diff --git a/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt b/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt
new file mode 100644
index 000000000000..f4a444d69d9a
--- /dev/null
+++ b/Documentation/devicetree/bindings/mtd/partitions/brcm,bcm963xx-imagetag.txt
@@ -0,0 +1,78 @@ 
+Broadcom BCM963XX ImageTag Partition Container
+==============================================
+
+Some Broadcom BCM63XX SoC based devices contain additional, non discoverable
+partitions or non standard bootloader partition sizes. For these a mixed layout
+needs to be used with an explicit firmware partition.
+
+The BCM963XX ImageTag is a simple firmware header describing the offsets and
+sizes of the rootfs and kernel parts contained in the firmware.
+
+Required properties:
+- compatible : must be "brcm,bcm963xx-imagetag"
+
+Examples:
+
+flash@1e000000 {
+	compatible = "cfi-flash";
+	reg = <0x1e000000 0x2000000>;
+	bank-width = <2>;
+
+	partitions {
+		compatible = "fixed-partitions";
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		cfe@0 {
+			reg = <0x0 0x10000>;
+			read-only;
+		};
+
+		firmware@10000 {
+			reg = <0x10000 0x7d0000>;
+			compatible = "brcm,bcm963xx-imagetag";
+		};
+
+		caldata@7e0000 {
+			reg = <0x7e0000 0x10000>;
+			read-only;
+		};
+
+		nvram@7f0000 {
+			reg = <0x7f0000 0x10000>;
+		};
+	};
+};
+
+
+flash@1e000000 {
+	compatible = "cfi-flash";
+	reg = <0x1e000000 0x2000000>;
+	bank-width = <2>;
+
+	partitions {
+		compatible = "fixed-partitions";
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		/*
+		 * Some devices use a flash chip with 64k erase blocks, some
+		 * use one with 128k erase blocks, so the vendor decided to
+		 * always use 128k as the firmware offset.
+		 */
+
+		cfe@0 {
+			reg = <0x0 0x20000>;
+			read-only;
+		};
+
+		firmware@20000 {
+			reg = <0x20000 0x7c0000>;
+			compatible = "brcm,bcm963xx-imagetag";
+		};
+
+		nvram@7e0000 {
+			reg = <0x7e0000 0x20000>;
+		};
+	};
+};