[PATCH v3 1/8] ARM: Samsung: Add register definitions for Samsung S5P SoC camera interface

Kyungmin Park kyungmin.park at samsung.com
Mon Aug 2 22:15:34 EDT 2010


On Tue, Aug 3, 2010 at 9:46 AM, Kukjin Kim <kgene.kim at samsung.com> wrote:
> Russell King wrote:
>>
>> On Mon, Aug 02, 2010 at 02:08:42PM +0200, Pawel Osciak wrote:
>> > >Russell King - ARM Linux <linux at arm.linux.org.uk> wrote:
>> > >On Mon, Aug 02, 2010 at 12:32:20PM +0200, Pawel Osciak wrote:
>> > >> Well, some of them are indeed unused, but it's not an uncommon
> practice in
>> > >> kernel and might help future developers.
>> > >
>> > >On the other hand, arch/arm is getting soo big that we need to do
>> > >something about this - and one solution is to avoid unnecessary
>> > >definitions that we're not using.
>> > >
>> > >Another good idea is to put definitions along side the drivers which
>> > >they're relevant to - maybe in a local driver-name.h file which
>> > >driver-name.c includes, or maybe even within driver-name.c if they're
>> > >not excessive.  This has the advantage of distributing the "bloat" to
>> > >where its actually used, and means that the driver isn't dependent so
>> > >much on arch/arm or even the SoC itself.
>> > >
>> > >Take a look at arch/arm/mach-vexpress/include/mach/ct-ca9x4.h and
>> > >arch/arm/mach-vexpress/include/mach/motherboard.h - these are the only
>> > >two files which contain platform definitions which are actually used
>> > >for Versatile Express.  Compare that with
>> > >arch/arm/mach-realview/include/mach/platform.h which contains lots
>> > >more...
>> >
>> > So basically, what you and Mauro are recommending is that we move the
> *.h
>> > file with register definitions to drivers/media?
>>
>> What I'm suggesting is what's been pretty standard in Linux for a long
>> time.  Take a look at: drivers/net/3c503.[ch], or for a more recent
>> driver, drivers/net/e1000/*.[ch].  Or drivers/mmc/host/mmci.[ch]
>>
> I agree with Russell's opinion.
> I don't want to add unnecessary(or unavailable in arch/arm) definitions in
> arch/arm/*/include
>
>> Putting definitions which are only used by one driver in
> arch/arm/*/include
>> is silly.

I also happy with this method.

Thank you,
Kyungmin Park



More information about the linux-arm-kernel mailing list