All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [uClinux-dev] [PATCH 21/22] m68knommu: simplify the ColdFire 532x GPIO struct setup
@ 2012-04-26  0:53 Alex LI
  2012-04-26  1:07 ` Greg Ungerer
  0 siblings, 1 reply; 8+ messages in thread
From: Alex LI @ 2012-04-26  0:53 UTC (permalink / raw)
  To: uClinux development list; +Cc: mohamed nabil, linux-m68k, Greg Ungerer

Greg,

You sent 50 mails in 1 min. 

Sent from my Sony Ericsson Xperia arc S

Greg Ungerer <gerg@snapgear.com> 寫:

>On 04/26/2012 10:36 AM, mohamed nabil wrote:
>> that's a Fucking spam man !!
>
>Huh?
>
>Thats how open source development works. If you don't like it don't
>subscribe to a developers list.
>
>Regards
>Greg
>
>
>
>> On Thu, Apr 26, 2012 at 2:26 AM, <gerg@snapgear.com
>> <mailto:gerg@snapgear.com>> wrote:
>>
>>     From: Greg Ungerer <gerg@uclinux.org <mailto:gerg@uclinux.org>>
>>
>>     The GPIO data struct setup is now the only remaining code in the
>>     platform
>>     gpio.c file. So move it to the platform config.c code and remove the
>>     gpio.c
>>     file.
>>
>>     Signed-off-by: Greg Ungerer <gerg@uclinux.org <mailto:gerg@uclinux.org>>
>>     ---
>>       arch/m68k/platform/532x/Makefile |    2 +-
>>       arch/m68k/platform/532x/config.c |   25 ++++++++++++++++++++++
>>       arch/m68k/platform/532x/gpio.c   |   43
>>     --------------------------------------
>>       3 files changed, 26 insertions(+), 44 deletions(-)
>>       delete mode 100644 arch/m68k/platform/532x/gpio.c
>>
>>     diff --git a/arch/m68k/platform/532x/Makefile
>>     b/arch/m68k/platform/532x/Makefile
>>     index ce01669..c0d8cf8 100644
>>     --- a/arch/m68k/platform/532x/Makefile
>>     +++ b/arch/m68k/platform/532x/Makefile
>>     @@ -15,4 +15,4 @@
>>       asflags-$(CONFIG_FULLDEBUG) := -DDEBUGGER_COMPATIBLE_CACHE=1
>>
>>       #obj-y := config.o usb-mcf532x.o spi-mcf532x.o
>>     -obj-y := config.o gpio.o
>>     +obj-y := config.o
>>     diff --git a/arch/m68k/platform/532x/config.c
>>     b/arch/m68k/platform/532x/config.c
>>     index 2bec347..a4dd3d8 100644
>>     --- a/arch/m68k/platform/532x/config.c
>>     +++ b/arch/m68k/platform/532x/config.c
>>     @@ -26,10 +26,35 @@
>>       #include <asm/mcfsim.h>
>>       #include <asm/mcfuart.h>
>>       #include <asm/mcfdma.h>
>>     +#include <asm/mcfgpio.h>
>>       #include <asm/mcfwdebug.h>
>>
>>       /***************************************************************************/
>>
>>     +struct mcf_gpio_chip mcf_gpio_chips[] = {
>>     +       MCFGPS(PIRQ, 0, 8, MCFEPORT_EPDDR, MCFEPORT_EPDR,
>>     MCFEPORT_EPPDR),
>>     +       MCFGPF(FECH, 8, 8),
>>     +       MCFGPF(FECL, 16, 8),
>>     +       MCFGPF(SSI, 24, 5),
>>     +       MCFGPF(BUSCTL, 32, 4),
>>     +       MCFGPF(BE, 40, 4),
>>     +       MCFGPF(CS, 49, 5),
>>     +       MCFGPF(PWM, 58, 4),
>>     +       MCFGPF(FECI2C, 64, 4),
>>     +       MCFGPF(UART, 72, 8),
>>     +       MCFGPF(QSPI, 80, 6),
>>     +       MCFGPF(TIMER, 88, 4),
>>     +       MCFGPF(LCDDATAH, 96, 2),
>>     +       MCFGPF(LCDDATAM, 104, 8),
>>     +       MCFGPF(LCDDATAL, 112, 8),
>>     +       MCFGPF(LCDCTLH, 120, 1),
>>     +       MCFGPF(LCDCTLL, 128, 8),
>>     +};
>>     +
>>     +unsigned int mcf_gpio_chips_size = ARRAY_SIZE(mcf_gpio_chips);
>>     +
>>     +/***************************************************************************/
>>     +
>>       #ifdef CONFIG_SPI_COLDFIRE_QSPI
>>
>>       static void __init m532x_qspi_init(void)
>>     diff --git a/arch/m68k/platform/532x/gpio.c
>>     b/arch/m68k/platform/532x/gpio.c
>>     deleted file mode 100644
>>     index 3e1b71d..0000000
>>     --- a/arch/m68k/platform/532x/gpio.c
>>     +++ /dev/null
>>     @@ -1,43 +0,0 @@
>>     -/*
>>     - * Coldfire generic GPIO support
>>     - *
>>     - * (C) Copyright 2009, Steven King <sfking@fdwdc.com
>>     <mailto:sfking@fdwdc.com>>
>>     - *
>>     - * 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; version 2 of the License.
>>     - *
>>     - * This program is distributed in the hope that it will be useful,
>>     - * but WITHOUT ANY WARRANTY; without even the implied warranty of
>>     - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>>     - * GNU General Public License for more details.
>>     -*/
>>     -
>>     -#include <linux/kernel.h>
>>     -#include <linux/init.h>
>>     -
>>     -#include <asm/coldfire.h>
>>     -#include <asm/mcfsim.h>
>>     -#include <asm/mcfgpio.h>
>>     -
>>     -struct mcf_gpio_chip mcf_gpio_chips[] = {
>>     -       MCFGPS(PIRQ, 0, 8, MCFEPORT_EPDDR, MCFEPORT_EPDR,
>>     MCFEPORT_EPPDR),
>>     -       MCFGPF(FECH, 8, 8),
>>     -       MCFGPF(FECL, 16, 8),
>>     -       MCFGPF(SSI, 24, 5),
>>     -       MCFGPF(BUSCTL, 32, 4),
>>     -       MCFGPF(BE, 40, 4),
>>     -       MCFGPF(CS, 49, 5),
>>     -       MCFGPF(PWM, 58, 4),
>>     -       MCFGPF(FECI2C, 64, 4),
>>     -       MCFGPF(UART, 72, 8),
>>     -       MCFGPF(QSPI, 80, 6),
>>     -       MCFGPF(TIMER, 88, 4),
>>     -       MCFGPF(LCDDATAH, 96, 2),
>>     -       MCFGPF(LCDDATAM, 104, 8),
>>     -       MCFGPF(LCDDATAL, 112, 8),
>>     -       MCFGPF(LCDCTLH, 120, 1),
>>     -       MCFGPF(LCDCTLL, 128, 8),
>>     -};
>>     -
>>     -unsigned int mcf_gpio_chips_size = ARRAY_SIZE(mcf_gpio_chips);
>>     --
>>     1.7.0.4
>>
>>     _______________________________________________
>>     uClinux-dev mailing list
>>     uClinux-dev@uclinux.org <mailto:uClinux-dev@uclinux.org>
>>     http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
>>     This message was resent by uclinux-dev@uclinux.org
>>     <mailto:uclinux-dev@uclinux.org>
>>     To unsubscribe see:
>>     http://mailman.uclinux.org/mailman/options/uclinux-dev
>>
>>
>>
>>
>> --
>> ______
>> Mohamed Nabil Hafez
>> Embedded Software Engineer
>>
>
>
>-- 
>------------------------------------------------------------------------
>Greg Ungerer  --  Principal Engineer        EMAIL:     gerg@snapgear.com
>SnapGear Group, McAfee                      PHONE:       +61 7 3435 2888
>8 Gardner Close,                            FAX:         +61 7 3891 3630
>Milton, QLD, 4064, Australia                WEB: http://www.SnapGear.com
>_______________________________________________
>uClinux-dev mailing list
>uClinux-dev@uclinux.org
>http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
>This message was resent by uclinux-dev@uclinux.org
>To unsubscribe see:
>http://mailman.uclinux.org/mailman/options/uclinux-dev
>

^ permalink raw reply	[flat|nested] 8+ messages in thread
* [PATCH 00/22] m68knommu: simplify ColdFire GPIO init code
@ 2012-04-26  0:25 gerg
  2012-04-26  0:26 ` [PATCH 21/22] m68knommu: simplify the ColdFire 532x GPIO struct setup gerg
  0 siblings, 1 reply; 8+ messages in thread
From: gerg @ 2012-04-26  0:25 UTC (permalink / raw)
  To: linux-m68k, uclinux-dev, sfking

The GPIO init code for the ColdFire cores is a set of very large tables,
one for each ColdFire SoC type. Each SoC type has very different GPIO pin
arrangements, so one for each is unavoidable. But there is fundamentaly
two types of setup/access that we are trying to support.

With some pre-processor macro magic we can reduce the tables significantly,
making them easier to read, easier to get correct, and easier to maintain.

The following patches implement a set of simplifying changes. What do
others think?  Overall we remove close to 2000 lines of code, and the end
tables are much easier to read and get correct.

Looking for feedback...

Regards
Greg


 a/arch/m68k/platform/5206/gpio.c     |   27 -
 a/arch/m68k/platform/520x/gpio.c     |   34 -
 a/arch/m68k/platform/523x/gpio.c     |   40 --
 a/arch/m68k/platform/5249/gpio.c     |   28 -
 a/arch/m68k/platform/5272/gpio.c     |   29 -
 a/arch/m68k/platform/527x/gpio.c     |   61 ---
 a/arch/m68k/platform/528x/gpio.c     |   49 --
 a/arch/m68k/platform/5307/gpio.c     |   27 -
 a/arch/m68k/platform/532x/gpio.c     |   43 --
 a/arch/m68k/platform/5407/gpio.c     |   27 -
 arch/m68k/include/asm/mcfgpio.h      |    3 
 arch/m68k/platform/5206/gpio.c       |   12 
 arch/m68k/platform/520x/gpio.c       |   12 
 arch/m68k/platform/523x/gpio.c       |   12 
 arch/m68k/platform/5249/gpio.c       |   12 
 arch/m68k/platform/5272/gpio.c       |   12 
 arch/m68k/platform/527x/gpio.c       |   12 
 arch/m68k/platform/528x/gpio.c       |   12 
 arch/m68k/platform/5307/gpio.c       |   12 
 arch/m68k/platform/532x/gpio.c       |   12 
 arch/m68k/platform/5407/gpio.c       |   12 
 b/arch/m68k/include/asm/m528xsim.h   |  179 ++++------
 b/arch/m68k/include/asm/mcfgpio.h    |   41 ++
 b/arch/m68k/platform/5206/Makefile   |    2 
 b/arch/m68k/platform/5206/config.c   |    9 
 b/arch/m68k/platform/5206/gpio.c     |   16 
 b/arch/m68k/platform/520x/Makefile   |    2 
 b/arch/m68k/platform/520x/config.c   |   16 
 b/arch/m68k/platform/520x/gpio.c     |  149 --------
 b/arch/m68k/platform/523x/Makefile   |    2 
 b/arch/m68k/platform/523x/config.c   |   22 +
 b/arch/m68k/platform/523x/gpio.c     |  264 ---------------
 b/arch/m68k/platform/5249/Makefile   |    2 
 b/arch/m68k/platform/5249/config.c   |   10 
 b/arch/m68k/platform/5249/gpio.c     |   33 -
 b/arch/m68k/platform/5272/Makefile   |    2 
 b/arch/m68k/platform/5272/config.c   |   11 
 b/arch/m68k/platform/5272/gpio.c     |   50 --
 b/arch/m68k/platform/527x/Makefile   |    2 
 b/arch/m68k/platform/527x/config.c   |   43 ++
 b/arch/m68k/platform/527x/gpio.c     |  604 +----------------------------------
 b/arch/m68k/platform/528x/Makefile   |    2 
 b/arch/m68k/platform/528x/config.c   |   31 +
 b/arch/m68k/platform/528x/gpio.c     |  427 +-----------------------
 b/arch/m68k/platform/5307/Makefile   |    2 
 b/arch/m68k/platform/5307/config.c   |    9 
 b/arch/m68k/platform/5307/gpio.c     |   16 
 b/arch/m68k/platform/532x/Makefile   |    2 
 b/arch/m68k/platform/532x/config.c   |   25 +
 b/arch/m68k/platform/532x/gpio.c     |  320 ------------------
 b/arch/m68k/platform/5407/Makefile   |    2 
 b/arch/m68k/platform/5407/config.c   |    9 
 b/arch/m68k/platform/5407/gpio.c     |   16 
 b/arch/m68k/platform/coldfire/gpio.c |    4 
 54 files changed, 445 insertions(+), 2367 deletions(-)

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2012-04-26 20:45 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-26  0:53 [uClinux-dev] [PATCH 21/22] m68knommu: simplify the ColdFire 532x GPIO struct setup Alex LI
2012-04-26  1:07 ` Greg Ungerer
2012-04-26  1:10   ` mohamed nabil
  -- strict thread matches above, loose matches on Subject: below --
2012-04-26  0:25 [PATCH 00/22] m68knommu: simplify ColdFire GPIO init code gerg
2012-04-26  0:26 ` [PATCH 21/22] m68knommu: simplify the ColdFire 532x GPIO struct setup gerg
2012-04-26  0:36   ` mohamed nabil
2012-04-26  0:45     ` Greg Ungerer
2012-04-26 16:14     ` Lennart Sorensen
2012-04-26 20:45       ` burcu sariozlu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.