On 07/16/2015 03:08 PM, Nishanth Menon wrote:
TI armv7 based SoCs are based on two architectures - one based on OMAP
generation architecture and others based on Keystone architecture.

Many of the options are architecture specific, however a lot are common
with v7 architecture. So, step 1 will be to move out OMAP specific stuff
from ti_armv7_common into a ti_armv7_omap.h header which is then used
by all the relevant architecture headers.

Signed-off-by: Nishanth Menon <n...@ti.com>
---
V2: no change.

V1: https://patchwork.ozlabs.org/patch/496726/
  include/configs/am43xx_evm.h       |  2 +-
  include/configs/ti_am335x_common.h |  2 +-
  include/configs/ti_armv7_common.h  | 21 ----------------
  include/configs/ti_armv7_omap.h    | 49 ++++++++++++++++++++++++++++++++++++++
  include/configs/ti_omap3_common.h  |  2 +-
  include/configs/ti_omap4_common.h  |  2 +-
  include/configs/ti_omap5_common.h  |  2 +-
  7 files changed, 54 insertions(+), 26 deletions(-)
  create mode 100644 include/configs/ti_armv7_omap.h

diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h
index 33e534a76583..65ac8ef34eb8 100644
--- a/include/configs/am43xx_evm.h
+++ b/include/configs/am43xx_evm.h
@@ -80,7 +80,7 @@
  #endif

  /* Now bring in the rest of the common code. */
-#include <configs/ti_armv7_common.h>
+#include <configs/ti_armv7_omap.h>

  /* Always 64 KiB env size */
  #define CONFIG_ENV_SIZE                       (64 << 10)
diff --git a/include/configs/ti_am335x_common.h 
b/include/configs/ti_am335x_common.h
index 4d2ae280e7f1..9697431b4496 100644
--- a/include/configs/ti_am335x_common.h
+++ b/include/configs/ti_am335x_common.h
@@ -94,6 +94,6 @@
  #endif

  /* Now bring in the rest of the common code. */
-#include <configs/ti_armv7_common.h>
+#include <configs/ti_armv7_omap.h>

  #endif        /* __CONFIG_TI_AM335X_COMMON_H__ */
diff --git a/include/configs/ti_armv7_common.h 
b/include/configs/ti_armv7_common.h
index 0aea7d12ec16..63244dbc83ff 100644
--- a/include/configs/ti_armv7_common.h
+++ b/include/configs/ti_armv7_common.h
@@ -18,8 +18,6 @@
  #define __CONFIG_TI_ARMV7_COMMON_H__

  /* Common define for many platforms. */
-#define CONFIG_OMAP
-#define CONFIG_OMAP_COMMON
  #define CONFIG_SYS_GENERIC_BOARD

  /*
@@ -86,39 +84,20 @@
  #define CONFIG_I2C
  #define CONFIG_CMD_I2C
  #define CONFIG_SYS_I2C
-#define CONFIG_SYS_OMAP24_I2C_SPEED    100000
-#define CONFIG_SYS_OMAP24_I2C_SLAVE    1
-#define CONFIG_SYS_I2C_OMAP24XX

  /* MMC/SD IP block */
  #define CONFIG_MMC
  #define CONFIG_GENERIC_MMC

Why do we need MMC options in common? Only keystone device that uses MMC is Galileo. This should stay in individual device specific or
board specific config file.

-#define CONFIG_OMAP_HSMMC
  #define CONFIG_CMD_MMC

Same here..


  /* McSPI IP block */
  #define CONFIG_SPI
-#define CONFIG_OMAP3_SPI
  #define CONFIG_CMD_SPI

  /* GPIO block */
-#define CONFIG_OMAP_GPIO
  #define CONFIG_CMD_GPIO
