Skip to content

Commit dba386d

Browse files
paligregkh
authored andcommitted
powerpc: Fix SPE Power ISA properties for e500v1 platforms
[ Upstream commit 37b9345 ] Commit 2eb2800 ("powerpc/e500v2: Add Power ISA properties to comply with ePAPR 1.1") introduced new include file e500v2_power_isa.dtsi and should have used it for all e500v2 platforms. But apparently it was used also for e500v1 platforms mpc8540, mpc8541, mpc8555 and mpc8560. e500v1 cores compared to e500v2 do not support double precision floating point SPE instructions. Hence power-isa-sp.fd should not be set on e500v1 platforms, which is in e500v2_power_isa.dtsi include file. Fix this issue by introducing a new e500v1_power_isa.dtsi include file and use it in all e500v1 device tree files. Fixes: 2eb2800 ("powerpc/e500v2: Add Power ISA properties to comply with ePAPR 1.1") Signed-off-by: Pali Rohár <[email protected]> Signed-off-by: Michael Ellerman <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Sasha Levin <[email protected]>
1 parent a47254a commit dba386d

File tree

5 files changed

+55
-4
lines changed

5 files changed

+55
-4
lines changed
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
/*
2+
* e500v1 Power ISA Device Tree Source (include)
3+
*
4+
* Copyright 2012 Freescale Semiconductor Inc.
5+
*
6+
* Redistribution and use in source and binary forms, with or without
7+
* modification, are permitted provided that the following conditions are met:
8+
* * Redistributions of source code must retain the above copyright
9+
* notice, this list of conditions and the following disclaimer.
10+
* * Redistributions in binary form must reproduce the above copyright
11+
* notice, this list of conditions and the following disclaimer in the
12+
* documentation and/or other materials provided with the distribution.
13+
* * Neither the name of Freescale Semiconductor nor the
14+
* names of its contributors may be used to endorse or promote products
15+
* derived from this software without specific prior written permission.
16+
*
17+
*
18+
* ALTERNATIVELY, this software may be distributed under the terms of the
19+
* GNU General Public License ("GPL") as published by the Free Software
20+
* Foundation, either version 2 of that License or (at your option) any
21+
* later version.
22+
*
23+
* THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor "AS IS" AND ANY
24+
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
25+
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26+
* DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
27+
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
28+
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29+
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
30+
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31+
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
32+
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33+
*/
34+
35+
/ {
36+
cpus {
37+
power-isa-version = "2.03";
38+
power-isa-b; // Base
39+
power-isa-e; // Embedded
40+
power-isa-atb; // Alternate Time Base
41+
power-isa-cs; // Cache Specification
42+
power-isa-e.le; // Embedded.Little-Endian
43+
power-isa-e.pm; // Embedded.Performance Monitor
44+
power-isa-ecl; // Embedded Cache Locking
45+
power-isa-mmc; // Memory Coherence
46+
power-isa-sp; // Signal Processing Engine
47+
power-isa-sp.fs; // SPE.Embedded Float Scalar Single
48+
power-isa-sp.fv; // SPE.Embedded Float Vector
49+
mmu-type = "power-embedded";
50+
};
51+
};

arch/powerpc/boot/dts/fsl/mpc8540ads.dts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
/dts-v1/;
99

10-
/include/ "e500v2_power_isa.dtsi"
10+
/include/ "e500v1_power_isa.dtsi"
1111

1212
/ {
1313
model = "MPC8540ADS";

arch/powerpc/boot/dts/fsl/mpc8541cds.dts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
/dts-v1/;
99

10-
/include/ "e500v2_power_isa.dtsi"
10+
/include/ "e500v1_power_isa.dtsi"
1111

1212
/ {
1313
model = "MPC8541CDS";

arch/powerpc/boot/dts/fsl/mpc8555cds.dts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
/dts-v1/;
99

10-
/include/ "e500v2_power_isa.dtsi"
10+
/include/ "e500v1_power_isa.dtsi"
1111

1212
/ {
1313
model = "MPC8555CDS";

arch/powerpc/boot/dts/fsl/mpc8560ads.dts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
/dts-v1/;
99

10-
/include/ "e500v2_power_isa.dtsi"
10+
/include/ "e500v1_power_isa.dtsi"
1111

1212
/ {
1313
model = "MPC8560ADS";

0 commit comments

Comments
 (0)