lkml.org 
[lkml]   [2015]   [Nov]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH RESEND 00/16] Support TI LMU devices
From
Date
On 11/3/2015 5:33 PM, Lee Jones wrote:
> On Tue, 03 Nov 2015, Kim, Milo wrote:
>
>> Hi Lee,
>>
>> On 11/2/2015 5:59 PM, Lee Jones wrote:
>>>> drivers/video/backlight/Kconfig | 62 ++
>>>>> drivers/video/backlight/Makefile | 7 +
>>>>> drivers/video/backlight/lm3532_bl.c | 183 +++++
>>>>> drivers/video/backlight/lm3631_bl.c | 129 ++++
>>>>> drivers/video/backlight/lm3632_bl.c | 125 ++++
>>>>> drivers/video/backlight/lm3633_bl.c | 210 ++++++
>>>>> drivers/video/backlight/lm3695_bl.c | 91 +++
>>>>> drivers/video/backlight/lm3697_bl.c | 187 +++++
>>>>> drivers/video/backlight/ti-lmu-backlight.c | 429 ++++++++++++
>>>>> drivers/video/backlight/ti-lmu-backlight.h | 152 +++++
>>> How different are all of these drivers?
>>>
>>> Can you create one driver that supports them all instead?
>>>
>>
>> Thanks for your suggestion.
>>
>> 'ti-lmu-backlight' is the common part of lmxxxx_bl drivers. And each
>> lmxxx_bl has its own operation functions by using ti_lmu_bl_ops.
>> I've tried to make consolidated driver but it contained too much
>> device specific code in one file. So I prefer simple drivers
>> structure - 'common part' and 'device specific operations'.
>> It would be appreciated if you could introduce better idea.
>
> I wish to avoid having to apply the patches to conduct my own analysis
> of the files, as I am severely restricted on time. Can you tell me how
> much duplicated code there is between the files? How many lines would
> be saved by supporting all of the lm* drivers in a single file?
>

Now, consolidated driver is ready. It improves not only lines of code
but also code size. Patch v2 will be sent soon.

Lines of code
-------------
194 lines are saved in consolidated driver.

Patch v1: 1420 (8 files*)
Patch v2: 1226 (3 files**)

* ti-lmu-backlight.c (429)
ti-lmu-backlight.h (152)
lm3532_bl.c (183)
lm3631_bl.c (129)
lm3632_bl.c (125)
lm3633_bl.c (210)
lm3695_bl.c (95)
lm3697_bl.c (97)

** ti-lmu-backlight-core.c (649)
ti-lmu-backlight-data.c (287)
ti-lmu-backlight.h (290)

Size
----
The text segment is decreased by removing duplicate instructions.

Patch v1
text data bss dec hex filename
12202 720 40 12962 32a2 drivers/video/backlight/built-in.o

Patch v2
text data bss dec hex filename
6883 712 41 7636 1dd4 drivers/video/backlight/built-in.o

Test environment
----------------
- Kernel version: 4.4.0-rc2 (linux-next)
- backlight/built-in.o includes backlight core and ti-lmu-backlight
drivers. No other backlight drivers included.

Change details will be described in the patch-set.

Best regards,
Milo


\
 
 \ /
  Last update: 2015-11-25 10:21    [W:0.072 / U:0.044 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site