1. 25 12月, 2012 3 次提交
    • S
      ARM: delete struct sys_timer · 6bb27d73
      Stephen Warren 提交于
      Now that the only field in struct sys_timer is .init, delete the struct,
      and replace the machine descriptor .timer field with the initialization
      function itself.
      
      This will enable moving timer drivers into drivers/clocksource without
      having to place a public prototype of each struct sys_timer object into
      include/linux; the intent is to create a single of_clocksource_init()
      function that determines which timer driver to initialize by scanning
      the device dtree, much like the proposed irqchip_init() at:
      http://www.spinics.net/lists/arm-kernel/msg203686.html
      
      Includes mach-omap2 fixes from Igor Grinberg.
      Tested-by: NRobert Jarzmik <robert.jarzmik@free.fr>
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      6bb27d73
    • S
      ARM: remove struct sys_timer suspend and resume fields · 7704c095
      Stephen Warren 提交于
      These fields duplicate e.g. struct clock_event_device's suspend and
      resume fields, so remove them now that nothing is using them. The aim
      is to remove all fields from struct sys_timer except .init, then replace
      the ARM machine descriptor's .timer field with a .init_time function
      instead, and delete struct sys_timer.
      Reviewed-by: NLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      7704c095
    • S
      ARM: set arch_gettimeoffset directly · 23c197b7
      Stephen Warren 提交于
      remove ARM's struct sys_timer .offset function pointer, and instead
      directly set the arch_gettimeoffset function pointer when the timer
      driver is initialized. This requires multiplying all function results
      by 1000, since the removed arm_gettimeoffset() did this. Also,
      s/unsigned long/u32/ just to make the function prototypes exactly
      match that of arch_gettimeoffset.
      
      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>
      Cc: Hartley Sweeten <hsweeten@visionengravers.com>
      Cc: Ryan Mallon <rmallon@gmail.com>
      Cc: Ben Dooks <ben-linux@fluff.org>
      Cc: Kukjin Kim <kgene.kim@samsung.com>
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      23c197b7
  2. 16 11月, 2012 3 次提交
  3. 06 11月, 2012 1 次提交
    • R
      ARM: implement debug_ll_io_init() · e5c5f2ad
      Rob Herring 提交于
      When using DEBUG_LL, the UART's (or other HW's) registers are mapped
      into early page tables based on the results of assembly macro addruart.
      Later, when the page tables are replaced, the same virtual address must
      remain valid. Historically, this has been ensured by using defines from
      <mach/iomap.h> in both the implementation of addruart, and the machine's
      .map_io() function. However, with the move to single zImage, we wish to
      remove <mach/iomap.h>. To enable this, the macro addruart may be used
      when constructing the late page tables too; addruart is exposed as a
      C function debug_ll_addr(), and used to set up the required mapping in
      debug_ll_io_init(), which may called on an opt-in basis from a machine's
      .map_io() function.
      Signed-off-by: NRob Herring <rob.herring@calxeda.com>
      [swarren: Mask map.virtual with PAGE_MASK. Checked for NULL results from
       debug_ll_addr (e.g. when selected UART isn't valid). Fixed compile when
       either !CONFIG_DEBUG_LL or CONFIG_DEBUG_SEMIHOSTING.]
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      e5c5f2ad
  4. 13 9月, 2012 1 次提交
    • M
      ARM: SoC: add per-platform SMP operations · abcee5fb
      Marc Zyngier 提交于
      This adds a 'struct smp_operations' to abstract the CPU initialization
      and hot plugging functions on SMP systems, which otherwise conflict
      in a multiplatform kernel. This also helps shmobile and potentially
      others that have more than one method to do these.
      
      To allow the kernel to continue building, the platform hooks are
      defined as weak symbols which are overrided by the platform code.
      Once all platforms are converted, the "weak" attribute will be
      removed and the function made static.
      
      Unlike the original version from Marc, this new version from Arnd
      does not use a generalized abstraction for per-soc data structures
      but only tries to solve the problem for the SMP operations. This
      way, we can collapse the previous four data structures into a
      single struct, which is less systematic but also easier to follow
      as a causal reader.
      Signed-off-by: NMarc Zyngier <marc.zyngier@arm.com>
      Acked-by: NNicolas Pitre <nico@fluxnic.net>
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      abcee5fb
  5. 26 7月, 2012 1 次提交
  6. 25 7月, 2012 1 次提交
    • R
      ARM: Add fixed PCI i/o mapping · c2794437
      Rob Herring 提交于
      This adds a fixed virtual mapping for PCI i/o addresses. The mapping is
      located at the last 2MB of vmalloc region (0xfee00000-0xff000000). 2MB
      is used to align with PMD size, but IO_SPACE_LIMIT is 1MB. The space
      is reserved after .map_io and can be mapped at any time later with
      pci_ioremap_io. Platforms which need early i/o mapping (e.g. for vga
      console) can call pci_map_io_early in their .map_io function.
      
      This has changed completely from the 1st implementation which only
      supported creating the static mapping at .map_io.
      Signed-off-by: NRob Herring <rob.herring@calxeda.com>
      Cc: Russell King <linux@arm.linux.org.uk>
      Acked-by: NNicolas Pitre <nico@linaro.org>
      c2794437
  7. 01 7月, 2012 1 次提交
    • S
      ARM: fiq: change FIQ_START to a variable · bc89663a
      Shawn Guo 提交于
      The commit a2be01b1 (ARM: only include mach/irqs.h for !SPARSE_IRQ)
      makes mach/irqs.h only be included for !SPARSE_IRQ build.  There are
      a nubmer of platforms have FIQ_START defined in mach/irqs.h for FIQ
      support.
      
        arch/arm/mach-rpc/include/mach/irqs.h:#define FIQ_START         64
        arch/arm/mach-s3c24xx/include/mach/irqs.h:#define FIQ_START             IRQ_EINT0
        arch/arm/plat-mxc/include/mach/irqs.h:#define FIQ_START 0
      
      If SPARSE_IRQ is enabled for any of these platforms, the following
      compile error will be seen.
      
        arch/arm/kernel/fiq.c: In function ‘enable_fiq’:
        arch/arm/kernel/fiq.c:127:19: error: ‘FIQ_START’ undeclared (first use in this function)
        arch/arm/kernel/fiq.c:127:19: note: each undeclared identifier is reported only once for each function it appears in
        arch/arm/kernel/fiq.c: In function ‘disable_fiq’:
        arch/arm/kernel/fiq.c:132:20: error: ‘FIQ_START’ undeclared (first use in this function)
      
      The patch changes fiq code to have init_FIQ take FIQ_START from
      platforms as a parameter and assign it to variable fiq_start which
      is to replace FIQ_START uses in enable_fiq/disable_fiq.
      Signed-off-by: NShawn Guo <shawn.guo@linaro.org>
      Cc: Kukjin Kim <kgene.kim@samsung.com>
      Cc: Sascha Hauer <s.hauer@pengutronix.de>
      Cc: Rob Herring <rob.herring@calxeda.com>
      Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      bc89663a
  8. 21 5月, 2012 1 次提交
  9. 16 5月, 2012 1 次提交
  10. 14 5月, 2012 2 次提交
    • R
      ARM: PCI: provide a default bus scan implementation · c23bfc38
      Russell King 提交于
      Most PCI implementations perform simple root bus scanning.  Rather than
      having each group of platforms provide a duplicated bus scan function,
      provide the PCI configuration ops structure via the hw_pci structure,
      and call the root bus scanning function from core ARM PCI code.
      Acked-by: NKrzysztof Hałasa <khc@pm.waw.pl>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      c23bfc38
    • R
      ARM: PCI: get rid of pci_std_swizzle() · daeb4c0c
      Russell King 提交于
      Most PCI implementations use the standard PCI swizzle function, which
      handles the well defined behaviour of PCI-to-PCI bridges which can be
      found on cards (eg, four port ethernet cards.)
      
      Rather than having almost every platform specify the standard swizzle
      function, make this the default when no swizzle function is supplied.
      Therefore, a swizzle function only needs to be provided when there is
      something exceptional which needs to be handled.
      
      This gets rid of the swizzle initializer from 47 files, and leaves us
      with just two platforms specifying a swizzle function: ARM Integrator
      and Chalice CATS.
      Acked-by: NKrzysztof Hałasa <khc@pm.waw.pl>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      daeb4c0c
  11. 06 5月, 2012 1 次提交
  12. 03 5月, 2012 1 次提交
  13. 26 4月, 2012 1 次提交
    • R
      ARM: PCI: remove unused sys->hw · 8084de8a
      Russell King 提交于
      Some platforms mark their hw_pci structure as __initdata, which means
      it will be discarded after init time.  Storing pointers to __initdata
      in long lived data structures is a potential source of problems, and
      in this case, sys->hw is unused apart from its initialization.
      
      So, lets remove this member and its initializer.
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      8084de8a
  14. 07 1月, 2012 1 次提交
  15. 28 12月, 2011 1 次提交
  16. 23 12月, 2011 1 次提交
  17. 22 12月, 2011 1 次提交
    • K
      arm: convert sysdev_class to a regular subsystem · 4a858cfc
      Kay Sievers 提交于
      After all sysdev classes are ported to regular driver core entities, the
      sysdev implementation will be entirely removed from the kernel.
      
      Cc: Kukjin Kim <kgene.kim@samsung.com>
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: Ben Dooks <ben-linux@fluff.org>
      Cc: Vinod Koul <vinod.koul@intel.com>
      Cc: Boojin Kim <boojin.kim@samsung.com>
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: Lucas De Marchi <lucas.demarchi@profusion.mobi>
      Cc: Heiko Stuebner <heiko@sntech.de>
      Signed-off-by: NKay Sievers <kay.sievers@vrfy.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      4a858cfc
  18. 11 11月, 2011 2 次提交
  19. 10 11月, 2011 1 次提交
    • F
      ARM: 7155/1: arch.h: Declare 'pt_regs' locally · 1a1f2be2
      Fabio Estevam 提交于
      Fix the following warning when building imx_v4_v5_defconfig target:
      
        CC      arch/arm/mach-imx/mach-imx27ipcam.o
      In file included from arch/arm/mach-imx/mach-imx27ipcam.c:18:
      /home/fabio/linus/linux-2.6/arch/arm/include/asm/mach/arch.h:47: warning: 'struct pt_regs' declared inside parameter list
      /home/fabio/linus/linux-2.6/arch/arm/include/asm/mach/arch.h:47: warning: its scope is only this definition or declaration, which is probably not what you want
      arch/arm/mach-imx/mach-imx27ipcam.c:78: warning: initialization from incompatible pointer type
      
      Declare 'struct pt_regs' locally.
      
      Cc: Eric Miao <eric.miao@canonical.com>
      Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      1a1f2be2
  20. 17 10月, 2011 1 次提交
  21. 23 9月, 2011 1 次提交
  22. 22 8月, 2011 2 次提交
  23. 25 7月, 2011 1 次提交
  24. 22 7月, 2011 1 次提交
    • R
      PCI: Make the struct pci_dev * argument of pci_fixup_irqs const. · d5341942
      Ralf Baechle 提交于
      Aside of the usual motivation for constification,  this function has a
      history of being abused a hook for interrupt and other fixups so I turned
      this function const ages ago in the MIPS code but it should be done
      treewide.
      
      Due to function pointer passing in varous places a few other functions
      had to be constified as well.
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      To: Anton Vorontsov <avorontsov@mvista.com>
      To: Chris Metcalf <cmetcalf@tilera.com>
      To: Colin Cross <ccross@android.com>
      Acked-by: N"David S. Miller" <davem@davemloft.net>
      To: Eric Miao <eric.y.miao@gmail.com>
      To: Erik Gilling <konkers@android.com>
      Acked-by: NGuan Xuetao <gxt@mprc.pku.edu.cn>
      To: "H. Peter Anvin" <hpa@zytor.com>
      To: Imre Kaloz <kaloz@openwrt.org>
      To: Ingo Molnar <mingo@redhat.com>
      To: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      To: Jesse Barnes <jbarnes@virtuousgeek.org>
      To: Krzysztof Halasa <khc@pm.waw.pl>
      To: Lennert Buytenhek <kernel@wantstofly.org>
      To: Matt Turner <mattst88@gmail.com>
      To: Nicolas Pitre <nico@fluxnic.net>
      To: Olof Johansson <olof@lixom.net>
      Acked-by: NPaul Mundt <lethal@linux-sh.org>
      To: Richard Henderson <rth@twiddle.net>
      To: Russell King <linux@arm.linux.org.uk>
      To: Thomas Gleixner <tglx@linutronix.de>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: linux-alpha@vger.kernel.org
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: linux-kernel@vger.kernel.org
      Cc: linux-mips@linux-mips.org
      Cc: linux-pci@vger.kernel.org
      Cc: linux-sh@vger.kernel.org
      Cc: linux-tegra@vger.kernel.org
      Cc: sparclinux@vger.kernel.org
      Cc: x86@kernel.org
      Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      d5341942
  25. 19 7月, 2011 1 次提交
  26. 23 5月, 2011 2 次提交
    • G
      arm/dt: probe for platforms via the device tree · 93c02ab4
      Grant Likely 提交于
      If a dtb is passed to the kernel then the kernel needs to iterate
      through compiled-in mdescs looking for one that matches and move the
      dtb data to a safe location before it gets accidentally overwritten by
      the kernel.
      
      This patch creates a new function, setup_machine_fdt() which is
      analogous to the setup_machine_atags() created in the previous patch.
      It does all the early setup needed to use a device tree machine
      description.
      
      v5: - Print warning with neither dtb nor atags are passed to the kernel
          - Fix bug in setting of __machine_arch_type to the selected machine,
            not just the last machine in the list.
      Reported-by: NTixy <tixy@yxit.co.uk>
          - Copy command line directly into boot_command_line instead of cmd_line
      v4: - Dump some output when a matching machine_desc cannot be found
      v3: - Added processing of reserved list.
          - Backed out the v2 change that copied instead of reserved the
            dtb.  dtb is reserved again and the real problem was fixed by
            using alloc_bootmem_align() for early allocation of RAM for
            unflattening the tree.
          - Moved cmd_line and initrd changes to earlier patch to make series
            bisectable.
      v2: Changed to save the dtb by copying into an allocated buffer.
          - Since the dtb will very likely be passed in the first 16k of ram
            where the interrupt vectors live, memblock_reserve() is
            insufficient to protect the dtb data.
      
      [based on work originally written by Jeremy Kerr <jeremy.kerr@canonical.com>]
      Tested-by: NTony Lindgren <tony@atomide.com>
      Acked-by: NNicolas Pitre <nicolas.pitre@linaro.org>
      Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: NGrant Likely <grant.likely@secretlab.ca>
      93c02ab4
    • G
      arm/dt: consolidate atags setup into setup_machine_atags · 6291319d
      Grant Likely 提交于
      In preparation for adding device tree support, this patch consolidates
      all of the atag-specific setup into a single function.
      
      v5: - drop double printk("Machine; %s\n", ...); call.
          - leave copying boot_command_line in setup_arch() since it isn't
            atags specific.
      v4: - adapt to the removal of lookup_machine_type()
          - break out dump of machine_desc table into dump_machine_table()
            because the device tree probe code will use it.
          - Add for_each_machine_desc() macro
      Tested-by: NTony Lindgren <tony@atomide.com>
      Acked-by: NNicolas Pitre <nicolas.pitre@linaro.org>
      Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: NGrant Likely <grant.likely@secretlab.ca>
      6291319d
  27. 25 4月, 2011 1 次提交
  28. 16 3月, 2011 1 次提交
  29. 15 3月, 2011 1 次提交
  30. 26 2月, 2011 1 次提交
  31. 24 12月, 2010 2 次提交