devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v9 1/4] of/serial: move earlycon early_param handling to serial
       [not found] <20160811153152.755-1-aleksey.makarov@linaro.org>
@ 2016-08-11 15:31 ` Aleksey Makarov
  2016-08-11 17:06   ` kbuild test robot
  0 siblings, 1 reply; 3+ messages in thread
From: Aleksey Makarov @ 2016-08-11 15:31 UTC (permalink / raw)
  To: Rafael J . Wysocki, Greg Kroah-Hartman
  Cc: linux-serial, linux-acpi, linux-kernel, linux-arm-kernel,
	Aleksey Makarov, Russell King, Len Brown, Leif Lindholm,
	Graeme Gregory, Al Stone, Christopher Covington, Yury Norov,
	Peter Hurley, Andy Shevchenko, Zheng, Lv, Mark Salter,
	Kefeng Wang, Rob Herring, Frank Rowand, Jiri Slaby, devicetree

From: Leif Lindholm <leif.lindholm@linaro.org>

We have multiple "earlycon" early_param handlers - merge the DT one into
the main earlycon one.  It's a cleanup that also will be useful
to defer setting up DT console until ACPI/DT decision is made.

Rename the exported function to avoid clashing with the function from
arch/microblaze/kernel/prom.c

Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org>
Signed-off-by: Aleksey Makarov <aleksey.makarov@linaro.org>
Acked-by: Rob Herring <robh@kernel.org>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Peter Hurley <peter@hurleysoftware.com>
Tested-by: Kefeng Wang <wangkefeng.wang@huawei.com>
---
 drivers/of/fdt.c              | 11 +----------
 drivers/tty/serial/earlycon.c |  2 +-
 include/linux/of_fdt.h        |  2 ++
 3 files changed, 4 insertions(+), 11 deletions(-)

diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
index 55f1b83..741cac53 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
@@ -924,7 +924,7 @@ static inline void early_init_dt_check_for_initrd(unsigned long node)
 
 #ifdef CONFIG_SERIAL_EARLYCON
 
-static int __init early_init_dt_scan_chosen_serial(void)
+int __init early_init_dt_scan_chosen_stdout(void)
 {
 	int offset;
 	const char *p, *q, *options = NULL;
@@ -968,15 +968,6 @@ static int __init early_init_dt_scan_chosen_serial(void)
 	}
 	return -ENODEV;
 }
-
-static int __init setup_of_earlycon(char *buf)
-{
-	if (buf)
-		return 0;
-
-	return early_init_dt_scan_chosen_serial();
-}
-early_param("earlycon", setup_of_earlycon);
 #endif
 
 /**
diff --git a/drivers/tty/serial/earlycon.c b/drivers/tty/serial/earlycon.c
index 067783f..7aae655 100644
--- a/drivers/tty/serial/earlycon.c
+++ b/drivers/tty/serial/earlycon.c
@@ -209,7 +209,7 @@ static int __init param_setup_earlycon(char *buf)
 	 * don't generate a warning from parse_early_params() in that case
 	 */
 	if (!buf || !buf[0])
-		return 0;
+		return early_init_dt_scan_chosen_stdout();
 
 	err = setup_earlycon(buf);
 	if (err == -ENOENT || err == -EALREADY)
diff --git a/include/linux/of_fdt.h b/include/linux/of_fdt.h
index 26c3302..2f69d4c 100644
--- a/include/linux/of_fdt.h
+++ b/include/linux/of_fdt.h
@@ -66,6 +66,7 @@ extern int early_init_dt_scan_chosen(unsigned long node, const char *uname,
 				     int depth, void *data);
 extern int early_init_dt_scan_memory(unsigned long node, const char *uname,
 				     int depth, void *data);
+extern int early_init_dt_scan_chosen_stdout(void);
 extern void early_init_fdt_scan_reserved_mem(void);
 extern void early_init_fdt_reserve_self(void);
 extern void early_init_dt_add_memory_arch(u64 base, u64 size);
@@ -94,6 +95,7 @@ extern void early_get_first_memblock_info(void *, phys_addr_t *);
 extern u64 of_flat_dt_translate_address(unsigned long node);
 extern void of_fdt_limit_memory(int limit);
 #else /* CONFIG_OF_FLATTREE */
