ppc: Split MPC83xx SERDES code from MPC85xx/MPC86xx/QorIQ
authorKumar Gala <galak@kernel.crashing.org>
Tue, 20 Apr 2010 15:02:24 +0000 (10:02 -0500)
committerKumar Gala <galak@kernel.crashing.org>
Tue, 27 Apr 2010 03:37:57 +0000 (22:37 -0500)
The MPC83xx SERDES control is different from the other FSL PPC chips.
For now lets split it out so we can standardize on interfaces for
determining of a device on SERDES is configured.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Kim Phillips <kim.phillips@freescale.com>
arch/powerpc/cpu/mpc83xx/serdes.c
arch/powerpc/include/asm/fsl_mpc83xx_serdes.h [new file with mode: 0644]
board/freescale/mpc837xemds/mpc837xemds.c
board/freescale/mpc837xemds/pci.c
board/freescale/mpc837xerdb/mpc837xerdb.c

index 64033fe4c35dec86b046f6f745ba122d0bc7fc65..fecfc80f81d35867c0d78e70b1085c30a092362d 100644 (file)
@@ -15,7 +15,7 @@
 #include <config.h>
 #include <common.h>
 #include <asm/io.h>
-#include <asm/fsl_serdes.h>
+#include <asm/fsl_mpc83xx_serdes.h>
 
 /* SerDes registers */
 #define FSL_SRDSCR0_OFFS               0x0
diff --git a/arch/powerpc/include/asm/fsl_mpc83xx_serdes.h b/arch/powerpc/include/asm/fsl_mpc83xx_serdes.h
new file mode 100644 (file)
index 0000000..2d813f4
--- /dev/null
@@ -0,0 +1,36 @@
+/*
+ * Copyright 2010 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.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+#ifndef __FSL_MPC83XX_SERDES_H
+#define __FSL_MPC83XX_SERDES_H
+
+#include <config.h>
+
+#define FSL_SERDES_CLK_100             (0 << 28)
+#define FSL_SERDES_CLK_125             (1 << 28)
+#define FSL_SERDES_CLK_150             (3 << 28)
+#define FSL_SERDES_PROTO_SATA          0
+#define FSL_SERDES_PROTO_PEX           1
+#define FSL_SERDES_PROTO_PEX_X2                2
+#define FSL_SERDES_PROTO_SGMII         3
+#define FSL_SERDES_VDD_1V              1
+
+extern void fsl_setup_serdes(u32 offset, char proto, u32 rfcks, char vdd);
+
+#endif /* __FSL_MPC83XX_SERDES_H */
index 9d8b18d99348f468e5cc31c8cffa371a7806b3a9..32a87adb9e8170b6f0079efb906157a747c200f7 100644 (file)
@@ -14,7 +14,7 @@
 #include <hwconfig.h>
 #include <i2c.h>
 #include <asm/io.h>
-#include <asm/fsl_serdes.h>
+#include <asm/fsl_mpc83xx_serdes.h>
 #include <spd_sdram.h>
 #include <tsec.h>
 #include <libfdt.h>
index 6b7b8b2e7f7c27e13f521046ea80d8cff2a0f692..82f34f85c8bf267aa17cfeed92c8ca5cb693b544 100644 (file)
@@ -18,7 +18,7 @@
 #include <i2c.h>
 #include <fdt_support.h>
 #include <asm/fsl_i2c.h>
-#include <asm/fsl_serdes.h>
+#include <asm/fsl_mpc83xx_serdes.h>
 
 static struct pci_region pci_regions[] = {
        {
index c5c2e40833aca0e26147005473b70f40b5877fff..d636796f85d6c6f9fa5d370c274cbe9fae1213ff 100644 (file)
@@ -16,7 +16,7 @@
 #include <hwconfig.h>
 #include <i2c.h>
 #include <asm/io.h>
-#include <asm/fsl_serdes.h>
+#include <asm/fsl_mpc83xx_serdes.h>
 #include <fdt_support.h>
 #include <spd_sdram.h>
 #include <vsc7385.h>