[U-Boot] [PATCH] Exclude certain ns16550 functions from NAND_SPL builds

This patch will exclude all functions from drivers/serial/ns16550.c from NAND_SPL builds with exception of NS16550_putc and NS16550_init. This will save space and remove unused code from already tightly constrained bootstrap images for NAND_SPL builds.
Signed-off-by: Ron Madrid ron_madrid@sbcglobal.net --- drivers/serial/ns16550.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/drivers/serial/ns16550.c b/drivers/serial/ns16550.c index 93c2243..d104a6a 100644 --- a/drivers/serial/ns16550.c +++ b/drivers/serial/ns16550.c @@ -39,6 +39,7 @@ void NS16550_init (NS16550_t com_port, int baud_divisor) #endif }
+#ifndef CONFIG_NAND_SPL void NS16550_reinit (NS16550_t com_port, int baud_divisor) { com_port->ier = 0x00; @@ -53,6 +54,7 @@ void NS16550_reinit (NS16550_t com_port, int baud_divisor) com_port->dlm = (baud_divisor >> 8) & 0xff; com_port->lcr = LCRVAL; } +#endif /* CONFIG_NAND_SPL */
void NS16550_putc (NS16550_t com_port, char c) { @@ -60,6 +62,7 @@ void NS16550_putc (NS16550_t com_port, char c) com_port->thr = c; }
+#ifndef CONFIG_NAND_SPL char NS16550_getc (NS16550_t com_port) { while ((com_port->lsr & LSR_DR) == 0) { @@ -75,5 +78,5 @@ int NS16550_tstc (NS16550_t com_port) { return ((com_port->lsr & LSR_DR) != 0); } - +#endif /* CONFIG_NAND_SPL */ #endif

Dear Ron Madrid,
In message 1233187331-20244-1-git-send-email-ron_madrid@sbcglobal.net you wrote:
This patch will exclude all functions from drivers/serial/ns16550.c from NAND_SPL builds with exception of NS16550_putc and NS16550_init. This will save space and remove unused code from already tightly constrained bootstrap images for NAND_SPL builds.
Signed-off-by: Ron Madrid ron_madrid@sbcglobal.net
drivers/serial/ns16550.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)
This is a global file, so maybe we could use a less specific #define than CONFIG_NAND_SPL for this? Eventually we need this later to boot from device FOO, and I don't want to see this grow into
if !defined(CONFIG_NAND_SPL) && !defined(CONFIG_FOO) && !defined(CONFIG_BAR) && ...
Thanks.
Best regards,
Wolfgang Denk

--- On Thu, 1/29/09, Wolfgang Denk wd@denx.de wrote:
From: Wolfgang Denk wd@denx.de Subject: Re: [U-Boot] [PATCH] Exclude certain ns16550 functions from NAND_SPL builds To: "Ron Madrid" ron_madrid@sbcglobal.net Cc: u-boot@lists.denx.de Date: Thursday, January 29, 2009, 2:24 AM Dear Ron Madrid,
In message 1233187331-20244-1-git-send-email-ron_madrid@sbcglobal.net you wrote:
This patch will exclude all functions from
drivers/serial/ns16550.c from
NAND_SPL builds with exception of NS16550_putc and
NS16550_init. This will save
space and remove unused code from already tightly
constrained bootstrap images
for NAND_SPL builds.
Signed-off-by: Ron Madrid
drivers/serial/ns16550.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)
This is a global file, so maybe we could use a less specific #define than CONFIG_NAND_SPL for this? Eventually we need this later to boot from device FOO, and I don't want to see this grow into
if !defined(CONFIG_NAND_SPL) && !defined(CONFIG_FOO) && !defined(CONFIG_BAR) && ...
I understand your concern. I am not sure what other #define would work. Are you suggesting the creation of a new #define such as #define CONFIG_NS16550_BASIC_OPS or something like that which can be put into the board specific config files?
Ron

Dear Ron Madrid,
In message 697520.19982.qm@web83507.mail.sp1.yahoo.com you wrote:
I understand your concern. I am not sure what other #define would work. Are you suggesting the creation of a new #define such as #define CONFIG_NS16550_BASIC_OPS or something like that which can be put into the board specific config files?
Yes. The name should make clear that this is a minimal configuration only, i. e. something that restricts the recular functions.
Best regards,
Wolfgang Denk
participants (2)
-
Ron Madrid
-
Wolfgang Denk