From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mario Six Date: Wed, 11 Apr 2018 08:43:14 +0200 Subject: [U-Boot] [PATCH 1/7] drivers: Add AXI uclass and ihs_axi driver In-Reply-To: References: <20180328124021.17239-1-mario.six@gdsys.cc> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Simon, On Fri, Mar 30, 2018 at 10:41 AM, Simon Glass wrote: > Hi Mario, > > On 28 March 2018 at 20:40, Mario Six wrote: >> Add a uclass for AXI (Advanced eXtensible Interface) busses, and a >> driver for the gdsys IHS AXI bus on IHS FPGAs. >> >> Signed-off-by: Mario Six >> --- >> drivers/Kconfig | 2 + >> drivers/Makefile | 1 + >> drivers/axi/Kconfig | 24 ++++++ >> drivers/axi/Makefile | 9 +++ >> drivers/axi/axi-uclass.c | 40 ++++++++++ >> drivers/axi/ihs_axi.c | 199 +++++++++++++++++++++++++++++++++++++++++++++++ >> include/axi.h | 75 ++++++++++++++++++ >> include/dm/uclass-id.h | 1 + >> 8 files changed, 351 insertions(+) >> create mode 100644 drivers/axi/Kconfig >> create mode 100644 drivers/axi/Makefile >> create mode 100644 drivers/axi/axi-uclass.c >> create mode 100644 drivers/axi/ihs_axi.c >> create mode 100644 include/axi.h > > Would UCLASS_MAILBOX be suitable here? > > It's fine if you want a new uclass, just checking. > >From what I understand about the mailbox uclass, it's more for "one-off" devices that need to transfer messages, while AXI is a type of bus, much like I2C or SPI, so I think the mailbox uclass doesn't really encompass all that AXI is about. > Please split out your driver into a separate patch. Adding the new > uclass should be in its own patch. > OK, will split them in v2. >> >> diff --git a/drivers/Kconfig b/drivers/Kconfig >> index c2e813f5ad..eeaaa7575c 100644 >> --- a/drivers/Kconfig >> +++ b/drivers/Kconfig >> @@ -8,6 +8,8 @@ source "drivers/adc/Kconfig" >> >> source "drivers/ata/Kconfig" >> >> +source "drivers/axi/Kconfig" >> + >> source "drivers/block/Kconfig" >> >> source "drivers/bootcount/Kconfig" >> diff --git a/drivers/Makefile b/drivers/Makefile >> index 6846d181aa..f54a10f3ad 100644 >> --- a/drivers/Makefile >> +++ b/drivers/Makefile >> @@ -100,6 +100,7 @@ obj-y += input/ >> obj-y += soc/ >> obj-$(CONFIG_REMOTEPROC) += remoteproc/ >> obj-y += thermal/ >> +obj-y += axi/ >> >> obj-$(CONFIG_MACH_PIC32) += ddr/microchip/ >> endif >> diff --git a/drivers/axi/Kconfig b/drivers/axi/Kconfig >> new file mode 100644 >> index 0000000000..19e1b7fd2f >> --- /dev/null >> +++ b/drivers/axi/Kconfig >> @@ -0,0 +1,24 @@ >> +menuconfig AXI >> + bool "AXI bus drivers" >> + help >> + Support AXI (Advanced eXtensible Interface) busses, a on-chip >> + interconnect specification for managing functional blocks in SoC >> + designs, which is also often used in designs involving FPGAs (e.g. >> + communication with IP cores in Xilinx FPGAs). >> + >> + These types of busses expose a virtual address space that can be >> + accessed using different address widths (8, 16, and 32 are supported >> + for now). >> + >> + Other similar bus architectures may be compatible as well. >> + >> +if AXI >> + >> +config IHS_AXI >> + bool "Enable IHS AXI driver" >> + depends on DM >> + help >> + Support for IHS AXI bus on a gdsys IHS FPGA used to communicate with >> + IP cores in the FPGA (e.g. video transmitter cores). > > Please also spell out the abbreviations in the help > Will do in v2. > [...] > > Regards, > Simon > Best regards, Mario