All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stefano Babic <sbabic@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v2] wandboard: Add board revision detection support
Date: Fri, 22 May 2015 09:49:53 +0200	[thread overview]
Message-ID: <555EDFA1.2030203@denx.de> (raw)
In-Reply-To: <1432247045-17518-1-git-send-email-festevam@gmail.com>

Hi Fabio,

On 22/05/2015 00:24, Fabio Estevam wrote:
> From: Fabio Estevam <fabio.estevam@freescale.com>
> 
> There are two revisions of wandboard: version B1 and C1.
> 
> Add the revision detection support, so that the correct dtb file can
> be automatically loaded.
> 
> Based on the patch from Richard Hu <hakahu@gmail.com>.
> 
> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
> ---
> Changes since v1:
> 
> - Fixed commit log to 'automatically loaded'.
> 
>  board/wandboard/wandboard.c | 26 +++++++++++++++++++++++++-
>  include/configs/wandboard.h |  8 ++++++--
>  2 files changed, 31 insertions(+), 3 deletions(-)
> 
> diff --git a/board/wandboard/wandboard.c b/board/wandboard/wandboard.c
> index 90625ab..0af63d2 100644
> --- a/board/wandboard/wandboard.c
> +++ b/board/wandboard/wandboard.c
> @@ -50,6 +50,7 @@ DECLARE_GLOBAL_DATA_PTR;
>  #define USDHC1_CD_GPIO		IMX_GPIO_NR(1, 2)
>  #define USDHC3_CD_GPIO		IMX_GPIO_NR(3, 9)
>  #define ETH_PHY_RESET		IMX_GPIO_NR(3, 29)
> +#define REV_DETECTION		IMX_GPIO_NR(2, 28)
>  
>  int dram_init(void)
>  {
> @@ -105,6 +106,10 @@ static iomux_v3_cfg_t const enet_pads[] = {
>  	IOMUX_PADS(PAD_EIM_D29__GPIO3_IO29    | MUX_PAD_CTRL(NO_PAD_CTRL)),
>  };
>  
> +static iomux_v3_cfg_t const rev_detection_pad[] = {
> +	IOMUX_PADS(PAD_EIM_EB0__GPIO2_IO28  | MUX_PAD_CTRL(NO_PAD_CTRL)),
> +};
> +
>  static void setup_iomux_uart(void)
>  {
>  	SETUP_IOMUX_PADS(uart1_pads);
> @@ -393,6 +398,17 @@ static const struct boot_mode board_boot_modes[] = {
>  };
>  #endif
>  
> +static bool is_revc1(void)
> +{
> +	SETUP_IOMUX_PADS(rev_detection_pad);
> +	gpio_direction_input(REV_DETECTION);
> +
> +	if (gpio_get_value(REV_DETECTION))
> +		return true;
> +	else
> +		return false;
> +}
> +
>  int board_late_init(void)
>  {
>  #ifdef CONFIG_CMD_BMODE
> @@ -404,6 +420,11 @@ int board_late_init(void)
>  		setenv("board_rev", "MX6Q");
>  	else
>  		setenv("board_rev", "MX6DL");
> +
> +	if (is_revc1())
> +		setenv("board_name", "C1");
> +	else
> +		setenv("board_name", "B1");
>  #endif
>  	return 0;
>  }
> @@ -424,7 +445,10 @@ int board_init(void)
>  
>  int checkboard(void)
>  {
> -	puts("Board: Wandboard\n");
> +	if (is_revc1())
> +		puts("Board: Wandboard rev C1\n");
> +	else
> +		puts("Board: Wandboard rev B1\n");
>  
>  	return 0;
>  }
> diff --git a/include/configs/wandboard.h b/include/configs/wandboard.h
> index 7ce861e..e87ab90 100644
> --- a/include/configs/wandboard.h
> +++ b/include/configs/wandboard.h
> @@ -232,10 +232,14 @@
>  			"bootz; " \
>  		"fi;\0" \
>  	"findfdt="\
> -		"if test $board_rev = MX6Q ; then " \
> +		"if test $board_name = C1 && test $board_rev = MX6Q ; then " \
>  			"setenv fdtfile imx6q-wandboard.dtb; fi; " \
> -		"if test $board_rev = MX6DL ; then " \
> +		"if test $board_name = C1 && test $board_rev = MX6DL ; then " \
>  			"setenv fdtfile imx6dl-wandboard.dtb; fi; " \
> +		"if test $board_name = B1 && test $board_rev = MX6Q ; then " \
> +			"setenv fdtfile imx6q-wandboard-revb1.dtb; fi; " \
> +		"if test $board_name = B1 && test $board_rev = MX6DL ; then " \
> +			"setenv fdtfile imx6dl-wandboard-revb1.dtb; fi; " \
>  		"if test $fdtfile = undefined; then " \
>  			"echo WARNING: Could not determine dtb to use; fi; \0" \
>  
> 

Reviewed-by: Stefano Babic <sbabic@denx.de>

Best regards,
Stefano Babic

-- 
=====================================================================
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================

  reply	other threads:[~2015-05-22  7:49 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-21 22:24 [U-Boot] [PATCH v2] wandboard: Add board revision detection support Fabio Estevam
2015-05-22  7:49 ` Stefano Babic [this message]
2015-05-23  0:38 ` Vagrant Cascadian
2015-05-23 16:27   ` Alexander Holler
2015-05-24  7:43     ` Stefano Babic
2015-05-24 14:27       ` Fabio Estevam
2015-05-24 14:30         ` Stefano Babic
2015-05-24 17:29         ` Alexander Holler
2015-05-24 18:03           ` Alexander Holler
2015-05-24 18:47             ` Fabio Estevam
2015-05-24 22:22               ` Alexander Holler
2015-05-24 23:42                 ` Fabio Estevam
2015-05-25  9:41                   ` Wolfgang Denk
2015-05-25 11:25                     ` Fabio Estevam
2015-05-26 18:55                     ` Alexander Holler
2015-05-26 22:11                       ` Fabio Estevam
2015-05-24 19:03             ` Tom Rini
2015-05-24 18:44           ` Fabio Estevam
2015-06-08  6:35 ` Stefano Babic

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=555EDFA1.2030203@denx.de \
    --to=sbabic@denx.de \
    --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.