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 |
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 --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));
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(-)