1. 23 Jun, 2012 1 commit
    • Andrew Lunn's avatar
      ARM: Orion5x - Restore parts of io.h, with rework · b5e12229
      Andrew Lunn authored
      Commit 4d5fc58d (ARM: remove bunch of
      now unused mach/io.h files) removed the orion5x io.h. Unfortunately,
      this is still needed for the definition of IO_SPACE_LIMIT which
      overrides the default 64K. All Orion based systems have 1Mbyte of IO
      space per PCI[e] bus, and try to request_resource() this size. Orion5x
      has two such PCI buses.
      
      It is likely that the original, removed version, was broken. This
      version might be less broken. However, it has not been tested on
      hardware with a PCI card, let alone hardware with a PCI card with IO
      capabilities.
      Signed-off-by: default avatarAndrew Lunn <andrew@lunn.ch>
      Acked-by: default avatarRob Herring <rob.herring@calxeda.com>
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      b5e12229
  2. 16 Jun, 2012 1 commit
    • Arnd Bergmann's avatar
      arm: versatile: fix and enable PCI I/O space · 9b0f7e39
      Arnd Bergmann authored
      With commit 4d5fc58d (ARM: remove bunch of now unused
      mach/io.h files), the I/O space setup was completely broken on
      versatile. This patch fixes that and prepares for further
      I/O space clean-up.
      
      I/O space handling on the versatile platform is currently
      broken in multiple ways. Most importantly, the ports do
      not get mapped into the virtual address space at all.
      
      Also, there is some amount of confusion between PCI I/O
      space and other statically mapped MMIO registers in the
      platform code:
      
      * The __io_address() macro that is used to access the
        platform register maps to the same __io macro that gets
        used for I/O space.
      
      * The IO_SPACE_LIMIT is set to a value that is much larger
        than the total available space.
      
      * The I/O resource of the PCI bus is set to the physical
        address of the mapping, which is way outside of the
        actual I/O space limit as well as the address range that
        gets decoded by traditional PCI cards.
      
      * No attempt is made to stay outside of the ISA port range
        that some device drivers try access.
      
      * No resource gets requested as a child of ioport_resource,
        but an IORESOURCE_IO type mapping gets requested
        as a child of iomem_resource.
      
      This patch attempts to correct all of the above. This makes
      it possible to use virtio-pci based virtual devices as well
      as actual PCI cards including those with legacy ISA port
      ranges like VGA.
      
      Some of the issues seem to be duplicated on other platforms.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      [rob: update to 3.5-rc2 and io.h cleanup related changes]
      Signed-off-by: default avatarRob Herring <rob.herring@calxeda.com>
      Tested-by: default avatarRobert Schwebel <r.schwebel@pengutronix.de>
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      9b0f7e39
  3. 04 Jun, 2012 1 commit
  4. 23 May, 2012 1 commit
  5. 21 May, 2012 7 commits
  6. 17 May, 2012 1 commit
  7. 15 May, 2012 2 commits
  8. 14 May, 2012 1 commit
  9. 12 May, 2012 2 commits
  10. 11 May, 2012 3 commits
  11. 08 May, 2012 3 commits
  12. 06 May, 2012 1 commit
  13. 05 May, 2012 3 commits
  14. 04 May, 2012 1 commit
    • Linus Walleij's avatar
      ARM: 7389/2: plat-versatile: modernize FPGA IRQ controller · 3108e6ab
      Linus Walleij authored
      This does two things to the FPGA IRQ controller in the versatile
      family:
      
      - Convert to MULTI_IRQ_HANDLER so we can drop the entry macro
        from the Integrator. The C IRQ handler was inspired from
        arch/arm/common/vic.c, recent bug discovered in this handler was
        accounted for.
      - Convert to using IRQ domains so we can get rid of the NO_IRQ
        mess and proceed with device tree and such stuff.
      
      As part of the exercise, bump all the low IRQ numbers on the
      Integrator PIC to start from 1 rather than 0, since IRQ 0 is
      now NO_IRQ. The Linux IRQ numbers are thus entirely decoupled
      from the hardware IRQ numbers in this controller.
      
      I was unable to split this patch. The main reason is the half-done
      conversion to device tree in Versatile.
      
      Tested on Integrator/AP and Integrator/CP.
      
      Cc: Grant Likely <grant.likely@secretlab.ca>
      Acked-by: default avatarRob Herring <rob.herring@calxeda.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      3108e6ab
  15. 02 May, 2012 1 commit
  16. 27 Apr, 2012 1 commit
  17. 26 Apr, 2012 1 commit
  18. 25 Apr, 2012 2 commits
  19. 23 Apr, 2012 1 commit
  20. 22 Apr, 2012 1 commit
  21. 19 Apr, 2012 1 commit
  22. 18 Apr, 2012 1 commit
  23. 16 Apr, 2012 1 commit
  24. 06 Apr, 2012 1 commit
    • Rob Herring's avatar
      ARM: remove ixp23xx and ixp2000 platforms · c65f2abf
      Rob Herring authored
      ixp2xxx platforms have had no real changes since ~2006 and the maintainer
      has said on irc that they can be removed:
      
      13:05 < nico> do you still care about ixp2000?
      13:22 < lennert> not really, no
      13:58 < nico> do you think we could remove it from the kernel tree?
      14:01 < lennert> go for it, and remove ixp23xx too while you're at it
      
      Removing will help simplify ARM consolidation in general and PCI re-work
      specifically.
      Signed-off-by: default avatarRob Herring <rob.herring@calxeda.com>
      Cc: Randy Dunlap <rdunlap@xenotime.net>
      Acked-by: default avatarLennert Buytenhek <buytenh@wantstofly.org>
      c65f2abf
  25. 05 Apr, 2012 1 commit
    • Rob Herring's avatar
      ARM: fix __io macro for PCMCIA · 1ac02d79
      Rob Herring authored
      With commit c334bc15 (ARM: make mach/io.h include optional), PCMCIA was
      broken. PCMCIA depends on __io() returning a valid i/o address, and most
      ARM platforms require IO_SPACE_LIMIT be set to 0xffffffff for PCMCIA. This
      needs a better fix with a fixed i/o address mapping, but for now we just
      restore things to the previous behavior.
      
      This fixes at91, omap1, pxa and sa11xx. pxa needs io.h if PCI is enabled,
      but PCMCIA is not. sa11xx already has IO_SPACE_LIMIT set to 0xffffffff,
      so it doesn't need an io.h.
      Signed-off-by: default avatarRob Herring <rob.herring@calxeda.com>
      Cc: Joachim Eastwood <joachim.eastwood@jotron.com>
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: Andrew Victor <linux@maxim.org.za>
      Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
      Cc: Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>
      Tested-by: Paul Parsons <lost.distance@yahoo.com> (pxa270)
      Acked-by: default avatarTony Lindgren <tony@atomide.com>
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      1ac02d79