diff mbox

[3/3] memory: gpmc: Move omap gpmc code to live under drivers

Message ID 1416594856-15201-4-git-send-email-tony@atomide.com (mailing list archive)
State New, archived
Headers show

Commit Message

Tony Lindgren Nov. 21, 2014, 6:34 p.m. UTC
Just move to drivers as further clean-up can now happen there
finally.

Let's also add Roger and me to the MAINTAINERS so we get
notified for any patches related to GPMC.

Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Roger Quadros <rogerq@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 MAINTAINERS                                              | 8 ++++++++
 arch/arm/mach-omap2/Kconfig                              | 2 ++
 arch/arm/mach-omap2/Makefile                             | 2 +-
 drivers/memory/Kconfig                                   | 8 ++++++++
 drivers/memory/Makefile                                  | 1 +
 arch/arm/mach-omap2/gpmc.c => drivers/memory/omap-gpmc.c | 0
 6 files changed, 20 insertions(+), 1 deletion(-)
 rename arch/arm/mach-omap2/gpmc.c => drivers/memory/omap-gpmc.c (100%)

diff --git a/arch/arm/mach-omap2/gpmc.c b/drivers/memory/omap-gpmc.c
similarity index 100%
rename from arch/arm/mach-omap2/gpmc.c
rename to drivers/memory/omap-gpmc.c

Comments

Felipe Balbi Nov. 21, 2014, 6:39 p.m. UTC | #1
On Fri, Nov 21, 2014 at 10:34:16AM -0800, Tony Lindgren wrote:
> Just move to drivers as further clean-up can now happen there
> finally.
> 
> Let's also add Roger and me to the MAINTAINERS so we get
> notified for any patches related to GPMC.
> 
> Cc: Arnd Bergmann <arnd@arndb.de>
> Cc: Roger Quadros <rogerq@ti.com>
> Signed-off-by: Tony Lindgren <tony@atomide.com>
> ---
>  MAINTAINERS                                              | 8 ++++++++
>  arch/arm/mach-omap2/Kconfig                              | 2 ++
>  arch/arm/mach-omap2/Makefile                             | 2 +-
>  drivers/memory/Kconfig                                   | 8 ++++++++
>  drivers/memory/Makefile                                  | 1 +
>  arch/arm/mach-omap2/gpmc.c => drivers/memory/omap-gpmc.c | 0
>  6 files changed, 20 insertions(+), 1 deletion(-)
>  rename arch/arm/mach-omap2/gpmc.c => drivers/memory/omap-gpmc.c (100%)
> 
> diff --git a/MAINTAINERS b/MAINTAINERS
> index dab92a7..78cc059 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -6629,6 +6629,14 @@ L:	linux-omap@vger.kernel.org
>  S:	Maintained
>  F:	sound/soc/omap/
>  
> +OMAP GENERAL PURPOSE MEMORY CONTROLLER SUPPORT
> +M:	Roger Quadros <rogerq@ti.com>
> +M:	Tony Lindgren <tony@atomide.com>
> +L:	linux-omap@vger.kernel.org
> +S:	Maintained
> +F:	drivers/memory/omap-gpmc.c
> +F:	arch/arm/mach-omap2/*gpmc*
> +
>  OMAP FRAMEBUFFER SUPPORT
>  M:	Tomi Valkeinen <tomi.valkeinen@ti.com>
>  L:	linux-fbdev@vger.kernel.org
> diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
> index f4d06ae..0ea218e 100644
> --- a/arch/arm/mach-omap2/Kconfig
> +++ b/arch/arm/mach-omap2/Kconfig
> @@ -79,7 +79,9 @@ config ARCH_OMAP2PLUS
>  	select CLKSRC_MMIO
>  	select GENERIC_IRQ_CHIP
>  	select MACH_OMAP_GENERIC
> +	select MEMORY
>  	select OMAP_DM_TIMER
> +	select OMAP_GPMC
>  	select PINCTRL
>  	select SOC_BUS
>  	select TI_PRIV_EDMA
> diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
> index 3e824f8..bd85741 100644
> --- a/arch/arm/mach-omap2/Makefile
> +++ b/arch/arm/mach-omap2/Makefile
> @@ -6,7 +6,7 @@ ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/$(src)/include \
>  	-I$(srctree)/arch/arm/plat-omap/include
>  
>  # Common support
> -obj-y := id.o io.o control.o mux.o devices.o fb.o serial.o gpmc.o timer.o pm.o \
> +obj-y := id.o io.o control.o mux.o devices.o fb.o serial.o timer.o pm.o \
>  	 common.o gpio.o dma.o wd_timer.o display.o i2c.o hdq1w.o omap_hwmod.o \
>  	 omap_device.o sram.o drm.o
>  
> diff --git a/drivers/memory/Kconfig b/drivers/memory/Kconfig
> index 6d91c27..6759de7 100644
> --- a/drivers/memory/Kconfig
> +++ b/drivers/memory/Kconfig
> @@ -41,6 +41,14 @@ config TI_EMIF
>  	  parameters and other settings during frequency, voltage and
>  	  temperature changes
>  
> +config OMAP_GPMC
> +	bool

shouldn't you make this selectable ? I might want to build a kernel
without GPMC support because my board just doesn't use GPMC :-)
Tony Lindgren Nov. 21, 2014, 6:45 p.m. UTC | #2
* Felipe Balbi <balbi@ti.com> [141121 10:40]:
> On Fri, Nov 21, 2014 at 10:34:16AM -0800, Tony Lindgren wrote:
> > --- a/drivers/memory/Kconfig
> > +++ b/drivers/memory/Kconfig
> > @@ -41,6 +41,14 @@ config TI_EMIF
> >  	  parameters and other settings during frequency, voltage and
> >  	  temperature changes
> >  
> > +config OMAP_GPMC
> > +	bool
> 
> shouldn't you make this selectable ? I might want to build a kernel
> without GPMC support because my board just doesn't use GPMC :-)

Eventually yes, but let's keep it separate from this move. We'd have
to do something like this:

- Make omap MTD drivers depend on OMAP_GPMC

- Make tusb6010 depend on OMAP_GPMC

- Make smc911x depend on OMAP_GPMC

- Build arch/arm/mach-omap2/*gpmc*.c conditionally
  depending on OMAP_GPMC

Adding stubs for omap-gpmc probably does not make sense as these
devices really depend on GPMC.

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Roger Quadros Nov. 24, 2014, 10 a.m. UTC | #3
Tony,

On 11/21/2014 08:34 PM, Tony Lindgren wrote:
> Just move to drivers as further clean-up can now happen there
> finally.
> 
> Let's also add Roger and me to the MAINTAINERS so we get
> notified for any patches related to GPMC.
> 
> Cc: Arnd Bergmann <arnd@arndb.de>
> Cc: Roger Quadros <rogerq@ti.com>
> Signed-off-by: Tony Lindgren <tony@atomide.com>
> ---
>  MAINTAINERS                                              | 8 ++++++++
>  arch/arm/mach-omap2/Kconfig                              | 2 ++
>  arch/arm/mach-omap2/Makefile                             | 2 +-
>  drivers/memory/Kconfig                                   | 8 ++++++++
>  drivers/memory/Makefile                                  | 1 +
>  arch/arm/mach-omap2/gpmc.c => drivers/memory/omap-gpmc.c | 0
>  6 files changed, 20 insertions(+), 1 deletion(-)
>  rename arch/arm/mach-omap2/gpmc.c => drivers/memory/omap-gpmc.c (100%)
> 
> diff --git a/MAINTAINERS b/MAINTAINERS
> index dab92a7..78cc059 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -6629,6 +6629,14 @@ L:	linux-omap@vger.kernel.org
>  S:	Maintained
>  F:	sound/soc/omap/
>  
> +OMAP GENERAL PURPOSE MEMORY CONTROLLER SUPPORT
> +M:	Roger Quadros <rogerq@ti.com>
> +M:	Tony Lindgren <tony@atomide.com>
> +L:	linux-omap@vger.kernel.org
> +S:	Maintained
> +F:	drivers/memory/omap-gpmc.c
> +F:	arch/arm/mach-omap2/*gpmc*
> +
>  OMAP FRAMEBUFFER SUPPORT
>  M:	Tomi Valkeinen <tomi.valkeinen@ti.com>
>  L:	linux-fbdev@vger.kernel.org
> diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
> index f4d06ae..0ea218e 100644
> --- a/arch/arm/mach-omap2/Kconfig
> +++ b/arch/arm/mach-omap2/Kconfig
> @@ -79,7 +79,9 @@ config ARCH_OMAP2PLUS
>  	select CLKSRC_MMIO
>  	select GENERIC_IRQ_CHIP
>  	select MACH_OMAP_GENERIC
> +	select MEMORY
>  	select OMAP_DM_TIMER
> +	select OMAP_GPMC
>  	select PINCTRL
>  	select SOC_BUS
>  	select TI_PRIV_EDMA
> diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
> index 3e824f8..bd85741 100644
> --- a/arch/arm/mach-omap2/Makefile
> +++ b/arch/arm/mach-omap2/Makefile
> @@ -6,7 +6,7 @@ ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/$(src)/include \
>  	-I$(srctree)/arch/arm/plat-omap/include
>  
>  # Common support
> -obj-y := id.o io.o control.o mux.o devices.o fb.o serial.o gpmc.o timer.o pm.o \
> +obj-y := id.o io.o control.o mux.o devices.o fb.o serial.o timer.o pm.o \
>  	 common.o gpio.o dma.o wd_timer.o display.o i2c.o hdq1w.o omap_hwmod.o \
>  	 omap_device.o sram.o drm.o
>  
> diff --git a/drivers/memory/Kconfig b/drivers/memory/Kconfig
> index 6d91c27..6759de7 100644
> --- a/drivers/memory/Kconfig
> +++ b/drivers/memory/Kconfig
> @@ -41,6 +41,14 @@ config TI_EMIF
>  	  parameters and other settings during frequency, voltage and
>  	  temperature changes
>  
> +config OMAP_GPMC
> +	bool

We should depend on ARCH_OMAP2PLUS. Other platforms won't benefit
anything from this driver.

> +	help
> +	  This driver is for the General Purpose Memory Controller (GPMC)
> +	  present on Texas Instruments SoCs (e.g. OMAP2+). GPMC allows
> +	  interfacing to a variety of asynchronous as well as synchronous
> +	  memory drives like NOR, NAND, OneNAND, SRAM.
> +
>  config MVEBU_DEVBUS
>  	bool "Marvell EBU Device Bus Controller"
>  	default y
> diff --git a/drivers/memory/Makefile b/drivers/memory/Makefile
> index c32d319..a7d410f 100644
> --- a/drivers/memory/Makefile
> +++ b/drivers/memory/Makefile
> @@ -8,6 +8,7 @@ endif
>  obj-$(CONFIG_ATMEL_SDRAMC)	+= atmel-sdramc.o
>  obj-$(CONFIG_TI_AEMIF)		+= ti-aemif.o
>  obj-$(CONFIG_TI_EMIF)		+= emif.o
> +obj-$(CONFIG_OMAP_GPMC)		+= omap-gpmc.o
>  obj-$(CONFIG_FSL_CORENET_CF)	+= fsl-corenet-cf.o
>  obj-$(CONFIG_FSL_IFC)		+= fsl_ifc.o
>  obj-$(CONFIG_MVEBU_DEVBUS)	+= mvebu-devbus.o
> diff --git a/arch/arm/mach-omap2/gpmc.c b/drivers/memory/omap-gpmc.c
> similarity index 100%
> rename from arch/arm/mach-omap2/gpmc.c
> rename to drivers/memory/omap-gpmc.c
> 

cheers,
-roger
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Tony Lindgren Nov. 24, 2014, 3:44 p.m. UTC | #4
* Roger Quadros <rogerq@ti.com> [141124 02:02]:
> On 11/21/2014 08:34 PM, Tony Lindgren wrote:
> > --- a/drivers/memory/Kconfig
> > +++ b/drivers/memory/Kconfig
> > @@ -41,6 +41,14 @@ config TI_EMIF
> >  	  parameters and other settings during frequency, voltage and
> >  	  temperature changes
> >  
> > +config OMAP_GPMC
> > +	bool
> 
> We should depend on ARCH_OMAP2PLUS. Other platforms won't benefit
> anything from this driver.

We can't do that yet until we have sorted out the remaining platform
data issues with arch/arm/mach-omap2/*gpmc*.c files.

So OMAP_GPMC is currently a silent Kconfig option that does not show
up as the description after the bool is not there, we select
OMAP_GPMC automatically based on ARCH_OMAP2PLUS.

Once we have the remaining legacy code issues sorted out, we can
make this into just a regular device driver.

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Roger Quadros Nov. 26, 2014, 11:22 a.m. UTC | #5
On 24/11/14 17:44, Tony Lindgren wrote:
> * Roger Quadros <rogerq@ti.com> [141124 02:02]:
>> On 11/21/2014 08:34 PM, Tony Lindgren wrote:
>>> --- a/drivers/memory/Kconfig
>>> +++ b/drivers/memory/Kconfig
>>> @@ -41,6 +41,14 @@ config TI_EMIF
>>>  	  parameters and other settings during frequency, voltage and
>>>  	  temperature changes
>>>  
>>> +config OMAP_GPMC
>>> +	bool
>>
>> We should depend on ARCH_OMAP2PLUS. Other platforms won't benefit
>> anything from this driver.
> 
> We can't do that yet until we have sorted out the remaining platform
> data issues with arch/arm/mach-omap2/*gpmc*.c files.
> 
> So OMAP_GPMC is currently a silent Kconfig option that does not show
> up as the description after the bool is not there, we select
> OMAP_GPMC automatically based on ARCH_OMAP2PLUS.
> 
> Once we have the remaining legacy code issues sorted out, we can
> make this into just a regular device driver.

OK. In that case,

Acked-by: Roger Quadros <rogerq@ti.com>

cheers,
-roger
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Tony Lindgren Nov. 26, 2014, 8:10 p.m. UTC | #6
* Roger Quadros <rogerq@ti.com> [141126 03:24]:
> On 24/11/14 17:44, Tony Lindgren wrote:
> > * Roger Quadros <rogerq@ti.com> [141124 02:02]:
> >> On 11/21/2014 08:34 PM, Tony Lindgren wrote:
> >>> --- a/drivers/memory/Kconfig
> >>> +++ b/drivers/memory/Kconfig
> >>> @@ -41,6 +41,14 @@ config TI_EMIF
> >>>  	  parameters and other settings during frequency, voltage and
> >>>  	  temperature changes
> >>>  
> >>> +config OMAP_GPMC
> >>> +	bool
> >>
> >> We should depend on ARCH_OMAP2PLUS. Other platforms won't benefit
> >> anything from this driver.
> > 
> > We can't do that yet until we have sorted out the remaining platform
> > data issues with arch/arm/mach-omap2/*gpmc*.c files.
> > 
> > So OMAP_GPMC is currently a silent Kconfig option that does not show
> > up as the description after the bool is not there, we select
> > OMAP_GPMC automatically based on ARCH_OMAP2PLUS.
> > 
> > Once we have the remaining legacy code issues sorted out, we can
> > make this into just a regular device driver.
> 
> OK. In that case,
> 
> Acked-by: Roger Quadros <rogerq@ti.com>

Thanks. FYI I did the move now based on what Arnd and I discussed
on #armlinux as we were trying to figure out if the earlier gpmc
changes should be merged to drivers branch.

Arnd, to prettify the diffstats for the arm-soc drivers branch,
I've just sent a pull request for these as:

"[GIT PULL] move omap gpmc to drivers finally".

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/MAINTAINERS b/MAINTAINERS
index dab92a7..78cc059 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -6629,6 +6629,14 @@  L:	linux-omap@vger.kernel.org
 S:	Maintained
 F:	sound/soc/omap/
 
+OMAP GENERAL PURPOSE MEMORY CONTROLLER SUPPORT
+M:	Roger Quadros <rogerq@ti.com>
+M:	Tony Lindgren <tony@atomide.com>
+L:	linux-omap@vger.kernel.org
+S:	Maintained
+F:	drivers/memory/omap-gpmc.c
+F:	arch/arm/mach-omap2/*gpmc*
+
 OMAP FRAMEBUFFER SUPPORT
 M:	Tomi Valkeinen <tomi.valkeinen@ti.com>
 L:	linux-fbdev@vger.kernel.org
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index f4d06ae..0ea218e 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -79,7 +79,9 @@  config ARCH_OMAP2PLUS
 	select CLKSRC_MMIO
 	select GENERIC_IRQ_CHIP
 	select MACH_OMAP_GENERIC
+	select MEMORY
 	select OMAP_DM_TIMER
+	select OMAP_GPMC
 	select PINCTRL
 	select SOC_BUS
 	select TI_PRIV_EDMA
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index 3e824f8..bd85741 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -6,7 +6,7 @@  ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/$(src)/include \
 	-I$(srctree)/arch/arm/plat-omap/include
 
 # Common support
-obj-y := id.o io.o control.o mux.o devices.o fb.o serial.o gpmc.o timer.o pm.o \
+obj-y := id.o io.o control.o mux.o devices.o fb.o serial.o timer.o pm.o \
 	 common.o gpio.o dma.o wd_timer.o display.o i2c.o hdq1w.o omap_hwmod.o \
 	 omap_device.o sram.o drm.o
 
diff --git a/drivers/memory/Kconfig b/drivers/memory/Kconfig
index 6d91c27..6759de7 100644
--- a/drivers/memory/Kconfig
+++ b/drivers/memory/Kconfig
@@ -41,6 +41,14 @@  config TI_EMIF
 	  parameters and other settings during frequency, voltage and
 	  temperature changes
 
+config OMAP_GPMC
+	bool
+	help
+	  This driver is for the General Purpose Memory Controller (GPMC)
+	  present on Texas Instruments SoCs (e.g. OMAP2+). GPMC allows
+	  interfacing to a variety of asynchronous as well as synchronous
+	  memory drives like NOR, NAND, OneNAND, SRAM.
+
 config MVEBU_DEVBUS
 	bool "Marvell EBU Device Bus Controller"
 	default y
diff --git a/drivers/memory/Makefile b/drivers/memory/Makefile
index c32d319..a7d410f 100644
--- a/drivers/memory/Makefile
+++ b/drivers/memory/Makefile
@@ -8,6 +8,7 @@  endif
 obj-$(CONFIG_ATMEL_SDRAMC)	+= atmel-sdramc.o
 obj-$(CONFIG_TI_AEMIF)		+= ti-aemif.o
 obj-$(CONFIG_TI_EMIF)		+= emif.o
+obj-$(CONFIG_OMAP_GPMC)		+= omap-gpmc.o
 obj-$(CONFIG_FSL_CORENET_CF)	+= fsl-corenet-cf.o
 obj-$(CONFIG_FSL_IFC)		+= fsl_ifc.o
 obj-$(CONFIG_MVEBU_DEVBUS)	+= mvebu-devbus.o