Skip to contentSkip to conversation

Add Intel Arria 10 SoC FPGA driver

PATCH Superseded tien.fong.chee at intel.com 5 participants 25 messages May 29, 2017 – Jun 6, 2017

Subsystems (4)

v7 of 13 Superseded Latest is v13 →

lore
Share & tools
lore
#0 lore raw

v7 cover Add Intel Arria 10 SoC FPGA driver

From: Tien Fong Chee <[email protected]>

This is the 6th version of patchset to adds support for Intel Arria 10 SoC FPGA driver. This version mainly resolved comments from Dinh in [v6]. This series is working on top of u-boot.git - http://git.denx.de/u-boot.git.

[v5]: https://www.mail-archive.com/u-boot at lists.denx.de/msg250687.html

v6 -> v7 changes:
-----------------
- Changed commit header of patch 4/6 to more generic.

Patchset history
----------------
[v1]: https://www.mail-archive.com/u-boot at lists.denx.de/msg247788.html [v2]: https://www.mail-archive.com/u-boot at lists.denx.de/msg248541.html [v3]: https://www.mail-archive.com/u-boot at lists.denx.de/msg249160.html [v4]: https://www.mail-archive.com/u-boot at lists.denx.de/msg250149.html [v5]: https://www.mail-archive.com/u-boot at lists.denx.de/msg250517.html

Tien Fong Chee (6):
arm: socfpga: Remove unused passing parameter of socfpga_bridges_reset
arm: socfpga: Restructure FPGA driver in the preparation to support

    A10

arm: socfpga: Enable FPGA driver on SPL
drivers: Enable FPGA driver build on SPL
arm: socfpga: Move FPGA manager driver to FPGA driver
arm: socfpga: Add FPGA driver support for Arria 10

 arch/arm/mach-socfpga/Makefile                     |   1 -
 arch/arm/mach-socfpga/fpga_manager.c               |  78 ----
 arch/arm/mach-socfpga/include/mach/fpga_manager.h  |  70 +--
 .../include/mach/fpga_manager_arria10.h            | 100 +++++
 .../mach/{fpga_manager.h => fpga_manager_gen5.h}   |  69 ++-
 .../include/mach/reset_manager_arria10.h           |   2 +-
 arch/arm/mach-socfpga/reset_manager_arria10.c      |   4 +-
 drivers/Makefile                                   |   1 +
 drivers/fpga/Makefile                              |   2 +
 drivers/fpga/socfpga.c                             | 241 +----------
 drivers/fpga/socfpga_arria10.c                     | 479 +++++++++++++++++++++
 drivers/fpga/{socfpga.c => socfpga_gen5.c}         |  98 ++---
 include/configs/socfpga_common.h                   |   4 +-
 13 files changed, 685 insertions(+), 464 deletions(-)
 delete mode 100644 arch/arm/mach-socfpga/fpga_manager.c
 create mode 100644 arch/arm/mach-socfpga/include/mach/fpga_manager_arria10.h
 copy arch/arm/mach-socfpga/include/mach/{fpga_manager.h => fpga_manager_gen5.h} (57%)
 create mode 100644 drivers/fpga/socfpga_arria10.c
 copy drivers/fpga/{socfpga.c => socfpga_gen5.c} (85%)
Signature · 1 line
2.2.0
#1 lore raw

PATCH v7 1/6 arm: socfpga: Remove unused passing parameter of socfpga_bridges_reset

From: Tien Fong Chee <[email protected]>

Remove parameter from socfpga_bridges_reset(), and keeping this function for single purpose which is just triggering reset on bridges. socfpga_reset_deassert_bridges_handoff() can be called for releasing reset on any bridges based on the bridge setting defined in fdt.

---
 arch/arm/mach-socfpga/include/mach/reset_manager_arria10.h | 2 +-
 arch/arm/mach-socfpga/reset_manager_arria10.c              | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)
arch/arm/mach-socfpga/include/mach/reset_manager_arria10.h +1 -1
index 7922db8..b6d7f4f 100644
@@ -17,7 +17,7 @@ int socfpga_reset_deassert_bridges_handoff(void);
 void socfpga_reset_assert_fpga_connected_peripherals(void);
 void socfpga_reset_deassert_osc1wd0(void);
 void socfpga_reset_uart(int assert);
-int socfpga_bridges_reset(int enable);
+int socfpga_bridges_reset(void);
 
 struct socfpga_reset_manager {
 	u32	stat;
arch/arm/mach-socfpga/reset_manager_arria10.c +2 -2
index d8c858c..66f1ec2 100644
@@ -318,13 +318,13 @@ void socfpga_per_reset_all(void)
 }
 
 #if defined(CONFIG_SOCFPGA_VIRTUAL_TARGET)
-int socfpga_bridges_reset(int enable)
+int socfpga_bridges_reset(void)
 {
 	/* For SoCFPGA-VT, this is NOP. */
 	return 0;
 }
 #else
-int socfpga_bridges_reset(int enable)
+int socfpga_bridges_reset(void)
 {
 	int ret;
 
Signature · 1 line
2.2.0
#2 lore raw

PATCH v7 2/6 arm: socfpga: Restructure FPGA driver in the preparation to support A10

In reply to tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

Move FPGA driver which is Gen5 specific code into Gen5 driver file and keeping common FPGA driver intact. All the changes are still keeping in driver/fpga/ and no functional change. Subsequent patch would move FPGA manager driver from arch/arm into driver/fpga/.

---
 arch/arm/mach-socfpga/Makefile                     |   2 +-
 arch/arm/mach-socfpga/include/mach/fpga_manager.h  |  68 +-----
 .../mach/{fpga_manager.h => fpga_manager_gen5.h}   |  69 +++---
 drivers/fpga/Makefile                              |   1 +
 drivers/fpga/socfpga.c                             | 241 +--------------------
 drivers/fpga/{socfpga.c => socfpga_gen5.c}         |  54 +----
 6 files changed, 49 insertions(+), 386 deletions(-)
 copy arch/arm/mach-socfpga/include/mach/{fpga_manager.h => fpga_manager_gen5.h} (57%)
 copy drivers/fpga/{socfpga.c => socfpga_gen5.c} (83%)
arch/arm/mach-socfpga/Makefile +1 -1
index 41b779c..286bfef 100644
@@ -9,7 +9,6 @@
 
 obj-y	+= board.o
 obj-y	+= clock_manager.o
-obj-y	+= fpga_manager.o
 obj-y	+= misc.o
 obj-y	+= reset_manager.o
 obj-y	+= timer.o
@@ -21,6 +20,7 @@ obj-y	+= reset_manager_gen5.o
 obj-y	+= scan_manager.o
 obj-y	+= system_manager_gen5.o
 obj-y	+= wrap_pll_config.o
+obj-y	+= fpga_manager.o
 endif
 
 ifdef CONFIG_TARGET_SOCFPGA_ARRIA10
arch/arm/mach-socfpga/include/mach/fpga_manager.h +12 -56

84 lines not on this page · raw message

arch/arm/mach-socfpga/include/mach/fpga_manager_gen5.h renamed from arch/arm/mach-socfpga/include/mach/fpga_manager.h +30 -39

83 lines not on this page · raw message

drivers/fpga/Makefile +1 -0
index 777706f..b65e5ba 100644
@@ -20,4 +20,5 @@ obj-$(CONFIG_FPGA_CYCLON2) += cyclon2.o
 obj-$(CONFIG_FPGA_STRATIX_II) += stratixII.o
 obj-$(CONFIG_FPGA_STRATIX_V) += stratixv.o
 obj-$(CONFIG_FPGA_SOCFPGA) += socfpga.o
+obj-$(CONFIG_TARGET_SOCFPGA_GEN5) += socfpga_gen5.o
 endif
drivers/fpga/socfpga.c +4 -237

262 lines not on this page · raw message

drivers/fpga/socfpga_gen5.c renamed from drivers/fpga/socfpga.c +1 -53

72 lines not on this page · raw message

Signature · 1 line
2.2.0
#3 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

In reply to tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This patch is for enabling the FPGA driver support on SPL.

---
 include/configs/socfpga_common.h | 1 +
 1 file changed, 1 insertion(+)
include/configs/socfpga_common.h +1 -0
index da7e4ad..e74e7eb 100644
@@ -110,6 +110,7 @@
 #define CONFIG_FPGA
 #define CONFIG_FPGA_ALTERA
 #define CONFIG_FPGA_SOCFPGA
+#define CONFIG_SPL_FPGA_SUPPORT
 #define CONFIG_FPGA_COUNT		1
 #endif
 #endif
Signature · 1 line
2.2.0
#4 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

Quoted 14 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This patch is for enabling the FPGA driver support on SPL.

---
 include/configs/socfpga_common.h | 1 +
 1 file changed, 1 insertion(+)
include/configs/socfpga_common.h +0 -0
index da7e4ad..e74e7eb 100644

include/configs/socfpga_common.h line 113

Quoted 4 lines
include/configs/socfpga_common.h +1 -0
@@ -110,6 +110,7 @@
 #define CONFIG_FPGA
 #define CONFIG_FPGA_ALTERA
 #define CONFIG_FPGA_SOCFPGA
+#define CONFIG_SPL_FPGA_SUPPORT

This should be Kconfig symbol selected in board config. Why is it not Kconfig symbol ?

Quoted 4 lines
include/configs/socfpga_common.h +0 -0
 #define CONFIG_FPGA_COUNT		1
 #endif
 #endif
Signature · 2 lines
Best regards,
Marek Vasut
#5 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

Quoted 11 lines · Marek Vasut
Quoted 10 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This patch is for enabling the FPGA driver support on SPL.

---
 include/configs/socfpga_common.h | 1 +

 1 file changed, 1 insertion(+)
Quoted 13 lines

include/configs/socfpga_common.h line 113

Quoted 10 lines
include/configs/socfpga_common.h +1 -0
index da7e4ad..e74e7eb 100644
@@ -110,6 +110,7 @@
  #define CONFIG_FPGA
  #define CONFIG_FPGA_ALTERA
  #define CONFIG_FPGA_SOCFPGA
+#define CONFIG_SPL_FPGA_SUPPORT

This should be Kconfig symbol selected in board config. Why is it not Kconfig symbol ?

I have a patch that is specific for converting all FPGA related Macro config by tool created which will be submited after this patch set. Let me know if you prefer kconfig symbol.

Quoted 6 lines
Quoted 5 lines
include/configs/socfpga_common.h +0 -0
  #define CONFIG_FPGA_COUNT		1
  #endif
  #endif
#6 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

Quoted 16 lines · Tien Fong
Quoted 2 lines
Quoted 1 line
Quoted 13 lines · Marek Vasut
Quoted 11 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This patch is for enabling the FPGA driver support on SPL.

---
 include/configs/socfpga_common.h | 1 +

 1 file changed, 1 insertion(+)
Quoted 14 lines
Quoted 5 lines
Quoted 5 lines
include/configs/socfpga_common.h +0 -0
index da7e4ad..e74e7eb 100644
Quoted 9 lines

include/configs/socfpga_common.h line 113

Quoted 5 lines
include/configs/socfpga_common.h +1 -0
@@ -110,6 +110,7 @@
  #define CONFIG_FPGA
  #define CONFIG_FPGA_ALTERA
  #define CONFIG_FPGA_SOCFPGA
+#define CONFIG_SPL_FPGA_SUPPORT

This should be Kconfig symbol selected in board config. Why is it not
Kconfig symbol ?

Ahha....ijust recalled there is a very important reason i did this because CONFIG_CMD_FPGA which is wrapping all these FPGA related CONFIG is not part of kconfig. During the build, kconfig and Macro #define are in two different phase/order, so we might having build issue during kconfig build(1st phase) when some Macro #define which is 2nd phase are required.

Quoted 8 lines

I have a patch that is specific for converting all FPGA related Macro config by tool created which will be submited after this patch set. Let me know if you prefer kconfig symbol.

Quoted 5 lines
Quoted 5 lines
include/configs/socfpga_common.h +0 -0
  #define CONFIG_FPGA_COUNT		1
  #endif
  #endif
#7 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

Quoted 31 lines · Tien Fong
Quoted 16 lines · Tien Fong
Quoted 2 lines
Quoted 1 line
Quoted 13 lines · Marek Vasut
Quoted 11 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This patch is for enabling the FPGA driver support on SPL.

---
 include/configs/socfpga_common.h | 1 +
 1 file changed, 1 insertion(+)
Quoted 14 lines
Quoted 5 lines
Quoted 5 lines
include/configs/socfpga_common.h +0 -0
index da7e4ad..e74e7eb 100644
Quoted 9 lines

include/configs/socfpga_common.h line 113

Quoted 5 lines
include/configs/socfpga_common.h +1 -0
@@ -110,6 +110,7 @@
 #define CONFIG_FPGA
 #define CONFIG_FPGA_ALTERA
 #define CONFIG_FPGA_SOCFPGA
+#define CONFIG_SPL_FPGA_SUPPORT

This should be Kconfig symbol selected in board config. Why is it not
Kconfig symbol ?

Quoted 3 lines

Ahha....ijust recalled there is a very important reason i did this because CONFIG_CMD_FPGA which is wrapping all these FPGA related CONFIG is not part of kconfig.

it is, so this is nonsense, try git grep next time ... cmd/Kconfig:config CMD_FPGA

Quoted 4 lines

During the build, kconfig and Macro #define are
in two different phase/order, so we might having build issue during kconfig build(1st phase) when some Macro #define which is 2nd phase are required.

I don't understand this, but I think this is bogus.

Quoted 7 lines
Quoted 7 lines

I have a patch that is specific for converting all FPGA related Macro config by tool created which will be submited after this patch set. Let me know if you prefer kconfig symbol.

Quoted 4 lines
Quoted 4 lines
include/configs/socfpga_common.h +0 -0
 #define CONFIG_FPGA_COUNT		1
 #endif
 #endif
Signature · 2 lines
Best regards,
Marek Vasut
#8 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

Quoted 46 lines · Marek Vasut
Quoted 37 lines · Tien Fong
Quoted 20 lines · Tien Fong
Quoted 4 lines
Quoted 4 lines
Quoted 15 lines · Marek Vasut
Quoted 12 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This patch is for enabling the FPGA driver support on SPL.

---
 include/configs/socfpga_common.h | 1 +

 1 file changed, 1 insertion(+)
Quoted 15 lines
Quoted 6 lines
Quoted 6 lines
include/configs/socfpga_common.h +0 -0
index da7e4ad..e74e7eb 100644
@@ -110,6 +110,7 @@
Quoted 9 lines

include/configs/socfpga_common.h line 113

Quoted 4 lines
include/configs/socfpga_common.h +1 -0
  #define CONFIG_FPGA
  #define CONFIG_FPGA_ALTERA
  #define CONFIG_FPGA_SOCFPGA
+#define CONFIG_SPL_FPGA_SUPPORT

This should be Kconfig symbol selected in board config. Why is it
not
Kconfig symbol ?

Quoted 4 lines

Ahha....ijust recalled there is a very important reason i did this because CONFIG_CMD_FPGA which is wrapping all these FPGA related CONFIG
is not part of kconfig.

it is, so this is nonsense, try git grep next time ... cmd/Kconfig:config CMD_FPGA

Quoted 1 line
Quoted 7 lines
Quoted 5 lines

During the build, kconfig and Macro #define are
in two different phase/order, so we might having build issue during kconfig build(1st phase) when some Macro #define which is 2nd phase are
required.

I don't understand this, but I think this is bogus.

Okay. For example, CONFIG_A in Kconfig depend on CONFIG_B which is defined in socfpga_common.h. When SPL build, CONFIG_A would not be set to one even CONFIG_B is defined to one in header file, because at that moment build, CONFIG_B is not detected, but header file only get build after Kconfig build done.

Quoted 14 lines
Quoted 13 lines
Quoted 13 lines

I have a patch that is specific for converting all FPGA related Macro
config by tool created which will be submited after this patch set.
Let me know if you prefer kconfig symbol.

Quoted 6 lines
Quoted 6 lines
include/configs/socfpga_common.h +0 -0
  #define CONFIG_FPGA_COUNT		1
  #endif
  #endif
#9 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

Quoted 52 lines · Tien Fong
Quoted 51 lines · Marek Vasut
Quoted 37 lines · Tien Fong
Quoted 20 lines · Tien Fong
Quoted 4 lines
Quoted 4 lines
Quoted 15 lines · Marek Vasut
Quoted 12 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This patch is for enabling the FPGA driver support on SPL.

---
 include/configs/socfpga_common.h | 1 +
 1 file changed, 1 insertion(+)
Quoted 15 lines
Quoted 6 lines
Quoted 6 lines
include/configs/socfpga_common.h +0 -0
index da7e4ad..e74e7eb 100644
@@ -110,6 +110,7 @@
Quoted 9 lines

include/configs/socfpga_common.h line 113

Quoted 4 lines
include/configs/socfpga_common.h +1 -0
 #define CONFIG_FPGA
 #define CONFIG_FPGA_ALTERA
 #define CONFIG_FPGA_SOCFPGA
+#define CONFIG_SPL_FPGA_SUPPORT

This should be Kconfig symbol selected in board config. Why is it
not
Kconfig symbol ?

Quoted 4 lines

Ahha....ijust recalled there is a very important reason i did this because CONFIG_CMD_FPGA which is wrapping all these FPGA related CONFIG
is not part of kconfig.

it is, so this is nonsense, try git grep next time ... cmd/Kconfig:config CMD_FPGA

Quoted 6 lines

During the build, kconfig and Macro #define are
in two different phase/order, so we might having build issue during kconfig build(1st phase) when some Macro #define which is 2nd phase are
required.

Quoted 7 lines
Quoted 2 lines

I don't understand this, but I think this is bogus.

Okay. For example, CONFIG_A in Kconfig depend on CONFIG_B which is defined in socfpga_common.h. When SPL build, CONFIG_A would not be set to one even CONFIG_B is defined to one in header file, because at that moment build, CONFIG_B is not detected, but header file only get build after Kconfig build done.

Then convert whatever is missing to Kconfig and it's done ?

Signature · 2 lines
Best regards,
Marek Vasut
#10 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

Quoted 78 lines · Marek Vasut
Quoted 69 lines · Tien Fong
Quoted 58 lines · Marek Vasut
Quoted 45 lines · Tien Fong
Quoted 26 lines · Tien Fong
Quoted 7 lines
Quoted 7 lines
Quoted 18 lines · Marek Vasut
Quoted 14 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This patch is for enabling the FPGA driver support on SPL.

---
 include/configs/socfpga_common.h | 1 +

 1 file changed, 1 insertion(+)
Quoted 16 lines
Quoted 7 lines
Quoted 7 lines
include/configs/socfpga_common.h +0 -0
index da7e4ad..e74e7eb 100644
@@ -110,6 +110,7 @@
  #define CONFIG_FPGA
Quoted 9 lines

include/configs/socfpga_common.h line 113

Quoted 3 lines
include/configs/socfpga_common.h +1 -0
  #define CONFIG_FPGA_ALTERA
  #define CONFIG_FPGA_SOCFPGA
+#define CONFIG_SPL_FPGA_SUPPORT

This should be Kconfig symbol selected in board config. Why is
it
not
Kconfig symbol ?

Quoted 6 lines

Ahha....ijust recalled there is a very important reason i did this
because CONFIG_CMD_FPGA which is wrapping all these FPGA related
CONFIG
is not part of kconfig.

it is, so this is nonsense, try git grep next time ... cmd/Kconfig:config CMD_FPGA

Quoted 2 lines
Quoted 9 lines
Quoted 7 lines

During the build, kconfig and Macro #define are
in two different phase/order, so we might having build issue during
kconfig build(1st phase) when some Macro #define which is 2nd phase
are
required.

I don't understand this, but I think this is bogus.

Quoted 8 lines

Okay. For example, CONFIG_A in Kconfig depend on CONFIG_B which is defined in socfpga_common.h. When SPL build, CONFIG_A would not be set
to one even CONFIG_B is defined to one in header file, because at that
moment build, CONFIG_B is not detected, but header file only get build
after Kconfig build done.

Quoted 2 lines

Then convert whatever is missing to Kconfig and it's done ?

Yeah, i will send out immediately after this patch set.

#11 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

Quoted 79 lines · Tien Fong
Quoted 78 lines · Marek Vasut
Quoted 77 lines · Tien Fong
Quoted 58 lines · Marek Vasut
Quoted 45 lines · Tien Fong
Quoted 26 lines · Tien Fong
Quoted 7 lines
Quoted 7 lines
Quoted 18 lines · Marek Vasut
Quoted 14 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This patch is for enabling the FPGA driver support on SPL.

---
 include/configs/socfpga_common.h | 1 +
 1 file changed, 1 insertion(+)
Quoted 16 lines
Quoted 7 lines
Quoted 7 lines
include/configs/socfpga_common.h +0 -0
index da7e4ad..e74e7eb 100644
@@ -110,6 +110,7 @@
 #define CONFIG_FPGA
Quoted 9 lines

include/configs/socfpga_common.h line 113

Quoted 3 lines
include/configs/socfpga_common.h +1 -0
 #define CONFIG_FPGA_ALTERA
 #define CONFIG_FPGA_SOCFPGA
+#define CONFIG_SPL_FPGA_SUPPORT

This should be Kconfig symbol selected in board config. Why is
it
not
Kconfig symbol ?

Quoted 6 lines

Ahha....ijust recalled there is a very important reason i did this
because CONFIG_CMD_FPGA which is wrapping all these FPGA related
CONFIG
is not part of kconfig.

it is, so this is nonsense, try git grep next time ... cmd/Kconfig:config CMD_FPGA

Quoted 2 lines
Quoted 9 lines
Quoted 7 lines

During the build, kconfig and Macro #define are
in two different phase/order, so we might having build issue during
kconfig build(1st phase) when some Macro #define which is 2nd phase
are
required.

I don't understand this, but I think this is bogus.

Okay. For example, CONFIG_A in Kconfig depend on CONFIG_B which is defined in socfpga_common.h. When SPL build, CONFIG_A would not be set
to one even CONFIG_B is defined to one in header file, because at that
moment build, CONFIG_B is not detected, but header file only get build
after Kconfig build done.

Quoted 4 lines
Quoted 2 lines

Then convert whatever is missing to Kconfig and it's done ?

Yeah, i will send out immediately after this patch set.

Please do things in sensible order ...

Signature · 2 lines
Best regards,
Marek Vasut
#12 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

Quoted 100 lines · Marek Vasut
Quoted 99 lines · Tien Fong
Quoted 97 lines · Marek Vasut
Quoted 95 lines · Tien Fong
Quoted 78 lines · Marek Vasut
Quoted 53 lines · Tien Fong
Quoted 41 lines · Tien Fong
Quoted 10 lines
Quoted 10 lines
Quoted 30 lines · Marek Vasut
Quoted 25 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This patch is for enabling the FPGA driver support on SPL.

om>
---
 include/configs/socfpga_common.h | 1 +

 1 file changed, 1 insertion(+)
include/configs/socfpga_common.h +0 -0
index da7e4ad..e74e7eb 100644
@@ -110,6 +110,7 @@
  #define CONFIG_FPGA
  #define CONFIG_FPGA_ALTERA
  #define CONFIG_FPGA_SOCFPGA
Quoted 8 lines
Quoted 8 lines

include/configs/socfpga_common.h line 113

Quoted 1 line
include/configs/socfpga_common.h +1 -0
+#define CONFIG_SPL_FPGA_SUPPORT

This should be Kconfig symbol selected in board config. Why
is
it
not
Kconfig symbol ?

Quoted 7 lines

Ahha....ijust recalled there is a very important reason i did
this
because CONFIG_CMD_FPGA which is wrapping all these FPGA related
CONFIG
is not part of kconfig.

it is, so this is nonsense, try git grep next time ... cmd/Kconfig:config CMD_FPGA

Quoted 12 lines

During the build, kconfig and Macro #define are in two different phase/order, so we might having build issue
during
kconfig build(1st phase) when some Macro #define which is 2nd
phase
are
required.

Quoted 2 lines

I don't understand this, but I think this is bogus.

Okay. For example, CONFIG_A in Kconfig depend on CONFIG_B which is
defined in socfpga_common.h. When SPL build, CONFIG_A would not be
set
to one even CONFIG_B is defined to one in header file, because at
that
moment build, CONFIG_B is not detected, but header file only get
build
after Kconfig build done.

Quoted 6 lines
Quoted 4 lines
Quoted 2 lines

Then convert whatever is missing to Kconfig and it's done ?

Yeah, i will send out immediately after this patch set.

Please do things in sensible order ...

I thought we already reach agreement that specific patch for converting all to kconfig would be after this patch set, since it needs more time for the tool to execute all the convertion, right?

#13 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

Quoted 103 lines · Tien Fong
Quoted 102 lines · Marek Vasut
Quoted 101 lines · Tien Fong
Quoted 99 lines · Marek Vasut
Quoted 83 lines · Tien Fong
Quoted 78 lines · Marek Vasut
Quoted 53 lines · Tien Fong
Quoted 41 lines · Tien Fong
Quoted 10 lines
Quoted 10 lines
Quoted 30 lines · Marek Vasut
Quoted 25 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This patch is for enabling the FPGA driver support on SPL.

om>

---
 include/configs/socfpga_common.h | 1 +
 1 file changed, 1 insertion(+)
include/configs/socfpga_common.h +0 -0
index da7e4ad..e74e7eb 100644
@@ -110,6 +110,7 @@
 #define CONFIG_FPGA
 #define CONFIG_FPGA_ALTERA
 #define CONFIG_FPGA_SOCFPGA
Quoted 8 lines
Quoted 8 lines

include/configs/socfpga_common.h line 113

Quoted 1 line
include/configs/socfpga_common.h +1 -0
+#define CONFIG_SPL_FPGA_SUPPORT

This should be Kconfig symbol selected in board config. Why
is
it
not
Kconfig symbol ?

Quoted 7 lines

Ahha....ijust recalled there is a very important reason i did
this
because CONFIG_CMD_FPGA which is wrapping all these FPGA related
CONFIG
is not part of kconfig.

it is, so this is nonsense, try git grep next time ... cmd/Kconfig:config CMD_FPGA

Quoted 12 lines

During the build, kconfig and Macro #define are in two different phase/order, so we might having build issue
during
kconfig build(1st phase) when some Macro #define which is 2nd
phase
are
required.

Quoted 2 lines

I don't understand this, but I think this is bogus.

Quoted 12 lines

Okay. For example, CONFIG_A in Kconfig depend on CONFIG_B which is
defined in socfpga_common.h. When SPL build, CONFIG_A would not be
set
to one even CONFIG_B is defined to one in header file, because at
that
moment build, CONFIG_B is not detected, but header file only get
build
after Kconfig build done.

Then convert whatever is missing to Kconfig and it's done ?

Quoted 7 lines
Quoted 4 lines
Quoted 2 lines

Yeah, i will send out immediately after this patch set.

Please do things in sensible order ...

I thought we already reach agreement that specific patch for converting all to kconfig would be after this patch set, since it needs more time for the tool to execute all the convertion, right?

SPL_FPGA_SUPPORT is Kconfig'd already, so do not add it into include/configs/*h . If there is a bug, fix it.

Signature · 2 lines
Best regards,
Marek Vasut
#14 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

Quoted 133 lines · Marek Vasut
Quoted 132 lines · Tien Fong
Quoted 130 lines · Marek Vasut
Quoted 122 lines · Tien Fong
Quoted 119 lines · Marek Vasut
Quoted 116 lines · Tien Fong
Quoted 94 lines · Marek Vasut
Quoted 64 lines · Tien Fong
Quoted 50 lines · Tien Fong
Quoted 13 lines
Quoted 13 lines
Quoted 36 lines · Marek Vasut
Quoted 29 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This patch is for enabling the FPGA driver
support on
SPL.

el.c
om>
---
 include/configs/socfpga_common.h | 1 +

 1 file changed, 1 insertion(+)
include/configs/socfpga_common.h +1 -0
index da7e4ad..e74e7eb 100644
@@ -110,6 +110,7 @@
  #define CONFIG_FPGA
  #define CONFIG_FPGA_ALTERA
  #define CONFIG_FPGA_SOCFPGA
+#define CONFIG_SPL_FPGA_SUPPORT
Quoted 8 lines
Quoted 8 lines

This should be Kconfig symbol selected in board
config.
Why
is
it
not
Kconfig symbol ?

Quoted 9 lines

Ahha....ijust recalled there is a very important reason i
did
this
because CONFIG_CMD_FPGA which is wrapping all these FPGA
related
CONFIG
is not part of kconfig.

it is, so this is nonsense, try git grep next time ... cmd/Kconfig:config CMD_FPGA

Quoted 4 lines
Quoted 10 lines

During the build, kconfig and Macro #define are in two different phase/order, so we might having build issue
during
kconfig build(1st phase) when some Macro #define which is
2nd
phase
are
required.

Quoted 2 lines

I don't understand this, but I think this is bogus.

Okay. For example, CONFIG_A in Kconfig depend on CONFIG_B which
is
defined in socfpga_common.h. When SPL build, CONFIG_A would not
be
set
to one even CONFIG_B is defined to one in header file, because
at
that
moment build, CONFIG_B is not detected, but header file only
get
build
after Kconfig build done.

Quoted 4 lines
Quoted 2 lines

Then convert whatever is missing to Kconfig and it's done ?

Yeah, i will send out immediately after this patch set.

Please do things in sensible order ...

Quoted 8 lines
Quoted 5 lines

I thought we already reach agreement that specific patch for converting
all to kconfig would be after this patch set, since it needs more time
for the tool to execute all the convertion, right?

SPL_FPGA_SUPPORT is Kconfig'd already, so do not add it into include/configs/*h . If there is a bug, fix it.

I don't think that is bug, this is how the build order is designed, Kconfig is build 1st, then only compiling the header/C files. So i would suggest all related/dependency CONFIG put in one place,either all in Kconfig or in header file.

So, i suggest to submit a seprate patch for converting all to Kconfig after this patchset, or i can pull this patch into this patchset.

If you prefer adding SPL_FPGA_SUPPORT into this patchset, i need to rerun the tool for this macro, because a lot defconfigs require FPGA feature enabled in SPL build. I also need to run all defconfigs compilation and make sure above example is not hit, otherwise FPGA driver could be failed in the build.

What do you think?

Thanks.

#15 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

Quoted 139 lines · Tien Fong
Quoted 138 lines · Marek Vasut
Quoted 137 lines · Tien Fong
Quoted 124 lines · Marek Vasut
Quoted 122 lines · Tien Fong
Quoted 119 lines · Marek Vasut
Quoted 116 lines · Tien Fong
Quoted 94 lines · Marek Vasut
Quoted 64 lines · Tien Fong
Quoted 50 lines · Tien Fong
Quoted 13 lines
Quoted 13 lines
Quoted 36 lines · Marek Vasut
Quoted 29 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This patch is for enabling the FPGA driver
support on
SPL.

el.c
om>

---
 include/configs/socfpga_common.h | 1 +
 1 file changed, 1 insertion(+)
include/configs/socfpga_common.h +1 -0
index da7e4ad..e74e7eb 100644
@@ -110,6 +110,7 @@
 #define CONFIG_FPGA
 #define CONFIG_FPGA_ALTERA
 #define CONFIG_FPGA_SOCFPGA
+#define CONFIG_SPL_FPGA_SUPPORT
Quoted 8 lines
Quoted 8 lines

This should be Kconfig symbol selected in board
config.
Why
is
it
not
Kconfig symbol ?

Quoted 9 lines

Ahha....ijust recalled there is a very important reason i
did
this
because CONFIG_CMD_FPGA which is wrapping all these FPGA
related
CONFIG
is not part of kconfig.

it is, so this is nonsense, try git grep next time ... cmd/Kconfig:config CMD_FPGA

Quoted 4 lines
Quoted 10 lines

During the build, kconfig and Macro #define are in two different phase/order, so we might having build issue
during
kconfig build(1st phase) when some Macro #define which is
2nd
phase
are
required.

Quoted 2 lines

I don't understand this, but I think this is bogus.

Okay. For example, CONFIG_A in Kconfig depend on CONFIG_B which
is
defined in socfpga_common.h. When SPL build, CONFIG_A would not
be
set
to one even CONFIG_B is defined to one in header file, because
at
that
moment build, CONFIG_B is not detected, but header file only
get
build
after Kconfig build done.

Quoted 6 lines
Quoted 4 lines
Quoted 2 lines

Then convert whatever is missing to Kconfig and it's done ?

Yeah, i will send out immediately after this patch set.

Please do things in sensible order ...

I thought we already reach agreement that specific patch for converting
all to kconfig would be after this patch set, since it needs more time
for the tool to execute all the convertion, right?

Quoted 7 lines
Quoted 3 lines

SPL_FPGA_SUPPORT is Kconfig'd already, so do not add it into include/configs/*h . If there is a bug, fix it.

I don't think that is bug, this is how the build order is designed, Kconfig is build 1st, then only compiling the header/C files. So i would suggest all related/dependency CONFIG put in one place,either all in Kconfig or in header file.

If we put anything which is already using Kconfig into the header file again, what's the point of using Kconfig ?

Quoted 10 lines

So, i suggest to submit a seprate patch for converting all to Kconfig after this patchset, or i can pull this patch into this patchset.

If you prefer adding SPL_FPGA_SUPPORT into this patchset, i need to rerun the tool for this macro, because a lot defconfigs require FPGA feature enabled in SPL build. I also need to run all defconfigs compilation and make sure above example is not hit, otherwise FPGA driver could be failed in the build.

What do you think?

I think the SPL_FPGA_SUPPORT is already Kconfig-ified and I don't quite understand what's the problem you have, sorry. But I am positive any Kconfig option shouldn't be selected in the config header file.

Quoted 2 lines

Thanks.

Signature · 2 lines
Best regards,
Marek Vasut
#16 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

Quoted 191 lines · Marek Vasut
Quoted 166 lines · Tien Fong
Quoted 164 lines · Marek Vasut
Quoted 162 lines · Tien Fong
Quoted 146 lines · Marek Vasut
Quoted 143 lines · Tien Fong
Quoted 139 lines · Marek Vasut
Quoted 135 lines · Tien Fong
Quoted 110 lines · Marek Vasut
Quoted 74 lines · Tien Fong
Quoted 59 lines · Tien Fong
Quoted 16 lines
Quoted 16 lines
Quoted 41 lines · Marek Vasut
Quoted 32 lines · tien.fong.chee at intel.co m

From: Tien Fong Chee <[email protected]
m>

This patch is for enabling the FPGA driver
support on
SPL.

Signed-off-by: Tien Fong Chee <tien.fong.chee
@int
el.c
om>
---
 include/configs/socfpga_common.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/configs/socfpga_common.h
b/include/configs/socfpga_common.h
index da7e4ad..e74e7eb 100644
--- a/include/configs/socfpga_common.h
+++ b/include/configs/socfpga_common.h
@@ -110,6 +110,7 @@
 #define CONFIG_FPGA
 #define CONFIG_FPGA_ALTERA
 #define CONFIG_FPGA_SOCFPGA
+#define CONFIG_SPL_FPGA_SUPPORT

Quoted 8 lines
Quoted 8 lines

This should be Kconfig symbol selected in board
config.
Why
is
it
not
Kconfig symbol ?

Quoted 10 lines

Ahha....ijust recalled there is a very important reason
i
did
this
because CONFIG_CMD_FPGA which is wrapping all these FPGA
related
CONFIG
is not part of kconfig.

it is, so this is nonsense, try git grep next time
...
cmd/Kconfig:config CMD_FPGA

Quoted 5 lines
Quoted 12 lines

During the build, kconfig and Macro #define are
in two different phase/order, so we might having
build
issue
during
kconfig build(1st phase) when some Macro #define
which
is
2nd
phase
are
required.

Quoted 2 lines

I don't understand this, but I think this is bogus.

Okay. For example, CONFIG_A in Kconfig depend on CONFIG_B
which
is
defined in socfpga_common.h. When SPL build, CONFIG_A would
not
be
set
to one even CONFIG_B is defined to one in header file, because
at
that
moment build, CONFIG_B is not detected, but header file only
get
build
after Kconfig build done.

Quoted 7 lines
Quoted 5 lines
Quoted 3 lines

Then convert whatever is missing to Kconfig and it's done ?

Yeah, i will send out immediately after this patch set.

Please do things in sensible order ...

I thought we already reach agreement that specific patch for converting
all to kconfig would be after this patch set, since it needs more
time
for the tool to execute all the convertion, right?

Quoted 8 lines
Quoted 3 lines

SPL_FPGA_SUPPORT is Kconfig'd already, so do not add it into include/configs/*h . If there is a bug, fix it.

I don't think that is bug, this is how the build order is designed, Kconfig is build 1st, then only compiling the header/C files. So i would suggest all related/dependency CONFIG put in one place,either all
in Kconfig or in header file.

If we put anything which is already using Kconfig into the header file
again, what's the point of using Kconfig ?

Quoted 12 lines

So, i suggest to submit a seprate patch for converting all to Kconfig
after this patchset, or i can pull this patch into this patchset.

If you prefer adding SPL_FPGA_SUPPORT into this patchset, i need to rerun the tool for this macro, because a lot defconfigs require FPGA
feature enabled in SPL build. I also need to run all defconfigs compilation and make sure above example is not hit, otherwise FPGA driver could be failed in the build.

Quoted 6 lines
Quoted 1 line

What do you think?

I think the SPL_FPGA_SUPPORT is already Kconfig-ified and I don't quite
understand what's the problem you have, sorry. But I am positive any Kconfig option shouldn't be selected in the config header file.

How about i just pull the patch convert all to Kconfig into this patch set, and this will replace the patch 3. I just recalled why i need to to enable the SPL FPGA build on patch 4 because patch 5 FPGA manager already being moved to drivers/fpga/ hence some functions from FPGA manager are required in SPL phase. In this arrangement, we can avoid duplicate effort and time spending since we already have that Kconfig patch.

Are you OK?

Quoted 4 lines
Quoted 3 lines

Thanks.

#17 lore raw

PATCH v7 3/6 arm: socfpga: Enable FPGA driver on SPL

Quoted 198 lines · Tien Fong
Quoted 191 lines · Marek Vasut
Quoted 166 lines · Tien Fong
Quoted 164 lines · Marek Vasut
Quoted 162 lines · Tien Fong
Quoted 146 lines · Marek Vasut
Quoted 143 lines · Tien Fong
Quoted 139 lines · Marek Vasut
Quoted 135 lines · Tien Fong
Quoted 110 lines · Marek Vasut
Quoted 74 lines · Tien Fong
Quoted 59 lines · Tien Fong
Quoted 16 lines
Quoted 41 lines · Marek Vasut

On 05/29/2017 06:00 AM, tien.fong.chee at intel.co
m
wrote:

From: Tien Fong Chee <[email protected]
m>

This patch is for enabling the FPGA driver
support on
SPL.

Signed-off-by: Tien Fong Chee <tien.fong.chee
@int
el.c
om>
---
include/configs/socfpga_common.h | 1 +
1 file changed, 1 insertion(+)

diff --git a/include/configs/socfpga_common.h
b/include/configs/socfpga_common.h
index da7e4ad..e74e7eb 100644
--- a/include/configs/socfpga_common.h
+++ b/include/configs/socfpga_common.h
@@ -110,6 +110,7 @@
#define CONFIG_FPGA
#define CONFIG_FPGA_ALTERA
#define CONFIG_FPGA_SOCFPGA
+#define CONFIG_SPL_FPGA_SUPPORT

Quoted 8 lines
Quoted 8 lines

This should be Kconfig symbol selected in board
config.
Why
is
it
not
Kconfig symbol ?

Quoted 10 lines

Ahha....ijust recalled there is a very important reason
i
did
this
because CONFIG_CMD_FPGA which is wrapping all these FPGA
related
CONFIG
is not part of kconfig.

it is, so this is nonsense, try git grep next time
...
cmd/Kconfig:config CMD_FPGA

Quoted 5 lines
Quoted 12 lines

During the build, kconfig and Macro #define are
in two different phase/order, so we might having
build
issue
during
kconfig build(1st phase) when some Macro #define
which
is
2nd
phase
are
required.

Quoted 2 lines

I don't understand this, but I think this is bogus.

Okay. For example, CONFIG_A in Kconfig depend on CONFIG_B
which
is
defined in socfpga_common.h. When SPL build, CONFIG_A would
not
be
set
to one even CONFIG_B is defined to one in header file, because
at
that
moment build, CONFIG_B is not detected, but header file only
get
build
after Kconfig build done.

Quoted 7 lines
Quoted 5 lines
Quoted 3 lines

Then convert whatever is missing to Kconfig and it's done ?

Yeah, i will send out immediately after this patch set.

Please do things in sensible order ...

I thought we already reach agreement that specific patch for converting
all to kconfig would be after this patch set, since it needs more
time
for the tool to execute all the convertion, right?

Quoted 8 lines
Quoted 3 lines

SPL_FPGA_SUPPORT is Kconfig'd already, so do not add it into include/configs/*h . If there is a bug, fix it.

I don't think that is bug, this is how the build order is designed, Kconfig is build 1st, then only compiling the header/C files. So i would suggest all related/dependency CONFIG put in one place,either all
in Kconfig or in header file.

If we put anything which is already using Kconfig into the header file
again, what's the point of using Kconfig ?

Quoted 12 lines

So, i suggest to submit a seprate patch for converting all to Kconfig
after this patchset, or i can pull this patch into this patchset.

If you prefer adding SPL_FPGA_SUPPORT into this patchset, i need to rerun the tool for this macro, because a lot defconfigs require FPGA
feature enabled in SPL build. I also need to run all defconfigs compilation and make sure above example is not hit, otherwise FPGA driver could be failed in the build.

Quoted 6 lines
Quoted 1 line

What do you think?

I think the SPL_FPGA_SUPPORT is already Kconfig-ified and I don't quite
understand what's the problem you have, sorry. But I am positive any Kconfig option shouldn't be selected in the config header file.

Quoted 7 lines

How about i just pull the patch convert all to Kconfig into this patch set, and this will replace the patch 3. I just recalled why i need to to enable the SPL FPGA build on patch 4 because patch 5 FPGA manager already being moved to drivers/fpga/ hence some functions from FPGA manager are required in SPL phase. In this arrangement, we can avoid duplicate effort and time spending since we already have that Kconfig patch.

I'll check the patches.

Quoted 1 line

Are you OK?

I'm fine, thank you for your concern.

Signature · 2 lines
Best regards,
Marek Vasut
#18 lore raw

PATCH v7 4/6 drivers: Enable FPGA driver build on SPL

In reply to tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

Enable FPGA driver build for SPL because FPGA driver is needed for SPL to configure and getting DDR up before loading U-boot into DDR and booting from there.

---
 drivers/Makefile | 1 +
 1 file changed, 1 insertion(+)
drivers/Makefile +1 -0
index 64c39d3..4478212 100644
@@ -48,6 +48,7 @@ obj-$(CONFIG_OMAP_USB_PHY) += usb/phy/
 obj-$(CONFIG_SPL_SATA_SUPPORT) += block/
 obj-$(CONFIG_SPL_USB_HOST_SUPPORT) += block/
 obj-$(CONFIG_SPL_MMC_SUPPORT) += block/
+obj-$(CONFIG_SPL_FPGA_SUPPORT) += fpga/
 endif
 
 ifdef CONFIG_TPL_BUILD
Signature · 1 line
2.2.0
#19 lore raw

PATCH v7 4/6 drivers: Enable FPGA driver build on SPL

Quoted 7 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

Enable FPGA driver build for SPL because FPGA driver is needed for SPL to configure and getting DDR up before loading U-boot into DDR and booting from there.

The thing I fail to understand is why you're sending the patches in seemingly random order. You add/change piece of code, then enable something and then add the relevant code you're enabling. I really do not understand that.

The patches should have some logical order -- change existing code, add new code, enable stuff.

Anyway, please collect the Acks, fix the nit and resubmit.

Quoted 17 lines
---
 drivers/Makefile | 1 +
 1 file changed, 1 insertion(+)
drivers/Makefile +1 -0
index 64c39d3..4478212 100644
@@ -48,6 +48,7 @@ obj-$(CONFIG_OMAP_USB_PHY) += usb/phy/
 obj-$(CONFIG_SPL_SATA_SUPPORT) += block/
 obj-$(CONFIG_SPL_USB_HOST_SUPPORT) += block/
 obj-$(CONFIG_SPL_MMC_SUPPORT) += block/
+obj-$(CONFIG_SPL_FPGA_SUPPORT) += fpga/
 endif
 
 ifdef CONFIG_TPL_BUILD
Signature · 2 lines
Best regards,
Marek Vasut
#20 lore raw

PATCH v7 4/6 drivers: Enable FPGA driver build on SPL

Quoted 15 lines · Marek Vasut
Quoted 9 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

Enable FPGA driver build for SPL because FPGA driver is needed for SPL
to configure and getting DDR up before loading U-boot into DDR and booting from there.

The thing I fail to understand is why you're sending the patches in seemingly random order. You add/change piece of code, then enable something and then add the relevant code you're enabling. I really do not understand that.

Quoted 6 lines

The patches should have some logical order -- change existing code, add
new code, enable stuff.

Anyway, please collect the Acks, fix the nit and resubmit.

Sorry for confusing, i enabled the stuff just to detect any break and bugs as early as possible. I will follow the logical order next time :) .

Quoted 19 lines
Quoted 18 lines

---
 drivers/Makefile | 1 +

 1 file changed, 1 insertion(+)
drivers/Makefile +0 -0
index 64c39d3..4478212 100644
@@ -48,6 +48,7 @@ obj-$(CONFIG_OMAP_USB_PHY) += usb/phy/

 obj-$(CONFIG_SPL_SATA_SUPPORT) += block/
 obj-$(CONFIG_SPL_USB_HOST_SUPPORT) += block/
 obj-$(CONFIG_SPL_MMC_SUPPORT) += block/
+obj-$(CONFIG_SPL_FPGA_SUPPORT) += fpga/
 endif

 ifdef CONFIG_TPL_BUILD

#21 lore raw

PATCH v7 5/6 arm: socfpga: Move FPGA manager driver to FPGA driver

In reply to tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

Move FPGA manager driver which is Gen5 specific code from arch/arm/ into FPGA driver at driver/fpga/. No functional change.

---
 arch/arm/mach-socfpga/Makefile       |  1 -
 arch/arm/mach-socfpga/fpga_manager.c | 78 ------------------------------------
 drivers/fpga/socfpga_gen5.c          | 54 +++++++++++++++++++++++++
 3 files changed, 54 insertions(+), 79 deletions(-)
 delete mode 100644 arch/arm/mach-socfpga/fpga_manager.c
