public inbox for u-boot@lists.denx.de
 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox