All of lore.kernel.org
 help / color / mirror / Atom feed
From: Prafulla Wadaskar <prafulla@marvell.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 20/20] arm/km: remove calls to kw_gpio_* in board_early_init_f
Date: Tue, 12 Jun 2012 00:58:30 -0700	[thread overview]
Message-ID: <F766E4F80769BD478052FB6533FA745D1A2FCAF150@SC-VEXCH4.marvell.com> (raw)
In-Reply-To: <1339063620-8890-21-git-send-email-valentin.longchamp@keymile.com>



> -----Original Message-----
> From: Valentin Longchamp [mailto:valentin.longchamp at keymile.com]
> Sent: 07 June 2012 15:37
> To: prafulla at mavell.com
> Cc: Valentin Longchamp; holger.brunck at keymile.com; u-
> boot at lists.denx.de; Prafulla Wadaskar
> Subject: [PATCH 20/20] arm/km: remove calls to kw_gpio_* in
> board_early_init_f
> 
> These functions tried to access two static tables before relocation
> (board_early_init_f is executed before relocation). But these static
> tables lie in the bss section which is not valid before relocation.
> These accesses then overwrote some parts of u-boot binary before it
> was
> relocated. For the kmnusa build, this results in a corrupted important
> env variable (bootcmd) but it may be that some other parts of the u-
> boot
> binary are corrupted.
> 
> This patch solves this problem by moving all the kw_gpio_* calls to
> board_init, which should be early enough in the boot sequence. The
> only
> calls that could not be moved is the one for the SOFT (bitbang) I2C,
> and
> they have been replaced by a direct access to the GPIO dataout Control
> register to set the two GPIOs as output.
> 
> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
> cc: Holger Brunck <holger.brunck@keymile.com>
> cc: Prafulla Wadaskar <prafulla@marvell.com>
> ---
>  board/keymile/km_arm/km_arm.c |   34 ++++++++++++++++++++++++--------
> --
>  include/configs/km/km_arm.h   |    1 +
>  2 files changed, 25 insertions(+), 10 deletions(-)
> 
> diff --git a/board/keymile/km_arm/km_arm.c
> b/board/keymile/km_arm/km_arm.c
> index 2581d61..c13be71 100644
> --- a/board/keymile/km_arm/km_arm.c
> +++ b/board/keymile/km_arm/km_arm.c
> @@ -248,9 +248,27 @@ int misc_init_r(void)
> 
>  int board_early_init_f(void)
>  {
> +#if defined(CONFIG_SOFT_I2C)
>  	u32 tmp;
> 
> +	/* set the 2 bitbang i2c pins as output gpios */
> +	tmp = readl(KW_GPIO0_BASE + 4);
> +	writel(tmp & (~KM_KIRKWOOD_SOFT_I2C_GPIOS) , KW_GPIO0_BASE + 4);
> +#endif
> +
>  	kirkwood_mpp_conf(kwmpp_config, NULL);
> +	return 0;
> +}
> +
> +int board_init(void)
> +{
> +	/*
> +	 * arch number of board
> +	 */
> +	gd->bd->bi_arch_number = MACH_TYPE_KM_KIRKWOOD;
> +
> +	/* address of boot parameters */
> +	gd->bd->bi_boot_params = kw_sdram_bar(0) + 0x100;
> 
>  	/*
>  	 * The KM_FLASH_GPIO_PIN switches between using a
> @@ -259,24 +277,20 @@ int board_early_init_f(void)
>  	 */
>  	kw_gpio_set_valid(KM_FLASH_GPIO_PIN, 1);
>  	kw_gpio_direction_output(KM_FLASH_GPIO_PIN, 1);
> +
>  #if defined(CONFIG_SOFT_I2C)
> -	/* init the GPIO for I2C Bitbang driver */
> +	/* reinit the GPIO for I2C Bitbang driver so that the now
> +	 * available gpio framework is consistent. The calls to
> +	 * direction output in are not necessary, they are already done in
> +	 * board_early_init_f */

Comments are not as per coding standard

Regards..
Prafulla . . .

  reply	other threads:[~2012-06-12  7:58 UTC|newest]

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-07 10:06 [U-Boot] [PATCH 00/20] updates for Keymile Marvell boards Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 01/20] arm/km: enable spi claim bus Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 02/20] arm/km: use correct kw_gpio function for NAND/SPI switching Valentin Longchamp
2012-06-12  4:39   ` Prafulla Wadaskar
2012-06-12  8:38     ` Holger Brunck
2012-06-12  9:32       ` Prafulla Wadaskar
2012-06-12 10:29         ` Holger Brunck
2012-06-13 12:16           ` Holger Brunck
2012-06-07 10:06 ` [U-Boot] [PATCH 03/20] arm/kirkwood: protect the ENV_SPI #defines Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 04/20] arm/km: add kmnusa board support Valentin Longchamp
2012-06-12  4:39   ` Prafulla Wadaskar
2012-06-12  8:34     ` Holger Brunck
2012-06-12  9:40       ` Prafulla Wadaskar
2012-06-12 10:30         ` Holger Brunck
2012-06-12  9:45       ` Prafulla Wadaskar
2012-06-12  9:57       ` Prafulla Wadaskar
2012-06-12 10:37         ` Holger Brunck
2012-06-12 11:09           ` Prafulla Wadaskar
2012-06-12 11:43             ` Holger Brunck
2012-06-12 11:50               ` Prafulla Wadaskar
2012-06-12 15:20                 ` Holger Brunck
2012-06-07 10:06 ` [U-Boot] [PATCH 05/20] arm/km: add kmcoge5un " Valentin Longchamp
2012-06-12  4:39   ` Prafulla Wadaskar
2012-06-07 10:06 ` [U-Boot] [PATCH 06/20] arm/km: convert mgcoge3un target to km_kirkwood Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 07/20] arm/km: remove portl2.h and use km_kirkwood instead Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 08/20] arm/km: correct init of 88e6352 switch in the reset_phy function Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 09/20] arm/km: enable BOCO2 FPGA download support Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 10/20] arm/km: cleanup km_kirkwood boards Valentin Longchamp
2012-06-12  4:39   ` Prafulla Wadaskar
2012-06-12  8:15     ` Holger Brunck
2012-06-07 10:06 ` [U-Boot] [PATCH 11/20] arm/km: redefine piggy 4 reg names to avoid conflicts Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 12/20] arm/km: add support for external switch configuration Valentin Longchamp
2012-06-12  4:39   ` Prafulla Wadaskar
2012-06-21 13:09     ` [U-Boot] [PATCH 12/20] arm/km: add support for external switchconfiguration Valentin Longchamp
2012-07-03  8:17       ` Prafulla Wadaskar
2012-07-03  9:51         ` Valentin Longchamp
2012-07-04  8:07           ` Detlev Zundel
2012-07-04  9:20             ` Prafulla Wadaskar
2012-07-09 12:04               ` Holger Brunck
2012-07-09 12:31                 ` Wolfgang Denk
2012-07-09 12:50                   ` Detlev Zundel
2012-07-09 19:29                     ` Wolfgang Denk
2012-07-09 13:06                   ` Detlev Zundel
2012-07-09 14:44                     ` Holger Brunck
2012-07-09 19:44                       ` Wolfgang Denk
2012-07-09 19:32                     ` Wolfgang Denk
2012-07-16 16:55                       ` Detlev Zundel
2012-07-09 20:42                 ` Prafulla Wadaskar
2012-07-10 19:33                   ` Joe Hershberger
2012-07-09 14:31               ` Detlev Zundel
2012-07-09 14:40                 ` Valentin Longchamp
2012-07-10 10:18                 ` Prafulla Wadaskar
2012-06-07 10:06 ` [U-Boot] [PATCH 13/20] arm/km: enable external switch configuration for kmnusa Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 14/20] arm/km: skip FPGA config when already configured Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 15/20] arm/km: support the 2 PCIe fpga resets Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 16/20] arm/km: add implementation for read_dip_switch Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 17/20] arm/km: fix testpin detection for kmcoge5un Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 18/20] arm/km: implement weak function board_spi_clam_bus/release Valentin Longchamp
2012-06-07 10:06 ` [U-Boot] [PATCH 19/20] arm/km: remove spi toggle command Valentin Longchamp
2012-06-07 10:07 ` [U-Boot] [PATCH 20/20] arm/km: remove calls to kw_gpio_* in board_early_init_f Valentin Longchamp
2012-06-12  7:58   ` Prafulla Wadaskar [this message]
2012-06-12  8:43     ` Holger Brunck

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=F766E4F80769BD478052FB6533FA745D1A2FCAF150@SC-VEXCH4.marvell.com \
    --to=prafulla@marvell.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.