arch/arm/mach-socfpga/Makefile +0 -1
index 286bfef..824cd8e 100644
@@ -20,7 +20,6 @@ obj-y	+= reset_manager_gen5.o
 obj-y	+= scan_manager.o
 obj-y	+= system_manager_gen5.o
 obj-y	+= wrap_pll_config.o
-obj-y	+= fpga_manager.o
 endif
 
 ifdef CONFIG_TARGET_SOCFPGA_ARRIA10
arch/arm/mach-socfpga/fpga_manager.c deleted +0 -78

78 lines not on this page · raw message

drivers/fpga/socfpga_gen5.c +54 -0

60 lines not on this page · raw message

Signature · 1 line
2.2.0
#22 lore raw

PATCH v7 6/6 arm: socfpga: Add FPGA driver support for Arria 10

In reply to tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

Add FPGA driver support for Arria 10.

---
 arch/arm/mach-socfpga/include/mach/fpga_manager.h  |   2 +
 .../include/mach/fpga_manager_arria10.h            | 100 +++++
 drivers/fpga/Makefile                              |   1 +
 drivers/fpga/socfpga_arria10.c                     | 479 +++++++++++++++++++++
 include/configs/socfpga_common.h                   |   3 +-
 5 files changed, 583 insertions(+), 2 deletions(-)
 create mode 100644 arch/arm/mach-socfpga/include/mach/fpga_manager_arria10.h
 create mode 100644 drivers/fpga/socfpga_arria10.c