I believe currently keystone doesn't use GPIO, but this may change.
Probably remove this as well for now and add it when GPIO is supported on K2.

  /*
- * GPMC NAND block.  We support 1 device and the physical address to
- * access CS0 at is 0x8000000.
- */
-#ifdef CONFIG_NAND
-#define CONFIG_NAND_OMAP_GPMC
-#ifndef CONFIG_SYS_NAND_BASE
-#define CONFIG_SYS_NAND_BASE           0x8000000
-#endif
-#define CONFIG_SYS_MAX_NAND_DEVICE     1
-#define CONFIG_CMD_NAND
-#endif
-
-/*
   * The following are general good-enough settings for U-Boot.  We set a
   * large malloc pool as we generally have a lot of DDR, and we opt for
   * function over binary size in the main portion of U-Boot as this is
diff --git a/include/configs/ti_armv7_omap.h b/include/configs/ti_armv7_omap.h
new file mode 100644
index 000000000000..7548170afcf7
--- /dev/null
+++ b/include/configs/ti_armv7_omap.h
@@ -0,0 +1,49 @@
+/*
+ * ti_armv7_omap.h
+ *
+ * Copyright (C) 2015 Texas Instruments Incorporated - http://www.ti.com/
+ *
+ * SPDX-License-Identifier:    GPL-2.0+
+ *
+ * The various ARMv7 SoCs from TI all share a number of IP blocks when
+ * implementing a given feature. This is meant to isolate the features
+ * that are based on OMAP architecture.
+ */
+#ifndef __CONFIG_TI_ARMV7_OMAP_H__
+#define __CONFIG_TI_ARMV7_OMAP_H__
+
+/* Common defines for all OMAP architecture based SoCs */
+#define CONFIG_OMAP
+#define CONFIG_OMAP_COMMON
+
+/* I2C IP block */
+#define CONFIG_SYS_OMAP24_I2C_SPEED    100000
+#define CONFIG_SYS_OMAP24_I2C_SLAVE    1
+#define CONFIG_SYS_I2C_OMAP24XX
+
+/* MMC/SD IP block */
+#define CONFIG_OMAP_HSMMC
+
+/* SPI IP Block */
+#define CONFIG_OMAP3_SPI
+
+/* GPIO block */
+#define CONFIG_OMAP_GPIO
+
+/*
+ * GPMC NAND block.  We support 1 device and the physical address to
+ * access CS0 at is 0x8000000.
+ */
+#ifdef CONFIG_NAND
+#define CONFIG_NAND_OMAP_GPMC
+#ifndef CONFIG_SYS_NAND_BASE
+#define CONFIG_SYS_NAND_BASE           0x8000000
+#endif
+#define CONFIG_SYS_MAX_NAND_DEVICE     1
+#define CONFIG_CMD_NAND
+#endif
+
+/* Now for the remaining common defines */
+#include <configs/ti_armv7_common.h>
+
+#endif /* __CONFIG_TI_ARMV7_OMAP_H__ */
diff --git a/include/configs/ti_omap3_common.h 
b/include/configs/ti_omap3_common.h
index 429b109afa23..be231a551361 100644
--- a/include/configs/ti_omap3_common.h
+++ b/include/configs/ti_omap3_common.h
@@ -84,6 +84,6 @@
  #endif

  /* Now bring in the rest of the common code. */
-#include <configs/ti_armv7_common.h>
+#include <configs/ti_armv7_omap.h>

  #endif        /* __CONFIG_TI_OMAP3_COMMON_H__ */
diff --git a/include/configs/ti_omap4_common.h 
b/include/configs/ti_omap4_common.h
index e96613406b3b..959f312edb5b 100644
--- a/include/configs/ti_omap4_common.h
+++ b/include/configs/ti_omap4_common.h
@@ -52,7 +52,7 @@
  #define CONFIG_SYS_DEFAULT_LPDDR2_TIMINGS
  #endif

-#include <configs/ti_armv7_common.h>
+#include <configs/ti_armv7_omap.h>

  /*
   * Hardware drivers
diff --git a/include/configs/ti_omap5_common.h 
b/include/configs/ti_omap5_common.h
index f3e5a7587de9..789542be6710 100644
--- a/include/configs/ti_omap5_common.h
+++ b/include/configs/ti_omap5_common.h
@@ -47,7 +47,7 @@
  #include <asm/arch/cpu.h>
  #include <asm/arch/omap.h>

-#include <configs/ti_armv7_common.h>
+#include <configs/ti_armv7_omap.h>

  /*
   * Hardware drivers



--
Murali Karicheri
Linux Kernel, Keystone
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to