[U-Boot] [PATCH] [UBI] Basic Unsorted Block Image (UBI) support (part 1)
Wolfgang Denk
wd at denx.de
Tue Oct 21 15:16:48 CEST 2008
Dear Stefan Roese,
In message <200810211435.39059.sr at denx.de> you wrote:
>
> That's directly imported from the Linux source. Most of your comments below
> also deal with this Linux code copying. I personally think it is a good idea
> to clone the code from Linux instead of writing a U-Boot specific UBI driver.
> We have done this before on other occasions and it makes perfect sense here
> too from my point of view. It makes porting easier and faster and less error
> prone and even more important, it makes porting of new versions, fixes etc
> easier.
We agree on that. So maybe we should send coding style cleanup patches
for the Linux kenrel?
> > > + * Core registration and callback routines for MTD
> > > + * drivers and users.
> > > + */
> >
> > GPL header missing - here and in many other files.
This *is* a serious issue. And I don;t care wether the code comes
from Linux or not, but I will not accept any code without absolutley
clear licensing conditions.
> > Need "{...}" for multi-line statements.
>
> Again from the Linux original source. When we start changing this code because
> of coding-style issue, it will get very hard to compare those versions and
> add fixes in the future. So I vote for keeping the code as is. It's not that
> ugly, at least from my understanding.
It is a clear violation of Linux Coding Style requirements.
If we don;t want to fix it here, I suggest to fixit at the origin,
i.e. in Linux.
> > > +++ b/drivers/mtd/mtdpart.c
> > > @@ -0,0 +1,531 @@
> > > +/*
> > > + * Simple MTD partitioning layer
> >
> > Hm... We were talking about UBI support.
> >
> > Do we really have to pull in the whole MTD layer from Linux for this?
...
> > Please do not add dead code.
>
> Here I'm not sure which version I prefer. The one Kyungmin used, disabling > the
> not needed code via #if 0 (or something else, like #if UBI_LINUX), or
> completely removing it. Both has some advantages. But again for comparison>
> with the original Linux source it's perhaps better to just disable the code> .
> An "#if UBI_LINIX" is probably better than on "#if 0" though.
There is two things I am concerned about:
1) Do we really need all these files?
2) Do we really need all of this code?
Lots of the code that was left in was obviously dealing with features
we don;t have in U-Boot, and will not have: concepts like user IDs,
file permissions, major and minor numbers, etc.
> Of course we haven't. But it's hard to draw the line *if* you decide to
> include the Linux source. Most OS functions (like spin_lock()...) are defin> ed
> to no-ops in ubi_uboot.h. So it doesn't really increase the code size for
> U-Boot. It just keeps the source in-line with the Linux version.
On the other hand it makes it semi-impossible to review the code in
U-Boot context, or even to get an understanding of flow of control
etc.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"Why should we subsidize intellectual curiosity?" - Ronald Reagan
More information about the U-Boot
mailing list