arch/arm/mach-socfpga/include/mach/fpga_manager.h +2 -0
index b046c2c..a21c716 100644
@@ -12,6 +12,8 @@
 
 #if defined(CONFIG_TARGET_SOCFPGA_GEN5)
 #include <asm/arch/fpga_manager_gen5.h>
+#elif defined(CONFIG_TARGET_SOCFPGA_ARRIA10)
+#include <asm/arch/fpga_manager_arria10.h>
 #endif
 
 /* FPGA CD Ratio Value */
arch/arm/mach-socfpga/include/mach/fpga_manager_arria10.h new file +100 -0

100 lines not on this page · raw message

drivers/fpga/Makefile +1 -0
index b65e5ba..08c9ff8 100644
@@ -21,4 +21,5 @@ obj-$(CONFIG_FPGA_STRATIX_II) += stratixII.o
 obj-$(CONFIG_FPGA_STRATIX_V) += stratixv.o
 obj-$(CONFIG_FPGA_SOCFPGA) += socfpga.o
 obj-$(CONFIG_TARGET_SOCFPGA_GEN5) += socfpga_gen5.o
+obj-$(CONFIG_TARGET_SOCFPGA_ARRIA10) += socfpga_arria10.o
 endif
drivers/fpga/socfpga_arria10.c new file +479 -0