+static inline int early_init_dt_scan_chosen_stdout(void) { return -ENODEV; }
 static inline void early_init_fdt_scan_reserved_mem(void) {}
 static inline void early_init_fdt_reserve_self(void) {}
 static inline const char *of_flat_dt_get_machine_name(void) { return NULL; }
-- 
2.9.2


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v9 1/4] of/serial: move earlycon early_param handling to serial
  2016-08-11 15:31 ` [PATCH v9 1/4] of/serial: move earlycon early_param handling to serial Aleksey Makarov
@ 2016-08-11 17:06   ` kbuild test robot
  2016-08-12 11:07     ` Aleksey Makarov
  0 siblings, 1 reply; 3+ messages in thread
From: kbuild test robot @ 2016-08-11 17:06 UTC (permalink / raw)
  Cc: kbuild-all, Rafael J . Wysocki, Greg Kroah-Hartman, linux-serial,
	linux-acpi, linux-kernel, linux-arm-kernel, Aleksey Makarov,
	Russell King, Len Brown, Leif Lindholm, Graeme Gregory, Al Stone,
	Christopher Covington, Yury Norov, Peter Hurley, Andy Shevchenko,
	Zheng, Lv, Mark Salter, Kefeng Wang, Rob Herring, Frank Rowand,
	Jiri Slaby, devicetree

[-- Attachment #1: Type: text/plain, Size: 2121 bytes --]

Hi Leif,

[auto build test ERROR on tty/tty-testing]
[also build test ERROR on v4.8-rc1 next-20160811]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Aleksey-Makarov/ACPI-parse-the-SPCR-table/20160811-233625
base:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tty-testing
config: sh-allnoconfig (attached as .config)
compiler: sh4-linux-gnu-gcc (Debian 5.4.0-6) 5.4.0 20160609
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=sh 

All errors (new ones prefixed by >>):

   In file included from arch/sh/kernel/cpu/sh2/probe.c:13:0:
   include/linux/of_fdt.h: In function 'early_init_dt_scan_chosen_stdout':
>> include/linux/of_fdt.h:98:68: error: 'ENODEV' undeclared (first use in this function)
    static inline int early_init_dt_scan_chosen_stdout(void) { return -ENODEV; }
                                                                       ^
   include/linux/of_fdt.h:98:68: note: each undeclared identifier is reported only once for each function it appears in

vim +/ENODEV +98 include/linux/of_fdt.h

    92	extern void unflatten_and_copy_device_tree(void);
    93	extern void early_init_devtree(void *);
    94	extern void early_get_first_memblock_info(void *, phys_addr_t *);
    95	extern u64 of_flat_dt_translate_address(unsigned long node);
    96	extern void of_fdt_limit_memory(int limit);
    97	#else /* CONFIG_OF_FLATTREE */
  > 98	static inline int early_init_dt_scan_chosen_stdout(void) { return -ENODEV; }
    99	static inline void early_init_fdt_scan_reserved_mem(void) {}
   100	static inline void early_init_fdt_reserve_self(void) {}
   101	static inline const char *of_flat_dt_get_machine_name(void) { return NULL; }

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/octet-stream, Size: 5199 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH v9 1/4] of/serial: move earlycon early_param handling to serial
  2016-08-11 17:06   ` kbuild test robot
