Message ID | 5f493a50fedef45c3cacd91cbf999092d9c05164.1587760454.git.hns@goldelico.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | ARM/MIPS: DTS: add child nodes describing the PVRSGX GPU present in some OMAP SoC and JZ4780 (and many more) | expand |
Hi Nikolaus, Le ven. 24 avril 2020 à 22:34, H. Nikolaus Schaller <hns@goldelico.com> a écrit : > Add SGX GPU node with interrupt. Tested on PandaBoard ES. > > Since omap4420/30/60 and omap4470 come with different SGX variants > we need to introduce a new omap4470.dtsi. If an omap4470 board > does not want to use SGX it is no problem to still include > omap4460.dtsi. > > Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com> > --- > arch/arm/boot/dts/omap4.dtsi | 11 ++++++----- > arch/arm/boot/dts/omap4470.dts | 15 +++++++++++++++ > 2 files changed, 21 insertions(+), 5 deletions(-) > create mode 100644 arch/arm/boot/dts/omap4470.dts > > diff --git a/arch/arm/boot/dts/omap4.dtsi > b/arch/arm/boot/dts/omap4.dtsi > index 763bdea8c829..15ff3d7146af 100644 > --- a/arch/arm/boot/dts/omap4.dtsi > +++ b/arch/arm/boot/dts/omap4.dtsi > @@ -389,7 +389,7 @@ abb_iva: regulator-abb-iva { > status = "disabled"; > }; > > - target-module@56000000 { > + sgx_module: target-module@56000000 { > compatible = "ti,sysc-omap4", "ti,sysc"; > reg = <0x5600fe00 0x4>, > <0x5600fe10 0x4>; > @@ -408,10 +408,11 @@ target-module@56000000 { > #size-cells = <1>; > ranges = <0 0x56000000 0x2000000>; > > - /* > - * Closed source PowerVR driver, no child device > - * binding or driver in mainline > - */ > + gpu: gpu@0 { > + compatible = "ti,omap4-sgx540-120", "img,sgx540-120", > "img,sgx540"; > + reg = <0x0 0x2000000>; /* 32MB */ > + interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; > + }; > }; > > /* > diff --git a/arch/arm/boot/dts/omap4470.dts > b/arch/arm/boot/dts/omap4470.dts > new file mode 100644 > index 000000000000..f29c581300bf > --- /dev/null > +++ b/arch/arm/boot/dts/omap4470.dts > @@ -0,0 +1,15 @@ > +// SPDX-License-Identifier: GPL-2.0-only > +/* > + * Device Tree Source for OMAP4470 SoC > + * > + * Copyright (C) 2012 Texas Instruments Incorporated - > http://www.ti.com/ > + * > + * This file is licensed under the terms of the GNU General Public > License > + * version 2. This program is licensed "as is" without any warranty > of any > + * kind, whether express or implied. > + */ > +#include "omap4460.dtsi" > + > +&sgx { Does this even compile? The node's handle is named sgx_module, not sgx. -Paul > + compatible = "ti,omap4470-sgx544-112", "img,sgx544-112", > "img,sgx544"; > +}; > -- > 2.25.1 >
Hi Paul, > Am 26.04.2020 um 14:50 schrieb Paul Cercueil <paul@crapouillou.net>: > > Hi Nikolaus, > > Le ven. 24 avril 2020 à 22:34, H. Nikolaus Schaller <hns@goldelico.com> a écrit : >> Add SGX GPU node with interrupt. Tested on PandaBoard ES. >> Since omap4420/30/60 and omap4470 come with different SGX variants >> we need to introduce a new omap4470.dtsi. If an omap4470 board >> does not want to use SGX it is no problem to still include >> omap4460.dtsi. >> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com> >> --- >> arch/arm/boot/dts/omap4.dtsi | 11 ++++++----- >> arch/arm/boot/dts/omap4470.dts | 15 +++++++++++++++ >> 2 files changed, 21 insertions(+), 5 deletions(-) >> create mode 100644 arch/arm/boot/dts/omap4470.dts >> diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi >> index 763bdea8c829..15ff3d7146af 100644 >> --- a/arch/arm/boot/dts/omap4.dtsi >> +++ b/arch/arm/boot/dts/omap4.dtsi >> @@ -389,7 +389,7 @@ abb_iva: regulator-abb-iva { >> status = "disabled"; >> }; >> - target-module@56000000 { >> + sgx_module: target-module@56000000 { >> compatible = "ti,sysc-omap4", "ti,sysc"; >> reg = <0x5600fe00 0x4>, >> <0x5600fe10 0x4>; >> @@ -408,10 +408,11 @@ target-module@56000000 { >> #size-cells = <1>; >> ranges = <0 0x56000000 0x2000000>; >> - /* >> - * Closed source PowerVR driver, no child device >> - * binding or driver in mainline >> - */ >> + gpu: gpu@0 { >> + compatible = "ti,omap4-sgx540-120", "img,sgx540-120", "img,sgx540"; >> + reg = <0x0 0x2000000>; /* 32MB */ >> + interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; >> + }; >> }; >> /* >> diff --git a/arch/arm/boot/dts/omap4470.dts b/arch/arm/boot/dts/omap4470.dts >> new file mode 100644 >> index 000000000000..f29c581300bf >> --- /dev/null >> +++ b/arch/arm/boot/dts/omap4470.dts ^^^ there is also a missing "i" in the file name >> @@ -0,0 +1,15 @@ >> +// SPDX-License-Identifier: GPL-2.0-only >> +/* >> + * Device Tree Source for OMAP4470 SoC >> + * >> + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ >> + * >> + * This file is licensed under the terms of the GNU General Public License >> + * version 2. This program is licensed "as is" without any warranty of any >> + * kind, whether express or implied. >> + */ >> +#include "omap4460.dtsi" >> + >> +&sgx { > > Does this even compile? Good question. So far there is no well known eval board in mainline that #includes this .dtsi (because it is new) and therefore it passes any compile tests. DTC arch/arm/boot/dts/omap4470-test.dtb - due to target missing Error: arch/arm/boot/dts/omap4470.dtsi:13.1-5 Label or path sgx not found I have now added a dummy board (not to be mainlined) for my own compile test... > > The node's handle is named sgx_module, not sgx. Indeed. A fix is queued for v8. BR and thanks, Nikolaus
diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi index 763bdea8c829..15ff3d7146af 100644 --- a/arch/arm/boot/dts/omap4.dtsi +++ b/arch/arm/boot/dts/omap4.dtsi @@ -389,7 +389,7 @@ abb_iva: regulator-abb-iva { status = "disabled"; }; - target-module@56000000 { + sgx_module: target-module@56000000 { compatible = "ti,sysc-omap4", "ti,sysc"; reg = <0x5600fe00 0x4>, <0x5600fe10 0x4>; @@ -408,10 +408,11 @@ target-module@56000000 { #size-cells = <1>; ranges = <0 0x56000000 0x2000000>; - /* - * Closed source PowerVR driver, no child device - * binding or driver in mainline - */ + gpu: gpu@0 { + compatible = "ti,omap4-sgx540-120", "img,sgx540-120", "img,sgx540"; + reg = <0x0 0x2000000>; /* 32MB */ + interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; + }; }; /* diff --git a/arch/arm/boot/dts/omap4470.dts b/arch/arm/boot/dts/omap4470.dts new file mode 100644 index 000000000000..f29c581300bf --- /dev/null +++ b/arch/arm/boot/dts/omap4470.dts @@ -0,0 +1,15 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * Device Tree Source for OMAP4470 SoC + * + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ + * + * This file is licensed under the terms of the GNU General Public License + * version 2. This program is licensed "as is" without any warranty of any + * kind, whether express or implied. + */ +#include "omap4460.dtsi" + +&sgx { + compatible = "ti,omap4470-sgx544-112", "img,sgx544-112", "img,sgx544"; +};
Add SGX GPU node with interrupt. Tested on PandaBoard ES. Since omap4420/30/60 and omap4470 come with different SGX variants we need to introduce a new omap4470.dtsi. If an omap4470 board does not want to use SGX it is no problem to still include omap4460.dtsi. Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com> --- arch/arm/boot/dts/omap4.dtsi | 11 ++++++----- arch/arm/boot/dts/omap4470.dts | 15 +++++++++++++++ 2 files changed, 21 insertions(+), 5 deletions(-) create mode 100644 arch/arm/boot/dts/omap4470.dts