Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
af3bf7fb
Commit
af3bf7fb
authored
Jul 13, 2012
by
Benjamin Herrenschmidt
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'kumar/next' into next
Freescale updates for 3.6
parents
10db8d21
b915341b
Changes
56
Hide whitespace changes
Inline
Side-by-side
Showing
56 changed files
with
1607 additions
and
1361 deletions
+1607
-1361
arch/powerpc/Kconfig
arch/powerpc/Kconfig
+1
-1
arch/powerpc/boot/Makefile
arch/powerpc/boot/Makefile
+0
-1
arch/powerpc/boot/dts/bsc9131rdb.dts
arch/powerpc/boot/dts/bsc9131rdb.dts
+34
-0
arch/powerpc/boot/dts/bsc9131rdb.dtsi
arch/powerpc/boot/dts/bsc9131rdb.dtsi
+142
-0
arch/powerpc/boot/dts/fsl/bsc9131si-post.dtsi
arch/powerpc/boot/dts/fsl/bsc9131si-post.dtsi
+193
-0
arch/powerpc/boot/dts/fsl/bsc9131si-pre.dtsi
arch/powerpc/boot/dts/fsl/bsc9131si-pre.dtsi
+9
-75
arch/powerpc/boot/dts/fsl/p1021si-post.dtsi
arch/powerpc/boot/dts/fsl/p1021si-post.dtsi
+15
-1
arch/powerpc/boot/dts/fsl/p3060si-post.dtsi
arch/powerpc/boot/dts/fsl/p3060si-post.dtsi
+0
-302
arch/powerpc/boot/dts/mgcoge.dts
arch/powerpc/boot/dts/mgcoge.dts
+23
-0
arch/powerpc/boot/dts/mpc8536ds.dtsi
arch/powerpc/boot/dts/mpc8536ds.dtsi
+8
-0
arch/powerpc/boot/dts/mpc8544ds.dtsi
arch/powerpc/boot/dts/mpc8544ds.dtsi
+9
-0
arch/powerpc/boot/dts/mpc8572ds.dtsi
arch/powerpc/boot/dts/mpc8572ds.dtsi
+17
-0
arch/powerpc/boot/dts/mpc8572ds_camp_core0.dts
arch/powerpc/boot/dts/mpc8572ds_camp_core0.dts
+4
-4
arch/powerpc/boot/dts/mpc8572ds_camp_core1.dts
arch/powerpc/boot/dts/mpc8572ds_camp_core1.dts
+4
-7
arch/powerpc/boot/dts/p1010rdb.dtsi
arch/powerpc/boot/dts/p1010rdb.dtsi
+12
-0
arch/powerpc/boot/dts/p1021rdb-pc.dtsi
arch/powerpc/boot/dts/p1021rdb-pc.dtsi
+1
-1
arch/powerpc/boot/dts/p1021rdb-pc_32b.dts
arch/powerpc/boot/dts/p1021rdb-pc_32b.dts
+2
-2
arch/powerpc/boot/dts/p1021rdb-pc_36b.dts
arch/powerpc/boot/dts/p1021rdb-pc_36b.dts
+2
-2
arch/powerpc/boot/dts/p1022ds.dtsi
arch/powerpc/boot/dts/p1022ds.dtsi
+4
-16
arch/powerpc/boot/dts/p1024rdb.dtsi
arch/powerpc/boot/dts/p1024rdb.dtsi
+228
-0
arch/powerpc/boot/dts/p1024rdb_32b.dts
arch/powerpc/boot/dts/p1024rdb_32b.dts
+87
-0
arch/powerpc/boot/dts/p1024rdb_36b.dts
arch/powerpc/boot/dts/p1024rdb_36b.dts
+87
-0
arch/powerpc/boot/dts/p1025rdb.dtsi
arch/powerpc/boot/dts/p1025rdb.dtsi
+40
-0
arch/powerpc/boot/dts/p2020ds.dtsi
arch/powerpc/boot/dts/p2020ds.dtsi
+10
-0
arch/powerpc/boot/dts/p2020rdb.dts
arch/powerpc/boot/dts/p2020rdb.dts
+1
-1
arch/powerpc/boot/dts/p2041rdb.dts
arch/powerpc/boot/dts/p2041rdb.dts
+40
-1
arch/powerpc/boot/dts/sbc8560.dts
arch/powerpc/boot/dts/sbc8560.dts
+0
-406
arch/powerpc/configs/83xx/kmeter1_defconfig
arch/powerpc/configs/83xx/kmeter1_defconfig
+8
-14
arch/powerpc/configs/85xx/sbc8560_defconfig
arch/powerpc/configs/85xx/sbc8560_defconfig
+0
-65
arch/powerpc/configs/corenet32_smp_defconfig
arch/powerpc/configs/corenet32_smp_defconfig
+9
-1
arch/powerpc/configs/corenet64_smp_defconfig
arch/powerpc/configs/corenet64_smp_defconfig
+52
-14
arch/powerpc/configs/mgcoge_defconfig
arch/powerpc/configs/mgcoge_defconfig
+4
-8
arch/powerpc/configs/mpc85xx_defconfig
arch/powerpc/configs/mpc85xx_defconfig
+24
-0
arch/powerpc/configs/mpc85xx_smp_defconfig
arch/powerpc/configs/mpc85xx_smp_defconfig
+25
-0
arch/powerpc/include/asm/immap_qe.h
arch/powerpc/include/asm/immap_qe.h
+3
-1
arch/powerpc/include/asm/qe.h
arch/powerpc/include/asm/qe.h
+1
-0
arch/powerpc/kernel/head_fsl_booke.S
arch/powerpc/kernel/head_fsl_booke.S
+6
-17
arch/powerpc/kernel/setup-common.c
arch/powerpc/kernel/setup-common.c
+27
-0
arch/powerpc/kernel/setup_32.c
arch/powerpc/kernel/setup_32.c
+0
-24
arch/powerpc/platforms/82xx/km82xx.c
arch/powerpc/platforms/82xx/km82xx.c
+5
-0
arch/powerpc/platforms/83xx/km83xx.c
arch/powerpc/platforms/83xx/km83xx.c
+67
-33
arch/powerpc/platforms/85xx/Kconfig
arch/powerpc/platforms/85xx/Kconfig
+25
-18
arch/powerpc/platforms/85xx/Makefile
arch/powerpc/platforms/85xx/Makefile
+2
-2
arch/powerpc/platforms/85xx/bsc913x_rdb.c
arch/powerpc/platforms/85xx/bsc913x_rdb.c
+67
-0
arch/powerpc/platforms/85xx/mpc85xx_ds.c
arch/powerpc/platforms/85xx/mpc85xx_ds.c
+29
-68
arch/powerpc/platforms/85xx/mpc85xx_rdb.c
arch/powerpc/platforms/85xx/mpc85xx_rdb.c
+22
-0
arch/powerpc/platforms/85xx/p1022_ds.c
arch/powerpc/platforms/85xx/p1022_ds.c
+93
-13
arch/powerpc/platforms/85xx/qemu_e500.c
arch/powerpc/platforms/85xx/qemu_e500.c
+72
-0
arch/powerpc/platforms/85xx/sbc8560.c
arch/powerpc/platforms/85xx/sbc8560.c
+0
-254
arch/powerpc/platforms/Kconfig.cputype
arch/powerpc/platforms/Kconfig.cputype
+4
-0
arch/powerpc/sysdev/fsl_pci.c
arch/powerpc/sysdev/fsl_pci.c
+71
-2
arch/powerpc/sysdev/fsl_pci.h
arch/powerpc/sysdev/fsl_pci.h
+8
-0
arch/powerpc/sysdev/mpic.c
arch/powerpc/sysdev/mpic.c
+1
-1
arch/powerpc/sysdev/qe_lib/qe.c
arch/powerpc/sysdev/qe_lib/qe.c
+3
-0
drivers/watchdog/Kconfig
drivers/watchdog/Kconfig
+4
-4
drivers/watchdog/booke_wdt.c
drivers/watchdog/booke_wdt.c
+2
-2
No files found.
arch/powerpc/Kconfig
View file @
af3bf7fb
...
...
@@ -653,7 +653,7 @@ config SBUS
config FSL_SOC
bool
select HAVE_CAN_FLEXCAN if NET && CAN
select PPC_CLOCK
if CAN_FLEXCAN
select PPC_CLOCK
config FSL_PCI
bool
...
...
arch/powerpc/boot/Makefile
View file @
af3bf7fb
...
...
@@ -276,7 +276,6 @@ image-$(CONFIG_TQM8548) += cuImage.tqm8548
image-$(CONFIG_TQM8555)
+=
cuImage.tqm8555
image-$(CONFIG_TQM8560)
+=
cuImage.tqm8560
image-$(CONFIG_SBC8548)
+=
cuImage.sbc8548
image-$(CONFIG_SBC8560)
+=
cuImage.sbc8560
image-$(CONFIG_KSI8560)
+=
cuImage.ksi8560
# Board ports in arch/powerpc/platform/embedded6xx/Kconfig
...
...
arch/powerpc/boot/dts/bsc9131rdb.dts
0 → 100644
View file @
af3bf7fb
/*
*
BSC9131
RDB
Device
Tree
Source
*
*
Copyright
2011
-
2012
Freescale
Semiconductor
Inc
.
*
*
This
program
is
free
software
;
you
can
redistribute
it
and
/
or
modify
it
*
under
the
terms
of
the
GNU
General
Public
License
as
published
by
the
*
Free
Software
Foundation
;
either
version
2
of
the
License
,
or
(
at
your
*
option
)
any
later
version
.
*/
/
include
/
"fsl/bsc9131si-pre.dtsi"
/
{
model
=
"fsl,bsc9131rdb"
;
compatible
=
"fsl,bsc9131rdb"
;
memory
{
device_type
=
"memory"
;
};
board_ifc
:
ifc
:
ifc
@
ff71e000
{
/*
NAND
Flash
on
board
*/
ranges
=
<
0x0
0x0
0x0
0xff800000
0x00004000
>;
reg
=
<
0x0
0xff71e000
0x0
0x2000
>;
};
board_soc
:
soc
:
soc
@
ff700000
{
ranges
=
<
0x0
0x0
0xff700000
0x100000
>;
};
};
/
include
/
"bsc9131rdb.dtsi"
/
include
/
"fsl/bsc9131si-post.dtsi"
arch/powerpc/boot/dts/bsc9131rdb.dtsi
0 → 100644
View file @
af3bf7fb
/*
* BSC9131 RDB Device Tree Source stub (no addresses or top-level ranges)
*
* Copyright 2011-2012 Freescale Semiconductor Inc.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of Freescale Semiconductor nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
*
* ALTERNATIVELY, this software may be distributed under the terms of the
* GNU General Public License ("GPL") as published by the Free Software
* Foundation, either version 2 of that License or (at your option) any
* later version.
*
* THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
&board_ifc {
nand@0,0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "fsl,ifc-nand";
reg = <0x0 0x0 0x4000>;
partition@0 {
/* This location must not be altered */
/* 3MB for u-boot Bootloader Image */
reg = <0x0 0x00300000>;
label = "NAND U-Boot Image";
read-only;
};
partition@300000 {
/* 1MB for DTB Image */
reg = <0x00300000 0x00100000>;
label = "NAND DTB Image";
};
partition@400000 {
/* 8MB for Linux Kernel Image */
reg = <0x00400000 0x00800000>;
label = "NAND Linux Kernel Image";
};
partition@c00000 {
/* Rest space for Root file System Image */
reg = <0x00c00000 0x07400000>;
label = "NAND RFS Image";
};
};
};
&board_soc {
/* BSC9131RDB does not have any device on i2c@3100 */
i2c@3100 {
status = "disabled";
};
spi@7000 {
flash@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "spansion,s25sl12801";
reg = <0>;
spi-max-frequency = <50000000>;
/* 512KB for u-boot Bootloader Image */
partition@0 {
reg = <0x0 0x00080000>;
label = "SPI Flash U-Boot Image";
read-only;
};
/* 512KB for DTB Image */
partition@80000 {
reg = <0x00080000 0x00080000>;
label = "SPI Flash DTB Image";
};
/* 4MB for Linux Kernel Image */
partition@100000 {
reg = <0x00100000 0x00400000>;
label = "SPI Flash Kernel Image";
};
/*11MB for RFS Image */
partition@500000 {
reg = <0x00500000 0x00B00000>;
label = "SPI Flash RFS Image";
};
};
};
usb@22000 {
phy_type = "ulpi";
};
mdio@24000 {
phy0: ethernet-phy@0 {
interrupts = <3 1 0 0>;
reg = <0x0>;
};
phy1: ethernet-phy@1 {
interrupts = <2 1 0 0>;
reg = <0x3>;
};
};
sdhci@2e000 {
status = "disabled";
};
enet0: ethernet@b0000 {
phy-handle = <&phy0>;
phy-connection-type = "rgmii-id";
};
enet1: ethernet@b1000 {
phy-handle = <&phy1>;
phy-connection-type = "rgmii-id";
};
};
arch/powerpc/boot/dts/fsl/bsc9131si-post.dtsi
0 → 100644
View file @
af3bf7fb
/*
* BSC9131 Silicon/SoC Device Tree Source (post include)
*
* Copyright 2011-2012 Freescale Semiconductor Inc.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of Freescale Semiconductor nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
*
* ALTERNATIVELY, this software may be distributed under the terms of the
* GNU General Public License ("GPL") as published by the Free Software
* Foundation, either version 2 of that License or (at your option) any
* later version.
*
* THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
&ifc {
#address-cells = <2>;
#size-cells = <1>;
compatible = "fsl,ifc", "simple-bus";
interrupts = <16 2 0 0 20 2 0 0>;
};
&soc {
#address-cells = <1>;
#size-cells = <1>;
device_type = "soc";
compatible = "fsl,bsc9131-immr", "simple-bus";
bus-frequency = <0>; // Filled out by uboot.
ecm-law@0 {
compatible = "fsl,ecm-law";
reg = <0x0 0x1000>;
fsl,num-laws = <12>;
};
ecm@1000 {
compatible = "fsl,bsc9131-ecm", "fsl,ecm";
reg = <0x1000 0x1000>;
interrupts = <16 2 0 0>;
};
memory-controller@2000 {
compatible = "fsl,bsc9131-memory-controller";
reg = <0x2000 0x1000>;
interrupts = <16 2 0 0>;
};
/include/ "pq3-i2c-0.dtsi"
i2c@3000 {
interrupts = <17 2 0 0>;
};
/include/ "pq3-i2c-1.dtsi"
i2c@3100 {
interrupts = <17 2 0 0>;
};
/include/ "pq3-duart-0.dtsi"
serial0: serial@4500 {
interrupts = <18 2 0 0>;
};
serial1: serial@4600 {
interrupts = <18 2 0 0 >;
};
/include/ "pq3-espi-0.dtsi"
spi0: spi@7000 {
fsl,espi-num-chipselects = <1>;
interrupts = <22 0x2 0 0>;
};
/include/ "pq3-gpio-0.dtsi"
gpio-controller@f000 {
interrupts = <19 0x2 0 0>;
};
L2: l2-cache-controller@20000 {
compatible = "fsl,bsc9131-l2-cache-controller";
reg = <0x20000 0x1000>;
cache-line-size = <32>; // 32 bytes
cache-size = <0x40000>; // L2,256K
interrupts = <16 2 0 0>;
};
/include/ "pq3-dma-0.dtsi"
dma@21300 {
dma-channel@0 {
interrupts = <62 2 0 0>;
};
dma-channel@80 {
interrupts = <63 2 0 0>;
};
dma-channel@100 {
interrupts = <64 2 0 0>;
};
dma-channel@180 {
interrupts = <65 2 0 0>;
};
};
/include/ "pq3-usb2-dr-0.dtsi"
usb@22000 {
compatible = "fsl-usb2-dr","fsl-usb2-dr-v2.2";
interrupts = <40 0x2 0 0>;
};
/include/ "pq3-esdhc-0.dtsi"
sdhc@2e000 {
fsl,sdhci-auto-cmd12;
interrupts = <41 0x2 0 0>;
};
/include/ "pq3-sec4.4-0.dtsi"
crypto@30000 {
interrupts = <57 2 0 0>;
sec_jr0: jr@1000 {
interrupts = <58 2 0 0>;
};
sec_jr1: jr@2000 {
interrupts = <59 2 0 0>;
};
sec_jr2: jr@3000 {
interrupts = <60 2 0 0>;
};
sec_jr3: jr@4000 {
interrupts = <61 2 0 0>;
};
};
/include/ "pq3-mpic.dtsi"
timer@41100 {
compatible = "fsl,mpic-v1.2-msgr", "fsl,mpic-msg";
reg = <0x41400 0x200>;
interrupts = <
0xb0 2
0xb1 2
0xb2 2
0xb3 2>;
};
/include/ "pq3-etsec2-0.dtsi"
enet0: ethernet@b0000 {
queue-group@b0000 {
fsl,rx-bit-map = <0xff>;
fsl,tx-bit-map = <0xff>;
interrupts = <26 2 0 0 27 2 0 0 28 2 0 0>;
};
};
/include/ "pq3-etsec2-1.dtsi"
enet1: ethernet@b1000 {
queue-group@b1000 {
fsl,rx-bit-map = <0xff>;
fsl,tx-bit-map = <0xff>;
interrupts = <33 2 0 0 34 2 0 0 35 2 0 0>;
};
};
global-utilities@e0000 {
compatible = "fsl,bsc9131-guts";
reg = <0xe0000 0x1000>;
fsl,has-rstcr;
};
};
arch/powerpc/boot/dts/fsl/
p3060
si-pre.dtsi
→
arch/powerpc/boot/dts/fsl/
bsc9131
si-pre.dtsi
View file @
af3bf7fb
/*
*
P3060
Silicon/SoC Device Tree Source (pre include)
*
BSC9131
Silicon/SoC Device Tree Source (pre include)
*
* Copyright 2011 Freescale Semiconductor Inc.
* Copyright 2011
-2012
Freescale Semiconductor Inc.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
...
...
@@ -34,92 +34,26 @@
/dts-v1/;
/ {
compatible = "fsl,
P3060
";
compatible = "fsl,
BSC9131
";
#address-cells = <2>;
#size-cells = <2>;
interrupt-parent = <&mpic>;
aliases {
ccsr = &soc;
dcsr = &dcsr;
serial0 = &serial0;
serial1 = &serial1;
serial2 = &serial2;
serial3 = &serial3;
pci0 = &pci0;
pci1 = &pci1;
usb0 = &usb0;
usb1 = &usb1;
dma0 = &dma0;
dma1 = &dma1;
msi0 = &msi0;
msi1 = &msi1;
msi2 = &msi2;
crypto = &crypto;
sec_jr0 = &sec_jr0;
sec_jr1 = &sec_jr1;
sec_jr2 = &sec_jr2;
sec_jr3 = &sec_jr3;
rtic_a = &rtic_a;
rtic_b = &rtic_b;
rtic_c = &rtic_c;
rtic_d = &rtic_d;
sec_mon = &sec_mon;
ethernet0 = &enet0;
ethernet1 = &enet1;
};
cpus {
#address-cells = <1>;
#size-cells = <0>;
cpu0: PowerPC,e500mc@0 {
device_type = "cpu";
reg = <0>;
next-level-cache = <&L2_0>;
L2_0: l2-cache {
next-level-cache = <&cpc>;
};
};
cpu1: PowerPC,e500mc@1 {
device_type = "cpu";
reg = <1>;
next-level-cache = <&L2_1>;
L2_1: l2-cache {
next-level-cache = <&cpc>;
};
};
cpu4: PowerPC,e500mc@4 {
device_type = "cpu";
reg = <4>;
next-level-cache = <&L2_4>;
L2_4: l2-cache {
next-level-cache = <&cpc>;
};
};
cpu5: PowerPC,e500mc@5 {
device_type = "cpu";
reg = <5>;
next-level-cache = <&L2_5>;
L2_5: l2-cache {
next-level-cache = <&cpc>;
};
};
cpu6: PowerPC,e500mc@6 {
device_type = "cpu";
reg = <6>;
next-level-cache = <&L2_6>;
L2_6: l2-cache {
next-level-cache = <&cpc>;
};
};
cpu7: PowerPC,e500mc@7 {
PowerPC,BSC9131@0 {
device_type = "cpu";
reg = <7>;
next-level-cache = <&L2_7>;
L2_7: l2-cache {
next-level-cache = <&cpc>;
};
compatible = "fsl,e500v2";
reg = <0x0>;
next-level-cache = <&L2>;
};
};
};
arch/powerpc/boot/dts/fsl/p1021si-post.dtsi
View file @
af3bf7fb
/*
* P1021/P1012 Silicon/SoC Device Tree Source (post include)
*
* Copyright 2011 Freescale Semiconductor Inc.
* Copyright 2011
-2012
Freescale Semiconductor Inc.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
...
...
@@ -213,6 +213,20 @@ ucc@2400 {
interrupt-parent = <&qeic>;
};
ucc@2600 {
cell-index = <7>;
reg = <0x2600 0x200>;
interrupts = <42>;
interrupt-parent = <&qeic>;
};
ucc@2200 {
cell-index = <3>;
reg = <0x2200 0x200>;
interrupts = <34>;
interrupt-parent = <&qeic>;
};
muram@10000 {
#address-cells = <1>;
#size-cells = <1>;
...
...
arch/powerpc/boot/dts/fsl/p3060si-post.dtsi
deleted
100644 → 0
View file @
10db8d21
/*
* P3060 Silicon/SoC Device Tree Source (post include)
*
* Copyright 2011 Freescale Semiconductor Inc.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of Freescale Semiconductor nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
*
* ALTERNATIVELY, this software may be distributed under the terms of the
* GNU General Public License ("GPL") as published by the Free Software
* Foundation, either version 2 of that License or (at your option) any
* later version.
*
* THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
&lbc {
compatible = "fsl,p3060-elbc", "fsl,elbc", "simple-bus";
interrupts = <25 2 0 0>;
#address-cells = <2>;
#size-cells = <1>;
};
/* controller at 0x200000 */
&pci0 {
compatible = "fsl,p3060-pcie", "fsl,qoriq-pcie-v2.2";
device_type = "pci";
#size-cells = <2>;
#address-cells = <3>;
bus-range = <0x0 0xff>;
clock-frequency = <33333333>;
interrupts = <16 2 1 15>;
pcie@0 {
reg = <0 0 0 0 0>;
#interrupt-cells = <1>;
#size-cells = <2>;
#address-cells = <3>;
device_type = "pci";
interrupts = <16 2 1 15>;
interrupt-map-mask = <0xf800 0 0 7>;
interrupt-map = <
/* IDSEL 0x0 */
0000 0 0 1 &mpic 40 1 0 0
0000 0 0 2 &mpic 1 1 0 0
0000 0 0 3 &mpic 2 1 0 0
0000 0 0 4 &mpic 3 1 0 0
>;
};
};
/* controller at 0x201000 */
&pci1 {
compatible = "fsl,p3060-pcie", "fsl,qoriq-pcie-v2.2";
device_type = "pci";
#size-cells = <2>;
#address-cells = <3>;
bus-range = <0 0xff>;
clock-frequency = <33333333>;
interrupts = <16 2 1 14>;
pcie@0 {
reg = <0 0 0 0 0>;
#interrupt-cells = <1>;
#size-cells = <2>;
#address-cells = <3>;
device_type = "pci";
interrupts = <16 2 1 14>;
interrupt-map-mask = <0xf800 0 0 7>;
interrupt-map = <
/* IDSEL 0x0 */
0000 0 0 1 &mpic 41 1 0 0
0000 0 0 2 &mpic 5 1 0 0
0000 0 0 3 &mpic 6 1 0 0
0000 0 0 4 &mpic 7 1 0 0
>;
};
};
&rio {
compatible = "fsl,srio";
interrupts = <16 2 1 11>;
#address-cells = <2>;
#size-cells = <2>;
fsl,srio-rmu-handle = <&rmu>;
ranges;
port1 {
#address-cells = <2>;
#size-cells = <2>;
cell-index = <1>;
};
port2 {
#address-cells = <2>;
#size-cells = <2>;
cell-index = <2>;
};
};
&dcsr {
#address-cells = <1>;
#size-cells = <1>;
compatible = "fsl,dcsr", "simple-bus";
dcsr-epu@0 {
compatible = "fsl,dcsr-epu";
interrupts = <52 2 0 0
84 2 0 0
85 2 0 0>;
reg = <0x0 0x1000>;
};
dcsr-npc {
compatible = "fsl,dcsr-npc";
reg = <0x1000 0x1000 0x1000000 0x8000>;
};
dcsr-nxc@2000 {
compatible = "fsl,dcsr-nxc";
reg = <0x2000 0x1000>;
};
dcsr-corenet {
compatible = "fsl,dcsr-corenet";
reg = <0x8000 0x1000 0xB0000 0x1000>;
};
dcsr-dpaa@9000 {
compatible = "fsl,p3060-dcsr-dpaa", "fsl,dcsr-dpaa";
reg = <0x9000 0x1000>;
};
dcsr-ocn@11000 {
compatible = "fsl,p3060-dcsr-ocn", "fsl,dcsr-ocn";
reg = <0x11000 0x1000>;
};
dcsr-ddr@12000 {
compatible = "fsl,dcsr-ddr";
dev-handle = <&ddr1>;
reg = <0x12000 0x1000>;
};
dcsr-nal@18000 {
compatible = "fsl,p3060-dcsr-nal", "fsl,dcsr-nal";
reg = <0x18000 0x1000>;
};
dcsr-rcpm@22000 {
compatible = "fsl,p3060-dcsr-rcpm", "fsl,dcsr-rcpm";
reg = <0x22000 0x1000>;
};
dcsr-cpu-sb-proxy@40000 {
compatible = "fsl,dcsr-e500mc-sb-proxy", "fsl,dcsr-cpu-sb-proxy";
cpu-handle = <&cpu0>;
reg = <0x40000 0x1000>;
};
dcsr-cpu-sb-proxy@41000 {
compatible = "fsl,dcsr-e500mc-sb-proxy", "fsl,dcsr-cpu-sb-proxy";
cpu-handle = <&cpu1>;
reg = <0x41000 0x1000>;
};
dcsr-cpu-sb-proxy@44000 {
compatible = "fsl,dcsr-e500mc-sb-proxy", "fsl,dcsr-cpu-sb-proxy";
cpu-handle = <&cpu4>;
reg = <0x44000 0x1000>;
};
dcsr-cpu-sb-proxy@45000 {
compatible = "fsl,dcsr-e500mc-sb-proxy", "fsl,dcsr-cpu-sb-proxy";
cpu-handle = <&cpu5>;
reg = <0x45000 0x1000>;
};
dcsr-cpu-sb-proxy@46000 {
compatible = "fsl,dcsr-e500mc-sb-proxy", "fsl,dcsr-cpu-sb-proxy";
cpu-handle = <&cpu6>;
reg = <0x46000 0x1000>;
};
dcsr-cpu-sb-proxy@47000 {
compatible = "fsl,dcsr-e500mc-sb-proxy", "fsl,dcsr-cpu-sb-proxy";
cpu-handle = <&cpu7>;
reg = <0x47000 0x1000>;
};
};
&soc {
#address-cells = <1>;
#size-cells = <1>;
device_type = "soc";
compatible = "simple-bus";
soc-sram-error {
compatible = "fsl,soc-sram-error";
interrupts = <16 2 1 29>;
};
corenet-law@0 {
compatible = "fsl,corenet-law";
reg = <0x0 0x1000>;
fsl,num-laws = <32>;
};
ddr1: memory-controller@8000 {
compatible = "fsl,qoriq-memory-controller-v4.4", "fsl,qoriq-memory-controller";
reg = <0x8000 0x1000>;
interrupts = <16 2 1 23>;
};
cpc: l3-cache-controller@10000 {
compatible = "fsl,p3060-l3-cache-controller", "cache";
reg = <0x10000 0x1000
0x11000 0x1000>;
interrupts = <16 2 1 27
16 2 1 26>;
};
corenet-cf@18000 {
compatible = "fsl,corenet-cf";
reg = <0x18000 0x1000>;
interrupts = <16 2 1 31>;
fsl,ccf-num-csdids = <32>;
fsl,ccf-num-snoopids = <32>;
};
iommu@20000 {
compatible = "fsl,pamu-v1.0", "fsl,pamu";
reg = <0x20000 0x5000>;
interrupts = <
24 2 0 0
16 2 1 30>;
};
/include/ "qoriq-rmu-0.dtsi"
/include/ "qoriq-mpic.dtsi"
guts: global-utilities@e0000 {
compatible = "fsl,qoriq-device-config-1.0";
reg = <0xe0000 0xe00>;
fsl,has-rstcr;
#sleep-cells = <1>;
fsl,liodn-bits = <12>;
};
pins: global-utilities@e0e00 {
compatible = "fsl,qoriq-pin-control-1.0";
reg = <0xe0e00 0x200>;
#sleep-cells = <2>;
};
clockgen: global-utilities@e1000 {
compatible = "fsl,p3060-clockgen", "fsl,qoriq-clockgen-1.0";
reg = <0xe1000 0x1000>;
clock-frequency = <0>;
};
rcpm: global-utilities@e2000 {
compatible = "fsl,qoriq-rcpm-1.0";
reg = <0xe2000 0x1000>;
#sleep-cells = <1>;
};
sfp: sfp@e8000 {
compatible = "fsl,p3060-sfp", "fsl,qoriq-sfp-1.0";
reg = <0xe8000 0x1000>;
};
serdes: serdes@ea000 {
compatible = "fsl,p3060-serdes";
reg = <0xea000 0x1000>;
};
/include/ "qoriq-dma-0.dtsi"
/include/ "qoriq-dma-1.dtsi"
/include/ "qoriq-espi-0.dtsi"
spi@110000 {
fsl,espi-num-chipselects = <4>;
};
/include/ "qoriq-i2c-0.dtsi"
/include/ "qoriq-i2c-1.dtsi"
/include/ "qoriq-duart-0.dtsi"
/include/ "qoriq-duart-1.dtsi"
/include/ "qoriq-gpio-0.dtsi"
/include/ "qoriq-usb2-mph-0.dtsi"
usb@210000 {
compatible = "fsl-usb2-mph-v2.2", "fsl,mpc85xx-usb2-mph", "fsl-usb2-mph";
};
/include/ "qoriq-usb2-dr-0.dtsi"
usb@211000 {
compatible = "fsl-usb2-dr-v2.2", "fsl,mpc85xx-usb2-dr", "fsl-usb2-dr";
};
/include/ "qoriq-sec4.1-0.dtsi"
};
arch/powerpc/boot/dts/mgcoge.dts
View file @
af3bf7fb
...
...
@@ -222,6 +222,29 @@ usb@11b60 {
interrupt
-
parent
=
<&
PIC
>;
usb
-
clock
=
<
5
>;
};
spi
@
11
aa0
{
cell
-
index
=
<
0
>;
compatible
=
"fsl,spi"
,
"fsl,cpm2-spi"
;
reg
=
<
0x11a80
0x40
0x89fc
0x2
>;
interrupts
=
<
2
8
>;
interrupt
-
parent
=
<&
PIC
>;
gpios
=
<
&
cpm2_pio_d
19
0
>;
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
0
>;
ds3106
@
1
{
compatible
=
"gen,spidev"
;
reg
=
<
0
>;
spi
-
max
-
frequency
=
<
8000000
>;
};
};
};
cpm2_pio_d
:
gpio
-
controller
@
10
d60
{
#
gpio
-
cells
=
<
2
>;
compatible
=
"fsl,cpm2-pario-bank"
;
reg
=
<
0x10d60
0x14
>;
gpio
-
controller
;
};
cpm2_pio_c
:
gpio
-
controller
@
10
d40
{
...
...
arch/powerpc/boot/dts/mpc8536ds.dtsi
View file @
af3bf7fb
...
...
@@ -203,6 +203,14 @@ phy1: ethernet-phy@1 {
reg = <1>;
device_type = "ethernet-phy";
};
sgmii_phy0: sgmii-phy@0 {
interrupts = <6 1 0 0>;
reg = <0x1d>;
};
sgmii_phy1: sgmii-phy@1 {
interrupts = <6 1 0 0>;
reg = <0x1c>;
};
tbi0: tbi-phy@11 {
reg = <0x11>;
device_type = "tbi-phy";
...
...
arch/powerpc/boot/dts/mpc8544ds.dtsi
View file @
af3bf7fb
...
...
@@ -51,6 +51,15 @@ phy1: ethernet-phy@1 {
device_type = "ethernet-phy";
};
sgmii_phy0: sgmii-phy@0 {
interrupts = <6 1 0 0>;
reg = <0x1c>;
};
sgmii_phy1: sgmii-phy@1 {
interrupts = <6 1 0 0>;
reg = <0x1d>;
};
tbi0: tbi-phy@11 {
reg = <0x11>;
device_type = "tbi-phy";
...
...
arch/powerpc/boot/dts/mpc8572ds.dtsi
View file @
af3bf7fb
...
...
@@ -169,6 +169,23 @@ phy3: ethernet-phy@3 {
reg = <0x3>;
};
sgmii_phy0: sgmii-phy@0 {
interrupts = <6 1 0 0>;
reg = <0x1c>;
};
sgmii_phy1: sgmii-phy@1 {
interrupts = <6 1 0 0>;
reg = <0x1d>;
};
sgmii_phy2: sgmii-phy@2 {
interrupts = <7 1 0 0>;
reg = <0x1e>;
};
sgmii_phy3: sgmii-phy@3 {
interrupts = <7 1 0 0>;
reg = <0x1f>;
};
tbi0: tbi-phy@11 {
reg = <0x11>;
device_type = "tbi-phy";
...
...
arch/powerpc/boot/dts/mpc8572ds_camp_core0.dts
View file @
af3bf7fb
...
...
@@ -67,10 +67,10 @@ pic@40000 {
msi
@
41600
{
msi
-
available
-
ranges
=
<
0
0x80
>;
interrupts
=
<
0xe0
0
0xe1
0
0xe2
0
0xe3
0
>;
0xe0
0
0
0
0xe1
0
0
0
0xe2
0
0
0
0xe3
0
0
0
>;
};
timer
@
42100
{
status
=
"disabled"
;
...
...
arch/powerpc/boot/dts/mpc8572ds_camp_core1.dts
View file @
af3bf7fb
...
...
@@ -67,9 +67,6 @@ dma@21300 {
ethernet@24000 {
status = "disabled";
};
mdio@24520 {
status = "disabled";
};
ptp_clock@24e00 {
status = "disabled";
};
...
...
@@ -100,10 +97,10 @@ timer@41100 {
msi@41600 {
msi-available-ranges = <0x80 0x80>;
interrupts = <
0xe4 0
0xe5 0
0xe6 0
0xe7 0>;
0xe4 0
0 0
0xe5 0
0 0
0xe6 0
0 0
0xe7 0
0 0
>;
};
global-utilities@e0000 {
status = "disabled";
...
...
arch/powerpc/boot/dts/p1010rdb.dtsi
View file @
af3bf7fb
...
...
@@ -126,12 +126,24 @@ cpld@3,0 {
&board_soc {
i2c@3000 {
eeprom@50 {
compatible = "st,24c256";
reg = <0x50>;
};
rtc@68 {
compatible = "pericom,pt7c4338";
reg = <0x68>;
};
};
i2c@3100 {
eeprom@52 {
compatible = "atmel,24c01";
reg = <0x52>;
};
};
spi@7000 {
flash@0 {
#address-cells = <1>;
...
...
arch/powerpc/boot/dts/p1021rdb.dtsi
→
arch/powerpc/boot/dts/p1021rdb
-pc
.dtsi
View file @
af3bf7fb
/*
* P1021 RDB Device Tree Source stub (no addresses or top-level ranges)
*
* Copyright 201
1
Freescale Semiconductor Inc.
* Copyright 201
2
Freescale Semiconductor Inc.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
...
...
arch/powerpc/boot/dts/p1021rdb.dts
→
arch/powerpc/boot/dts/p1021rdb
-pc_32b
.dts
View file @
af3bf7fb
/*
*
P1021
RDB
Device
Tree
Source
*
*
Copyright
201
1
Freescale
Semiconductor
Inc
.
*
Copyright
201
2
Freescale
Semiconductor
Inc
.
*
*
Redistribution
and
use
in
source
and
binary
forms
,
with
or
without
*
modification
,
are
permitted
provided
that
the
following
conditions
are
met
:
...
...
@@ -92,5 +92,5 @@ qe: qe@ffe80000 {
};
};
/
include
/
"p1021rdb.dtsi"
/
include
/
"p1021rdb
-pc
.dtsi"
/
include
/
"fsl/p1021si-post.dtsi"
arch/powerpc/boot/dts/p1021rdb_36b.dts
→
arch/powerpc/boot/dts/p1021rdb
-pc
_36b.dts
View file @
af3bf7fb
/*
*
P1021
RDB
Device
Tree
Source
(
36
-
bit
address
map
)
*
*
Copyright
201
1
Freescale
Semiconductor
Inc
.
*
Copyright
201
2
Freescale
Semiconductor
Inc
.
*
*
Redistribution
and
use
in
source
and
binary
forms
,
with
or
without
*
modification
,
are
permitted
provided
that
the
following
conditions
are
met
:
...
...
@@ -92,5 +92,5 @@ qe: qe@fffe80000 {
};
};
/
include
/
"p1021rdb.dtsi"
/
include
/
"p1021rdb
-pc
.dtsi"
/
include
/
"fsl/p1021si-post.dtsi"
arch/powerpc/boot/dts/p1022ds.dtsi
View file @
af3bf7fb
...
...
@@ -33,22 +33,6 @@
*/
&board_lbc {
/*
* This node is used to access the pixis via "indirect" mode,
* which is done by writing the pixis register index to chip
* select 0 and the value to/from chip select 1. Indirect
* mode is the only way to access the pixis when DIU video
* is enabled. Note that this assumes that the first column
* of the 'ranges' property above is the chip select number.
*/
board-control@0,0 {
compatible = "fsl,p1022ds-indirect-pixis";
reg = <0x0 0x0 1 /* CS0 */
0x1 0x0 1>; /* CS1 */
interrupt-parent = <&mpic>;
interrupts = <8 0 0 0>;
};
nor@0,0 {
#address-cells = <1>;
#size-cells = <1>;
...
...
@@ -161,6 +145,10 @@ wm8776:codec@1a {
* the clock is enabled.
*/
};
rtc@68 {
compatible = "dallas,ds1339";
reg = <0x68>;
};
};
spi@7000 {
...
...
arch/powerpc/boot/dts/p
3060qds.dts
→
arch/powerpc/boot/dts/p
1024rdb.dtsi
View file @
af3bf7fb
/*
*
P
3060QDS
Device
Tree
Source
* P
1024 RDB Device Tree Source stub (no addresses or top-level ranges)
*
*
Copyright
201
1
Freescale
Semiconductor
Inc
.
* Copyright 201
2
Freescale Semiconductor Inc.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
...
...
@@ -32,211 +32,197 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
/
include
/
"fsl/p3060si-pre.dtsi"
/
{
model
=
"fsl,P3060QDS"
;
compatible
=
"fsl,P3060QDS
"
;
#
address
-
cells
=
<
2
>;
#
size
-
cells
=
<
2
>;
interrupt
-
parent
=
<&
mpic
>;
memory
{
device_type
=
"memory"
;
};
dcsr
:
dcsr
@
f00000000
{
ranges
=
<
0x00000000
0xf
0x00000000
0x01008000
>
;
};
&lbc {
nor@0,0 {
#address-cells = <1>;
#size-cells = <1>
;
compatible = "cfi-flash
";
reg = <0x0 0x0 0x1000000
>;
bank-width
= <2>;
device-width = <1
>;
partition@0
{
/* This location must not be altered */
/* 256KB for Vitesse 7385 Switch firmware */
reg = <0x0 0x00040000>;
label = "NOR Vitesse-7385 Firmware";
read-only
;
};
soc
:
soc
@
ffe000000
{
ranges
=
<
0x00000000
0xf
0xfe000000
0x1000000
>;
reg
=
<
0xf
0xfe000000
0
0x00001000
>;
spi
@
110000
{
flash
@
0
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
compatible
=
"spansion,s25sl12801"
;
reg
=
<
0
>;
spi
-
max
-
frequency
=
<
40000000
>;
/*
input
clock
*/
partition
@
u
-
boot
{
label
=
"u-boot"
;
reg
=
<
0x00000000
0x00100000
>;
read
-
only
;
};
partition
@
kernel
{
label
=
"kernel"
;
reg
=
<
0x00100000
0x00500000
>;
read
-
only
;
};
partition
@
dtb
{
label
=
"dtb"
;
reg
=
<
0x00600000
0x00100000
>;
read
-
only
;
};
partition
@
fs
{
label
=
"file system"
;
reg
=
<
0x00700000
0x00900000
>;
};
};
flash
@
1
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
compatible
=
"spansion,en25q32b"
;
reg
=
<
1
>;
spi
-
max
-
frequency
=
<
40000000
>;
/*
input
clock
*/
partition
@
spi1
{
label
=
"spi1"
;
reg
=
<
0x00000000
0x00400000
>;
};
};
flash
@
2
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
compatible
=
"atmel,at45db081d"
;
reg
=
<
2
>;
spi
-
max
-
frequency
=
<
40000000
>;
/*
input
clock
*/
partition
@
spi1
{
label
=
"spi2"
;
reg
=
<
0x00000000
0x00100000
>;
};
};
flash
@
3
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
compatible
=
"spansion,sst25wf040"
;
reg
=
<
3
>;
spi
-
max
-
frequency
=
<
40000000
>;
/*
input
clock
*/
partition
@
spi3
{
label
=
"spi3"
;
reg
=
<
0x00000000
0x00080000
>;
};
};
partition@40000 {
/* 256KB for DTB Image */
reg = <0x00040000 0x00040000>;
label = "NOR DTB Image";
};
i2c
@
118000
{
eeprom
@
51
{
compatible
=
"at24,24c256"
;
reg
=
<
0x51
>;
};
eeprom
@
53
{
compatible
=
"at24,24c256"
;
reg
=
<
0x53
>;
};
rtc
@
68
{
compatible
=
"dallas,ds3232"
;
reg
=
<
0x68
>;
interrupts
=
<
0x1
0x1
0
0
>;
};
partition@80000 {
/* 3.5 MB for Linux Kernel Image */
reg = <0x00080000 0x00380000>;
label = "NOR Linux Kernel Image";
};
usb0
:
usb
@
210000
{
phy_type
=
"ulpi"
;
partition@400000 {
/* 11MB for JFFS2 based Root file System */
reg = <0x00400000 0x00b00000>;
label = "NOR JFFS2 Root File System";
};
usb1
:
usb
@
211000
{
dr_mode
=
"host"
;
phy_type
=
"ulpi"
;
partition@f00000 {
/* This location must not be altered */
/* 512KB for u-boot Bootloader Image */
/* 512KB for u-boot Environment Variables */
reg = <0x00f00000 0x00100000>;
label = "NOR U-Boot Image";
read-only;
};
};
rio
:
rapidio
@
ffe0c0000
{
reg
=
<
0xf
0xfe0c0000
0
0x11000
>;
nand@1,0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "fsl,p1020-fcm-nand",
"fsl,elbc-fcm-nand";
reg = <0x1 0x0 0x40000>;
partition@0 {
/* This location must not be altered */
/* 1MB for u-boot Bootloader Image */
reg = <0x0 0x00100000>;
label = "NAND U-Boot Image";
read-only;
};
port1
{
ranges
=
<
0
0
0xc
0x20000000
0
0x10000000
>;
partition@100000 {
/* 1MB for DTB Image */
reg = <0x00100000 0x00100000>;
label = "NAND DTB Image";
};
port2
{
ranges
=
<
0
0
0xc
0x30000000
0
0x10000000
>;
partition@200000 {
/* 4MB for Linux Kernel Image */
reg = <0x00200000 0x00400000>;
label = "NAND Linux Kernel Image";
};
partition@600000 {
/* 4MB for Compressed Root file System Image */
reg = <0x00600000 0x00400000>;
label = "NAND Compressed RFS Image";
};
};
lbc
:
localbus
@
ffe124
000
{
reg
=
<
0xf
0xfe124000
0
0x1000
>;
ranges
=
<
0
0
0xf
0xe8000000
0x08000000
2
0
0xf
0xffa00000
0x00040000
3
0
0xf
0xffdf0000
0x00008000
>
;
partition@a00
000 {
/* 15MB for JFFS2 based Root file System */
reg = <0x00a00000 0x00f00000>;
label = "NAND JFFS2 Root File System";
}
;
flash
@
0
,
0
{
compatible
=
"cfi-flash"
;
reg
=
<
0
0
0x08000000
>;
bank
-
width
=
<
2
>;
device
-
width
=
<
2
>;
partition@1900000 {
/* 7MB for User Writable Area */
reg = <0x01900000 0x00700000>;
label = "NAND Writable User area";
};
};
};
nand
@
2
,
0
{
&soc {
spi@7000 {
flash@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible
=
"fsl,elbc-fcm-nand"
;
reg
=
<
0x2
0x0
0x40000
>;
compatible = "spansion,m25p80";
reg = <0>;
spi-max-frequency = <40000000>;
partition@0 {
label
=
"NAND U-Boot Image"
;
reg
=
<
0x0
0x02000000
>;
/* 512KB for u-boot Bootloader Image */
reg = <0x0 0x00080000>;
label = "SPI U-Boot Image";
read-only;
};
partition
@
2000000
{
label
=
"NAND Root File System"
;
reg
=
<
0x02000000
0x10000000
>;
partition@80000 {
/* 512KB for DTB Image */
reg = <0x00080000 0x00080000>;
label = "SPI DTB Image";
};
partition
@
12000000
{
label
=
"NAND Compressed RFS Image"
;
reg
=
<
0x12000000
0x08000000
>;
partition@100000 {
/* 4MB for Linux Kernel Image */
reg = <0x00100000 0x00400000>;
label = "SPI Linux Kernel Image";
};
partition
@
1
a000000
{
label
=
"NAND Linux Kernel Image"
;
reg
=
<
0x1a000000
0x04000000
>;
partition@500000 {
/* 4MB for Compressed RFS Image */
reg = <0x00500000 0x00400000>;
label = "SPI Compressed RFS Image";
};
partition
@
1e000000
{
label
=
"NAND DTB Image"
;
reg
=
<
0x1e000000
0x01000000
>;
};
partition
@
1f000000
{
label
=
"NAND Writable User area"
;
reg
=
<
0x1f000000
0x21000000
>;
partition@900000 {
/* 7MB for JFFS2 based RFS */
reg = <0x00900000 0x00700000>;
label = "SPI JFFS2 RFS";
};
};
};
board
-
control
@
3
,
0
{
compatible
=
"fsl,p3060qds-fpga"
,
"fsl,fpga-qixis"
;
reg
=
<
3
0
0x100
>;
i2c@3000 {
rtc@68 {
compatible = "dallas,ds1339";
reg = <0x68>;
};
};
pci0
:
pcie
@
ffe200000
{
reg
=
<
0xf
0xfe200000
0
0x1000
>;
ranges
=
<
0x02000000
0
0xe0000000
0xc
0x00000000
0x0
0x20000000
0x01000000
0
0x00000000
0xf
0xf8000000
0x0
0x00010000
>;
pcie
@
0
{
ranges
=
<
0x02000000
0
0xe0000000
0x02000000
0
0xe0000000
0
0x20000000
usb@22000 {
phy_type = "ulpi";
};
usb@23000 {
status = "disabled";
};
0x01000000
0
0x00000000
0x01000000
0
0x00000000
0
0x00010000
>;
mdio@24000 {
phy0: ethernet-phy@0 {
interrupts = <3 1 0 0>;
reg = <0x0>;
};
phy1: ethernet-phy@1 {
interrupts = <2 1 0 0>;
reg = <0x1>;
};
phy2: ethernet-phy@2 {
interrupts = <1 1 0 0>;
reg = <0x2>;
};
};
pci1
:
pcie
@
ffe201000
{
reg
=
<
0xf
0xfe201000
0
0x1000
>;
ranges
=
<
0x02000000
0x0
0xe0000000
0xc
0x20000000
0x0
0x20000000
0x01000000
0x0
0x00000000
0xf
0xf8010000
0x0
0x00010000
>;
pcie
@
0
{
ranges
=
<
0x02000000
0
0xe0000000
0x02000000
0
0xe0000000
0
0x20000000
mdio@25000 {
tbi0: tbi-phy@11 {
reg = <0x11>;
device_type = "tbi-phy";
};
};
0x01000000
0
0x00000000
0x01000000
0
0x00000000
0
0x00010000
>;
mdio@26000 {
tbi1: tbi-phy@11 {
reg = <0x11>;
device_type = "tbi-phy";
};
};
};
/
include
/
"fsl/p3060si-post.dtsi"
ethernet@b0000 {
phy-handle = <&phy2>;
phy-connection-type = "rgmii-id";
};
ethernet@b1000 {
phy-handle = <&phy0>;
tbi-handle = <&tbi0>;
phy-connection-type = "sgmii";
};
ethernet@b2000 {
phy-handle = <&phy1>;
phy-connection-type = "rgmii-id";
};
};
arch/powerpc/boot/dts/p1024rdb_32b.dts
0 → 100644
View file @
af3bf7fb
/*
*
P1024
RDB
32
Bit
Physical
Address
Map
Device
Tree
Source
*
*
Copyright
2012
Freescale
Semiconductor
Inc
.
*
*
Redistribution
and
use
in
source
and
binary
forms
,
with
or
without
*
modification
,
are
permitted
provided
that
the
following
conditions
are
met
:
*
*
Redistributions
of
source
code
must
retain
the
above
copyright
*
notice
,
this
list
of
conditions
and
the
following
disclaimer
.
*
*
Redistributions
in
binary
form
must
reproduce
the
above
copyright
*
notice
,
this
list
of
conditions
and
the
following
disclaimer
in
the
*
documentation
and
/
or
other
materials
provided
with
the
distribution
.
*
*
Neither
the
name
of
Freescale
Semiconductor
nor
the
*
names
of
its
contributors
may
be
used
to
endorse
or
promote
products
*
derived
from
this
software
without
specific
prior
written
permission
.
*
*
*
ALTERNATIVELY
,
this
software
may
be
distributed
under
the
terms
of
the
*
GNU
General
Public
License
(
"GPL"
)
as
published
by
the
Free
Software
*
Foundation
,
either
version
2
of
that
License
or
(
at
your
option
)
any
*
later
version
.
*
*
THIS
SOFTWARE
IS
PROVIDED
BY
Freescale
Semiconductor
``
AS
IS
''
AND
ANY
*
EXPRESS
OR
IMPLIED
WARRANTIES
,
INCLUDING
,
BUT
NOT
LIMITED
TO
,
THE
IMPLIED
*
WARRANTIES
OF
MERCHANTABILITY
AND
FITNESS
FOR
A
PARTICULAR
PURPOSE
ARE
*
DISCLAIMED
.
IN
NO
EVENT
SHALL
Freescale
Semiconductor
BE
LIABLE
FOR
ANY
*
DIRECT
,
INDIRECT
,
INCIDENTAL
,
SPECIAL
,
EXEMPLARY
,
OR
CONSEQUENTIAL
DAMAGES
*
(
INCLUDING
,
BUT
NOT
LIMITED
TO
,
PROCUREMENT
OF
SUBSTITUTE
GOODS
OR
SERVICES
;
*
LOSS
OF
USE
,
DATA
,
OR
PROFITS
;
OR
BUSINESS
INTERRUPTION
)
HOWEVER
CAUSED
AND
*
ON
ANY
THEORY
OF
LIABILITY
,
WHETHER
IN
CONTRACT
,
STRICT
LIABILITY
,
OR
TORT
*
(
INCLUDING
NEGLIGENCE
OR
OTHERWISE
)
ARISING
IN
ANY
WAY
OUT
OF
THE
USE
OF
THIS
*
SOFTWARE
,
EVEN
IF
ADVISED
OF
THE
POSSIBILITY
OF
SUCH
DAMAGE
.
*/
/
include
/
"fsl/p1020si-pre.dtsi"
/
{
model
=
"fsl,P1024RDB"
;
compatible
=
"fsl,P1024RDB"
;
memory
{
device_type
=
"memory"
;
};
lbc
:
localbus
@
ffe05000
{
reg
=
<
0x0
0xffe05000
0
0x1000
>;
ranges
=
<
0x0
0x0
0x0
0xef000000
0x01000000
0x1
0x0
0x0
0xff800000
0x00040000
>;
};
soc
:
soc
@
ffe00000
{
ranges
=
<
0x0
0x0
0xffe00000
0x100000
>;
};
pci0
:
pcie
@
ffe09000
{
reg
=
<
0x0
0xffe09000
0
0x1000
>;
ranges
=
<
0x2000000
0x0
0xe0000000
0x0
0xa0000000
0x0
0x20000000
0x1000000
0x0
0x00000000
0x0
0xffc10000
0x0
0x10000
>;
pcie
@
0
{
ranges
=
<
0x2000000
0x0
0xe0000000
0x2000000
0x0
0xe0000000
0x0
0x20000000
0x1000000
0x0
0x0
0x1000000
0x0
0x0
0x0
0x100000
>;
};
};
pci1
:
pcie
@
ffe0a000
{
reg
=
<
0x0
0xffe0a000
0
0x1000
>;
ranges
=
<
0x2000000
0x0
0xe0000000
0x0
0x80000000
0x0
0x20000000
0x1000000
0x0
0x00000000
0x0
0xffc00000
0x0
0x10000
>;
pcie
@
0
{
reg
=
<
0x0
0x0
0x0
0x0
0x0
>;
ranges
=
<
0x2000000
0x0
0xe0000000
0x2000000
0x0
0xe0000000
0x0
0x20000000
0x1000000
0x0
0x0
0x1000000
0x0
0x0
0x0
0x100000
>;
};
};
};
/
include
/
"p1024rdb.dtsi"
/
include
/
"fsl/p1020si-post.dtsi"
arch/powerpc/boot/dts/p1024rdb_36b.dts
0 → 100644
View file @
af3bf7fb
/*
*
P1024
RDB
36
Bit
Physical
Address
Map
Device
Tree
Source
*
*
Copyright
2012
Freescale
Semiconductor
Inc
.
*
*
Redistribution
and
use
in
source
and
binary
forms
,
with
or
without
*
modification
,
are
permitted
provided
that
the
following
conditions
are
met
:
*
*
Redistributions
of
source
code
must
retain
the
above
copyright
*
notice
,
this
list
of
conditions
and
the
following
disclaimer
.
*
*
Redistributions
in
binary
form
must
reproduce
the
above
copyright
*
notice
,
this
list
of
conditions
and
the
following
disclaimer
in
the
*
documentation
and
/
or
other
materials
provided
with
the
distribution
.
*
*
Neither
the
name
of
Freescale
Semiconductor
nor
the
*
names
of
its
contributors
may
be
used
to
endorse
or
promote
products
*
derived
from
this
software
without
specific
prior
written
permission
.
*
*
*
ALTERNATIVELY
,
this
software
may
be
distributed
under
the
terms
of
the
*
GNU
General
Public
License
(
"GPL"
)
as
published
by
the
Free
Software
*
Foundation
,
either
version
2
of
that
License
or
(
at
your
option
)
any
*
later
version
.
*
*
THIS
SOFTWARE
IS
PROVIDED
BY
Freescale
Semiconductor
``
AS
IS
''
AND
ANY
*
EXPRESS
OR
IMPLIED
WARRANTIES
,
INCLUDING
,
BUT
NOT
LIMITED
TO
,
THE
IMPLIED
*
WARRANTIES
OF
MERCHANTABILITY
AND
FITNESS
FOR
A
PARTICULAR
PURPOSE
ARE
*
DISCLAIMED
.
IN
NO
EVENT
SHALL
Freescale
Semiconductor
BE
LIABLE
FOR
ANY
*
DIRECT
,
INDIRECT
,
INCIDENTAL
,
SPECIAL
,
EXEMPLARY
,
OR
CONSEQUENTIAL
DAMAGES
*
(
INCLUDING
,
BUT
NOT
LIMITED
TO
,
PROCUREMENT
OF
SUBSTITUTE
GOODS
OR
SERVICES
;
*
LOSS
OF
USE
,
DATA
,
OR
PROFITS
;
OR
BUSINESS
INTERRUPTION
)
HOWEVER
CAUSED
AND
*
ON
ANY
THEORY
OF
LIABILITY
,
WHETHER
IN
CONTRACT
,
STRICT
LIABILITY
,
OR
TORT
*
(
INCLUDING
NEGLIGENCE
OR
OTHERWISE
)
ARISING
IN
ANY
WAY
OUT
OF
THE
USE
OF
THIS
*
SOFTWARE
,
EVEN
IF
ADVISED
OF
THE
POSSIBILITY
OF
SUCH
DAMAGE
.
*/
/
include
/
"fsl/p1020si-pre.dtsi"
/
{
model
=
"fsl,P1024RDB"
;
compatible
=
"fsl,P1024RDB"
;
memory
{
device_type
=
"memory"
;
};
lbc
:
localbus
@
fffe05000
{
reg
=
<
0xf
0xffe05000
0
0x1000
>;
ranges
=
<
0x0
0x0
0xf
0xef000000
0x01000000
0x1
0x0
0xf
0xff800000
0x00040000
>;
};
soc
:
soc
@
fffe00000
{
ranges
=
<
0x0
0xf
0xffe00000
0x100000
>;
};
pci0
:
pcie
@
fffe09000
{
reg
=
<
0xf
0xffe09000
0
0x1000
>;
ranges
=
<
0x2000000
0x0
0xe0000000
0xc
0x20000000
0x0
0x20000000
0x1000000
0x0
0x00000000
0xf
0xffc10000
0x0
0x10000
>;
pcie
@
0
{
ranges
=
<
0x2000000
0x0
0xe0000000
0x2000000
0x0
0xe0000000
0x0
0x20000000
0x1000000
0x0
0x0
0x1000000
0x0
0x0
0x0
0x100000
>;
};
};
pci1
:
pcie
@
fffe0a000
{
reg
=
<
0xf
0xffe0a000
0
0x1000
>;
ranges
=
<
0x2000000
0x0
0xe0000000
0xc
0x00000000
0x0
0x20000000
0x1000000
0x0
0x00000000
0xf
0xffc00000
0x0
0x10000
>;
pcie
@
0
{
reg
=
<
0x0
0x0
0x0
0x0
0x0
>;
ranges
=
<
0x2000000
0x0
0xe0000000
0x2000000
0x0
0xe0000000
0x0
0x20000000
0x1000000
0x0
0x0
0x1000000
0x0
0x0
0x0
0x100000
>;
};
};
};
/
include
/
"p1024rdb.dtsi"
/
include
/
"fsl/p1020si-post.dtsi"
arch/powerpc/boot/dts/p1025rdb.dtsi
View file @
af3bf7fb
...
...
@@ -282,5 +282,45 @@ pio2: ucc_pin@02 {
0x1 0x4 0x2 0x0 0x2 0x0 /* ENET5_RX_DV_SER5_CTS_B */
0x1 0x8 0x2 0x0 0x2 0x0>; /* ENET5_RX_ER_SER5_CD_B */
};
pio3: ucc_pin@03 {
pio-map = <
/* port pin dir open_drain assignment has_irq */
0x0 0x16 0x2 0x0 0x2 0x0 /* SER7_CD_B*/
0x0 0x12 0x2 0x0 0x2 0x0 /* SER7_CTS_B*/
0x0 0x13 0x1 0x0 0x2 0x0 /* SER7_RTS_B*/
0x0 0x14 0x2 0x0 0x2 0x0 /* SER7_RXD0*/
0x0 0x15 0x1 0x0 0x2 0x0>; /* SER7_TXD0*/
};
pio4: ucc_pin@04 {
pio-map = <
/* port pin dir open_drain assignment has_irq */
0x1 0x0 0x2 0x0 0x2 0x0 /* SER3_CD_B*/
0x0 0x1c 0x2 0x0 0x2 0x0 /* SER3_CTS_B*/
0x0 0x1d 0x1 0x0 0x2 0x0 /* SER3_RTS_B*/
0x0 0x1e 0x2 0x0 0x2 0x0 /* SER3_RXD0*/
0x0 0x1f 0x1 0x0 0x2 0x0>; /* SER3_TXD0*/
};
};
};
&qe {
serial2: ucc@2600 {
device_type = "serial";
compatible = "ucc_uart";
port-number = <0>;
rx-clock-name = "brg6";
tx-clock-name = "brg6";
pio-handle = <&pio3>;
};
serial3: ucc@2200 {
device_type = "serial";
compatible = "ucc_uart";
port-number = <1>;
rx-clock-name = "brg2";
tx-clock-name = "brg2";
pio-handle = <&pio4>;
};
};
arch/powerpc/boot/dts/p2020ds.dtsi
View file @
af3bf7fb
...
...
@@ -150,6 +150,16 @@ phy2: ethernet-phy@2 {
interrupts = <3 1 0 0>;
reg = <0x2>;
};
sgmii_phy1: sgmii-phy@1 {
interrupts = <5 1 0 0>;
reg = <0x1c>;
};
sgmii_phy2: sgmii-phy@2 {
interrupts = <5 1 0 0>;
reg = <0x1d>;
};
tbi0: tbi-phy@11 {
reg = <0x11>;
device_type = "tbi-phy";
...
...
arch/powerpc/boot/dts/p2020rdb.dts
View file @
af3bf7fb
...
...
@@ -34,7 +34,7 @@ lbc: localbus@ffe05000 {
/*
NOR
and
NAND
Flashes
*/
ranges
=
<
0x0
0x0
0x0
0xef000000
0x01000000
0x1
0x0
0x0
0xff
8
00000
0x00040000
0x1
0x0
0x0
0xff
a
00000
0x00040000
0x2
0x0
0x0
0xffb00000
0x00020000
>;
nor
@
0
,
0
{
...
...
arch/powerpc/boot/dts/p2041rdb.dts
View file @
af3bf7fb
...
...
@@ -121,7 +121,8 @@ port2 {
lbc
:
localbus
@
ffe124000
{
reg
=
<
0xf
0xfe124000
0
0x1000
>;
ranges
=
<
0
0
0xf
0xe8000000
0x08000000
>;
ranges
=
<
0
0
0xf
0xe8000000
0x08000000
1
0
0xf
0xffa00000
0x00040000
>;
flash
@
0
,
0
{
compatible
=
"cfi-flash"
;
...
...
@@ -129,6 +130,44 @@ flash@0,0 {
bank
-
width
=
<
2
>;
device
-
width
=
<
2
>;
};
nand
@
1
,
0
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
compatible
=
"fsl,elbc-fcm-nand"
;
reg
=
<
0x1
0x0
0x40000
>;
partition
@
0
{
label
=
"NAND U-Boot Image"
;
reg
=
<
0x0
0x02000000
>;
read
-
only
;
};
partition
@
2000000
{
label
=
"NAND Root File System"
;
reg
=
<
0x02000000
0x10000000
>;
};
partition
@
12000000
{
label
=
"NAND Compressed RFS Image"
;
reg
=
<
0x12000000
0x08000000
>;
};
partition
@
1
a000000
{
label
=
"NAND Linux Kernel Image"
;
reg
=
<
0x1a000000
0x04000000
>;
};
partition
@
1e000000
{
label
=
"NAND DTB Image"
;
reg
=
<
0x1e000000
0x01000000
>;
};
partition
@
1f000000
{
label
=
"NAND Writable User area"
;
reg
=
<
0x1f000000
0x01000000
>;
};
};
};
pci0
:
pcie
@
ffe200000
{
...
...
arch/powerpc/boot/dts/sbc8560.dts
deleted
100644 → 0
View file @
10db8d21
/*
*
SBC8560
Device
Tree
Source
*
*
Copyright
2007
Wind
River
Systems
Inc
.
*
*
Paul
Gortmaker
(
see
MAINTAINERS
for
contact
information
)
*
*
This
program
is
free
software
;
you
can
redistribute
it
and
/
or
modify
it
*
under
the
terms
of
the
GNU
General
Public
License
as
published
by
the
*
Free
Software
Foundation
;
either
version
2
of
the
License
,
or
(
at
your
*
option
)
any
later
version
.
*/
/
dts
-
v1
/;
/
{
model
=
"SBC8560"
;
compatible
=
"SBC8560"
;
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
aliases
{
ethernet0
=
&
enet0
;
ethernet1
=
&
enet1
;
ethernet2
=
&
enet2
;
ethernet3
=
&
enet3
;
serial0
=
&
serial0
;
serial1
=
&
serial1
;
pci0
=
&
pci0
;
};
cpus
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
0
>;
PowerPC
,
8560
@
0
{
device_type
=
"cpu"
;
reg
=
<
0
>;
d
-
cache
-
line
-
size
=
<
0x20
>;
//
32
bytes
i
-
cache
-
line
-
size
=
<
0x20
>;
//
32
bytes
d
-
cache
-
size
=
<
0x8000
>;
//
L1
,
32
K
i
-
cache
-
size
=
<
0x8000
>;
//
L1
,
32
K
timebase
-
frequency
=
<
0
>;
//
From
uboot
bus
-
frequency
=
<
0
>;
clock
-
frequency
=
<
0
>;
next
-
level
-
cache
=
<&
L2
>;
};
};
memory
{
device_type
=
"memory"
;
reg
=
<
0x00000000
0x20000000
>;
};
soc
@
ff700000
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
device_type
=
"soc"
;
ranges
=
<
0x0
0xff700000
0x00100000
>;
clock
-
frequency
=
<
0
>;
ecm
-
law
@
0
{
compatible
=
"fsl,ecm-law"
;
reg
=
<
0x0
0x1000
>;
fsl
,
num
-
laws
=
<
8
>;
};
ecm
@
1000
{
compatible
=
"fsl,mpc8560-ecm"
,
"fsl,ecm"
;
reg
=
<
0x1000
0x1000
>;
interrupts
=
<
17
2
>;
interrupt
-
parent
=
<&
mpic
>;
};
memory
-
controller
@
2000
{
compatible
=
"fsl,mpc8560-memory-controller"
;
reg
=
<
0x2000
0x1000
>;
interrupt
-
parent
=
<&
mpic
>;
interrupts
=
<
0x12
0x2
>;
};
L2
:
l2
-
cache
-
controller
@
20000
{
compatible
=
"fsl,mpc8560-l2-cache-controller"
;
reg
=
<
0x20000
0x1000
>;
cache
-
line
-
size
=
<
0x20
>;
//
32
bytes
cache
-
size
=
<
0x40000
>;
//
L2
,
256
K
interrupt
-
parent
=
<&
mpic
>;
interrupts
=
<
0x10
0x2
>;
};
i2c
@
3000
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
0
>;
cell
-
index
=
<
0
>;
compatible
=
"fsl-i2c"
;
reg
=
<
0x3000
0x100
>;
interrupts
=
<
0x2b
0x2
>;
interrupt
-
parent
=
<&
mpic
>;
dfsrr
;
};
i2c
@
3100
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
0
>;
cell
-
index
=
<
1
>;
compatible
=
"fsl-i2c"
;
reg
=
<
0x3100
0x100
>;
interrupts
=
<
0x2b
0x2
>;
interrupt
-
parent
=
<&
mpic
>;
dfsrr
;
};
dma
@
21300
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
compatible
=
"fsl,mpc8560-dma"
,
"fsl,eloplus-dma"
;
reg
=
<
0x21300
0x4
>;
ranges
=
<
0x0
0x21100
0x200
>;
cell
-
index
=
<
0
>;
dma
-
channel
@
0
{
compatible
=
"fsl,mpc8560-dma-channel"
,
"fsl,eloplus-dma-channel"
;
reg
=
<
0x0
0x80
>;
cell
-
index
=
<
0
>;
interrupt
-
parent
=
<&
mpic
>;
interrupts
=
<
20
2
>;
};
dma
-
channel
@
80
{
compatible
=
"fsl,mpc8560-dma-channel"
,
"fsl,eloplus-dma-channel"
;
reg
=
<
0x80
0x80
>;
cell
-
index
=
<
1
>;
interrupt
-
parent
=
<&
mpic
>;
interrupts
=
<
21
2
>;
};
dma
-
channel
@
100
{
compatible
=
"fsl,mpc8560-dma-channel"
,
"fsl,eloplus-dma-channel"
;
reg
=
<
0x100
0x80
>;
cell
-
index
=
<
2
>;
interrupt
-
parent
=
<&
mpic
>;
interrupts
=
<
22
2
>;
};
dma
-
channel
@
180
{
compatible
=
"fsl,mpc8560-dma-channel"
,
"fsl,eloplus-dma-channel"
;
reg
=
<
0x180
0x80
>;
cell
-
index
=
<
3
>;
interrupt
-
parent
=
<&
mpic
>;
interrupts
=
<
23
2
>;
};
};
enet0
:
ethernet
@
24000
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
cell
-
index
=
<
0
>;
device_type
=
"network"
;
model
=
"TSEC"
;
compatible
=
"gianfar"
;
reg
=
<
0x24000
0x1000
>;
ranges
=
<
0x0
0x24000
0x1000
>;
local
-
mac
-
address
=
[
00
00
00
00
00
00
];
interrupts
=
<
0x1d
0x2
0x1e
0x2
0x22
0x2
>;
interrupt
-
parent
=
<&
mpic
>;
tbi
-
handle
=
<&
tbi0
>;
phy
-
handle
=
<&
phy0
>;
mdio
@
520
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
0
>;
compatible
=
"fsl,gianfar-mdio"
;
reg
=
<
0x520
0x20
>;
phy0
:
ethernet
-
phy
@
19
{
interrupt
-
parent
=
<&
mpic
>;
interrupts
=
<
0x6
0x1
>;
reg
=
<
0x19
>;
device_type
=
"ethernet-phy"
;
};
phy1
:
ethernet
-
phy
@
1
a
{
interrupt
-
parent
=
<&
mpic
>;
interrupts
=
<
0x7
0x1
>;
reg
=
<
0x1a
>;
device_type
=
"ethernet-phy"
;
};
phy2
:
ethernet
-
phy
@
1
b
{
interrupt
-
parent
=
<&
mpic
>;
interrupts
=
<
0x8
0x1
>;
reg
=
<
0x1b
>;
device_type
=
"ethernet-phy"
;
};
phy3
:
ethernet
-
phy
@
1
c
{
interrupt
-
parent
=
<&
mpic
>;
interrupts
=
<
0x8
0x1
>;
reg
=
<
0x1c
>;
device_type
=
"ethernet-phy"
;
};
tbi0
:
tbi
-
phy
@
11
{
reg
=
<
0x11
>;
device_type
=
"tbi-phy"
;
};
};
};
enet1
:
ethernet
@
25000
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
cell
-
index
=
<
1
>;
device_type
=
"network"
;
model
=
"TSEC"
;
compatible
=
"gianfar"
;
reg
=
<
0x25000
0x1000
>;
ranges
=
<
0x0
0x25000
0x1000
>;
local
-
mac
-
address
=
[
00
00
00
00
00
00
];
interrupts
=
<
0x23
0x2
0x24
0x2
0x28
0x2
>;
interrupt
-
parent
=
<&
mpic
>;
tbi
-
handle
=
<&
tbi1
>;
phy
-
handle
=
<&
phy1
>;
mdio
@
520
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
0
>;
compatible
=
"fsl,gianfar-tbi"
;
reg
=
<
0x520
0x20
>;
tbi1
:
tbi
-
phy
@
11
{
reg
=
<
0x11
>;
device_type
=
"tbi-phy"
;
};
};
};
mpic
:
pic
@
40000
{
interrupt
-
controller
;
#
address
-
cells
=
<
0
>;
#
interrupt
-
cells
=
<
2
>;
compatible
=
"chrp,open-pic"
;
reg
=
<
0x40000
0x40000
>;
device_type
=
"open-pic"
;
};
cpm
@
919
c0
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
compatible
=
"fsl,mpc8560-cpm"
,
"fsl,cpm2"
;
reg
=
<
0x919c0
0x30
>;
ranges
;
muram
@
80000
{
#
address
-
cells
=
<
1
>;
#
size
-
cells
=
<
1
>;
ranges
=
<
0x0
0x80000
0x10000
>;
data
@
0
{
compatible
=
"fsl,cpm-muram-data"
;
reg
=
<
0x0
0x4000
0x9000
0x2000
>;
};
};
brg
@
919f0
{
compatible
=
"fsl,mpc8560-brg"
,
"fsl,cpm2-brg"
,
"fsl,cpm-brg"
;
reg
=
<
0x919f0
0x10
0x915f0
0x10
>;
clock
-
frequency
=
<
165000000
>;
};
cpmpic
:
pic
@
90
c00
{
interrupt
-
controller
;
#
address
-
cells
=
<
0
>;
#
interrupt
-
cells
=
<
2
>;
interrupts
=
<
0x2e
0x2
>;
interrupt
-
parent
=
<&
mpic
>;
reg
=
<
0x90c00
0x80
>;
compatible
=
"fsl,mpc8560-cpm-pic"
,
"fsl,cpm2-pic"
;
};
enet2
:
ethernet
@
91320
{
device_type
=
"network"
;
compatible
=
"fsl,mpc8560-fcc-enet"
,
"fsl,cpm2-fcc-enet"
;
reg
=
<
0x91320
0x20
0x88500
0x100
0x913b0
0x1
>;
local
-
mac
-
address
=
[
00
00
00
00
00
00
];
fsl
,
cpm
-
command
=
<
0x16200300
>;
interrupts
=
<
0x21
0x8
>;
interrupt
-
parent
=
<&
cpmpic
>;
phy
-
handle
=
<&
phy2
>;
};
enet3
:
ethernet
@
91340
{
device_type
=
"network"
;
compatible
=
"fsl,mpc8560-fcc-enet"
,
"fsl,cpm2-fcc-enet"
;
reg
=
<
0x91340
0x20
0x88600
0x100
0x913d0
0x1
>;
local
-
mac
-
address
=
[
00
00
00
00
00
00
];
fsl
,
cpm
-
command
=
<
0x1a400300
>;
interrupts
=
<
0x22
0x8
>;
interrupt
-
parent
=
<&
cpmpic
>;
phy
-
handle
=
<&
phy3
>;
};
};
global
-
utilities
@
e0000
{
compatible
=
"fsl,mpc8560-guts"
;
reg
=
<
0xe0000
0x1000
>;
};
};
pci0
:
pci
@
ff708000
{
#
interrupt
-
cells
=
<
1
>;
#
size
-
cells
=
<
2
>;
#
address
-
cells
=
<
3
>;
compatible
=
"fsl,mpc8540-pcix"
,
"fsl,mpc8540-pci"
;
device_type
=
"pci"
;
reg
=
<
0xff708000
0x1000
>;
clock
-
frequency
=
<
66666666
>;
interrupt
-
map
-
mask
=
<
0xf800
0x0
0x0
0x7
>;
interrupt
-
map
=
<
/*
IDSEL
0x02
*/
0x1000
0x0
0x0
0x1
&
mpic
0x2
0x1
0x1000
0x0
0x0
0x2
&
mpic
0x3
0x1
0x1000
0x0
0x0
0x3
&
mpic
0x4
0x1
0x1000
0x0
0x0
0x4
&
mpic
0x5
0x1
>;
interrupt
-
parent
=
<&
mpic
>;
interrupts
=
<
0x18
0x2
>;
bus
-
range
=
<
0x0
0x0
>;
ranges
=
<
0x02000000
0x0
0x80000000
0x80000000
0x0
0x20000000
0x01000000
0x0
0x00000000
0xe2000000
0x0
0x00100000
>;
};
localbus
@
ff705000
{
compatible
=
"fsl,mpc8560-localbus"
,
"simple-bus"
;
#
address
-
cells
=
<
2
>;
#
size
-
cells
=
<
1
>;
reg
=
<
0xff705000
0x100
>;
//
BRx
,
ORx
,
etc
.
ranges
=
<
0x0
0x0
0xff800000
0x0800000
//
8
MB
boot
flash
0x1
0x0
0xe4000000
0x4000000
//
64
MB
flash
0x3
0x0
0x20000000
0x4000000
//
64
MB
SDRAM
0x4
0x0
0x24000000
0x4000000
//
64
MB
SDRAM
0x5
0x0
0xfc000000
0x0c00000
//
EPLD
0x6
0x0
0xe0000000
0x4000000
//
64
MB
flash
0x7
0x0
0x80000000
0x0200000
//
ATM1
,
2
>;
epld
@
5
,
0
{
compatible
=
"wrs,epld-localbus"
;
#
address
-
cells
=
<
2
>;
#
size
-
cells
=
<
1
>;
reg
=
<
0x5
0x0
0xc00000
>;
ranges
=
<
0x0
0x0
0x5
0x000000
0x1fff
//
LED
disp
.
0x1
0x0
0x5
0x100000
0x1fff
//
switches
0x2
0x0
0x5
0x200000
0x1fff
//
ID
reg
.
0x3
0x0
0x5
0x300000
0x1fff
//
status
reg
.
0x4
0x0
0x5
0x400000
0x1fff
//
reset
reg
.
0x5
0x0
0x5
0x500000
0x1fff
//
Wind
port
0x7
0x0
0x5
0x700000
0x1fff
//
UART
#
1
0x8
0x0
0x5
0x800000
0x1fff
//
UART
#
2
0x9
0x0
0x5
0x900000
0x1fff
//
RTC
0xb
0x0
0x5
0xb00000
0x1fff
//
EEPROM
>;
bidr
@
2
,
0
{
compatible
=
"wrs,sbc8560-bidr"
;
reg
=
<
0x2
0x0
0x10
>;
};
bcsr
@
3
,
0
{
compatible
=
"wrs,sbc8560-bcsr"
;
reg
=
<
0x3
0x0
0x10
>;
};
brstcr
@
4
,
0
{
compatible
=
"wrs,sbc8560-brstcr"
;
reg
=
<
0x4
0x0
0x10
>;
};
serial0
:
serial
@
7
,
0
{
device_type
=
"serial"
;
compatible
=
"ns16550"
;
reg
=
<
0x7
0x0
0x100
>;
clock
-
frequency
=
<
1843200
>;
interrupts
=
<
0x9
0x2
>;
interrupt
-
parent
=
<&
mpic
>;
};
serial1
:
serial
@
8
,
0
{
device_type
=
"serial"
;
compatible
=
"ns16550"
;
reg
=
<
0x8
0x0
0x100
>;
clock
-
frequency
=
<
1843200
>;
interrupts
=
<
0xa
0x2
>;
interrupt
-
parent
=
<&
mpic
>;
};
rtc
@
9
,
0
{
compatible
=
"m48t59"
;
reg
=
<
0x9
0x0
0x1fff
>;
};
};
};
};
arch/powerpc/configs/83xx/kmeter1_defconfig
View file @
af3bf7fb
...
...
@@ -2,14 +2,14 @@ CONFIG_EXPERIMENTAL=y
# CONFIG_SWAP is not set
CONFIG_SYSVIPC=y
CONFIG_POSIX_MQUEUE=y
CONFIG_SPARSE_IRQ=y
CONFIG_LOG_BUF_SHIFT=14
CONFIG_EXPERT=y
# CONFIG_HOTPLUG is not set
CONFIG_SLAB=y
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_BLK_DEV_BSG is not set
CONFIG_PARTITION_ADVANCED=y
# CONFIG_MSDOS_PARTITION is not set
# CONFIG_IOSCHED_DEADLINE is not set
# CONFIG_IOSCHED_CFQ is not set
# CONFIG_PPC_CHRP is not set
...
...
@@ -31,11 +31,10 @@ CONFIG_IP_PNP=y
# CONFIG_INET_XFRM_MODE_BEET is not set
# CONFIG_INET_LRO is not set
# CONFIG_IPV6 is not set
CONFIG_TIPC=y
CONFIG_BRIDGE=m
CONFIG_VLAN_8021Q=y
CONFIG_MTD=y
CONFIG_MTD_CONCAT=y
CONFIG_MTD_PARTITIONS=y
CONFIG_MTD_CMDLINE_PARTS=y
CONFIG_MTD_CHAR=y
CONFIG_MTD_BLOCK=y
...
...
@@ -50,17 +49,15 @@ CONFIG_MTD_UBI_DEBUG=y
CONFIG_PROC_DEVICETREE=y
CONFIG_NETDEVICES=y
CONFIG_DUMMY=y
CONFIG_TUN=y
CONFIG_MII=y
CONFIG_MARVELL_PHY=y
CONFIG_NET_ETHERNET=y
CONFIG_TUN=y
CONFIG_UCC_GETH=y
# CONFIG_NETDEV_10000 is not set
CONFIG_WAN=y
CONFIG_HDLC=y
CONFIG_MARVELL_PHY=y
CONFIG_PPP=y
CONFIG_PPP_MULTILINK=y
CONFIG_PPPOE=y
CONFIG_WAN=y
CONFIG_HDLC=y
# CONFIG_INPUT is not set
# CONFIG_SERIO is not set
# CONFIG_VT is not set
...
...
@@ -77,10 +74,7 @@ CONFIG_UIO=y
# CONFIG_DNOTIFY is not set
CONFIG_TMPFS=y
CONFIG_JFFS2_FS=y
CONFIG_UBIFS_FS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
CONFIG_ROOT_NFS=y
CONFIG_PARTITION_ADVANCED=y
# CONFIG_MSDOS_PARTITION is not set
# CONFIG_RCU_CPU_STALL_DETECTOR is not set
CONFIG_SYSCTL_SYSCALL_CHECK=y
arch/powerpc/configs/85xx/sbc8560_defconfig
deleted
100644 → 0
View file @
10db8d21
CONFIG_PPC_85xx=y
CONFIG_EXPERIMENTAL=y
CONFIG_SYSVIPC=y
CONFIG_LOG_BUF_SHIFT=14
CONFIG_BLK_DEV_INITRD=y
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
CONFIG_EXPERT=y
CONFIG_SLAB=y
# CONFIG_BLK_DEV_BSG is not set
CONFIG_SBC8560=y
CONFIG_BINFMT_MISC=y
CONFIG_SPARSE_IRQ=y
# CONFIG_SECCOMP is not set
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_UNIX=y
CONFIG_XFRM_USER=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y
CONFIG_IP_PNP_BOOTP=y
CONFIG_SYN_COOKIES=y
# CONFIG_INET_LRO is not set
# CONFIG_IPV6 is not set
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
# CONFIG_FW_LOADER is not set
CONFIG_PROC_DEVICETREE=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=32768
CONFIG_NETDEVICES=y
CONFIG_BROADCOM_PHY=y
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
CONFIG_GIANFAR=y
# CONFIG_INPUT_MOUSEDEV is not set
# CONFIG_INPUT_KEYBOARD is not set
# CONFIG_INPUT_MOUSE is not set
# CONFIG_SERIO is not set
# CONFIG_VT is not set
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_NR_UARTS=2
CONFIG_SERIAL_8250_RUNTIME_UARTS=2
# CONFIG_HW_RANDOM is not set
CONFIG_VIDEO_OUTPUT_CONTROL=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_DRV_M48T59=y
CONFIG_INOTIFY=y
CONFIG_PROC_KCORE=y
CONFIG_TMPFS=y
CONFIG_NFS_FS=y
CONFIG_ROOT_NFS=y
CONFIG_PARTITION_ADVANCED=y
# CONFIG_MSDOS_PARTITION is not set
CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_KERNEL=y
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEBUG_MUTEXES=y
# CONFIG_DEBUG_BUGVERBOSE is not set
# CONFIG_RCU_CPU_STALL_DETECTOR is not set
CONFIG_SYSCTL_SYSCALL_CHECK=y
CONFIG_PPC_EARLY_DEBUG=y
# CONFIG_CRYPTO_ANSI_CPRNG is not set
arch/powerpc/configs/corenet32_smp_defconfig
View file @
af3bf7fb
...
...
@@ -23,7 +23,6 @@ CONFIG_MODVERSIONS=y
# CONFIG_BLK_DEV_BSG is not set
CONFIG_P2041_RDB=y
CONFIG_P3041_DS=y
CONFIG_P3060_QDS=y
CONFIG_P4080_DS=y
CONFIG_P5020_DS=y
CONFIG_HIGHMEM=y
...
...
@@ -32,10 +31,12 @@ CONFIG_HIGH_RES_TIMERS=y
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
CONFIG_BINFMT_MISC=m
CONFIG_KEXEC=y
CONFIG_IRQ_ALL_CPUS=y
CONFIG_FORCE_MAX_ZONEORDER=13
CONFIG_FSL_LBC=y
CONFIG_PCI=y
CONFIG_PCIEPORTBUS=y
CONFIG_PCI_MSI=y
# CONFIG_PCIEASPM is not set
CONFIG_RAPIDIO=y
CONFIG_FSL_RIO=y
...
...
@@ -76,6 +77,11 @@ CONFIG_MTD_BLOCK=y
CONFIG_MTD_CFI=y
CONFIG_MTD_CFI_AMDSTD=y
CONFIG_MTD_PHYSMAP_OF=y
CONFIG_MTD_NAND=y
CONFIG_MTD_NAND_ECC=y
CONFIG_MTD_NAND_IDS=y
CONFIG_MTD_NAND_FSL_IFC=y
CONFIG_MTD_NAND_FSL_ELBC=y
CONFIG_MTD_M25P80=y
CONFIG_PROC_DEVICETREE=y
CONFIG_BLK_DEV_LOOP=y
...
...
@@ -136,6 +142,8 @@ CONFIG_USB_OHCI_HCD_PPC_OF_LE=y
CONFIG_USB_STORAGE=y
CONFIG_MMC=y
CONFIG_MMC_SDHCI=y
CONFIG_MMC_SDHCI_OF=y
CONFIG_MMC_SDHCI_OF_ESDHC=y
CONFIG_EDAC=y
CONFIG_EDAC_MM_EDAC=y
CONFIG_EDAC_MPC85XX=y
...
...
arch/powerpc/configs/corenet64_smp_defconfig
View file @
af3bf7fb
...
...
@@ -6,7 +6,9 @@ CONFIG_NR_CPUS=2
CONFIG_EXPERIMENTAL=y
CONFIG_SYSVIPC=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_SPARSE_IRQ=y
CONFIG_IRQ_DOMAIN_DEBUG=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=14
...
...
@@ -18,11 +20,14 @@ CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_MODVERSIONS=y
# CONFIG_BLK_DEV_BSG is not set
CONFIG_PARTITION_ADVANCED=y
CONFIG_MAC_PARTITION=y
CONFIG_P5020_DS=y
# CONFIG_PPC_OF_BOOT_TRAMPOLINE is not set
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_BINFMT_MISC=m
CONFIG_IRQ_ALL_CPUS=y
CONFIG_PCIEPORTBUS=y
CONFIG_PCI_MSI=y
CONFIG_RAPIDIO=y
CONFIG_FSL_RIO=y
CONFIG_NET=y
...
...
@@ -51,12 +56,25 @@ CONFIG_INET_ESP=y
CONFIG_IPV6=y
CONFIG_IP_SCTP=m
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_MTD=y
CONFIG_MTD_CMDLINE_PARTS=y
CONFIG_MTD_CHAR=y
CONFIG_MTD_BLOCK=y
CONFIG_MTD_CFI=y
CONFIG_MTD_CFI_AMDSTD=y
CONFIG_MTD_PHYSMAP_OF=y
CONFIG_MTD_M25P80=y
CONFIG_MTD_NAND=y
CONFIG_MTD_NAND_FSL_ELBC=y
CONFIG_MTD_NAND_FSL_IFC=y
CONFIG_PROC_DEVICETREE=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=131072
CONFIG_MISC_DEVICES=y
CONFIG_EEPROM_LEGACY=y
CONFIG_ATA=y
CONFIG_SATA_FSL=y
CONFIG_SATA_SIL24=y
CONFIG_NETDEVICES=y
CONFIG_DUMMY=y
CONFIG_INPUT_FF_MEMLESS=m
...
...
@@ -66,39 +84,59 @@ CONFIG_INPUT_FF_MEMLESS=m
CONFIG_SERIO_LIBPS2=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_MANY_PORTS=y
CONFIG_SERIAL_8250_DETECT_IRQ=y
CONFIG_SERIAL_8250_RSA=y
CONFIG_I2C=y
CONFIG_I2C_CHARDEV=y
CONFIG_I2C_MPC=y
CONFIG_SPI=y
CONFIG_SPI_GPIO=y
CONFIG_SPI_FSL_SPI=y
CONFIG_SPI_FSL_ESPI=y
# CONFIG_HWMON is not set
CONFIG_VIDEO_OUTPUT_CONTROL=y
# CONFIG_HID_SUPPORT is not set
# CONFIG_USB_SUPPORT is not set
CONFIG_USB_HID=m
CONFIG_USB=y
CONFIG_USB_MON=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_FSL=y
CONFIG_USB_STORAGE=y
CONFIG_MMC=y
CONFIG_MMC_SDHCI=y
CONFIG_EDAC=y
CONFIG_EDAC_MM_EDAC=y
CONFIG_DMADEVICES=y
CONFIG_FSL_DMA=y
CONFIG_EXT2_FS=y
CONFIG_EXT3_FS=y
# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
CONFIG_ISO9660_FS=m
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
CONFIG_UDF_FS=m
CONFIG_MSDOS_FS=m
CONFIG_VFAT_FS=y
CONFIG_NTFS_FS=y
CONFIG_PROC_KCORE=y
CONFIG_TMPFS=y
CONFIG_HUGETLBFS=y
# CONFIG_MISC_FILESYSTEMS is not set
CONFIG_PARTITION_ADVANCED=y
CONFIG_MAC_PARTITION=y
CONFIG_NLS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V4=y
CONFIG_ROOT_NFS=y
CONFIG_NFSD=m
CONFIG_NLS_ISO8859_1=y
CONFIG_NLS_UTF8=m
CONFIG_CRC_T10DIF=y
CONFIG_CRC_ITU_T=m
CONFIG_FRAME_WARN=1024
CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_FS=y
CONFIG_DEBUG_SHIRQ=y
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEBUG_INFO=y
CONFIG_SYSCTL_SYSCALL_CHECK=y
CONFIG_IRQ_DOMAIN_DEBUG=y
CONFIG_CRYPTO_NULL=y
CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_MD4=y
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA512=y
CONFIG_CRYPTO_AES=y
...
...
arch/powerpc/configs/mgcoge_defconfig
View file @
af3bf7fb
...
...
@@ -2,7 +2,6 @@ CONFIG_EXPERIMENTAL=y
# CONFIG_SWAP is not set
CONFIG_SYSVIPC=y
CONFIG_POSIX_MQUEUE=y
CONFIG_SPARSE_IRQ=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=14
...
...
@@ -12,6 +11,7 @@ CONFIG_KALLSYMS_ALL=y
# CONFIG_PCSPKR_PLATFORM is not set
CONFIG_EMBEDDED=y
CONFIG_SLAB=y
CONFIG_PARTITION_ADVANCED=y
# CONFIG_IOSCHED_CFQ is not set
# CONFIG_PPC_PMAC is not set
CONFIG_PPC_82xx=y
...
...
@@ -49,12 +49,9 @@ CONFIG_PROC_DEVICETREE=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_RAM=y
CONFIG_NETDEVICES=y
CONFIG_FIXED_PHY=y
CONFIG_NET_ETHERNET=y
CONFIG_FS_ENET=y
CONFIG_FS_ENET_MDIO_FCC=y
# CONFIG_NETDEV_1000 is not set
# CONFIG_NETDEV_10000 is not set
CONFIG_FIXED_PHY=y
# CONFIG_WLAN is not set
# CONFIG_INPUT is not set
# CONFIG_SERIO is not set
...
...
@@ -64,6 +61,8 @@ CONFIG_SERIAL_CPM_CONSOLE=y
CONFIG_I2C=y
CONFIG_I2C_CHARDEV=y
CONFIG_I2C_CPM=y
CONFIG_SPI=y
CONFIG_SPI_FSL_SPI=y
# CONFIG_HWMON is not set
CONFIG_USB_GADGET=y
CONFIG_USB_FSL_USB2=y
...
...
@@ -80,8 +79,6 @@ CONFIG_SQUASHFS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
CONFIG_ROOT_NFS=y
CONFIG_PARTITION_ADVANCED=y
CONFIG_NLS=y
CONFIG_NLS_CODEPAGE_437=y
CONFIG_NLS_ASCII=y
CONFIG_NLS_ISO8859_1=y
...
...
@@ -90,7 +87,6 @@ CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_FS=y
# CONFIG_SCHED_DEBUG is not set
CONFIG_DEBUG_INFO=y
CONFIG_SYSCTL_SYSCALL_CHECK=y
CONFIG_BDI_SWITCH=y
CONFIG_CRYPTO_ECB=y
CONFIG_CRYPTO_PCBC=y
...
...
arch/powerpc/configs/mpc85xx_defconfig
View file @
af3bf7fb
...
...
@@ -74,6 +74,30 @@ CONFIG_INET_ESP=y
CONFIG_IPV6=y
CONFIG_IP_SCTP=m
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_MTD=y
CONFIG_MTD_CMDLINE_PARTS=y
CONFIG_MTD_CHAR=y
CONFIG_MTD_BLOCK=y
CONFIG_MTD_CFI=y
CONFIG_FTL=y
CONFIG_MTD_GEN_PROBE=y
CONFIG_MTD_MAP_BANK_WIDTH_1=y
CONFIG_MTD_MAP_BANK_WIDTH_2=y
CONFIG_MTD_MAP_BANK_WIDTH_4=y
CONFIG_MTD_CFI_I1=y
CONFIG_MTD_CFI_I2=y
CONFIG_MTD_CFI_INTELEXT=y
CONFIG_MTD_CFI_AMDSTD=y
CONFIG_MTD_CFI_UTIL=y
CONFIG_MTD_PHYSMAP_OF=y
CONFIG_MTD_PARTITIONS=y
CONFIG_MTD_OF_PARTS=y
CONFIG_MTD_NAND=y
CONFIG_MTD_NAND_FSL_ELBC=y
CONFIG_MTD_NAND_FSL_IFC=y
CONFIG_MTD_NAND_IDS=y
CONFIG_MTD_NAND_ECC=y
CONFIG_MTD_M25P80=y
CONFIG_PROC_DEVICETREE=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_NBD=y
...
...
arch/powerpc/configs/mpc85xx_smp_defconfig
View file @
af3bf7fb
...
...
@@ -46,6 +46,7 @@ CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_BINFMT_MISC=m
CONFIG_MATH_EMULATION=y
CONFIG_IRQ_ALL_CPUS=y
CONFIG_FORCE_MAX_ZONEORDER=12
CONFIG_PCI=y
CONFIG_PCI_MSI=y
...
...
@@ -76,6 +77,30 @@ CONFIG_INET_ESP=y
CONFIG_IPV6=y
CONFIG_IP_SCTP=m
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_MTD=y
CONFIG_MTD_CMDLINE_PARTS=y
CONFIG_MTD_CHAR=y
CONFIG_MTD_BLOCK=y
CONFIG_MTD_CFI=y
CONFIG_FTL=y
CONFIG_MTD_GEN_PROBE=y
CONFIG_MTD_MAP_BANK_WIDTH_1=y
CONFIG_MTD_MAP_BANK_WIDTH_2=y
CONFIG_MTD_MAP_BANK_WIDTH_4=y
CONFIG_MTD_CFI_I1=y
CONFIG_MTD_CFI_I2=y
CONFIG_MTD_CFI_INTELEXT=y
CONFIG_MTD_CFI_AMDSTD=y
CONFIG_MTD_CFI_UTIL=y
CONFIG_MTD_PHYSMAP_OF=y
CONFIG_MTD_PARTITIONS=y
CONFIG_MTD_OF_PARTS=y
CONFIG_MTD_NAND=y
CONFIG_MTD_NAND_FSL_ELBC=y
CONFIG_MTD_NAND_FSL_IFC=y
CONFIG_MTD_NAND_IDS=y
CONFIG_MTD_NAND_ECC=y
CONFIG_MTD_M25P80=y
CONFIG_PROC_DEVICETREE=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_NBD=y
...
...
arch/powerpc/include/asm/immap_qe.h
View file @
af3bf7fb
...
...
@@ -26,7 +26,9 @@
struct
qe_iram
{
__be32
iadd
;
/* I-RAM Address Register */
__be32
idata
;
/* I-RAM Data Register */
u8
res0
[
0x78
];
u8
res0
[
0x04
];
__be32
iready
;
/* I-RAM Ready Register */
u8
res1
[
0x70
];
}
__attribute__
((
packed
));
/* QE Interrupt Controller */
...
...
arch/powerpc/include/asm/qe.h
View file @
af3bf7fb
...
...
@@ -499,6 +499,7 @@ enum comm_dir {
/* I-RAM */
#define QE_IRAM_IADD_AIE 0x80000000
/* Auto Increment Enable */
#define QE_IRAM_IADD_BADDR 0x00080000
/* Base Address */
#define QE_IRAM_READY 0x80000000
/* Ready */
/* UPC */
#define UPGCR_PROTOCOL 0x80000000
/* protocol ul2 or pl2 */
...
...
arch/powerpc/kernel/head_fsl_booke.S
View file @
af3bf7fb
...
...
@@ -556,8 +556,10 @@ END_FTR_SECTION_IFSET(CPU_FTR_EMB_HV)
/
*
SPE
Unavailable
*/
START_EXCEPTION
(
SPEUnavailable
)
NORMAL_EXCEPTION_PROLOG
(
SPE_UNAVAIL
)
bne
load_up_spe
addi
r3
,
r1
,
STACK_FRAME_OVERHEAD
beq
1
f
bl
load_up_spe
b
fast_exception_return
1
:
addi
r3
,
r1
,
STACK_FRAME_OVERHEAD
EXC_XFER_EE_LITE
(0
x2010
,
KernelSPE
)
#else
EXCEPTION
(0
x2020
,
SPE_UNAVAIL
,
SPEUnavailable
,
\
...
...
@@ -778,7 +780,7 @@ tlb_write_entry:
/*
Note
that
the
SPE
support
is
closely
modeled
after
the
AltiVec
*
support
.
Changes
to
one
are
likely
to
be
applicable
to
the
*
other
!
*/
load_up_spe
:
_GLOBAL
(
load_up_spe
)
/*
*
Disable
SPE
for
the
task
which
had
SPE
previously
,
*
and
save
its
SPE
registers
in
its
thread_struct
.
...
...
@@ -826,20 +828,7 @@ load_up_spe:
subi
r4
,
r5
,
THREAD
stw
r4
,
last_task_used_spe
@
l
(
r3
)
#endif /* !CONFIG_SMP */
/
*
restore
registers
and
return
*/
2
:
REST_4GPRS
(3,
r11
)
lwz
r10
,
_CCR
(
r11
)
REST_GPR
(1,
r11
)
mtcr
r10
lwz
r10
,
_LINK
(
r11
)
mtlr
r10
REST_GPR
(10,
r11
)
mtspr
SPRN_SRR1
,
r9
mtspr
SPRN_SRR0
,
r12
REST_GPR
(9,
r11
)
REST_GPR
(12,
r11
)
lwz
r11
,
GPR11
(
r11
)
rfi
blr
/*
*
SPE
unavailable
trap
from
kernel
-
print
a
message
,
but
let
...
...
arch/powerpc/kernel/setup-common.c
View file @
af3bf7fb
...
...
@@ -720,6 +720,33 @@ static int powerpc_debugfs_init(void)
arch_initcall
(
powerpc_debugfs_init
);
#endif
#ifdef CONFIG_BOOKE_WDT
extern
u32
booke_wdt_enabled
;
extern
u32
booke_wdt_period
;
/* Checks wdt=x and wdt_period=xx command-line option */
notrace
int
__init
early_parse_wdt
(
char
*
p
)
{
if
(
p
&&
strncmp
(
p
,
"0"
,
1
)
!=
0
)
booke_wdt_enabled
=
1
;
return
0
;
}
early_param
(
"wdt"
,
early_parse_wdt
);
int
__init
early_parse_wdt_period
(
char
*
p
)
{
unsigned
long
ret
;
if
(
p
)
{
if
(
!
kstrtol
(
p
,
0
,
&
ret
))
booke_wdt_period
=
ret
;
}
return
0
;
}
early_param
(
"wdt_period"
,
early_parse_wdt_period
);
#endif
/* CONFIG_BOOKE_WDT */
void
ppc_printk_progress
(
char
*
s
,
unsigned
short
hex
)
{
pr_info
(
"%s
\n
"
,
s
);
...
...
arch/powerpc/kernel/setup_32.c
View file @
af3bf7fb
...
...
@@ -149,30 +149,6 @@ notrace void __init machine_init(u64 dt_ptr)
ppc_md
.
progress
(
"id mach(): done"
,
0x200
);
}
#ifdef CONFIG_BOOKE_WDT
extern
u32
booke_wdt_enabled
;
extern
u32
booke_wdt_period
;
/* Checks wdt=x and wdt_period=xx command-line option */
notrace
int
__init
early_parse_wdt
(
char
*
p
)
{
if
(
p
&&
strncmp
(
p
,
"0"
,
1
)
!=
0
)
booke_wdt_enabled
=
1
;
return
0
;
}
early_param
(
"wdt"
,
early_parse_wdt
);
int
__init
early_parse_wdt_period
(
char
*
p
)
{
if
(
p
)
booke_wdt_period
=
simple_strtoul
(
p
,
NULL
,
0
);
return
0
;
}
early_param
(
"wdt_period"
,
early_parse_wdt_period
);
#endif
/* CONFIG_BOOKE_WDT */
/* Checks "l2cr=xxxx" command-line option */
int
__init
ppc_setup_l2cr
(
char
*
str
)
{
...
...
arch/powerpc/platforms/82xx/km82xx.c
View file @
af3bf7fb
...
...
@@ -128,6 +128,11 @@ static __initdata struct cpm_pin km82xx_pins[] = {
{
3
,
23
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
/* TXP */
{
3
,
24
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
/* TXN */
{
3
,
25
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
/* RXD */
/* SPI */
{
3
,
16
,
CPM_PIN_INPUT
|
CPM_PIN_SECONDARY
},
/* SPI_MISO PD16 */
{
3
,
17
,
CPM_PIN_INPUT
|
CPM_PIN_SECONDARY
},
/* SPI_MOSI PD17 */
{
3
,
18
,
CPM_PIN_INPUT
|
CPM_PIN_SECONDARY
},
/* SPI_CLK PD18 */
};
static
void
__init
init_ioports
(
void
)
...
...
arch/powerpc/platforms/83xx/km83xx.c
View file @
af3bf7fb
...
...
@@ -3,7 +3,7 @@
* Author: Heiko Schocher <hs@denx.de>
*
* Description:
* Keymile
KMETER1 board
specific routines.
* Keymile
83xx platform
specific routines.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
...
...
@@ -70,54 +70,88 @@ static void __init mpc83xx_km_setup_arch(void)
for_each_node_by_name
(
np
,
"spi"
)
par_io_of_config
(
np
);
for
(
np
=
NULL
;
(
np
=
of_find_node_by_name
(
np
,
"ucc"
))
!=
NULL
;
)
for
_each_node_by_name
(
np
,
"ucc"
)
par_io_of_config
(
np
);
}
np
=
of_find_compatible_node
(
NULL
,
"network"
,
"ucc_geth"
);
if
(
np
!=
NULL
)
{
uint
svid
;
/*
* handle mpc8360E Erratum QE_ENET10:
* RGMII AC values do not meet the specification
*/
uint
svid
=
mfspr
(
SPRN_SVR
);
struct
device_node
*
np_par
;
struct
resource
res
;
void
__iomem
*
base
;
int
ret
;
np_par
=
of_find_node_by_name
(
NULL
,
"par_io"
);
if
(
np_par
==
NULL
)
{
printk
(
KERN_WARNING
"%s couldn;t find par_io node
\n
"
,
__func__
);
return
;
}
/* Map Parallel I/O ports registers */
ret
=
of_address_to_resource
(
np_par
,
0
,
&
res
);
if
(
ret
)
{
printk
(
KERN_WARNING
"%s couldn;t map par_io registers
\n
"
,
__func__
);
return
;
}
base
=
ioremap
(
res
.
start
,
res
.
end
-
res
.
start
+
1
);
/*
* set output delay adjustments to default values according
* table 5 in Errata Rev. 5, 9/2011:
*
* write 0b01 to UCC1 bits 18:19
* write 0b01 to UCC2 option 1 bits 4:5
* write 0b01 to UCC2 option 2 bits 16:17
*/
clrsetbits_be32
((
base
+
0xa8
),
0x0c00f000
,
0x04005000
);
/*
* set output delay adjustments to default values according
* table 3-13 in Reference Manual Rev.3 05/2010:
*
* write 0b01 to UCC2 option 2 bits 16:17
* write 0b0101 to UCC1 bits 20:23
* write 0b0101 to UCC2 option 1 bits 24:27
*/
clrsetbits_be32
((
base
+
0xac
),
0x0000cff0
,
0x00004550
);
/* handle mpc8360ea rev.2.1 erratum 2: RGMII Timing */
svid
=
mfspr
(
SPRN_SVR
);
if
(
SVR_REV
(
svid
)
==
0x0021
)
{
struct
device_node
*
np_par
;
struct
resource
res
;
void
__iomem
*
base
;
int
ret
;
np_par
=
of_find_node_by_name
(
NULL
,
"par_io"
);
if
(
np_par
==
NULL
)
{
printk
(
KERN_WARNING
"%s couldn;t find par_io node
\n
"
,
__func__
);
return
;
}
/* Map Parallel I/O ports registers */
ret
=
of_address_to_resource
(
np_par
,
0
,
&
res
);
if
(
ret
)
{
printk
(
KERN_WARNING
"%s couldn;t map par_io registers
\n
"
,
__func__
);
return
;
}
base
=
ioremap
(
res
.
start
,
resource_size
(
&
res
));
/*
* UCC2 option 1: write 0b1010 to bits 24:27
* at address IMMRBAR+0x14AC
*/
clrsetbits_be32
((
base
+
0xac
),
0x000000f0
,
0x000000a0
);
}
else
if
(
SVR_REV
(
svid
)
==
0x0020
)
{
/*
* UCC1: write 0b11 to bits 18:19
* at address IMMRBAR+0x14A8
*/
setbits32
((
base
+
0xa8
),
0x00003000
);
/*
*
IMMR + 0x14A8[4:5] = 11 (clk delay for UCC 2)
*
IMMR + 0x14A8[18:19] = 11 (clk delay for UCC 1)
*
UCC2 option 1: write 0b11 to bits 4:5
*
at address IMMRBAR+0x14A8
*/
setbits32
((
base
+
0xa8
),
0x0c00
3
000
);
setbits32
((
base
+
0xa8
),
0x0c00
0
000
);
/*
*
IMMR + 0x14AC[20:27] = 10101010
*
(data delay for both UCC's)
*
UCC2 option 2: write 0b11 to bits 16:17
*
at address IMMRBAR+0x14AC
*/
clrsetbits_be32
((
base
+
0xac
),
0xff0
,
0xaa0
);
iounmap
(
base
);
of_node_put
(
np_par
);
setbits32
((
base
+
0xac
),
0x0000c000
);
}
iounmap
(
base
);
of_node_put
(
np_par
);
of_node_put
(
np
);
}
#endif
/* CONFIG_QUICC_ENGINE */
#endif
/* CONFIG_QUICC_ENGINE */
}
machine_device_initcall
(
mpc83xx_km
,
mpc83xx_declare_of_platform_devices
);
...
...
arch/powerpc/platforms/85xx/Kconfig
View file @
af3bf7fb
...
...
@@ -23,6 +23,15 @@ config FSL_85XX_CACHE_SRAM
cache-sram-size and cache-sram-offset kernel boot
parameters should be passed when this option is enabled.
config BSC9131_RDB
bool "Freescale BSC9131RDB"
select DEFAULT_UIMAGE
help
This option enables support for the Freescale BSC9131RDB board.
The BSC9131 is a heterogeneous SoC containing an e500v2 powerpc and a
StarCore SC3850 DSP
Manufacturer : Freescale Semiconductor, Inc
config MPC8540_ADS
bool "Freescale MPC8540 ADS"
select DEFAULT_UIMAGE
...
...
@@ -175,12 +184,6 @@ config SBC8548
help
This option enables support for the Wind River SBC8548 board
config SBC8560
bool "Wind River SBC8560"
select DEFAULT_UIMAGE
help
This option enables support for the Wind River SBC8560 board
config GE_IMP3A
bool "GE Intelligent Platforms IMP3A"
select DEFAULT_UIMAGE
...
...
@@ -222,18 +225,6 @@ config P3041_DS
help
This option enables support for the P3041 DS board
config P3060_QDS
bool "Freescale P3060 QDS"
select DEFAULT_UIMAGE
select PPC_E500MC
select PHYS_64BIT
select SWIOTLB
select GPIO_MPC8XXX
select HAS_RAPIDIO
select PPC_EPAPR_HV_PIC
help
This option enables support for the P3060 QDS board
config P4080_DS
bool "Freescale P4080 DS"
select DEFAULT_UIMAGE
...
...
@@ -263,6 +254,22 @@ config P5020_DS
help
This option enables support for the P5020 DS board
config PPC_QEMU_E500
bool "QEMU generic e500 platform"
depends on EXPERIMENTAL
select DEFAULT_UIMAGE
help
This option enables support for running as a QEMU guest using
QEMU's generic e500 machine. This is not required if you're
using a QEMU machine that targets a specific board, such as
mpc8544ds.
Unlike most e500 boards that target a specific CPU, this
platform works with any e500-family CPU that QEMU supports.
Thus, you'll need to make sure CONFIG_PPC_E500MC is set or
unset based on the emulated CPU (or actual host CPU in the case
of KVM).
endif # FSL_SOC_BOOKE
config TQM85xx
...
...
arch/powerpc/platforms/85xx/Makefile
View file @
af3bf7fb
...
...
@@ -5,6 +5,7 @@ obj-$(CONFIG_SMP) += smp.o
obj-y
+=
common.o
obj-$(CONFIG_BSC9131_RDB)
+=
bsc913x_rdb.o
obj-$(CONFIG_MPC8540_ADS)
+=
mpc85xx_ads.o
obj-$(CONFIG_MPC8560_ADS)
+=
mpc85xx_ads.o
obj-$(CONFIG_MPC85xx_CDS)
+=
mpc85xx_cds.o
...
...
@@ -17,14 +18,13 @@ obj-$(CONFIG_P1022_DS) += p1022_ds.o
obj-$(CONFIG_P1023_RDS)
+=
p1023_rds.o
obj-$(CONFIG_P2041_RDB)
+=
p2041_rdb.o corenet_ds.o
obj-$(CONFIG_P3041_DS)
+=
p3041_ds.o corenet_ds.o
obj-$(CONFIG_P3060_QDS)
+=
p3060_qds.o corenet_ds.o
obj-$(CONFIG_P4080_DS)
+=
p4080_ds.o corenet_ds.o
obj-$(CONFIG_P5020_DS)
+=
p5020_ds.o corenet_ds.o
obj-$(CONFIG_STX_GP3)
+=
stx_gp3.o
obj-$(CONFIG_TQM85xx)
+=
tqm85xx.o
obj-$(CONFIG_SBC8560)
+=
sbc8560.o
obj-$(CONFIG_SBC8548)
+=
sbc8548.o
obj-$(CONFIG_SOCRATES)
+=
socrates.o socrates_fpga_pic.o
obj-$(CONFIG_KSI8560)
+=
ksi8560.o
obj-$(CONFIG_XES_MPC85xx)
+=
xes_mpc85xx.o
obj-$(CONFIG_GE_IMP3A)
+=
ge_imp3a.o
obj-$(CONFIG_PPC_QEMU_E500)
+=
qemu_e500.o
arch/powerpc/platforms/85xx/bsc913x_rdb.c
0 → 100644
View file @
af3bf7fb
/*
* BSC913xRDB Board Setup
*
* Author: Priyanka Jain <Priyanka.Jain@freescale.com>
*
* Copyright 2011-2012 Freescale Semiconductor Inc.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation; either version 2 of the License, or (at your
* option) any later version.
*/
#include <linux/of_platform.h>
#include <linux/pci.h>
#include <asm/mpic.h>
#include <sysdev/fsl_soc.h>
#include <asm/udbg.h>
#include "mpc85xx.h"
void
__init
bsc913x_rdb_pic_init
(
void
)
{
struct
mpic
*
mpic
=
mpic_alloc
(
NULL
,
0
,
MPIC_BIG_ENDIAN
|
MPIC_SINGLE_DEST_CPU
,
0
,
256
,
" OpenPIC "
);
if
(
!
mpic
)
pr_err
(
"bsc913x: Failed to allocate MPIC structure
\n
"
);
else
mpic_init
(
mpic
);
}
/*
* Setup the architecture
*/
static
void
__init
bsc913x_rdb_setup_arch
(
void
)
{
if
(
ppc_md
.
progress
)
ppc_md
.
progress
(
"bsc913x_rdb_setup_arch()"
,
0
);
pr_info
(
"bsc913x board from Freescale Semiconductor
\n
"
);
}
machine_device_initcall
(
bsc9131_rdb
,
mpc85xx_common_publish_devices
);
/*
* Called very early, device-tree isn't unflattened
*/
static
int
__init
bsc9131_rdb_probe
(
void
)
{
unsigned
long
root
=
of_get_flat_dt_root
();
return
of_flat_dt_is_compatible
(
root
,
"fsl,bsc9131rdb"
);
}
define_machine
(
bsc9131_rdb
)
{
.
name
=
"BSC9131 RDB"
,
.
probe
=
bsc9131_rdb_probe
,
.
setup_arch
=
bsc913x_rdb_setup_arch
,
.
init_IRQ
=
bsc913x_rdb_pic_init
,
.
get_irq
=
mpic_get_irq
,
.
restart
=
fsl_rstcr_restart
,
.
calibrate_decr
=
generic_calibrate_decr
,
.
progress
=
udbg_progress
,
};
arch/powerpc/platforms/85xx/mpc85xx_ds.c
View file @
af3bf7fb
...
...
@@ -114,71 +114,53 @@ void __init mpc85xx_ds_pic_init(void)
}
#ifdef CONFIG_PCI
static
int
primary_phb_addr
;
extern
int
uli_exclude_device
(
struct
pci_controller
*
hose
,
u_char
bus
,
u_char
devfn
);
static
struct
device_node
*
pci_with_uli
;
static
int
mpc85xx_exclude_device
(
struct
pci_controller
*
hose
,
u_char
bus
,
u_char
devfn
)
{
struct
device_node
*
node
;
struct
resource
rsrc
;
node
=
hose
->
dn
;
of_address_to_resource
(
node
,
0
,
&
rsrc
);
if
((
rsrc
.
start
&
0xfffff
)
==
primary_phb_addr
)
{
if
(
hose
->
dn
==
pci_with_uli
)
return
uli_exclude_device
(
hose
,
bus
,
devfn
);
}
return
PCIBIOS_SUCCESSFUL
;
}
#endif
/* CONFIG_PCI */
/*
* Setup the architecture
*/
static
void
__init
mpc85xx_ds_setup_arch
(
void
)
static
void
__init
mpc85xx_ds_pci_init
(
void
)
{
#ifdef CONFIG_PCI
struct
device_node
*
np
;
struct
pci_controller
*
hose
;
#endif
dma_addr_t
max
=
0xffffffff
;
struct
device_node
*
node
;
if
(
ppc_md
.
progress
)
ppc_md
.
progress
(
"mpc85xx_ds_setup_arch()"
,
0
);
fsl_pci_init
();
#ifdef CONFIG_PCI
for_each_node_by_type
(
np
,
"pci"
)
{
if
(
of_device_is_compatible
(
np
,
"fsl,mpc8540-pci"
)
||
of_device_is_compatible
(
np
,
"fsl,mpc8548-pcie"
)
||
of_device_is_compatible
(
np
,
"fsl,p2020-pcie"
))
{
struct
resource
rsrc
;
of_address_to_resource
(
np
,
0
,
&
rsrc
);
if
((
rsrc
.
start
&
0xfffff
)
==
primary_phb_addr
)
fsl_add_bridge
(
np
,
1
);
else
fsl_add_bridge
(
np
,
0
);
hose
=
pci_find_hose_for_OF_device
(
np
);
max
=
min
(
max
,
hose
->
dma_window_base_cur
+
hose
->
dma_window_size
);
/* See if we have a ULI under the primary */
node
=
of_find_node_by_name
(
NULL
,
"uli1575"
);
while
((
pci_with_uli
=
of_get_parent
(
node
)))
{
of_node_put
(
node
);
node
=
pci_with_uli
;
if
(
pci_with_uli
==
fsl_pci_primary
)
{
ppc_md
.
pci_exclude_device
=
mpc85xx_exclude_device
;
break
;
}
}
ppc_md
.
pci_exclude_device
=
mpc85xx_exclude_device
;
#endif
}
mpc85xx_smp_init
();
/*
* Setup the architecture
*/
static
void
__init
mpc85xx_ds_setup_arch
(
void
)
{
if
(
ppc_md
.
progress
)
ppc_md
.
progress
(
"mpc85xx_ds_setup_arch()"
,
0
);
#ifdef CONFIG_SWIOTLB
if
((
memblock_end_of_DRAM
()
-
1
)
>
max
)
{
ppc_swiotlb_enable
=
1
;
set_pci_dma_ops
(
&
swiotlb_dma_ops
);
ppc_md
.
pci_dma_dev_setup
=
pci_dma_dev_setup_swiotlb
;
}
#endif
mpc85xx_ds_pci_init
();
mpc85xx_smp_init
();
printk
(
"MPC85xx DS board from Freescale Semiconductor
\n
"
);
}
...
...
@@ -190,14 +172,7 @@ static int __init mpc8544_ds_probe(void)
{
unsigned
long
root
=
of_get_flat_dt_root
();
if
(
of_flat_dt_is_compatible
(
root
,
"MPC8544DS"
))
{
#ifdef CONFIG_PCI
primary_phb_addr
=
0xb000
;
#endif
return
1
;
}
return
0
;
return
!!
of_flat_dt_is_compatible
(
root
,
"MPC8544DS"
);
}
machine_device_initcall
(
mpc8544_ds
,
mpc85xx_common_publish_devices
);
...
...
@@ -215,14 +190,7 @@ static int __init mpc8572_ds_probe(void)
{
unsigned
long
root
=
of_get_flat_dt_root
();
if
(
of_flat_dt_is_compatible
(
root
,
"fsl,MPC8572DS"
))
{
#ifdef CONFIG_PCI
primary_phb_addr
=
0x8000
;
#endif
return
1
;
}
return
0
;
return
!!
of_flat_dt_is_compatible
(
root
,
"fsl,MPC8572DS"
);
}
/*
...
...
@@ -232,14 +200,7 @@ static int __init p2020_ds_probe(void)
{
unsigned
long
root
=
of_get_flat_dt_root
();
if
(
of_flat_dt_is_compatible
(
root
,
"fsl,P2020DS"
))
{
#ifdef CONFIG_PCI
primary_phb_addr
=
0x9000
;
#endif
return
1
;
}
return
0
;
return
!!
of_flat_dt_is_compatible
(
root
,
"fsl,P2020DS"
);
}
define_machine
(
mpc8544_ds
)
{
...
...
arch/powerpc/platforms/85xx/mpc85xx_rdb.c
View file @
af3bf7fb
...
...
@@ -169,6 +169,7 @@ machine_device_initcall(p1020_rdb_pc, mpc85xx_common_publish_devices);
machine_device_initcall
(
p1020_utm_pc
,
mpc85xx_common_publish_devices
);
machine_device_initcall
(
p1021_rdb_pc
,
mpc85xx_common_publish_devices
);
machine_device_initcall
(
p1025_rdb
,
mpc85xx_common_publish_devices
);
machine_device_initcall
(
p1024_rdb
,
mpc85xx_common_publish_devices
);
/*
* Called very early, device-tree isn't unflattened
...
...
@@ -237,6 +238,13 @@ static int __init p1020_utm_pc_probe(void)
return
of_flat_dt_is_compatible
(
root
,
"fsl,P1020UTM-PC"
);
}
static
int
__init
p1024_rdb_probe
(
void
)
{
unsigned
long
root
=
of_get_flat_dt_root
();
return
of_flat_dt_is_compatible
(
root
,
"fsl,P1024RDB"
);
}
define_machine
(
p2020_rdb
)
{
.
name
=
"P2020 RDB"
,
.
probe
=
p2020_rdb_probe
,
...
...
@@ -348,3 +356,17 @@ define_machine(p1020_rdb_pc) {
.
calibrate_decr
=
generic_calibrate_decr
,
.
progress
=
udbg_progress
,
};
define_machine
(
p1024_rdb
)
{
.
name
=
"P1024 RDB"
,
.
probe
=
p1024_rdb_probe
,
.
setup_arch
=
mpc85xx_rdb_setup_arch
,
.
init_IRQ
=
mpc85xx_rdb_pic_init
,
#ifdef CONFIG_PCI
.
pcibios_fixup_bus
=
fsl_pcibios_fixup_bus
,
#endif
.
get_irq
=
mpic_get_irq
,
.
restart
=
fsl_rstcr_restart
,
.
calibrate_decr
=
generic_calibrate_decr
,
.
progress
=
udbg_progress
,
};
arch/powerpc/platforms/85xx/p1022_ds.c
View file @
af3bf7fb
...
...
@@ -27,6 +27,7 @@
#include <sysdev/fsl_pci.h>
#include <asm/udbg.h>
#include <asm/fsl_guts.h>
#include <asm/fsl_lbc.h>
#include "smp.h"
#include "mpc85xx.h"
...
...
@@ -142,17 +143,73 @@ static void p1022ds_set_gamma_table(enum fsl_diu_monitor_port port,
{
}
struct
fsl_law
{
u32
lawbar
;
u32
reserved1
;
u32
lawar
;
u32
reserved
[
5
];
};
#define LAWBAR_MASK 0x00F00000
#define LAWBAR_SHIFT 12
#define LAWAR_EN 0x80000000
#define LAWAR_TGT_MASK 0x01F00000
#define LAW_TRGT_IF_LBC (0x04 << 20)
#define LAWAR_MASK (LAWAR_EN | LAWAR_TGT_MASK)
#define LAWAR_MATCH (LAWAR_EN | LAW_TRGT_IF_LBC)
#define BR_BA 0xFFFF8000
/*
* Map a BRx value to a physical address
*
* The localbus BRx registers only store the lower 32 bits of the address. To
* obtain the upper four bits, we need to scan the LAW table. The entry which
* maps to the localbus will contain the upper four bits.
*/
static
phys_addr_t
lbc_br_to_phys
(
const
void
*
ecm
,
unsigned
int
count
,
u32
br
)
{
#ifndef CONFIG_PHYS_64BIT
/*
* If we only have 32-bit addressing, then the BRx address *is* the
* physical address.
*/
return
br
&
BR_BA
;
#else
const
struct
fsl_law
*
law
=
ecm
+
0xc08
;
unsigned
int
i
;
for
(
i
=
0
;
i
<
count
;
i
++
)
{
u64
lawbar
=
in_be32
(
&
law
[
i
].
lawbar
);
u32
lawar
=
in_be32
(
&
law
[
i
].
lawar
);
if
((
lawar
&
LAWAR_MASK
)
==
LAWAR_MATCH
)
/* Extract the upper four bits */
return
(
br
&
BR_BA
)
|
((
lawbar
&
LAWBAR_MASK
)
<<
12
);
}
return
0
;
#endif
}
/**
* p1022ds_set_monitor_port: switch the output to a different monitor port
*
*/
static
void
p1022ds_set_monitor_port
(
enum
fsl_diu_monitor_port
port
)
{
struct
device_node
*
guts_node
;
struct
device_node
*
indirect_node
=
NULL
;
struct
device_node
*
lbc_node
=
NULL
;
struct
device_node
*
law_node
=
NULL
;
struct
ccsr_guts
__iomem
*
guts
;
struct
fsl_lbc_regs
*
lbc
=
NULL
;
void
*
ecm
=
NULL
;
u8
__iomem
*
lbc_lcs0_ba
=
NULL
;
u8
__iomem
*
lbc_lcs1_ba
=
NULL
;
phys_addr_t
cs0_addr
,
cs1_addr
;
const
__be32
*
iprop
;
unsigned
int
num_laws
;
u8
b
;
/* Map the global utilities registers. */
...
...
@@ -168,25 +225,43 @@ static void p1022ds_set_monitor_port(enum fsl_diu_monitor_port port)
goto
exit
;
}
indirect_node
=
of_find_compatible_node
(
NULL
,
NULL
,
"fsl,p1022ds-indirect-pixis"
);
if
(
!
indirect_node
)
{
pr_err
(
"p1022ds: missing pixis indirect mode node
\n
"
);
lbc_node
=
of_find_compatible_node
(
NULL
,
NULL
,
"fsl,p1022-elbc"
);
if
(
!
lbc_node
)
{
pr_err
(
"p1022ds: missing localbus node
\n
"
);
goto
exit
;
}
lbc
_lcs0_ba
=
of_iomap
(
indirect
_node
,
0
);
if
(
!
lbc
_lcs0_ba
)
{
pr_err
(
"p1022ds: could not map localbus
chip select 0
\n
"
);
lbc
=
of_iomap
(
lbc
_node
,
0
);
if
(
!
lbc
)
{
pr_err
(
"p1022ds: could not map localbus
node
\n
"
);
goto
exit
;
}
l
bc_lcs1_ba
=
of_iomap
(
indirect_node
,
1
);
if
(
!
l
bc_lcs1_ba
)
{
pr_err
(
"p1022ds:
could not map localbus chip select 1
\n
"
);
l
aw_node
=
of_find_compatible_node
(
NULL
,
NULL
,
"fsl,ecm-law"
);
if
(
!
l
aw_node
)
{
pr_err
(
"p1022ds:
missing local access window node
\n
"
);
goto
exit
;
}
ecm
=
of_iomap
(
law_node
,
0
);
if
(
!
ecm
)
{
pr_err
(
"p1022ds: could not map local access window node
\n
"
);
goto
exit
;
}
iprop
=
of_get_property
(
law_node
,
"fsl,num-laws"
,
0
);
if
(
!
iprop
)
{
pr_err
(
"p1022ds: LAW node is missing fsl,num-laws property
\n
"
);
goto
exit
;
}
num_laws
=
be32_to_cpup
(
iprop
);
cs0_addr
=
lbc_br_to_phys
(
ecm
,
num_laws
,
in_be32
(
&
lbc
->
bank
[
0
].
br
));
cs1_addr
=
lbc_br_to_phys
(
ecm
,
num_laws
,
in_be32
(
&
lbc
->
bank
[
1
].
br
));
lbc_lcs0_ba
=
ioremap
(
cs0_addr
,
1
);
lbc_lcs1_ba
=
ioremap
(
cs1_addr
,
1
);
/* Make sure we're in indirect mode first. */
if
((
in_be32
(
&
guts
->
pmuxcr
)
&
PMUXCR_ELBCDIU_MASK
)
!=
PMUXCR_ELBCDIU_DIU
)
{
...
...
@@ -254,10 +329,15 @@ static void p1022ds_set_monitor_port(enum fsl_diu_monitor_port port)
iounmap
(
lbc_lcs1_ba
);
if
(
lbc_lcs0_ba
)
iounmap
(
lbc_lcs0_ba
);
if
(
lbc
)
iounmap
(
lbc
);
if
(
ecm
)
iounmap
(
ecm
);
if
(
guts
)
iounmap
(
guts
);
of_node_put
(
indirect_node
);
of_node_put
(
law_node
);
of_node_put
(
lbc_node
);
of_node_put
(
guts_node
);
}
...
...
arch/powerpc/platforms/85xx/
p3060_qds
.c
→
arch/powerpc/platforms/85xx/
qemu_e500
.c
View file @
af3bf7fb
/*
* P
3060 QDS Setup
* P
aravirt target for a generic QEMU e500 machine
*
* Copyright 2011 Freescale Semiconductor Inc.
* This is intended to be a flexible device-tree-driven platform, not fixed
* to a particular piece of hardware or a particular spec of virtual hardware,
* beyond the assumption of an e500-family CPU. Some things are still hardcoded
* here, such as MPIC, but this is a limitation of the current code rather than
* an interface contract with QEMU.
*
* Copyright 2012 Freescale Semiconductor Inc.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
...
...
@@ -10,68 +16,57 @@
*/
#include <linux/kernel.h>
#include <linux/interrupt.h>
#include <linux/phy.h>
#include <linux/of_fdt.h>
#include <asm/machdep.h>
#include <asm/time.h>
#include <asm/udbg.h>
#include <asm/mpic.h>
#include <linux/of_platform.h>
#include <sysdev/fsl_soc.h>
#include <sysdev/fsl_pci.h>
#include <asm/ehv_pic.h>
#include "corenet_ds.h"
#include "smp.h"
#include "mpc85xx.h"
void
__init
qemu_e500_pic_init
(
void
)
{
struct
mpic
*
mpic
;
mpic
=
mpic_alloc
(
NULL
,
0
,
MPIC_BIG_ENDIAN
|
MPIC_SINGLE_DEST_CPU
,
0
,
256
,
" OpenPIC "
);
BUG_ON
(
mpic
==
NULL
);
mpic_init
(
mpic
);
}
static
void
__init
qemu_e500_setup_arch
(
void
)
{
ppc_md
.
progress
(
"qemu_e500_setup_arch()"
,
0
);
fsl_pci_init
();
mpc85xx_smp_init
();
}
/*
* Called very early, device-tree isn't unflattened
*/
static
int
__init
p3060_qds
_probe
(
void
)
static
int
__init
qemu_e500
_probe
(
void
)
{
unsigned
long
root
=
of_get_flat_dt_root
();
#ifdef CONFIG_SMP
extern
struct
smp_ops_t
smp_85xx_ops
;
#endif
if
(
of_flat_dt_is_compatible
(
root
,
"fsl,P3060QDS"
))
return
1
;
/* Check if we're running under the Freescale hypervisor */
if
(
of_flat_dt_is_compatible
(
root
,
"fsl,P3060QDS-hv"
))
{
ppc_md
.
init_IRQ
=
ehv_pic_init
;
ppc_md
.
get_irq
=
ehv_pic_get_irq
;
ppc_md
.
restart
=
fsl_hv_restart
;
ppc_md
.
power_off
=
fsl_hv_halt
;
ppc_md
.
halt
=
fsl_hv_halt
;
#ifdef CONFIG_SMP
/*
* Disable the timebase sync operations because we can't write
* to the timebase registers under the hypervisor.
*/
smp_85xx_ops
.
give_timebase
=
NULL
;
smp_85xx_ops
.
take_timebase
=
NULL
;
#endif
return
1
;
}
return
0
;
return
!!
of_flat_dt_is_compatible
(
root
,
"fsl,qemu-e500"
)
;
}
define_machine
(
p3060_qds
)
{
.
name
=
"P3060 QDS"
,
.
probe
=
p3060_qds_probe
,
.
setup_arch
=
corenet_ds_setup_arch
,
.
init_IRQ
=
corenet_ds_pic_init
,
machine_device_initcall
(
qemu_e500
,
mpc85xx_common_publish_devices
);
define_machine
(
qemu_e500
)
{
.
name
=
"QEMU e500"
,
.
probe
=
qemu_e500_probe
,
.
setup_arch
=
qemu_e500_setup_arch
,
.
init_IRQ
=
qemu_e500_pic_init
,
#ifdef CONFIG_PCI
.
pcibios_fixup_bus
=
fsl_pcibios_fixup_bus
,
#endif
.
get_irq
=
mpic_get_
coreint_
irq
,
.
get_irq
=
mpic_get_irq
,
.
restart
=
fsl_rstcr_restart
,
.
calibrate_decr
=
generic_calibrate_decr
,
.
progress
=
udbg_progress
,
.
power_save
=
e500_idle
,
};
machine_device_initcall
(
p3060_qds
,
corenet_ds_publish_devices
);
#ifdef CONFIG_SWIOTLB
machine_arch_initcall
(
p3060_qds
,
swiotlb_setup_bus_notifier
);
#endif
arch/powerpc/platforms/85xx/sbc8560.c
deleted
100644 → 0
View file @
10db8d21
/*
* Wind River SBC8560 setup and early boot code.
*
* Copyright 2007 Wind River Systems Inc.
*
* By Paul Gortmaker (see MAINTAINERS for contact information)
*
* Based largely on the MPC8560ADS support - Copyright 2005 Freescale Inc.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation; either version 2 of the License, or (at your
* option) any later version.
*/
#include <linux/stddef.h>
#include <linux/kernel.h>
#include <linux/pci.h>
#include <linux/kdev_t.h>
#include <linux/delay.h>
#include <linux/seq_file.h>
#include <linux/of_platform.h>
#include <asm/time.h>
#include <asm/machdep.h>
#include <asm/pci-bridge.h>
#include <asm/mpic.h>
#include <mm/mmu_decl.h>
#include <asm/udbg.h>
#include <sysdev/fsl_soc.h>
#include <sysdev/fsl_pci.h>
#include "mpc85xx.h"
#ifdef CONFIG_CPM2
#include <asm/cpm2.h>
#include <sysdev/cpm2_pic.h>
#endif
static
void
__init
sbc8560_pic_init
(
void
)
{
struct
mpic
*
mpic
=
mpic_alloc
(
NULL
,
0
,
MPIC_BIG_ENDIAN
,
0
,
256
,
" OpenPIC "
);
BUG_ON
(
mpic
==
NULL
);
mpic_init
(
mpic
);
mpc85xx_cpm2_pic_init
();
}
/*
* Setup the architecture
*/
#ifdef CONFIG_CPM2
struct
cpm_pin
{
int
port
,
pin
,
flags
;
};
static
const
struct
cpm_pin
sbc8560_pins
[]
=
{
/* SCC1 */
{
3
,
29
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
{
3
,
30
,
CPM_PIN_OUTPUT
|
CPM_PIN_SECONDARY
},
{
3
,
31
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
/* SCC2 */
{
3
,
26
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
{
3
,
27
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
{
3
,
28
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
/* FCC2 */
{
1
,
18
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
19
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
20
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
21
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
22
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
{
1
,
23
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
{
1
,
24
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
{
1
,
25
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
{
1
,
26
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
27
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
28
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
29
,
CPM_PIN_OUTPUT
|
CPM_PIN_SECONDARY
},
{
1
,
30
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
31
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
{
2
,
18
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
/* CLK14 */
{
2
,
19
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
/* CLK13 */
/* FCC3 */
{
1
,
4
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
{
1
,
5
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
{
1
,
6
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
{
1
,
7
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
{
1
,
8
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
9
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
10
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
11
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
12
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
13
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
14
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
{
1
,
15
,
CPM_PIN_OUTPUT
|
CPM_PIN_PRIMARY
},
{
1
,
16
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
1
,
17
,
CPM_PIN_INPUT
|
CPM_PIN_PRIMARY
},
{
2
,
16
,
CPM_PIN_INPUT
|
CPM_PIN_SECONDARY
},
/* CLK16 */
{
2
,
17
,
CPM_PIN_INPUT
|
CPM_PIN_SECONDARY
},
/* CLK15 */
};
static
void
__init
init_ioports
(
void
)
{
int
i
;
for
(
i
=
0
;
i
<
ARRAY_SIZE
(
sbc8560_pins
);
i
++
)
{
const
struct
cpm_pin
*
pin
=
&
sbc8560_pins
[
i
];
cpm2_set_pin
(
pin
->
port
,
pin
->
pin
,
pin
->
flags
);
}
cpm2_clk_setup
(
CPM_CLK_SCC1
,
CPM_BRG1
,
CPM_CLK_RX
);
cpm2_clk_setup
(
CPM_CLK_SCC1
,
CPM_BRG1
,
CPM_CLK_TX
);
cpm2_clk_setup
(
CPM_CLK_SCC2
,
CPM_BRG2
,
CPM_CLK_RX
);
cpm2_clk_setup
(
CPM_CLK_SCC2
,
CPM_BRG2
,
CPM_CLK_TX
);
cpm2_clk_setup
(
CPM_CLK_FCC2
,
CPM_CLK13
,
CPM_CLK_RX
);
cpm2_clk_setup
(
CPM_CLK_FCC2
,
CPM_CLK14
,
CPM_CLK_TX
);
cpm2_clk_setup
(
CPM_CLK_FCC3
,
CPM_CLK15
,
CPM_CLK_RX
);
cpm2_clk_setup
(
CPM_CLK_FCC3
,
CPM_CLK16
,
CPM_CLK_TX
);
}
#endif
static
void
__init
sbc8560_setup_arch
(
void
)
{
#ifdef CONFIG_PCI
struct
device_node
*
np
;
#endif
if
(
ppc_md
.
progress
)
ppc_md
.
progress
(
"sbc8560_setup_arch()"
,
0
);
#ifdef CONFIG_CPM2
cpm2_reset
();
init_ioports
();
#endif
#ifdef CONFIG_PCI
for_each_compatible_node
(
np
,
"pci"
,
"fsl,mpc8540-pci"
)
fsl_add_bridge
(
np
,
1
);
#endif
}
static
void
sbc8560_show_cpuinfo
(
struct
seq_file
*
m
)
{
uint
pvid
,
svid
,
phid1
;
pvid
=
mfspr
(
SPRN_PVR
);
svid
=
mfspr
(
SPRN_SVR
);
seq_printf
(
m
,
"Vendor
\t\t
: Wind River
\n
"
);
seq_printf
(
m
,
"PVR
\t\t
: 0x%x
\n
"
,
pvid
);
seq_printf
(
m
,
"SVR
\t\t
: 0x%x
\n
"
,
svid
);
/* Display cpu Pll setting */
phid1
=
mfspr
(
SPRN_HID1
);
seq_printf
(
m
,
"PLL setting
\t
: 0x%x
\n
"
,
((
phid1
>>
24
)
&
0x3f
));
}
machine_device_initcall
(
sbc8560
,
mpc85xx_common_publish_devices
);
/*
* Called very early, device-tree isn't unflattened
*/
static
int
__init
sbc8560_probe
(
void
)
{
unsigned
long
root
=
of_get_flat_dt_root
();
return
of_flat_dt_is_compatible
(
root
,
"SBC8560"
);
}
#ifdef CONFIG_RTC_DRV_M48T59
static
int
__init
sbc8560_rtc_init
(
void
)
{
struct
device_node
*
np
;
struct
resource
res
;
struct
platform_device
*
rtc_dev
;
np
=
of_find_compatible_node
(
NULL
,
NULL
,
"m48t59"
);
if
(
np
==
NULL
)
{
printk
(
"No RTC in DTB. Has it been eaten by wild dogs?
\n
"
);
return
-
ENODEV
;
}
of_address_to_resource
(
np
,
0
,
&
res
);
of_node_put
(
np
);
printk
(
"Found RTC (m48t59) at i/o 0x%x
\n
"
,
res
.
start
);
rtc_dev
=
platform_device_register_simple
(
"rtc-m48t59"
,
0
,
&
res
,
1
);
if
(
IS_ERR
(
rtc_dev
))
{
printk
(
"Registering sbc8560 RTC device failed
\n
"
);
return
PTR_ERR
(
rtc_dev
);
}
return
0
;
}
arch_initcall
(
sbc8560_rtc_init
);
#endif
/* M48T59 */
static
__u8
__iomem
*
brstcr
;
static
int
__init
sbc8560_bdrstcr_init
(
void
)
{
struct
device_node
*
np
;
struct
resource
res
;
np
=
of_find_compatible_node
(
NULL
,
NULL
,
"wrs,sbc8560-brstcr"
);
if
(
np
==
NULL
)
{
printk
(
KERN_WARNING
"sbc8560: No board specific RSTCR in DTB.
\n
"
);
return
-
ENODEV
;
}
of_address_to_resource
(
np
,
0
,
&
res
);
printk
(
KERN_INFO
"sbc8560: Found BRSTCR at %pR
\n
"
,
&
res
);
brstcr
=
ioremap
(
res
.
start
,
resource_size
(
&
res
));
if
(
!
brstcr
)
printk
(
KERN_WARNING
"sbc8560: ioremap of brstcr failed.
\n
"
);
of_node_put
(
np
);
return
0
;
}
arch_initcall
(
sbc8560_bdrstcr_init
);
void
sbc8560_rstcr_restart
(
char
*
cmd
)
{
local_irq_disable
();
if
(
brstcr
)
clrbits8
(
brstcr
,
0x80
);
while
(
1
);
}
define_machine
(
sbc8560
)
{
.
name
=
"SBC8560"
,
.
probe
=
sbc8560_probe
,
.
setup_arch
=
sbc8560_setup_arch
,
.
init_IRQ
=
sbc8560_pic_init
,
.
show_cpuinfo
=
sbc8560_show_cpuinfo
,
.
get_irq
=
mpic_get_irq
,
.
restart
=
sbc8560_rstcr_restart
,
.
calibrate_decr
=
generic_calibrate_decr
,
.
progress
=
udbg_progress
,
};
arch/powerpc/platforms/Kconfig.cputype
View file @
af3bf7fb
...
...
@@ -159,6 +159,10 @@ config PPC_E500MC
bool "e500mc Support"
select PPC_FPU
depends on E500
help
This must be enabled for running on e500mc (and derivatives
such as e5500/e6500), and must be disabled for running on
e500v1 or e500v2.
config PPC_FPU
bool
...
...
arch/powerpc/sysdev/fsl_pci.c
View file @
af3bf7fb
/*
* MPC83xx/85xx/86xx PCI/PCIE support routing.
*
* Copyright 2007-201
1
Freescale Semiconductor, Inc.
* Copyright 2007-201
2
Freescale Semiconductor, Inc.
* Copyright 2008-2009 MontaVista Software, Inc.
*
* Initial author: Xianghua Xiao <x.xiao@freescale.com>
...
...
@@ -36,7 +36,7 @@
static
int
fsl_pcie_bus_fixup
,
is_mpc83xx_pci
;
static
void
__init
quirk_fsl_pcie_header
(
struct
pci_dev
*
dev
)
static
void
__
dev
init
quirk_fsl_pcie_header
(
struct
pci_dev
*
dev
)
{
u8
progif
;
...
...
@@ -807,3 +807,72 @@ u64 fsl_pci_immrbar_base(struct pci_controller *hose)
return
0
;
}
#if defined(CONFIG_FSL_SOC_BOOKE) || defined(CONFIG_PPC_86xx)
static
const
struct
of_device_id
pci_ids
[]
=
{
{
.
compatible
=
"fsl,mpc8540-pci"
,
},
{
.
compatible
=
"fsl,mpc8548-pcie"
,
},
{
.
compatible
=
"fsl,mpc8610-pci"
,
},
{
.
compatible
=
"fsl,mpc8641-pcie"
,
},
{
.
compatible
=
"fsl,p1022-pcie"
,
},
{
.
compatible
=
"fsl,p1010-pcie"
,
},
{
.
compatible
=
"fsl,p1023-pcie"
,
},
{
.
compatible
=
"fsl,p4080-pcie"
,
},
{
.
compatible
=
"fsl,qoriq-pcie-v2.3"
,
},
{
.
compatible
=
"fsl,qoriq-pcie-v2.2"
,
},
{},
};
struct
device_node
*
fsl_pci_primary
;
void
__devinit
fsl_pci_init
(
void
)
{
struct
device_node
*
node
;
struct
pci_controller
*
hose
;
dma_addr_t
max
=
0xffffffff
;
/* Callers can specify the primary bus using other means. */
if
(
!
fsl_pci_primary
)
{
/* If a PCI host bridge contains an ISA node, it's primary. */
node
=
of_find_node_by_type
(
NULL
,
"isa"
);
while
((
fsl_pci_primary
=
of_get_parent
(
node
)))
{
of_node_put
(
node
);
node
=
fsl_pci_primary
;
if
(
of_match_node
(
pci_ids
,
node
))
break
;
}
}
node
=
NULL
;
for_each_node_by_type
(
node
,
"pci"
)
{
if
(
of_match_node
(
pci_ids
,
node
))
{
/*
* If there's no PCI host bridge with ISA, arbitrarily
* designate one as primary. This can go away once
* various bugs with primary-less systems are fixed.
*/
if
(
!
fsl_pci_primary
)
fsl_pci_primary
=
node
;
fsl_add_bridge
(
node
,
fsl_pci_primary
==
node
);
hose
=
pci_find_hose_for_OF_device
(
node
);
max
=
min
(
max
,
hose
->
dma_window_base_cur
+
hose
->
dma_window_size
);
}
}
#ifdef CONFIG_SWIOTLB
/*
* if we couldn't map all of DRAM via the dma windows
* we need SWIOTLB to handle buffers located outside of
* dma capable memory region
*/
if
(
memblock_end_of_DRAM
()
-
1
>
max
)
{
ppc_swiotlb_enable
=
1
;
set_pci_dma_ops
(
&
swiotlb_dma_ops
);
ppc_md
.
pci_dma_dev_setup
=
pci_dma_dev_setup_swiotlb
;
}
#endif
}
#endif
arch/powerpc/sysdev/fsl_pci.h
View file @
af3bf7fb
...
...
@@ -93,5 +93,13 @@ extern void fsl_pcibios_fixup_bus(struct pci_bus *bus);
extern
int
mpc83xx_add_bridge
(
struct
device_node
*
dev
);
u64
fsl_pci_immrbar_base
(
struct
pci_controller
*
hose
);
extern
struct
device_node
*
fsl_pci_primary
;
#ifdef CONFIG_FSL_PCI
void
fsl_pci_init
(
void
);
#else
static
inline
void
fsl_pci_init
(
void
)
{}
#endif
#endif
/* __POWERPC_FSL_PCI_H */
#endif
/* __KERNEL__ */
arch/powerpc/sysdev/mpic.c
View file @
af3bf7fb
...
...
@@ -1211,7 +1211,7 @@ struct mpic * __init mpic_alloc(struct device_node *node,
if
(
of_get_property
(
node
,
"single-cpu-affinity"
,
NULL
))
flags
|=
MPIC_SINGLE_DEST_CPU
;
if
(
of_device_is_compatible
(
node
,
"fsl,mpic"
))
flags
|=
MPIC_FSL
;
flags
|=
MPIC_FSL
|
MPIC_LARGE_VECTORS
;
mpic
=
kzalloc
(
sizeof
(
struct
mpic
),
GFP_KERNEL
);
if
(
mpic
==
NULL
)
...
...
arch/powerpc/sysdev/qe_lib/qe.c
View file @
af3bf7fb
...
...
@@ -395,6 +395,9 @@ static void qe_upload_microcode(const void *base,
for
(
i
=
0
;
i
<
be32_to_cpu
(
ucode
->
count
);
i
++
)
out_be32
(
&
qe_immr
->
iram
.
idata
,
be32_to_cpu
(
code
[
i
]));
/* Set I-RAM Ready Register */
out_be32
(
&
qe_immr
->
iram
.
iready
,
be32_to_cpu
(
QE_IRAM_READY
));
}
/*
...
...
drivers/watchdog/Kconfig
View file @
af3bf7fb
...
...
@@ -1115,10 +1115,10 @@ config BOOKE_WDT
config BOOKE_WDT_DEFAULT_TIMEOUT
int "PowerPC Book-E Watchdog Timer Default Timeout"
depends on BOOKE_WDT
default 38 if
FSL_BOOK
E
range 0 63 if
FSL_BOOK
E
default 3 if !
FSL_BOOK
E
range 0 3 if !
FSL_BOOK
E
default 38 if
PPC_FSL_BOOK3
E
range 0 63 if
PPC_FSL_BOOK3
E
default 3 if !
PPC_FSL_BOOK3
E
range 0 3 if !
PPC_FSL_BOOK3
E
help
Select the default watchdog timer period to be used by the PowerPC
Book-E watchdog driver. A watchdog "event" occurs when the bit
...
...
drivers/watchdog/booke_wdt.c
View file @
af3bf7fb
...
...
@@ -37,7 +37,7 @@
u32
booke_wdt_enabled
;
u32
booke_wdt_period
=
CONFIG_BOOKE_WDT_DEFAULT_TIMEOUT
;
#ifdef CONFIG_
FSL_BOOK
E
#ifdef CONFIG_
PPC_FSL_BOOK3
E
#define WDTP(x) ((((x)&0x3)<<30)|(((x)&0x3c)<<15))
#define WDTP_MASK (WDTP(0x3f))
#else
...
...
@@ -190,7 +190,7 @@ static long booke_wdt_ioctl(struct file *file,
case
WDIOC_SETTIMEOUT
:
if
(
get_user
(
tmp
,
p
))
return
-
EFAULT
;
#ifdef CONFIG_
FSL_BOOK
E
#ifdef CONFIG_
PPC_FSL_BOOK3
E
/* period of 1 gives the largest possible timeout */
if
(
tmp
>
period_to_sec
(
1
))
return
-
EINVAL
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment