[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAE7jHC817W77-Dgk7MJ2s7RVnxRGbO6oaSvqge75OCMo-8haFg@mail.gmail.com>
Date: Fri, 16 Nov 2012 12:27:33 +0200
From: Constantine Shulyupin <const@...elinux.com>
To: Bjørn Mork <bjorn@...k.no>
Cc: linux-kernel@...r.kernel.org, celinux-dev@...ts.celinuxforum.org,
selimtemur@...il.com
Subject: Re: [PATCH v2] LDT - Linux Driver Template
On Fri, Nov 16, 2012 at 11:46 AM, Bjørn Mork <bjorn@...k.no> wrote:
> Greg KH <gregkh@...uxfoundation.org> writes:
>
>> Normally you just start with a
>> driver for a device like the one you need to write and modify it from
>> there.
>
> Yes.
>
> Even if the template driver is fixed up to be the most beautiful driver
> ever made, it will still always be made for non-existing hardware. This
> causes two major problems:
> - the driver will not be tested, so it will have bugs
> - the driver will not be used by anyone, so it will not be maintained
> (remember that it is initially perfect, so there is no reason to
> change it)
Thanks. I seems you have missed.
The main advantage of LDT - is working driver with real HW and simple
test suite.
It implements trivial UART driver just to write to port, receive real
HW interrupt
and read data from port. (You can to suggest to use any another HW).
Without available UART, LDT emulates loopback in SW for testing.
Memory buffers are used for mmap and ioctl operations.
LDT test script ldt-test and test utility dio.c configures the driver
for loopback mode, passes data to the driver, receives back and
compares with input and gives result of comparison.
To perform validation tests, regression tests need simply to run test script.
Detailed kernel log and ftrace log during the test are saved for analysts.
> May I suggest another approach? How about selecting a set of existing
> drivers which are suitable as templates, and put all this effort into
> making those drivers *the* perfect examples instead? Start submitting
> cleanup patches for the selected drivers until everyone is satisfied and
> then document them as starting points for anyone wanting to write a
> similar driver.
Thank you. Possible too. Can you or somebody else recommend such drivers?
>
> I believe many subsystem maintainers already have such sample drivers
> which they point new submitters to when asked. That does not mean that
> these drivers necessarily are perfect, so there is still work to do here
> for anyone interested. And collecting this information and documenting
> it would be useful in itself.
Thanks. I already research omap panda platform for improvement opportunities.
Thank you.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists