modify uart driver in BBB

Hello All,
I am newbie to this group as well as usage of BBB. I am trying to write my own uart driver using BBB for prototype purpose. I Googled a lot, but no where a clear cut implementation is mentioned. I gone through many training material too. Here are the few things where I want clarity to proceed further…

  1. where we get full source code of BBB( i got one link but it does contain many more arch - https://github.com/beagleboard/linux )
  2. which device name should i use in my UART driver? and how should I select the device name?
  3. what is the reference source code for existing UART driver in the BBB?
  4. should I do any changes in Device Tree to create my new driver?
  5. should I use DMA allways with UART driver?
  6. How should my driver access the hardware data, i.e. for example in case of receive data, how this will access the Receive Buffer data?

it will be a great pleasure if some helps me out to solve this problem.
Best Regards
-Shiva

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/drivers/tty/serial/8250/8250_omap.c

Regards,

If by “driver” you mean Linux driver, then the existing one is called “omap-serial”, and you can find it in the kernel source tree, It is, unfortunately, not well documented or maintained. I think the TI employees who used to maintain it are gone. I applaud your enthusiasm to fix it, but I suspect it’s quite a bit more of an undertaking than you imagine.

I wonder what your 'definition' of mainintained really is?

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/log/drivers/tty/serial/omap-serial.c

ps.. "omap-serial" has been depreciated for "8250_omap" so going
foward "omap-serial" will become un-maintained..

Regards,

Thanks to both for the Reply.
How about the remaining questions, Do you people have any idea of those i.e.

  1. which device name should i use in my UART driver? and how should I select the device name?

  2. should I do any changes in Device Tree to create my new driver?

  3. should I use DMA allways with UART driver?

  4. How should my driver access the hardware data, i.e. for example in case of receive data, how this will access the Receive Buffer data?

Best Regards
-Chinna

These can all be answered by looking at and understanding the current code.

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/drivers/tty/serial/8250/8250_omap.c

along with the device tree documenation:

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree

Regards,

Thanks for Info, i will go through them