linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: plagnioj@jcrosoft.com (Jean-Christophe PLAGNIOL-VILLARD)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH V4 00/23] Create common framework for AT91 device initialisation
Date: Tue, 3 May 2011 02:08:20 +0200	[thread overview]
Message-ID: <20110503000820.GD2802@game.jcrosoft.org> (raw)
In-Reply-To: <1304381017-17912-1-git-send-email-ryan@bluewatersys.com>

On 12:03 Tue 03 May     , Ryan Mallon wrote:
> Each AT91 variant (AT91RM9200, AT91SAM9260, etc) currently has its own
> devices file, which includes the MMIO address, interrupt
> configuration, GPIO setup, etc for each device. This results in a large
> amount of duplicated code.
> 
> This patch set introduces a framework for adding shared devices for the
> AT91 platform and replaces the multiple device setup implementations for
> each device with single implementations in the new framework. This has
> a net reduction of over 5000 lines of code.
> 
> Each of the arch/arm/mach-at91/*_devices.c files becomes a collection of
> structures (with some initialisation callbacks where necessary) with a
> table of devices which are present on the particular AT91 variant. All
> structures/functions are marked as __init/__initdata so there is little
> additional memory overhead. This also means that the #ifdefs around each
> device can be removed from the *_devices.c files (but remain in the new
> common devices.c file) without overhead.
> 
> This is also a step towards allowing more than one AT91 variant to be
> built into a single kernel by removing duplicate function names across
> the *_devices.c files.
> 
> I have build tested the patch series for all of the  AT91 variants 
> and devices, and have boot tested it on the AT91SAM9G20 (Snapper 9G20
> board) and tested basic device functionality.
> 
> Changes from v1:
>  - Moved __initdata to the end of lines
>  - Fixed at572d940hf EMAC MMIO base
>  - Fixed some whitespace issues
> 
> Changes from v2:
>  - Renamed UART identifiers from AT91_ID_USx to AT91_UART_USx. The
>    AT91_UARTx names are already in use. See patch 12 for more details.
>  - Removed some left over debugging.
> 
> Changes from v3:
>  - Made resource/data allocation dynamic to remove all of the near
>    empty static declarations.
>  - Use arrays when multiple devices exist to reduce code complexity
>  - Fixed indendation on some structures and initialisers 
>  - Fixed some additional bugs
>  - Now removes over 5000 lines of code :-)
> 
> Ryan Mallon (23):
>   at91: Add common devices framework
>   at91: Make Ethernet device common
>   at91: Make USB OHCI/EHCI devices common
>   at91: Make UDC device common
>   at91: Make MMC device common
>   at91: Make NAND device common
>   at91: Make TWI device common
>   at91: Make SPI device common
>   at91: Make TCB device common
>   at91: Make RTT device common
>   at91: Make watchdog device common
>   at91: Make UART devices common
>   at91: Make PWM device common
>   at91: Make SSC device common
>   at91: Make AC97 device common
>   at91: Make LCD controller device common
>   at91: Make touchscreen device common
>   at91: Make HDMAC device common
>   at91: Make RTC device common
>   at91: Make high speed USB gadget device common
>   at91: Make compact flash device common
>   at91: Move at91sam9263 CAN device to common devices
>   at91: Remove mAgic and ISI device code
good patch

I'll send some comment to remove more
and we have issue on some of the api we need to fix first so as I tell you
before we keep in hold until we fix it as they are in confict
suc as GPIO, RTC, TIMERS, clock etc...

Best Regards,
J.

  parent reply	other threads:[~2011-05-03  0:08 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-03  0:03 [PATCH V4 00/23] Create common framework for AT91 device initialisation Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 01/23] at91: Add common devices framework Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 02/23] at91: Make Ethernet device common Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 03/23] at91: Make USB OHCI/EHCI devices common Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 04/23] at91: Make UDC device common Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 05/23] at91: Make MMC " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 06/23] at91: Make NAND " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 07/23] at91: Make TWI " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 08/23] at91: Make SPI " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 09/23] at91: Make TCB " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 10/23] at91: Make RTT " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 11/23] at91: Make watchdog " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 12/23] at91: Make UART devices common Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 13/23] at91: Make PWM device common Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 14/23] at91: Make SSC " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 15/23] at91: Make AC97 " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 16/23] at91: Make LCD controller " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 17/23] at91: Make touchscreen " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 18/23] at91: Make HDMAC " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 19/23] at91: Make RTC " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 20/23] at91: Make high speed USB gadget " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 21/23] at91: Make compact flash " Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 22/23] at91: Move at91sam9263 CAN device to common devices Ryan Mallon
2011-05-03  0:03 ` [PATCH V4 23/23] at91: Remove mAgic and ISI device code Ryan Mallon
2011-05-03  0:08 ` Jean-Christophe PLAGNIOL-VILLARD [this message]
2011-05-03  0:20   ` [PATCH V4 00/23] Create common framework for AT91 device initialisation Ryan Mallon
2011-05-03  0:19     ` Jean-Christophe PLAGNIOL-VILLARD

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110503000820.GD2802@game.jcrosoft.org \
    --to=plagnioj@jcrosoft.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).