479 lines not on this page · raw message

include/configs/socfpga_common.h +1 -2
index e74e7eb..9edcd2d 100644
@@ -105,7 +105,6 @@
 /*
  * FPGA Driver
  */
-#ifdef CONFIG_TARGET_SOCFPGA_GEN5
 #ifdef CONFIG_CMD_FPGA
 #define CONFIG_FPGA
 #define CONFIG_FPGA_ALTERA
@@ -113,7 +112,7 @@
 #define CONFIG_SPL_FPGA_SUPPORT
 #define CONFIG_FPGA_COUNT		1
 #endif
-#endif
+
 /*
  * L4 OSC1 Timer 0
  */
Signature · 1 line
2.2.0
maintainer
#23 lore raw

v7 cover Add Intel Arria 10 SoC FPGA driver

In reply to tien.fong.chee at intel.com
Quoted 40 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This is the 6th version of patchset to adds support for Intel Arria 10 SoC FPGA driver. This version mainly resolved comments from Dinh in [v6]. This series is working on top of u-boot.git - http://git.denx.de/u-boot.git.

[v5]: https://www.mail-archive.com/u-boot at lists.denx.de/msg250687.html

v6 -> v7 changes:
-----------------
- Changed commit header of patch 4/6 to more generic.

Patchset history
----------------
[v1]: https://www.mail-archive.com/u-boot at lists.denx.de/msg247788.html [v2]: https://www.mail-archive.com/u-boot at lists.denx.de/msg248541.html [v3]: https://www.mail-archive.com/u-boot at lists.denx.de/msg249160.html [v4]: https://www.mail-archive.com/u-boot at lists.denx.de/msg250149.html [v5]: https://www.mail-archive.com/u-boot at lists.denx.de/msg250517.html

