Re: General placement of platform drivers and header files

From: Feng Kan
Date: Wed Sep 25 2013 - 11:58:45 EST


On Tue, Sep 24, 2013 at 9:37 PM, Olof Johansson <olof@xxxxxxxxx> wrote:
> Hi,
>
> On Tue, Sep 24, 2013 at 8:33 PM, Feng Kan <fkan@xxxxxxx> wrote:
>> Hi all:
>>
>> I have some drivers like Queue Manager and co-processor driver that
>> are used by other
>> drivers like Ethernet. Would it be appropriate to locate these drivers
>> under one folder under
>> drivers/misc/arch_name/xxx.
>
> drivers/misc is almost always the wrong answer to where to add a driver.
>
> It would help to also know how the devices interact to answer the
> question of best location. Are the drivers for the coprocessor and for
> the queue manager mostly a pass-through for some operations (and some
> shared allocation of resources), i.e. more of a library, or is it a
> full-fledged driver that will service interrupts, etc?

Lets take QM for an example, the driver is used to allocate queues for
the Ethernet driver and there are ISRs for QM to take care of
errors and change in status.

>
>> My other question is on common header files (belonging to Queue
>> Manager) but is sourced
>> by Ethernet, where should those reside. Should they go under
>> linux/include/misc/arch_name
>> or directly sourced using the ../../../misc/arch_name/headerfile method.
>
> This depends somewhat on where the driver ends up, but somewhere under
> include/linux is likely the right place for the in-kernel interface
> header files.

Given the above, how should the header file be handled?

>
>
> -Olof
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/