This adds the APB bus on Meson8 and Meson8b as well as the APB2 bus on
Meson6. This is preparation work for adding the Mali GPU which is
located on theses busses.
Meson6 seems to have it's APB at 0xc8000000 instead of 0xd0000000. The
region at 0xd0000000 is called APB2 or A9_APB and it has a different
size (256k) compared to Meson8 and Meson8b (2M).
Addresses and sizes are taken from the Amlogic 3.10 kernel sources:
- Meson6: [0]
- Meson8: [1]
- Meson8b: [2]
Changes since v1 at [3]:
- re-send the patches but this time don't include the old patches
which still had a typo in the patch description (ABP vs APB)
[0] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson6/include/mach/io.h#L61
[1] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson8/include/mach/io.h#L53
[2] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson8b/include/mach/io.h#L53
[3] http://lists.infradead.org/pipermail/linux-amlogic/2018-December/009424.html
Martin Blumenstingl (3):
ARM: dts: meson6: add the APB2 bus
ARM: dts: meson8: add the APB bus
ARM: dts: meson8b: add the APB bus
arch/arm/boot/dts/meson6.dtsi | 8 ++++++++
arch/arm/boot/dts/meson8.dtsi | 8 ++++++++
arch/arm/boot/dts/meson8b.dtsi | 8 ++++++++
3 files changed, 24 insertions(+)
--
2.19.2
Various peripherals (Mali GPU, NAND controller, VPU; etc.) are located
in the APB bus. Describe this bus so we can add devices to it.
Signed-off-by: Martin Blumenstingl <[email protected]>
---
arch/arm/boot/dts/meson8b.dtsi | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/arch/arm/boot/dts/meson8b.dtsi b/arch/arm/boot/dts/meson8b.dtsi
index 22d775460767..5d036842c355 100644
--- a/arch/arm/boot/dts/meson8b.dtsi
+++ b/arch/arm/boot/dts/meson8b.dtsi
@@ -178,6 +178,14 @@
no-map;
};
};
+
+ apb: bus@d0000000 {
+ compatible = "simple-bus";
+ reg = <0xd0000000 0x200000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges = <0x0 0xd0000000 0x200000>;
+ };
}; /* end of / */
&aobus {
--
2.19.2
The Mali GPU and the DVB demulator are located in the APB2 bus. Describe
this bus so we can add devices to it.
Signed-off-by: Martin Blumenstingl <[email protected]>
---
arch/arm/boot/dts/meson6.dtsi | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/arch/arm/boot/dts/meson6.dtsi b/arch/arm/boot/dts/meson6.dtsi
index ca978ab952cd..65585255910a 100644
--- a/arch/arm/boot/dts/meson6.dtsi
+++ b/arch/arm/boot/dts/meson6.dtsi
@@ -70,6 +70,14 @@
};
};
+ apb2: bus@d0000000 {
+ compatible = "simple-bus";
+ reg = <0xd0000000 0x40000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges = <0x0 0xd0000000 0x40000>;
+ };
+
xtal: xtal-clk {
compatible = "fixed-clock";
clock-frequency = <24000000>;
--
2.19.2
Various peripherals (Mali GPU, NAND controller, VPU, etc.) are located
in the APB bus. Describe this bus so we can add devices to it.
Signed-off-by: Martin Blumenstingl <[email protected]>
---
arch/arm/boot/dts/meson8.dtsi | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/arch/arm/boot/dts/meson8.dtsi b/arch/arm/boot/dts/meson8.dtsi
index e5cd325d7ea8..3fd8260eba92 100644
--- a/arch/arm/boot/dts/meson8.dtsi
+++ b/arch/arm/boot/dts/meson8.dtsi
@@ -201,6 +201,14 @@
no-map;
};
};
+
+ apb: bus@d0000000 {
+ compatible = "simple-bus";
+ reg = <0xd0000000 0x200000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges = <0x0 0xd0000000 0x200000>;
+ };
}; /* end of / */
&aobus {
--
2.19.2
On 08/12/2018 17:50, Martin Blumenstingl wrote:
> This adds the APB bus on Meson8 and Meson8b as well as the APB2 bus on
> Meson6. This is preparation work for adding the Mali GPU which is
> located on theses busses.
>
> Meson6 seems to have it's APB at 0xc8000000 instead of 0xd0000000. The
> region at 0xd0000000 is called APB2 or A9_APB and it has a different
> size (256k) compared to Meson8 and Meson8b (2M).
>
> Addresses and sizes are taken from the Amlogic 3.10 kernel sources:
> - Meson6: [0]
> - Meson8: [1]
> - Meson8b: [2]
>
>
> Changes since v1 at [3]:
> - re-send the patches but this time don't include the old patches
> which still had a typo in the patch description (ABP vs APB)
>
>
> [0] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson6/include/mach/io.h#L61
> [1] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson8/include/mach/io.h#L53
> [2] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson8b/include/mach/io.h#L53
> [3] http://lists.infradead.org/pipermail/linux-amlogic/2018-December/009424.html
>
>
> Martin Blumenstingl (3):
> ARM: dts: meson6: add the APB2 bus
> ARM: dts: meson8: add the APB bus
> ARM: dts: meson8b: add the APB bus
>
> arch/arm/boot/dts/meson6.dtsi | 8 ++++++++
> arch/arm/boot/dts/meson8.dtsi | 8 ++++++++
> arch/arm/boot/dts/meson8b.dtsi | 8 ++++++++
> 3 files changed, 24 insertions(+)
>
Reviewed-by: Neil Armstrong <[email protected]>
But frankly I'll squash the meson8/meson8b patches with the mali node patches !
Neil
Hi Neil,
On Tue, Dec 11, 2018 at 10:16 AM Neil Armstrong <[email protected]> wrote:
>
> On 08/12/2018 17:50, Martin Blumenstingl wrote:
> > This adds the APB bus on Meson8 and Meson8b as well as the APB2 bus on
> > Meson6. This is preparation work for adding the Mali GPU which is
> > located on theses busses.
> >
> > Meson6 seems to have it's APB at 0xc8000000 instead of 0xd0000000. The
> > region at 0xd0000000 is called APB2 or A9_APB and it has a different
> > size (256k) compared to Meson8 and Meson8b (2M).
> >
> > Addresses and sizes are taken from the Amlogic 3.10 kernel sources:
> > - Meson6: [0]
> > - Meson8: [1]
> > - Meson8b: [2]
> >
> >
> > Changes since v1 at [3]:
> > - re-send the patches but this time don't include the old patches
> > which still had a typo in the patch description (ABP vs APB)
> >
> >
> > [0] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson6/include/mach/io.h#L61
> > [1] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson8/include/mach/io.h#L53
> > [2] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson8b/include/mach/io.h#L53
> > [3] http://lists.infradead.org/pipermail/linux-amlogic/2018-December/009424.html
> >
> >
> > Martin Blumenstingl (3):
> > ARM: dts: meson6: add the APB2 bus
> > ARM: dts: meson8: add the APB bus
> > ARM: dts: meson8b: add the APB bus
> >
> > arch/arm/boot/dts/meson6.dtsi | 8 ++++++++
> > arch/arm/boot/dts/meson8.dtsi | 8 ++++++++
> > arch/arm/boot/dts/meson8b.dtsi | 8 ++++++++
> > 3 files changed, 24 insertions(+)
> >
>
> Reviewed-by: Neil Armstrong <[email protected]>
thank you for taking the time to review this!
> But frankly I'll squash the meson8/meson8b patches with the mali node patches !
I didn't do this because I realized that there are different busses
between Meson6 and Meson8/Meson8b. so I wanted to have a commit
message which describes this.
if you prefer I can still squash the Meson8 and Meson8b patches into
their corresponding GPU .dts patch but I would like to keep the Meson6
patch (as I'm not planning to add the Mali GPU until someone can
actually test it on that SoC)
Regards
Martin
On 11/12/2018 23:09, Martin Blumenstingl wrote:
> Hi Neil,
>
> On Tue, Dec 11, 2018 at 10:16 AM Neil Armstrong <[email protected]> wrote:
>>
>> On 08/12/2018 17:50, Martin Blumenstingl wrote:
>>> This adds the APB bus on Meson8 and Meson8b as well as the APB2 bus on
>>> Meson6. This is preparation work for adding the Mali GPU which is
>>> located on theses busses.
>>>
>>> Meson6 seems to have it's APB at 0xc8000000 instead of 0xd0000000. The
>>> region at 0xd0000000 is called APB2 or A9_APB and it has a different
>>> size (256k) compared to Meson8 and Meson8b (2M).
>>>
>>> Addresses and sizes are taken from the Amlogic 3.10 kernel sources:
>>> - Meson6: [0]
>>> - Meson8: [1]
>>> - Meson8b: [2]
>>>
>>>
>>> Changes since v1 at [3]:
>>> - re-send the patches but this time don't include the old patches
>>> which still had a typo in the patch description (ABP vs APB)
>>>
>>>
>>> [0] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson6/include/mach/io.h#L61
>>> [1] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson8/include/mach/io.h#L53
>>> [2] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson8b/include/mach/io.h#L53
>>> [3] http://lists.infradead.org/pipermail/linux-amlogic/2018-December/009424.html
>>>
>>>
>>> Martin Blumenstingl (3):
>>> ARM: dts: meson6: add the APB2 bus
>>> ARM: dts: meson8: add the APB bus
>>> ARM: dts: meson8b: add the APB bus
>>>
>>> arch/arm/boot/dts/meson6.dtsi | 8 ++++++++
>>> arch/arm/boot/dts/meson8.dtsi | 8 ++++++++
>>> arch/arm/boot/dts/meson8b.dtsi | 8 ++++++++
>>> 3 files changed, 24 insertions(+)
>>>
>>
>> Reviewed-by: Neil Armstrong <[email protected]>
> thank you for taking the time to review this!
>
>> But frankly I'll squash the meson8/meson8b patches with the mali node patches !
> I didn't do this because I realized that there are different busses
> between Meson6 and Meson8/Meson8b. so I wanted to have a commit
> message which describes this.
> if you prefer I can still squash the Meson8 and Meson8b patches into
> their corresponding GPU .dts patch but I would like to keep the Meson6
> patch (as I'm not planning to add the Mali GPU until someone can
> actually test it on that SoC)
Yes this is what I was thinking actually !
Neil
>
>
> Regards
> Martin
>
Neil Armstrong <[email protected]> writes:
> On 08/12/2018 17:50, Martin Blumenstingl wrote:
>> This adds the APB bus on Meson8 and Meson8b as well as the APB2 bus on
>> Meson6. This is preparation work for adding the Mali GPU which is
>> located on theses busses.
>>
>> Meson6 seems to have it's APB at 0xc8000000 instead of 0xd0000000. The
>> region at 0xd0000000 is called APB2 or A9_APB and it has a different
>> size (256k) compared to Meson8 and Meson8b (2M).
>>
>> Addresses and sizes are taken from the Amlogic 3.10 kernel sources:
>> - Meson6: [0]
>> - Meson8: [1]
>> - Meson8b: [2]
>>
>>
>> Changes since v1 at [3]:
>> - re-send the patches but this time don't include the old patches
>> which still had a typo in the patch description (ABP vs APB)
>>
>>
>> [0] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson6/include/mach/io.h#L61
>> [1] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson8/include/mach/io.h#L53
>> [2] https://github.com/endlessm/linux-meson/blob/cd4096c3ff4eb5b8a8a5581bb46508601c5470dc/arch/arm/mach-meson8b/include/mach/io.h#L53
>> [3] http://lists.infradead.org/pipermail/linux-amlogic/2018-December/009424.html
>>
>>
>> Martin Blumenstingl (3):
>> ARM: dts: meson6: add the APB2 bus
>> ARM: dts: meson8: add the APB bus
>> ARM: dts: meson8b: add the APB bus
>>
>> arch/arm/boot/dts/meson6.dtsi | 8 ++++++++
>> arch/arm/boot/dts/meson8.dtsi | 8 ++++++++
>> arch/arm/boot/dts/meson8b.dtsi | 8 ++++++++
>> 3 files changed, 24 insertions(+)
>>
>
> Reviewed-by: Neil Armstrong <[email protected]>
>
> But frankly I'll squash the meson8/meson8b patches with the mali node patches !
In general, I agree with Neil. Adding the new busses along with the
series that uses them would be fine, but I don't have a strong
preference.
So queueing this series as is for v5.1 (branch: v5.1/dt)
Kevin