Kukjin Kim wrote: > > Sachin Kamat wrote: > > > > On 8 August 2012 17:08, Kukjin Kim <kgene.kim@xxxxxxxxxxx> wrote: > > > Sachin Kamat wrote: > > >> > > >> Hi Mark, > > >> > > >> On 8 August 2012 16:39, Mark Brown > > <broonie@xxxxxxxxxxxxxxxxxxxxxxxxxxx> > > >> wrote: > > >> > On Wed, Aug 08, 2012 at 11:34:43AM +0530, Sachin Kamat wrote: > > >> >> Fixes the following build error: > > >> >> In file included from arch/arm/mach-exynos/include/mach/dma.h:24:0, > > >> >> from arch/arm/plat-samsung/include/plat/dma-ops.h:17, > > >> >> from arch/arm/plat-samsung/include/plat/dma.h:128, > > >> >> from sound/soc/samsung/pcm.c:23: > > >> >> arch/arm/plat-samsung/include/plat/dma-pl330.h:106:8: > > >> >> error: redefinition of 'struct > > > s3c2410_dma_client' > > >> >> arch/arm/plat-samsung/include/plat/dma.h:40:8: note: originally > > defined > > >> here > > >> >> make[3]: *** [sound/soc/samsung/pcm.o] Error 1 > > >> > > > >> > Shouldn't this be being fixed in the headers? It looks like they > > >> > reference and disagree with each other on Exynos (my primary > > development > > >> > platform is S3C6410 based so I'd notice if it was a generic Samsung > > >> > issue. > > >> > > > >> > Pasting the error message isn't really that useful unless the fix > is > > >> > obvious, it's better to explain in words what's wrong. > > >> > > >> I had sent the initial patch trying to fix this in the headers and it > > >> worked for exynos4 config. However Kukjin pointed out that the patch > > >> created similar errors with 2410 and 6400 configs. Fixing it further > > >> in the headers did not look quite straight forward as there are many > > >> headers trying to include one another. Hence I felt it is better > > >> handled in the current way. I understand i should have added this > > >> information in the commit message. Below is the link for your > > >> reference that provides the complete discussion. > > >> > > >> http://comments.gmane.org/gmane.linux.kernel.samsung-soc/11274 > > >> > > >> Please let me know your opinion about this. > > >> > > >> > > > I also agree with Mark's opinion and current Sachin's approach cannot > > avoid > > > whole similar build error. > > > > With the current change I did not see any build error with the configs > > (2410, 6400, 64x0 and exyno4) i checked with (after enabling audio). > > Please let me know if you observed any such build error after adding > > this patch. > > > > > > Happens following error with s5pv210_defcofnig (after enabling s5p-sss). > > In file included from arch/arm/mach-s5pv210/include/mach/dma.h:24, > from arch/arm/plat-samsung/include/plat/dma-ops.h:17, > from arch/arm/plat-samsung/include/plat/dma.h:128, > from drivers/crypto/s5p-sss.c:33: > arch/arm/plat-samsung/include/plat/dma-pl330.h:106: error: redefinition of > 'struct s3c2410_dma_client' > make[2]: *** [drivers/crypto/s5p-sss.o] Error 1 > make[1]: *** [drivers/crypto] Error 2 > make[1]: *** Waiting for unfinished jobs.... > make: *** [drivers] Error 2 > make: *** Waiting for unfinished jobs.... > > Actually, <mach/dma.h> is including <plat/dma-pl330.h> for s5p64x0, > s5pc100, s5pv210 and exynos or <plat/dma.h> for s3c24xx and s3c64xx. And > the cause of build error you reported is duplicated declaration of > s3c2410_dma_client. So it can happen when <plat/dma-pl330.h> and > <plat/dma.h> are included together at the same time... > Of course, following can fix above build error similarly... --- diff --git a/drivers/crypto/s5p-sss.c b/drivers/crypto/s5p-sss.c index bc986f8..6a3e98e 100644 --- a/drivers/crypto/s5p-sss.c +++ b/drivers/crypto/s5p-sss.c @@ -30,7 +30,7 @@ #include <crypto/ctr.h> #include <plat/cpu.h> -#include <plat/dma.h> +#include <mach/dma.h> #define _SBF(s, v) ((v) << (s)) #define _BIT(b) _SBF(b, 1) --- Hmm...I need to sort this out... Thanks. Best regards, Kgene. -- Kukjin Kim <kgene.kim@xxxxxxxxxxx>, Senior Engineer, SW Solution Development Team, Samsung Electronics Co., Ltd. -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html