Tien Fong Chee (6):
arm: socfpga: Remove unused passing parameter of socfpga_bridges_reset
arm: socfpga: Restructure FPGA driver in the preparation to support

    A10

arm: socfpga: Enable FPGA driver on SPL
drivers: Enable FPGA driver build on SPL
arm: socfpga: Move FPGA manager driver to FPGA driver
arm: socfpga: Add FPGA driver support for Arria 10

 arch/arm/mach-socfpga/Makefile                     |   1 -
 arch/arm/mach-socfpga/fpga_manager.c               |  78 ----
 arch/arm/mach-socfpga/include/mach/fpga_manager.h  |  70 +--
 .../include/mach/fpga_manager_arria10.h            | 100 +++++
 .../mach/{fpga_manager.h => fpga_manager_gen5.h}   |  69 ++-
 .../include/mach/reset_manager_arria10.h           |   2 +-
 arch/arm/mach-socfpga/reset_manager_arria10.c      |   4 +-
 drivers/Makefile                                   |   1 +
 drivers/fpga/Makefile                              |   2 +
 drivers/fpga/socfpga.c                             | 241 +----------
 drivers/fpga/socfpga_arria10.c                     | 479 +++++++++++++++++++++
Quoted 9 lines
 drivers/fpga/{socfpga.c => socfpga_gen5.c}         |  98 ++---
 include/configs/socfpga_common.h                   |   4 +-
 13 files changed, 685 insertions(+), 464 deletions(-)
 delete mode 100644 arch/arm/mach-socfpga/fpga_manager.c
 create mode 100644 arch/arm/mach-socfpga/include/mach/fpga_manager_arria10.h
 copy arch/arm/mach-socfpga/include/mach/{fpga_manager.h => fpga_manager_gen5.h} (57%)
 create mode 100644 drivers/fpga/socfpga_arria10.c
 copy drivers/fpga/{socfpga.c => socfpga_gen5.c} (85%)

For the series,

#24 lore raw

v7 cover Add Intel Arria 10 SoC FPGA driver

Quoted 66 lines · Dinh Nguyen
Quoted 55 lines · tien.fong.chee at intel.com

From: Tien Fong Chee <[email protected]>

This is the 6th version of patchset to adds support for Intel Arria 10 SoC FPGA
driver. This version mainly resolved comments from Dinh in [v6]. This series is working on top of u-boot.git - http://git.denx.de/u-
boot.git.

[v5]: https://www.mail-archive.com/u-boot at lists.denx.de/msg250687.h tml

v6 -> v7 changes:
-----------------
- Changed commit header of patch 4/6 to more generic.

Patchset history
----------------
[v1]: https://www.mail-archive.com/u-boot at lists.denx.de/msg247788.h tml
[v2]: https://www.mail-archive.com/u-boot at lists.denx.de/msg248541.h tml
[v3]: https://www.mail-archive.com/u-boot at lists.denx.de/msg249160.h tml
[v4]: https://www.mail-archive.com/u-boot at lists.denx.de/msg250149.h tml
[v5]: https://www.mail-archive.com/u-boot at lists.denx.de/msg250517.h tml

Tien Fong Chee (6):
  arm: socfpga: Remove unused passing parameter of socfpga_bridges_reset
  arm: socfpga: Restructure FPGA driver in the preparation to support
    A10
  arm: socfpga: Enable FPGA driver on SPL
  drivers: Enable FPGA driver build on SPL
  arm: socfpga: Move FPGA manager driver to FPGA driver
  arm: socfpga: Add FPGA driver support for Arria 10

 arch/arm/mach-socfpga/Makefile                     |   1 - arch/arm/mach-socfpga/fpga_manager.c               |  78 ---- arch/arm/mach-socfpga/include/mach/fpga_manager.h  |  70 +-- .../include/mach/fpga_manager_arria10.h            | 100 +++++ .../mach/{fpga_manager.h => fpga_manager_gen5.h}   |  69 ++- .../include/mach/reset_manager_arria10.h           |   2 +- arch/arm/mach-socfpga/reset_manager_arria10.c      |   4 +- drivers/Makefile                                   |   1 + drivers/fpga/Makefile                              |   2 + drivers/fpga/socfpga.c                             | 241 +------
----
 drivers/fpga/socfpga_arria10.c                     | 479
+++++++++++++++++++++
 drivers/fpga/{socfpga.c => socfpga_gen5.c}         |  98 ++--- include/configs/socfpga_common.h                   |   4 +-

Quoted 9 lines
 13 files changed, 685 insertions(+), 464 deletions(-)

 delete mode 100644 arch/arm/mach-socfpga/fpga_manager.c create mode 100644 arch/arm/mach- socfpga/include/mach/fpga_manager_arria10.h
 copy arch/arm/mach-socfpga/include/mach/{fpga_manager.h => fpga_manager_gen5.h} (57%)
 create mode 100644 drivers/fpga/socfpga_arria10.c copy drivers/fpga/{socfpga.c => socfpga_gen5.c} (85%)

Quoted 3 lines

For the series,

Thanks.
Ley Foon