title: kernel driver or user space driver?
body: <p>I would like to ask your advice on the following: I need to write drivers for omap3, for accessing external dsp through fpga (through gpmc interface). The dsp is required to load file to dsp, and to read/write buffer from dsp. There is already FPGA driver in kernel. The kernel is 2.6.32. So I thought of the following options:</p>
  
  <p>writing dsp driver in kernel, which uses the existing fpga driver.</p>
  
  <p>writing a user space driver which interfaces with the fpga kernel driver.</p>
  
  <p>writing user space driver using UIO , which will not use the kernel fpga driver, but shall do the access to fpga, as part of the user space single and complete dsp driver.</p>
  
  <p>What do you think is prefered option ?
  What is the advantage of kernel driver over user sace and vise versa ?</p>
  
  <p>Thanks, Ran</p>