At Thu, 28 Jun 2012 19:30:57 +0530, Laxman Dewangan wrote:
On Thursday 28 June 2012 07:21 PM, Takashi Iwai wrote:
At Thu, 28 Jun 2012 19:06:07 +0530, Laxman Dewangan wrote:
Then how about this? create new file and header for snd-pcm-writecombine-buffer.c/.h and put this in sound/core. Select this file compilation through config SND_PCM_WRITECOMBINE_BUFFER which will be select this config through sound/soc/xxx/Kconfig if they want to use. This will provide three apis: new, free and mmap.
Way too much hustles than necessary...
Ooh no. :-( I had taken the idea from snd_dmaengine_pcm driver. Bit I like to hear simple way which solves the purpose.
As Lars suggested, a simple ifdef should suffice for now. With the upcoming generic dma_mmap_writecombine() stuff, it'd be even simpler in future.
But, still we need to be careful about this. As mentioned, there is no flag to know the possibility of writecombine mmap beforehand. It'd be nice if we have either a compile-time or a run-time flag / function to check that. Then the driver can also expose the mmap capability to user-space depending on the flag.
Yaah, this seems really simple. Thanks for suggestion. If I understand it fully, the new apis will be declare in sound/pcm.h, implement it in pcm_native.c and use the config variable CONFIG_SND_PCM_WRITECOMBINE_BUFFER for ifdef.
Or this could be simply ifdef CONFIG_ARM. Since this ifdef will be unnecessary soon later, I don't think we need to give yet another kconfig. Of course, we should put a good comment around there for not keeping it for long time.
Takashi