All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chee, Tien Fong <tien.fong.chee@intel.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 05/10] arm: socfpga: arria10: Added support for Arria 10 SoC dev kit
Date: Wed, 7 Dec 2016 11:21:46 +0000	[thread overview]
Message-ID: <1481109705.2741.27.camel@intel.com> (raw)
In-Reply-To: <358713af-7d00-ede5-1d46-c3544f2b8ffa@denx.de>

On Sel, 2016-12-06 at 13:51 +0100, Marek Vasut wrote:
> On 12/06/2016 09:07 AM, Chee Tien Fong wrote:
> > 
> > From: Tien Fong Chee <tien.fong.chee@intel.com>
> > 
> > Signed-off-by: Tien Fong Chee <tien.fong.chee@intel.com>
> > Cc: Marek Vasut <marex@denx.de>
> > Cc: Dinh Nguyen <dinguyen@kernel.org>
> > Cc: Chin Liang See <chin.liang.see@intel.com>
> > Cc: Tien Fong <skywindctf@gmail.com>
> > ---
> > ?arch/arm/mach-socfpga/include/mach/base_addr_a10.h |???11 +-
> > ?arch/arm/mach-socfpga/system_manager.c?????????????|????4 +-
> > ?drivers/fpga/socfpga.c?????????????????????????????|????7 +-
> > ?include/configs/socfpga_arria10_socdk.h????????????|??152
> > +++++++++++++++++--
> > ?4 files changed, 151 insertions(+), 23 deletions(-)
> > 
> > diff --git a/arch/arm/mach-socfpga/include/mach/base_addr_a10.h
> > b/arch/arm/mach-socfpga/include/mach/base_addr_a10.h
> > index 902c321..487a5dc 100644
> > --- a/arch/arm/mach-socfpga/include/mach/base_addr_a10.h
> > +++ b/arch/arm/mach-socfpga/include/mach/base_addr_a10.h
> > @@ -1,7 +1,7 @@
> > ?/*
> > - * Copyright (C) 2014 Altera Corporation <www.altera.com>
> > + * Copyright (C) 2014-2016 Altera Corporation <www.altera.com>
> > ? *
> > - * SPDX-License-Identifier:	GPL-2.0+
> > + * SPDX-License-Identifier:	GPL-2.0
> Can you change license this way ?
> 
Okay, i will revert this change. I discussed with Chin Liang today, and
we decided to let owner to make the changes. How about the year change
2014-2016?
> > 
> > ? */
> > ?
> > ?#ifndef _SOCFPGA_A10_BASE_HARDWARE_H_
> > @@ -35,11 +35,14 @@
> > ?
> > ?#define SOCFPGA_ECC_OCRAM_ADDRESS		0xff8c3000
> > ?#define SOCFPGA_UART0_ADDRESS			0xffc02000
> > -#define SOCFPGA_OSC1TIMER0_ADDRESS		0xffd00000
> > +#define SOCFPGA_SYSTIMER0_ADDRESS		0xffd00000
> > +#define SOCFPGA_SYSTIMER1_ADDRESS		0xffd00100
> > ?#define SOCFPGA_CLKMGR_ADDRESS			0xffd04000
> > ?#define SOCFPGA_RSTMGR_ADDRESS			0xffd05000
> This should be in a separate patch.
> 
> > 
> > -#define SOCFPGA_SDR_ADDRESS			0xffcfb000
> > +#define SOCFPGA_SDR_ADDRESS					
> > 0xffcfb000
> > +#define SOCFPGA_NOC_L4_PRIV_FLT_OFST????????0xffd11000
> > +#define SOCFPGA_NOC_FW_H2F_SCR_OFST			0xffd13
> > 500
> > ?#define SOCFPGA_SDR_SCHEDULER_ADDRESS		0xffd12400
> > ?#define SOCFPGA_SDR_FIREWALL_OCRAM_ADDRESS	0xffd13200
> > ?#define SOCFPGA_SDR_FIREWALL_MPU_FPGA_ADDRESS	0xffd13300
> > diff --git a/arch/arm/mach-socfpga/system_manager.c
> > b/arch/arm/mach-socfpga/system_manager.c
> > index 9e1c3fd..e1f0082 100644
> > --- a/arch/arm/mach-socfpga/system_manager.c
> > +++ b/arch/arm/mach-socfpga/system_manager.c
> This should also be in a separate patch, don't go hacking common code
> in
> board-support patch.
> 
Okay, i will move these changes to separate patch. Those removed
#define is no longer valid.
> > 
> > @@ -1,5 +1,5 @@
> > ?/*
> > - * Copyright (C) 2013 Altera Corporation <www.altera.com>
> > + * Copyright (C) 2013-2016 Altera Corporation <www.altera.com>
> > ? *
> > ? * SPDX-License-Identifier:	GPL-2.0+
> > ? */
> > @@ -11,8 +11,10 @@
> > ?
> > ?DECLARE_GLOBAL_DATA_PTR;
> > ?
> > +#if defined(CONFIG_TARGET_SOCFPGA_GEN5)
> > ?static struct socfpga_system_manager *sysmgr_regs =
> > ?	(struct socfpga_system_manager *)SOCFPGA_SYSMGR_ADDRESS;
> > +#endif
> > ?
> > ?/*
> > ? * Populate the value for SYSMGR.FPGAINTF.MODULE based on pinmux
> > setting.
> > diff --git a/drivers/fpga/socfpga.c b/drivers/fpga/socfpga.c
> > index bfefafd..7fd922e 100644
> > --- a/drivers/fpga/socfpga.c
> > +++ b/drivers/fpga/socfpga.c
> > @@ -1,5 +1,5 @@
> > ?/*
> > - * Copyright (C) 2012 Altera Corporation <www.altera.com>
> > + * Copyright (C) 2012-2016 Altera Corporation <www.altera.com>
> > ? * All rights reserved.
> > ? *
> > ? * SPDX-License-Identifier:	BSD-3-Clause
> > @@ -19,8 +19,10 @@ DECLARE_GLOBAL_DATA_PTR;
> > ?
> > ?static struct socfpga_fpga_manager *fpgamgr_regs =
> > ?	(struct socfpga_fpga_manager
> > *)SOCFPGA_FPGAMGRREGS_ADDRESS;
> > +#if defined(CONFIG_TARGET_SOCFPGA_GEN5)
> > ?static struct socfpga_system_manager *sysmgr_regs =
> > ?	(struct socfpga_system_manager *)SOCFPGA_SYSMGR_ADDRESS;
> > +#endif
> > ?
> > ?/* Set CD ratio */
> > ?static void fpgamgr_set_cd_ratio(unsigned long ratio)
> > @@ -267,9 +269,10 @@ int socfpga_load(Altera_desc *desc, const void
> > *rbf_data, size_t rbf_size)
> > ?	}
> > ?
> > ?	/* Prior programming the FPGA, all bridges need to be shut
> > off */
> > -
> > +#if defined(CONFIG_TARGET_SOCFPGA_GEN5)
> > ?	/* Disable all signals from hps peripheral controller to
> > fpga */
> > ?	writel(0, &sysmgr_regs->fpgaintfgrp_module);
> > +#endif
> > ?
> > ?	/* Disable all signals from FPGA to HPS SDRAM */
> > ?#define SDR_CTRLGRP_FPGAPORTRST_ADDRESS	0x5080
> > diff --git a/include/configs/socfpga_arria10_socdk.h
> > b/include/configs/socfpga_arria10_socdk.h
> > index 577f60f..15c7a28 100644
> > --- a/include/configs/socfpga_arria10_socdk.h
> > +++ b/include/configs/socfpga_arria10_socdk.h
> > @@ -1,5 +1,5 @@
> > ?/*
> > - *??Copyright (C) 2015 Altera Corporation <www.altera.com>
> > + *??Copyright (C) 2015-2016 Altera Corporation <www.altera.com>
> > ? *
> > ? * SPDX-License-Identifier:	GPL-2.0
> > ? */
> > @@ -16,36 +16,67 @@
> > ?
> > ?#define CONFIG_CMD_ASKENV
> > ?#define CONFIG_CMD_BOOTZ
> > -#define CONFIG_CMD_CACHE
> > -#define CONFIG_CMD_DHCP
> > ?#define CONFIG_CMD_EXT4
> > ?#define CONFIG_CMD_EXT4_WRITE
> > -#define CONFIG_CMD_FAT
> > -#define CONFIG_CMD_FS_GENERIC
> > ?#define CONFIG_CMD_GREPENV
> > -#define CONFIG_CMD_MMC
> > ?#define CONFIG_CMD_PING
> > ?
> > -/*
> > - * Memory configurations
> > - */
> > -#define PHYS_SDRAM_1_SIZE		0x2000000
> > -
> > ?/* Booting Linux */
> > -#define CONFIG_BOOTDELAY	3
> > ?#define CONFIG_BOOTFILE		"zImage"
> > ?#define CONFIG_BOOTARGS		"console=ttyS0,"
> > __stringify(CONFIG_BAUDRATE)
> > ?#define CONFIG_BOOTCOMMAND??????"run mmcload; run mmcboot"
> > -#define CONFIG_LOADADDR		0x01000000
> > +#define CONFIG_LOADADDR		0x8000
> > ?#define CONFIG_SYS_LOAD_ADDR	CONFIG_LOADADDR
> > ?
> > ?/*
> > + * U-Boot general configurations
> > + */
> > +/* Base address for .text section. */
> > +/* Ensure located start of HPS OCRAM */
> > +#define CONFIG_SYS_TEXT_BASE		0xFFE00000
> > +#define CONFIG_SYS_MONITOR_BASE	CONFIG_SYS_TEXT_BASE
> > +
> > +/* Cache options */
> > +#define CONFIG_SYS_DCACHE_OFF
> > +#define CONFIG_CMD_CACHE
> > +#define CONFIG_SYS_L2_PL310
> > +#define CONFIG_SYS_PL310_BASE		SOCFPGA_MPUL2_ADDRESS
> > +
> > +/*
> > + * U-Boot console configurations
> > + */
> > +#define CONFIG_SYS_MAXARGS?????????????64
> > +#define CONFIG_SYS_CBSIZE??????????????2048
> > +#define CONFIG_SYS_PBSIZE??????????????(CONFIG_SYS_CBSIZE + \
> > +???????????????????????????????????????sizeof(CONFIG_SYS_PROMPT) +
> > 16)
> > +#define CONFIG_SYS_BARGSIZE????????????CONFIG_SYS_CBSIZE
> > +#define CONFIG_SYS_LONGHELP
> > +#define CONFIG_AUTO_COMPLETE
> > +#define CONFIG_DOS_PARTITION
> > +
> > +/* U-Boot run time memory configurations??*/
> > +#define CONFIG_SYS_INIT_RAM_ADDR???????0xFFE00000
> > +#define CONFIG_SYS_INIT_RAM_SIZE???????0x40000
> > +#define CONFIG_SYS_INIT_SP_ADDR????????(CONFIG_SYS_INIT_RAM_ADDR \
> > +???????????????????????????????????????+ CONFIG_SYS_INIT_RAM_SIZE)
> > +#define CONFIG_SYS_INIT_SP_OFFSET??????(CONFIG_SYS_INIT_SP_ADDR)
> > +#define CONFIG_SYS_MALLOC_LEN??????????(64 * 1024 * 1024)
> > +
> > +/*
> > ? * Display CPU and Board Info
> > ? */
> > ?#define CONFIG_DISPLAY_CPUINFO
> > ?#define CONFIG_DISPLAY_BOARDINFO
> > ?#define CONFIG_DISPLAY_BOARDINFO_LATE
> > ?
> > +/*
> > + * U-Boot environment configurations
> > + */
> > +#define CONFIG_ENV_IS_NOWHERE		1
> > +#ifndef CONFIG_ENV_SIZE
> > +#define CONFIG_ENV_SIZE		4096
> > +#endif
> > +
> > ?/* Ethernet on SoC (EMAC) */
> > ?#if defined(CONFIG_CMD_NET)
> > ?
> > @@ -55,7 +86,7 @@
> > ?
> > ?#endif
> > ?
> > -#define CONFIG_ENV_IS_IN_MMC
> > +#undef CONFIG_ENV_IS_IN_MMC
> > ?#define CONFIG_SYS_MMC_ENV_DEV		0/* device 0 */
> > ?#define CONFIG_ENV_OFFSET		512/* just after the MBR
> > */
> > ?
> > @@ -89,6 +120,95 @@
> > ?		" root=${qspiroot} rw
> > rootfstype=${qspirootfstype};"\
> > ?		"bootm ${loadaddr} - ${fdt_addr}\0"
> > ?
> > -/* The rest of the configuration is shared */
> > -#include <configs/socfpga_common.h>
> > +/*
> > + * External memory configurations
> > + */
> Why is this being duplicated in board support code when it previously
> was in common code ? That's just wrong.
> 
I found that many conflicts between the board support code and common
code. It is safe for Arria10 having its own setting here. What do you
think?
> > 
> > +#define PHYS_SDRAM_1???????????????????0x0
> > +#define PHYS_SDRAM_1_SIZE??????????????0x80000000
> > +#define CONFIG_SYS_SDRAM_BASE??????????0
> > +#define CONFIG_NR_DRAM_BANKS???????????1
> > +#define CONFIG_SYS_MEMTEST_START???????0
> > +#define CONFIG_SYS_MEMTEST_END?????????0x100000
> > +
> > +/*
> > + * Serial / UART configurations
> > + */
> > +#define CONFIG_SYS_NS16550_SERIAL
> > +#define CONFIG_SYS_NS16550_MEM32
> > +#define CONFIG_SYS_NS16550_REG_SIZE????-4
> > +#define CONFIG_SYS_NS16550_COM1????????SOCFPGA_UART1_ADDRESS
> > +#define CONFIG_SYS_BAUDRATE_TABLE {4800, 9600, 19200, 38400,
> > 57600, 115200}
> > +#define CONFIG_SYS_NS16550_CLK?????????(50000000)
> > +#define CONFIG_CONS_INDEX??????????????1
> > +#define CONFIG_BAUDRATE????????????????115200
> > +
> > +/*
> > + * L4 OSC1 Timer 0
> > + */
> > +/* This timer use eosc1 where the clock frequency is fixed
> > + * throughout any condition */
> > +#define CONFIG_SYS_TIMERBASE		SOCFPGA_SYSTIMER0_ADDR
> > ESS
> > +/* address of timer counter value */
> > +#define CONFIG_SYS_TIMER_COUNTER	(CONFIG_SYS_TIMERBASE +
> > 0x4)
> > +/* reload value when timer count to zero */
> > +#define TIMER_LOAD_VAL			0xFFFFFFFF
> > +/* Clocks source frequency to timer */
> > +#define CONFIG_SYS_TIMER_RATE		(25000000)
> > +
> > +/* DesignWare timer is a countdown timer */
> > +#define CONFIG_SYS_TIMER_COUNTS_DOWN
> > +
> > +/*
> > + * L4 Watchdog configurations
> > + */
> > +#ifdef CONFIG_HW_WATCHDOG
> > +#define CONFIG_DESIGNWARE_WATCHDOG
> > +#define CONFIG_DW_WDT_BASE		SOCFPGA_L4WD0_ADDRESS
> > +#define CONFIG_HPS_CLK_OSC1_HZ	25000000
> > +#define CONFIG_DW_WDT_CLOCK_KHZ		(CONFIG_HPS_CLK_OSC
> > 1_HZ / 1000)
> > +#define CONFIG_HW_WATCHDOG_TIMEOUT_MS	(2000)
> > +#endif
> > +
> > +/*
> > + * SDMMC configurations
> > + */
> > +#ifdef CONFIG_CMD_MMC
> > +#define CONFIG_MMC
> > +#define CONFIG_BOUNCE_BUFFER
> > +#define CONFIG_GENERIC_MMC
> > +#define CONFIG_DWMMC
> > +#define CONFIG_SOCFPGA_DWMMC
> > +#define CONFIG_SOCFPGA_DWMMC_FIFO_DEPTH????????1024
> > +#define CONFIG_SYS_MMC_MAX_BLK_COUNT???????????256
> > +#endif
> > +
> > +/*
> > + * Flash configurations
> > + */
> > +#define CONFIG_SYS_MAX_FLASH_BANKS?????1
> > +#define CONFIG_SYS_NO_FLASH
> > +
> > +/* SPL configuration */
> > +#define CONFIG_SPL_FRAMEWORK
> > +#define CONFIG_SPL_RAM_DEVICE
> > +#define CONFIG_SPL_TEXT_BASE		CONFIG_SYS_INIT_RAM_AD
> > DR
> > +#define CONFIG_SPL_MAX_SIZE			CONFIG_SYS_INIT
> > _RAM_SIZE
> > +
> > +#ifdef CONFIG_SPL_BUILD
> > +#define CONFIG_SYS_MALLOC_SIMPLE
> > +#endif
> > +
> > +#ifdef CONFIG_SPL_NAND_DENALI
> > +#define CONFIG_SPL_NAND_SUPPORT
> > +#endif
> > +
> > +/*
> > + * Stack setup
> > + */
> > +#define CONFIG_SPL_STACK			CONFIG_SYS_INIT_SP
> > _ADDR
> > +
> > +/* SPL SDMMC boot support */
> > +#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION?????1
> > +#define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME????????????????"u-boot-
> > dtb.img"
> > +
> > ?#endif	/* __CONFIG_H */
> > 
> 

  reply	other threads:[~2016-12-07 11:21 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-06  8:07 [U-Boot] [PATCH 05/10] arm: socfpga: arria10: Added support for Arria 10 SoC dev kit Chee Tien Fong
2016-12-06 12:51 ` Marek Vasut
2016-12-07 11:21   ` Chee, Tien Fong [this message]
2016-12-07 13:57     ` Marek Vasut
2016-12-09  9:55       ` Chee, Tien Fong
2016-12-09 12:54         ` Marek Vasut

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1481109705.2741.27.camel@intel.com \
    --to=tien.fong.chee@intel.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.