Thread (29 messages) 29 messages, 7 authors, 2011-05-04
STALE5531d

[PATCH 3/4] omap: move detection of NAND CS to common-board-devices

From: Mike Rapoport <hidden>
Date: 2011-05-04 07:17:13
Also in: linux-omap

On 05/04/11 09:46, Tony Lindgren wrote:
* Mike Rapoport [off-list ref] [110504 09:35]:
quoted
On 05/04/11 07:10, Oleg Drokin wrote:
quoted
Ok, so here's a simple patch to save everyone trouble, I guess.

Though on the other hand I can imagine that perhaps including this generic common-board-devices.c
might not be desirable for people that don't use anything from that file.
Since the common-board-devices.c has TWL initialization I doubt there would a
board that does not use it at all...
quoted
Would it be a better idea to split it to a file-per-feature?
Splitting the common-board-devices into a file-per-feature will diminish its
added value, IMO.
We can either continue to use #ifdef CONFIG_SOMETHING in both
common-board-devices.[ch] as your fix proposes or just drop #ifdefs and inlines
from the header.
Tony, what is your preference?
We should consider the code size too.. Maybe see if you can make them
weak instead of the ifdefs?
Unless I completely misunderstand how weak works, we'll still have ifdefs in .c
file, i.e.

common-board-devices.h:

void __omap_nand_flash_init(int opts, struct mtd_partition *parts, int n_parts)
{
}

void omap_nand_flash_init(int opts, struct mtd_partition *parts, int n_parts)
__attribute__((weak, alias("__omap_nand_flash_init")));

common-board-devices.c:
#if defined(CONFIG_MTD_NAND_OMAP2) || defined(CONFIG_MTD_NAND_OMAP2_MODULE)
void omap_nand_flash_init(int opts, struct mtd_partition *parts, int n_parts)
{
...
}
#endif

Yet, we can keep the ifdefs only in common-board-devices.c and get rid if
inlines in the header.
Also, all the code in common-board-devices.c is __init, so it's eventually
dropped in runtime
Tony

-- 
Sincerely yours,
Mike.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help