Prev: These are my first patches to the kernel
Next: v2.6.35-rc3: BUG: using smp_processor_id() in preemptible [00000000] code: modprobe/1255
From: Artem Bityutskiy on 13 Jun 2010 05:50 On Wed, 2010-06-02 at 21:12 +0200, Lars-Peter Clausen wrote: > This patch adds support for the NAND controller on JZ4740 SoCs. > > Signed-off-by: Lars-Peter Clausen <lars(a)metafoo.de> > Cc: David Woodhouse <dwmw2(a)infradead.org> > Cc: linux-mtd(a)lists.infradead.org > --- > drivers/mtd/nand/Kconfig | 6 + > drivers/mtd/nand/Makefile | 1 + > drivers/mtd/nand/jz4740_nand.c | 442 +++++++++++++++++++++++++++++++++++++++ > include/linux/mtd/jz4740_nand.h | 34 +++ > 4 files changed, 483 insertions(+), 0 deletions(-) > create mode 100644 drivers/mtd/nand/jz4740_nand.c > create mode 100644 include/linux/mtd/jz4740_nand.h I doubt "include/linux/" is the right place to define 'struct jz_nand_platform_data' - it should instead live is somwhere in arch/mips/ -- Best Regards, Artem Bityutskiy (Артём Битюцкий) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Artem Bityutskiy on 8 Jul 2010 02:20 On Sat, 2010-06-19 at 07:08 +0200, Lars-Peter Clausen wrote: > diff --git a/include/linux/mtd/jz4740_nand.h b/include/linux/mtd/jz4740_nand.h > new file mode 100644 > index 0000000..379f9b6 > --- /dev/null > +++ b/include/linux/mtd/jz4740_nand.h > @@ -0,0 +1,34 @@ > +/* > + * Copyright (C) 2009-2010, Lars-Peter Clausen <lars(a)metafoo.de> > + * JZ4740 SoC NAND controller driver > + * > + * This program is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License as published by the > + * Free Software Foundation; either version 2 of the License, or (at your > + * option) any later version. > + * > + * You should have received a copy of the GNU General Public License along > + * with this program; if not, write to the Free Software Foundation, Inc., > + * 675 Mass Ave, Cambridge, MA 02139, USA. > + * > + */ > + > +#ifndef __JZ_NAND_H__ > +#define __JZ_NAND_H__ > + > +#include <linux/mtd/nand.h> > +#include <linux/mtd/partitions.h> > + > +struct jz_nand_platform_data { > + int num_partitions; > + struct mtd_partition *partitions; > + > + struct nand_ecclayout *ecc_layout; > + > + unsigned int busy_gpio; > + > + void (*ident_callback)(struct platform_device *, struct nand_chip *, > + struct mtd_partition **, int *num_partitions); > +}; > + > +#endif Do you really have to add your platform data strucutre to "inlculde/mtd" ? That is quite global namespace, and ideally only things like user-space interface and "public" interface of the MTD subsystem should live there. Can you keep this somewhere in mips architecture directory? -- Best Regards, Artem Bityutskiy (Артём Битюцкий) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Lars-Peter Clausen on 8 Jul 2010 09:30 Artem Bityutskiy wrote: > On Sat, 2010-06-19 at 07:08 +0200, Lars-Peter Clausen wrote: >> diff --git a/include/linux/mtd/jz4740_nand.h b/include/linux/mtd/jz4740_nand.h >> new file mode 100644 >> index 0000000..379f9b6 >> --- /dev/null >> +++ b/include/linux/mtd/jz4740_nand.h >> @@ -0,0 +1,34 @@ >> +/* >> + * Copyright (C) 2009-2010, Lars-Peter Clausen <lars(a)metafoo.de> >> + * JZ4740 SoC NAND controller driver >> + * >> + * This program is free software; you can redistribute it and/or modify it >> + * under the terms of the GNU General Public License as published by the >> + * Free Software Foundation; either version 2 of the License, or (at your >> + * option) any later version. >> + * >> + * You should have received a copy of the GNU General Public License along >> + * with this program; if not, write to the Free Software Foundation, Inc., >> + * 675 Mass Ave, Cambridge, MA 02139, USA. >> + * >> + */ >> + >> +#ifndef __JZ_NAND_H__ >> +#define __JZ_NAND_H__ >> + >> +#include <linux/mtd/nand.h> >> +#include <linux/mtd/partitions.h> >> + >> +struct jz_nand_platform_data { >> + int num_partitions; >> + struct mtd_partition *partitions; >> + >> + struct nand_ecclayout *ecc_layout; >> + >> + unsigned int busy_gpio; >> + >> + void (*ident_callback)(struct platform_device *, struct nand_chip *, >> + struct mtd_partition **, int *num_partitions); >> +}; >> + >> +#endif > > Do you really have to add your platform data strucutre to > "inlculde/mtd" ? That is quite global namespace, and ideally only things > like user-space interface and "public" interface of the MTD subsystem > should live there. > > Can you keep this somewhere in mips architecture directory? Hi Hm, ok, I see. I'll move it to arch/mips/include/asm/mach-jz4740/ then. But I guess I should move the headers for all the other jz4740 driver to the same directory as well. On the other hand I'm wondering where on would put headers for non platform specific drivers? - Lars -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Artem Bityutskiy on 8 Jul 2010 09:30 On Thu, 2010-07-08 at 15:20 +0200, Lars-Peter Clausen wrote: > On the other hand I'm wondering where on would put headers for non platform specific > drivers? If we are talking about MTD, then drivers/mtd ? -- Best Regards, Artem Bityutskiy (Артём Битюцкий) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Lars-Peter Clausen on 8 Jul 2010 10:10
Artem Bityutskiy wrote: > On Thu, 2010-07-08 at 15:20 +0200, Lars-Peter Clausen wrote: >> On the other hand I'm wondering where on would put headers for non platform specific >> drivers? > > If we are talking about MTD, then drivers/mtd ? > No, what I meant was header defining platform data structs and such. And what I wanted to get at is an answer to why driver header files are put in different directories while the driver files themselves are all keep in the same directory. (drivers of the same subsystem that is) - Lars -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |