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
nexedi
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