[U-Boot] [PATCH 00/71] serial: Massive rework of the serial subsystem

Tom Rini trini at ti.com
Tue Sep 18 18:42:37 CEST 2012


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 09/17/12 16:12, Marek Vasut wrote:
> Dear Tom Rini,
> 
>> On Mon, Sep 17, 2012 at 01:20:25AM +0200, Marek Vasut wrote:
>>> This patchset is a STAGE 1 of preparation of the stdio and 
>>> serial subsys for the driver model.
>> 
>> [snip]
>> 
>>> 6) Remove unused code used for the non-multi operation
>>> 
>>> Remove code that was used when CONFIG_SERIAL_MULTI was not 
>>> selected. Also remove all occurances of CONFIG_SERIAL_MULTI 
>>> throughout the source tree. Some parts of the code must have 
>>> been adjusted to cope with this since they were initially only 
>>> written for non-multi operation. These were minor adjustments 
>>> mostly in macros though.
>> 
>> So we've simplified the code in that now we only have one way of 
>> talking with the serial ports.  And the drivers are a bit more 
>> uniform as well. Making the difference between drivers be "here 
>> is how you poke the hardware" rather than "here is how I 
>> implemented a serial driver and oh, here is how you poke the 
>> hardware" is good.
> 
> Correct
> 
>> But what's the next step?
> 
> So...
> 
> 2) Rework stdio, make the creation of struct stdio_dev static 
> instead of dynamic 3) struct serial_device is superset of struct 
> stdio_dev ... make use of it, make stdio and serial subsystems 
> closer 4) The massive list of callbacks in serial.c is stupid,
> pull out the linker section maker thingie (thing used to make
> driver lists there, similar to command lists from u-boot) from the
> DM tree and allow generation of list of serial drivers
> automagically. ======= 5) Flip over to DM, it's only one step away
> 
>> Have you any thoughts on trying to be clever and in the case of 
>> only one port anyways getting the size back?
> 
> This has been on my mind for a while after seeing those extra 3k
> of code all around. Yet, I'm afraid this won't play well with the
> DM's pile of pointers.
> 
> On the other hand, my stdio rework (step 2) managed to trim down 
> the size a bit, so that might be small compensation.

Can you give us a current example, both to help make sure everyone
understands we won't have too big a growth overall and so that if you
don't shrink it down I can pin you about it later?  Thanks!

- -- 
Tom

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://www.enigmail.net/

iQIcBAEBAgAGBQJQWKR9AAoJENk4IS6UOR1WvdAP/jAoFi6gJXzg4fso5230f4Kq
nZwtvRJ+gJT4ycUTZvTK0YY6KD0fmKPNgah3xVfAUlSNdnAMz/G/B2yOGekLr801
3MuV1h5BXwKotxbhFBPm1bfoIsCPwBi5nZRJTxuFjVihKhihR0VhHt0sSp5WwGkT
RCNpiDKahj99ZhsKlE9AkTMHZ8xQ+EXgy/WeMeVN5s0sgyG8clIfScKTmCHGIzD6
v0AbVsSyMX3Nm/qX8Mh35mMq6Zc6fQ7lszIzWATjY/9Rg6k40Qb7EH60N79namWh
THyRhDes3OU3KzS1qmEL1wK/AO3YF+2/4xWIniaZZKuB87g5BeG8DCrlGCGXeHpF
s/7sBZ1VOwoRevEaCQnFT2pV5J+i0PNHV3IXfukYFClxfcoK1VxfO7bLDhrmbz+h
xYUDAjJ+9Ytx+aayZi8sOnE4tmPs2ZqBZhw6wjN3VRyxeTgwCbxJN317UsSd5drq
XHuX9/00w7EVcER4NoDsqC8Catos3qVwQdjkkvdWrm3yRlvAgLU4zhCXKunUi+ZZ
BBPEllxOcv3mHSPijyokJNcaezL3T7R7qgIpcoViSU6xt7vaxLQoqSuw4qHSeboC
WJSAKS7F4N5WTtosF4GiQNCQgshFt3xMdG+1GIQNZmRNbug/KWx3G2lXZfCTMPOU
pTjdMe6FIS4E2awXhyOw
=/TmM
-----END PGP SIGNATURE-----


More information about the U-Boot mailing list