1. 24 10月, 2013 1 次提交
    • G
      of/irq: Rename of_irq_map_* functions to of_irq_parse_* · 0c02c800
      Grant Likely 提交于
      The OF irq handling code has been overloading the term 'map' to refer to
      both parsing the data in the device tree and mapping it to the internal
      linux irq system. This is probably because the device tree does have the
      concept of an 'interrupt-map' function for translating interrupt
      references from one node to another, but 'map' is still confusing when
      the primary purpose of some of the functions are to parse the DT data.
      
      This patch renames all the of_irq_map_* functions to of_irq_parse_*
      which makes it clear that there is a difference between the parsing
      phase and the mapping phase. Kernel code can make use of just the
      parsing or just the mapping support as needed by the subsystem.
      
      The patch was generated mechanically with a handful of sed commands.
      Signed-off-by: NGrant Likely <grant.likely@linaro.org>
      Acked-by: NMichal Simek <monstr@monstr.eu>
      Acked-by: NTony Lindgren <tony@atomide.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      0c02c800
  2. 14 8月, 2013 3 次提交
  3. 08 8月, 2013 4 次提交
  4. 31 7月, 2013 2 次提交
  5. 15 7月, 2013 1 次提交
  6. 02 7月, 2013 5 次提交
  7. 25 6月, 2013 1 次提交
  8. 20 6月, 2013 1 次提交
  9. 01 6月, 2013 1 次提交
  10. 14 5月, 2013 1 次提交
  11. 08 5月, 2013 1 次提交
  12. 06 5月, 2013 2 次提交
    • B
      powerpc/pci: Support per-aperture memory offset · 3fd47f06
      Benjamin Herrenschmidt 提交于
      The PCI core supports an offset per aperture nowadays but our arch
      code still has a single offset per host bridge representing the
      difference betwen CPU memory addresses and PCI MMIO addresses.
      
      This is a problem as new machines and hypervisor versions are
      coming out where the 64-bit windows will have a different offset
      (basically mapped 1:1) from the 32-bit windows.
      
      This fixes it by using separate offsets. In the long run, we probably
      want to get rid of that intermediary struct pci_controller and have
      those directly stored into the pci_host_bridge as they are parsed
      but this will be a more invasive change.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      3fd47f06
    • B
      irqdomain: Allow quiet failure mode · 5fe0c1f2
      Benjamin Herrenschmidt 提交于
      Some interrupt controllers refuse to map interrupts marked as
      "protected" by firwmare. Since we try to map everyting in the
      device-tree on some platforms, we end up with a lot of nasty
      WARN's in the boot log for what is a normal situation on those
      machines.
      
      This defines a specific return code (-EPERM) from the host map()
      callback which cause irqdomain to fail silently.
      
      MPIC is updated to return this when hitting a protected source
      printing only a single line message for diagnostic purposes.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      5fe0c1f2
  13. 30 4月, 2013 2 次提交
    • M
      powerpc: Fix usage of setup_pci_atmu() · d5bbe659
      Michael Neuling 提交于
      Linux next is currently failing to compile mpc85xx_defconfig with:
        arch/powerpc/sysdev/fsl_pci.c:944:2: error: too many arguments to function 'setup_pci_atmu'
      
      This is caused by (from Kumar's next branch):
        commit 34642bbb
        Author: Kumar Gala <galak@kernel.crashing.org>
        powerpc/fsl-pci: Keep PCI SoC controller registers in pci_controller
      
      Which changed definition of setup_pci_atmu() but didn't update one of
      the callers.  Below fixes this.
      Signed-off-by: NMichael Neuling <mikey@neuling.org>
      Reviewed-by: NKim Phillips <kim.phillips@freescale.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      d5bbe659
    • K
      powerpc/fsl-pci: don't unmap the PCI SoC controller registers in setup_pci_atmu · 04aa99cd
      Kevin Hao 提交于
      In patch 34642bbb (powerpc/fsl-pci: Keep PCI SoC controller registers in
      pci_controller) we choose to keep the map of the PCI SoC controller
      registers. But we missed to delete the unmap in setup_pci_atmu
      function. This will cause the following call trace once we access
      the PCI SoC controller registers later.
      
      Unable to handle kernel paging request for data at address 0x8000080080040f14
      Faulting instruction address: 0xc00000000002ea58
      Oops: Kernel access of bad area, sig: 11 [#1]
      SMP NR_CPUS=24 T4240 QDS
      Modules linked in:
      NIP: c00000000002ea58 LR: c00000000002eaf4 CTR: c00000000002eac0
      REGS: c00000017e10b4a0 TRAP: 0300   Not tainted  (3.9.0-rc1-00052-gfa3529f-dirty)
      MSR: 0000000080029000 <CE,EE,ME>  CR: 28adbe22  XER: 00000000
      SOFTE: 0
      DEAR: 8000080080040f14, ESR: 0000000000000000
      TASK = c00000017e100000[1] 'swapper/0' THREAD: c00000017e108000 CPU: 2
      GPR00: 0000000000000000 c00000017e10b720 c0000000009928d8 c00000017e578e00
      GPR04: 0000000000000000 000000000000000c 0000000000000001 c00000017e10bb40
      GPR08: 0000000000000000 8000080080040000 0000000000000000 0000000000000016
      GPR12: 0000000088adbe22 c00000000fffa800 c000000000001ba0 0000000000000000
      GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
      GPR20: 0000000000000000 0000000000000000 0000000000000000 c0000000008a5b70
      GPR24: c0000000008af938 c0000000009a28d8 c0000000009bb5dc c00000017e10bb40
      GPR28: c00000017e32a400 c00000017e10bc00 c00000017e32a400 c00000017e578e00
      NIP [c00000000002ea58] .fsl_pcie_check_link+0x88/0xf0
      LR [c00000000002eaf4] .fsl_indirect_read_config+0x34/0xb0
      Call Trace:
      [c00000017e10b720] [c00000017e10b7a0] 0xc00000017e10b7a0 (unreliable)
      [c00000017e10ba30] [c00000000002eaf4] .fsl_indirect_read_config+0x34/0xb0
      [c00000017e10bad0] [c00000000033aa08] .pci_bus_read_config_byte+0x88/0xd0
      [c00000017e10bb90] [c00000000088d708] .pci_apply_final_quirks+0x9c/0x18c
      [c00000017e10bc40] [c0000000000013dc] .do_one_initcall+0x5c/0x1f0
      [c00000017e10bcf0] [c00000000086ebac] .kernel_init_freeable+0x180/0x26c
      [c00000017e10bdb0] [c000000000001bbc] .kernel_init+0x1c/0x460
      [c00000017e10be30] [c000000000000880] .ret_from_kernel_thread+0x64/0xe4
      Instruction dump:
      38210310 2b800015 4fdde842 7c600026 5463fffe e8010010 7c0803a6 4e800020
      60000000 60000000 e92301d0 7c0004ac <80690f14> 0c030000 4c00012c 38210310
      ---[ end trace 7a8fe0cbccb7d992 ]---
      
      Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
      Signed-off-by: NKevin Hao <haokexin@gmail.com>
      Acked-by: NRoy Zang <tie-fei.zang@freescale.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      04aa99cd
  14. 27 4月, 2013 1 次提交
  15. 26 4月, 2013 2 次提交
  16. 24 4月, 2013 1 次提交
  17. 18 4月, 2013 1 次提交
  18. 10 4月, 2013 2 次提交
  19. 04 4月, 2013 2 次提交
  20. 22 3月, 2013 1 次提交
    • F
      mv643xx_eth: convert to use the Marvell Orion MDIO driver · c3a07134
      Florian Fainelli 提交于
      This patch converts the Marvell MV643XX ethernet driver to use the
      Marvell Orion MDIO driver. As a result, PowerPC and ARM platforms
      registering the Marvell MV643XX ethernet driver are also updated to
      register a Marvell Orion MDIO driver. This driver voluntarily overlaps
      with the Marvell Ethernet shared registers because it will use a subset
      of this shared register (shared_base + 0x4 to shared_base + 0x84). The
      Ethernet driver is also updated to look up for a PHY device using the
      Orion MDIO bus driver.
      
      For ARM and PowerPC we register a single instance of the "mvmdio" driver
      in the system like it used to be done with the use of the "shared_smi"
      platform_data cookie on ARM.
      
      Note that it is safe to register the mvmdio driver only for the "ge00"
      instance of the driver because this "ge00" interface is guaranteed to
      always be explicitely registered by consumers of
      arch/arm/plat-orion/common.c and other instances (ge01, ge10 and ge11)
      were all pointing their shared_smi to ge00. For PowerPC the in-tree
      Device Tree Source files mention only one MV643XX ethernet MAC instance
      so the MDIO bus driver is registered only when id == 0.
      Signed-off-by: NFlorian Fainelli <florian@openwrt.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c3a07134
  21. 16 3月, 2013 2 次提交
  22. 06 3月, 2013 1 次提交
  23. 20 2月, 2013 1 次提交
  24. 16 2月, 2013 1 次提交