@ 2016-08-12 11:07     ` Aleksey Makarov
  0 siblings, 0 replies; 3+ messages in thread
From: Aleksey Makarov @ 2016-08-12 11:07 UTC (permalink / raw)
  To: Rafael J . Wysocki, Greg Kroah-Hartman
  Cc: linux-serial, linux-acpi, linux-kernel, linux-arm-kernel,
	Aleksey Makarov, Russell King, Len Brown, Leif Lindholm,
	Graeme Gregory, Al Stone, Christopher Covington, Yury Norov,
	Peter Hurley, Andy Shevchenko, Zheng, Lv, Mark Salter,
	Kefeng Wang, Rob Herring, Frank Rowand, Jiri Slaby, devicetree

From: Leif Lindholm <leif.lindholm@linaro.org>

We have multiple "earlycon" early_param handlers - merge the DT one into
the main earlycon one.  It's a cleanup that also will be useful
to defer setting up DT console until ACPI/DT decision is made.

Rename the exported function to avoid clashing with the function from
arch/microblaze/kernel/prom.c

Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org>
Signed-off-by: Aleksey Makarov <aleksey.makarov@linaro.org>
Acked-by: Rob Herring <robh@kernel.org>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Peter Hurley <peter@hurleysoftware.com>
Tested-by: Kefeng Wang <wangkefeng.wang@huawei.com>
---
 drivers/of/fdt.c              | 11 +----------
 drivers/tty/serial/earlycon.c |  2 +-
 include/linux/of_fdt.h        |  3 +++
 3 files changed, 5 insertions(+), 11 deletions(-)

diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
index 55f1b83..741cac53 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
@@ -924,7 +924,7 @@ static inline void early_init_dt_check_for_initrd(unsigned long node)
 
 #ifdef CONFIG_SERIAL_EARLYCON
 
-static int __init early_init_dt_scan_chosen_serial(void)
+int __init early_init_dt_scan_chosen_stdout(void)
 {
 	int offset;
 	const char *p, *q, *options = NULL;
@@ -968,15 +968,6 @@ static int __init early_init_dt_scan_chosen_serial(void)
 	}
 	return -ENODEV;
 }
-
-static int __init setup_of_earlycon(char *buf)
-{
-	if (buf)
-		return 0;
-
-	return early_init_dt_scan_chosen_serial();
-}
-early_param("earlycon", setup_of_earlycon);
 #endif
 
 /**
diff --git a/drivers/tty/serial/earlycon.c b/drivers/tty/serial/earlycon.c
index 067783f..7aae655 100644
--- a/drivers/tty/serial/earlycon.c
+++ b/drivers/tty/serial/earlycon.c
@@ -209,7 +209,7 @@ static int __init param_setup_earlycon(char *buf)
 	 * don't generate a warning from parse_early_params() in that case
 	 */
 	if (!buf || !buf[0])
-		return 0;
+		return early_init_dt_scan_chosen_stdout();
 
 	err = setup_earlycon(buf);
 	if (err == -ENOENT || err == -EALREADY)
diff --git a/include/linux/of_fdt.h b/include/linux/of_fdt.h
index 26c3302..4341f32 100644
--- a/include/linux/of_fdt.h
+++ b/include/linux/of_fdt.h
@@ -14,6 +14,7 @@
 
 #include <linux/types.h>
 #include <linux/init.h>
+#include <linux/errno.h>
 
 /* Definitions used by the flattened device tree */
 #define OF_DT_HEADER		0xd00dfeed	/* marker */
@@ -66,6 +67,7 @@ extern int early_init_dt_scan_chosen(unsigned long node, const char *uname,
 				     int depth, void *data);
 extern int early_init_dt_scan_memory(unsigned long node, const char *uname,
 				     int depth, void *data);
+extern int early_init_dt_scan_chosen_stdout(void);
 extern void early_init_fdt_scan_reserved_mem(void);
 extern void early_init_fdt_reserve_self(void);
 extern void early_init_dt_add_memory_arch(u64 base, u64 size);
@@ -94,6 +96,7 @@ extern void early_get_first_memblock_info(void *, phys_addr_t *);
 extern u64 of_flat_dt_translate_address(unsigned long node);
 extern void of_fdt_limit_memory(int limit);
 #else /* CONFIG_OF_FLATTREE */
+static inline int early_init_dt_scan_chosen_stdout(void) { return -ENODEV; }
 static inline void early_init_fdt_scan_reserved_mem(void) {}
 static inline void early_init_fdt_reserve_self(void) {}
 static inline const char *of_flat_dt_get_machine_name(void) { return NULL; }
-- 
2.9.2

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-08-12 11:07 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20160811153152.755-1-aleksey.makarov@linaro.org>
2016-08-11 15:31 ` [PATCH v9 1/4] of/serial: move earlycon early_param handling to serial Aleksey Makarov
2016-08-11 17:06   ` kbuild test robot
2016-08-12 11:07     ` Aleksey Makarov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).