diff mbox series

[U-Boot,v2,5/5] sandbox: led: use new function to configure default state

Message ID 1532338891-6848-6-git-send-email-patrick.delaunay@st.com
State Superseded
Delegated to: Tom Rini
Headers show
Series dm: led: remove auto probe in binding function | expand

Commit Message

Patrick DELAUNAY July 23, 2018, 9:41 a.m. UTC
Initialize the led with the default state defined in device tree
in board_init and solve issue with test for led default state.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---
Led default-state is correctly handle in Sandbox, tested with:
  ./u-boot -d ./arch/sandbox/dts/test.dtb
  => led list
  sandbox:red     <inactive>
  sandbox:green   <inactive>
  sandbox:default_on on
  sandbox:default_off off

This patch solve "make tests" issue introduced by
http://patchwork.ozlabs.org/patch/943651/

Changes in v2:
  - add sandbox impact and test update

 board/sandbox/sandbox.c | 9 +++++++++
 common/board_r.c        | 3 ++-
 test/dm/led.c           | 3 +++
 3 files changed, 14 insertions(+), 1 deletion(-)

Comments

Simon Glass July 23, 2018, 11:47 p.m. UTC | #1
Hi Patrick,

On 23 July 2018 at 03:41, Patrick Delaunay <patrick.delaunay@st.com> wrote:
> Initialize the led with the default state defined in device tree
> in board_init and solve issue with test for led default state.
>
> Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
> ---
> Led default-state is correctly handle in Sandbox, tested with:
>   ./u-boot -d ./arch/sandbox/dts/test.dtb
>   => led list
>   sandbox:red     <inactive>
>   sandbox:green   <inactive>
>   sandbox:default_on on
>   sandbox:default_off off
>
> This patch solve "make tests" issue introduced by
> http://patchwork.ozlabs.org/patch/943651/
>
> Changes in v2:
>   - add sandbox impact and test update
>
>  board/sandbox/sandbox.c | 9 +++++++++
>  common/board_r.c        | 3 ++-
>  test/dm/led.c           | 3 +++
>  3 files changed, 14 insertions(+), 1 deletion(-)

Reviewed-by: Simon Glass <sjg@chromium.org>

Please see below.

>
> diff --git a/board/sandbox/sandbox.c b/board/sandbox/sandbox.c
> index 195f620..66b5f24 100644
> --- a/board/sandbox/sandbox.c
> +++ b/board/sandbox/sandbox.c
> @@ -6,6 +6,7 @@
>  #include <common.h>
>  #include <cros_ec.h>
>  #include <dm.h>
> +#include <led.h>
>  #include <os.h>
>  #include <asm/test.h>
>  #include <asm/u-boot-sandbox.h>
> @@ -47,6 +48,14 @@ int dram_init(void)
>         return 0;
>  }
>
> +int board_init(void)
> +{
> +#ifdef CONFIG_LED
> +       led_default_state();

if (IS_ENABLED(CONFIG_LED))
   led_default_state();

> +#endif /* CONFIG_LED */

blank line here

> +       return 0;
> +}
> +
>  #ifdef CONFIG_BOARD_LATE_INIT
>  int board_late_init(void)
>  {
> diff --git a/common/board_r.c b/common/board_r.c
> index 64f2574..9402c0e 100644
> --- a/common/board_r.c
> +++ b/common/board_r.c
> @@ -690,7 +690,8 @@ static init_fnc_t init_sequence_r[] = {
>  #ifdef CONFIG_DM
>         initr_dm,
>  #endif
> -#if defined(CONFIG_ARM) || defined(CONFIG_NDS32) || defined(CONFIG_RISCV)
> +#if defined(CONFIG_ARM) || defined(CONFIG_NDS32) || defined(CONFIG_RISCV) || \
> +       defined(CONFIG_SANDBOX)
>         board_init,     /* Setup chipselects */
>  #endif
>         /*
> diff --git a/test/dm/led.c b/test/dm/led.c
> index 0071f21..00de7b3 100644
> --- a/test/dm/led.c
> +++ b/test/dm/led.c
> @@ -32,6 +32,9 @@ static int dm_test_led_default_state(struct unit_test_state *uts)
>  {
>         struct udevice *dev;
>
> +       /* configure the default state (auto-probe) */
> +       led_default_state();
> +
>         /* Check that we handle the default-state property correctly. */
>         ut_assertok(led_get_by_label("sandbox:default_on", &dev));
>         ut_asserteq(LEDST_ON, led_get_state(dev));
> --
> 2.7.4
>
diff mbox series

Patch

diff --git a/board/sandbox/sandbox.c b/board/sandbox/sandbox.c
index 195f620..66b5f24 100644
--- a/board/sandbox/sandbox.c
+++ b/board/sandbox/sandbox.c
@@ -6,6 +6,7 @@ 
 #include <common.h>
 #include <cros_ec.h>
 #include <dm.h>
+#include <led.h>
 #include <os.h>
 #include <asm/test.h>
 #include <asm/u-boot-sandbox.h>
@@ -47,6 +48,14 @@  int dram_init(void)
 	return 0;
 }
 
+int board_init(void)
+{
+#ifdef CONFIG_LED
+	led_default_state();
+#endif /* CONFIG_LED */
+	return 0;
+}
+
 #ifdef CONFIG_BOARD_LATE_INIT
 int board_late_init(void)
 {
diff --git a/common/board_r.c b/common/board_r.c
index 64f2574..9402c0e 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -690,7 +690,8 @@  static init_fnc_t init_sequence_r[] = {
 #ifdef CONFIG_DM
 	initr_dm,
 #endif
-#if defined(CONFIG_ARM) || defined(CONFIG_NDS32) || defined(CONFIG_RISCV)
+#if defined(CONFIG_ARM) || defined(CONFIG_NDS32) || defined(CONFIG_RISCV) || \
+	defined(CONFIG_SANDBOX)
 	board_init,	/* Setup chipselects */
 #endif
 	/*
diff --git a/test/dm/led.c b/test/dm/led.c
index 0071f21..00de7b3 100644
--- a/test/dm/led.c
+++ b/test/dm/led.c
@@ -32,6 +32,9 @@  static int dm_test_led_default_state(struct unit_test_state *uts)
 {
 	struct udevice *dev;
 
+	/* configure the default state (auto-probe) */
+	led_default_state();
+
 	/* Check that we handle the default-state property correctly. */
 	ut_assertok(led_get_by_label("sandbox:default_on", &dev));
 	ut_asserteq(LEDST_ON, led_get_state(dev));