1. 20 2月, 2013 2 次提交
  2. 16 2月, 2013 6 次提交
  3. 13 2月, 2013 18 次提交
    • P
      powerpc/85xx: dts - add ranges property for SEC · db29cd3c
      Po Liu 提交于
      This facilitates getting the physical address of the SEC node.
      Signed-off-by: NLiu po <po.liu@freescale.com>
      Reviewed-by: NKim Phillips <kim.phillips@freescale.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      db29cd3c
    • H
      powerpc/83xx: update kmeter1_defconfig · ed59b3ec
      Holger Brunck 提交于
      Synchronize this defconfig with latest kernel version.
      Signed-off-by: NHolger Brunck <holger.brunck@keymile.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      ed59b3ec
    • G
      powerpc/83xx: apply mpc8360e quirk for kmeter1 only when par_io is present · 9c2f451e
      Gerlando Falauto 提交于
      There is no point in applying this quirk when par_io is not present.
      Signed-off-by: NGerlando Falauto <gerlando.falauto@keymile.com>
      Signed-off-by: NHolger Brunck <holger.brunck@keymile.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      9c2f451e
    • G
      powerpc/83xx: refactor mpc8360e quirk for kmeter1 · 14f40f31
      Gerlando Falauto 提交于
      Move the code for this quirk to a dedicated function.
      Signed-off-by: NGerlando Falauto <gerlando.falauto@keymile.com>
      Signed-off-by: NHolger Brunck <holger.brunck@keymile.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      14f40f31
    • H
    • H
    • T
      powerpc/85xx: fix various PCI node compatible strings · 14bdc913
      Timur Tabi 提交于
      Fix and/or improve the compatible strings of the PCI device tree nodes for
      some Freescale SOCs.  This fixes some issues and improves consistency among
      the SOCs.
      
      Specifically:
      
      1) The P1022 has a v1 PCIe controller, so the compatible property should just
      say "fsl,mpc8548-pcie".  U-Boot does not look for "fsl,p1022-pcie", so it
      wasn't fixing up the node.
      
      2) The P4080 has a v2.1 PCIe controller, so add that version-specific string
      to the device tree.  Update the kernel to also look for that string.
      Currently, the kernel looks for "fsl,p4080-pcie" specifically, but
      eventually that check should be deleted.
      
      3) The P1010 device tree claims compatibility with v2.2 and v2.3, but that's
      redundant.  No other device tree does this.  Remove the v2.2 string.
      
      4) The kernel looks for both "fsl,p1023-pcie" and "fsl,qoriq-pcie-v2.2",
      even though the P1023 device trees has always included both strings.  Remove
      the search for "fsl,p1023-pcie".
      Signed-off-by: NTimur Tabi <timur@freescale.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      14bdc913
    • T
      powerpc/85xx: describe the PAMU topology in the device tree · 0408753f
      Timur Tabi 提交于
      The PAMU caches use the LIODNs to determine which cache lines hold the
      entries for the corresponding LIODs.  The LIODNs must therefore be
      carefully assigned to avoid cache thrashing -- two active LIODs with
      LIODNs that put them in the same cache line.
      
      Currently, LIODNs are statically assigned by U-Boot, but this has
      limitations.  LIODNs are assigned even for devices that may be disabled
      or unused by the kernel.  Static assignments also do not allow for device
      drivers which may know which LIODs can be used simultaneously.  In
      other words, we really should assign LIODNs dynamically in Linux.
      
      To do that, we need to describe the PAMU device and cache topologies in
      the device trees.
      Signed-off-by: NTimur Tabi <timur@freescale.com>
      Acked-by: NStuart Yoder <stuart.yoder@freescale.com>
      Acked-by: NScott Wood <scottwood@freescale.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      0408753f
    • V
      crypto: caam - Added property fsl, sec-era in SEC4.0 device tree binding. · 2d1efdb2
      Vakul Garg 提交于
      This new property defines the era of the particular SEC version.
      The compatible property in device tree "crypto" node has been updated
      not to contain SEC era numbers.
      Signed-off-by: NVakul Garg <vakul@freescale.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      2d1efdb2
    • P
      powerpc/85xx: enable MTD options in sbc8548 defconfig · d5bc813f
      Paul Gortmaker 提交于
      This board has soldered on flash, and a SODIMM flash module.
      Both can be used for booting, via switching JP12 and SW2.8
      and using the sbc8548-altflash.dts when booting from SODIMM.
      
      Here we enable MTD in kernel so that we can see the bootloader
      (and other flash sectors) from linux.
      
      Normal configuration:
      
       root@sbc8548:~# cat /proc/mtd
       dev:    size   erasesize  name
       mtd0: 007a0000 00020000 "space"
       mtd1: 00060000 00020000 "bootloader"
       mtd2: 03f00000 00080000 "space"
       mtd3: 00100000 00080000 "bootloader"
       root@sbc8548:~# dd if=/dev/mtd1 count=1 bs=48|hexdump -C
       1+0 records in
       1+0 records out
       00000000  27 05 19 56 55 2d 42 6f  6f 74 20 32 30 31 32 2e  |'..VU-Boot 2012.|
       00000010  31 30 2d 64 69 72 74 79  20 28 4a 61 6e 20 31 39  |10-dirty (Jan 19|
       00000020  20 32 30 31 33 20 2d 20  31 39 3a 34 30 3a 31 31  | 2013 - 19:40:11|
       00000030
       root@sbc8548:~# dd if=/dev/mtd3 count=1 bs=48|hexdump -C
       1+0 records in
       1+0 records out
       00000000  27 05 19 56 55 2d 42 6f  6f 74 20 32 30 31 32 2e  |'..VU-Boot 2012.|
       00000010  31 30 2d 64 69 72 74 79  20 28 44 65 63 20 31 33  |10-dirty (Dec 13|
       00000020  20 32 30 31 32 20 2d 20  31 35 3a 30 30 3a 30 37  | 2012 - 15:00:07|
       00000030
       root@sbc8548:~#
      
      Alternate configuration, with sbc8548-altflash.dts:
      
       root@sbc8548:~# cat /proc/mtd
       dev:    size   erasesize  name
       mtd0: 03f00000 00080000 "space"
       mtd1: 00100000 00080000 "bootloader"
       mtd2: 007a0000 00020000 "space"
       mtd3: 00060000 00020000 "bootloader"
       root@sbc8548:~# dd if=/dev/mtd1 count=1 bs=48|hexdump -C
       1+0 records in
       1+0 records out
       00000000  27 05 19 56 55 2d 42 6f  6f 74 20 32 30 31 32 2e  |'..VU-Boot 2012.|
       00000010  31 30 2d 64 69 72 74 79  20 28 44 65 63 20 31 33  |10-dirty (Dec 13|
       00000020  20 32 30 31 32 20 2d 20  31 35 3a 30 30 3a 30 37  | 2012 - 15:00:07|
       00000030
       root@sbc8548:~# dd if=/dev/mtd3 count=1 bs=48|hexdump -C
       1+0 records in
       1+0 records out
       00000000  27 05 19 56 55 2d 42 6f  6f 74 20 32 30 31 32 2e  |'..VU-Boot 2012.|
       00000010  31 30 2d 64 69 72 74 79  20 28 4a 61 6e 20 31 39  |10-dirty (Jan 19|
       00000020  20 32 30 31 33 20 2d 20  31 39 3a 34 30 3a 31 31  | 2013 - 19:40:11|
       00000030
       root@sbc8548:~#
      
      Note that in the latter, the larger SODIMM device appears 1st,
      as mtd0 and mtd1, as indicated in the sizes, and in the date
      of the u-boot image.
      
      The kernel configuration is the same in both cases; only the dtb
      needs to be changed in accordance with the JP12/SW2.8 settings.
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      d5bc813f
    • P
      powerpc/85xx: add alternate dts file for sbc8548 boot via SODIMM · dcc8722a
      Paul Gortmaker 提交于
      By moving the two JP12 jumpers 90 degrees, and switching the
      setting of SW2.8, the sbc8548 can be configured to boot off
      the alternate 64MB SODIMM, which when populated with u-boot
      can be a handy recovery option, in case the u-boot in the
      8MB soldered on flash gets corrupted.  Here we add an alternate
      dts file to match that configuration.
      
      To better highlight the differences, the output from the u-boot
      "fli" command is shown for the normal configuration and then
      the alternate configuration.
      
      Normal:
       -----------------------
      Bank # 1: CFI conformant flash (8 x 8)  Size: 8 MB in 64 Sectors
        Intel Extended command set, Manufacturer ID: 0x89, Device ID: 0x17
        Erase timeout: 4096 ms, write timeout: 1 ms
        Buffer write timeout: 2 ms, buffer size: 32 bytes
      
        Sector Start Addresses:
        FF800000 E      FF820000 E      FF840000 E      FF860000 E      FF880000 E
       [...]
        FFEE0000 E      FFF00000 E      FFF20000 E      FFF40000 E      FFF60000 E
        FFF80000        FFFA0000   RO   FFFC0000   RO   FFFE0000   RO
      
      Bank # 2: CFI conformant flash (32 x 8)  Size: 64 MB in 128 Sectors
        Intel Extended command set, Manufacturer ID: 0x89, Device ID: 0x18
        Erase timeout: 4096 ms, write timeout: 1 ms
        Buffer write timeout: 2 ms, buffer size: 32 bytes
      
        Sector Start Addresses:
        EC000000 E      EC080000 E      EC100000 E      EC180000 E      EC200000 E
       [...]
        EFC00000 E      EFC80000 E      EFD00000 E      EFD80000 E      EFE00000 E
        EFE80000 E      EFF00000        EFF80000
       -----------------------
      
      Alternate:
       -----------------------
      Bank # 1: CFI conformant flash (32 x 8)  Size: 64 MB in 128 Sectors
        Intel Extended command set, Manufacturer ID: 0x89, Device ID: 0x18
        Erase timeout: 4096 ms, write timeout: 1 ms
        Buffer write timeout: 2 ms, buffer size: 32 bytes
      
        Sector Start Addresses:
        FC000000 E      FC080000 E      FC100000 E      FC180000 E      FC200000 E
       [...]
        FFC00000 E      FFC80000 E      FFD00000 E      FFD80000 E      FFE00000 E
        FFE80000 E      FFF00000   RO   FFF80000   RO
      
      Bank # 2: CFI conformant flash (8 x 8)  Size: 8 MB in 64 Sectors
        Intel Extended command set, Manufacturer ID: 0x89, Device ID: 0x17
        Erase timeout: 4096 ms, write timeout: 1 ms
        Buffer write timeout: 2 ms, buffer size: 32 bytes
      
        Sector Start Addresses:
        EF800000 E      EF820000 E      EF840000 E      EF860000 E      EF880000 E
       [...]
        EFEE0000 E      EFF00000 E      EFF20000 E      EFF40000 E      EFF60000 E
        EFF80000 E      EFFA0000        EFFC0000        EFFE0000
       -----------------------
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      dcc8722a
    • P
      powerpc/85xx: update sbc8548 flash information to match recent u-boot · 7e83f2ad
      Paul Gortmaker 提交于
      The original memory map for the sbc8548 had the 64MB SODIMM flash
      device misaligned by 8MB to allow a window of address space for
      the soldered on 8MB device -- i.e.
      
       start           end             CS<n>   width   Desc.
       ----------------------------------------------------------
       fb80_0000       ff7f_ffff       CS6     32      SODIMM flash (64MB)
       ff80_0000       ffff_ffff       CS0     8       Boot flash (8MB)
      
      However, if we want to change the configuration so that it boots
      off the 64MB flash, it is in turn then aligned with a 64MB boundary,
      starting at fc00_0000 (and the 8MB @ fb80_0000 -> fbff_ffff).
      
      This makes for complicated updates, since what is the beginning
      of the physical device is 8MB into its address space in the default
      configuration shown above.
      
      This issue was fixed as of u-boot commit 3fd673cf363bc86ed42eff713d4
      ("sbc8548: relocate 64MB user flash to sane boundary") -- in which
      the SODIMM was mapped to ec00_0000 (natively aligned under efff_ffff)
      and so when JP12/SW2.8 are switched, it will be a a simple 0xec --> 0xfc
      mapping between the two instances.
      
      Here we make the associated changes in the localbus flash memory
      map in the dts file:  indicating the 64MB device starts at ec00_0000
      and that the tail end of the 64MB device (last 2 sectors) can contain
      a bootloader image.
      
      The partitions for both flash devices get a clean-up; there were
      non-meaningful assignments in there that probably originated from
      the MPC8548CDS on which the file was based on.  Now there is just
      the categorization of free space and bootloader images.
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      7e83f2ad
    • P
      powerpc/85xx: split sbc8548 dts file into pre and post chunks · d1cf1c7d
      Paul Gortmaker 提交于
      Updates to u-boot allow this board to boot off of either
      the 8MB soldered on flash, or the 64MB SODIMM flash.
      
      This is achieved by changing JP12 and SW2.8 which in turn
      swaps which flash device appears on /CS0 and /CS6 respectively.
      
      Since the flash devices are not the same size, this also
      changes the MTD memory map layout on the local bus.
      
      Here we split the common chunks out into a pre and post
      include, so they can be reused by an upcoming "alternative
      boot" dts file; leaving only the local bus chunk behind.
      
      No content changes are made at this point - it is just purely
      the move to using include files.
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      d1cf1c7d
    • W
      powerpc/85xx: use for_each_compatible_node() macro · 5444d639
      Wei Yongjun 提交于
      Use for_each_compatible_node() macro instead of open coding it.
      Signed-off-by: NWei Yongjun <yongjun_wei@trendmicro.com.cn>
      Acked-by: NGrant Likely <grant.likely@secretlab.ca>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      5444d639
    • K
      powerpc/fsl: msi: sparse fixes · 6cce76dc
      Kim Phillips 提交于
      arch/powerpc/sysdev/fsl_msi.c:31:1: warning: symbol 'msi_head' was not declared. Should it be static?
      arch/powerpc/sysdev/fsl_msi.c:138:40: warning: incorrect type in argument 1 (different base types)
      arch/powerpc/sysdev/fsl_msi.c:138:40:    expected restricted __be64 const [usertype] *p
      arch/powerpc/sysdev/fsl_msi.c:138:40:    got unsigned long long const [usertype] *[assigned] reg
      Signed-off-by: NKim Phillips <kim.phillips@freescale.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      6cce76dc
    • K
      powerpc/fsl: ifc: sparse fixes · 8998a030
      Kim Phillips 提交于
      arch/powerpc/sysdev/fsl_ifc.c:66:38: warning: incorrect type in initializer (different base types)
      arch/powerpc/sysdev/fsl_ifc.c:66:38:    expected restricted __be32 [usertype] cspr
      arch/powerpc/sysdev/fsl_ifc.c:66:38:    got unsigned int
      arch/powerpc/sysdev/fsl_ifc.c:67:21: warning: restricted __be32 degrades to integer
      arch/powerpc/sysdev/fsl_ifc.c:67:39: warning: restricted __be32 degrades to integer
      Signed-off-by: NKim Phillips <kim.phillips@freescale.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      8998a030
    • K
      powerpc/fsl: fsl_soc: sparse fixes · 8443cc14
      Kim Phillips 提交于
      arch/powerpc/sysdev/fsl_soc.c:70:67: warning: incorrect type in argument 2 (different base types)
      arch/powerpc/sysdev/fsl_soc.c:70:67:    expected restricted __be32 const [usertype] *addr
      arch/powerpc/sysdev/fsl_soc.c:70:67:    got unsigned int const [usertype] *
      Signed-off-by: NKim Phillips <kim.phillips@freescale.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      8443cc14
    • K
      powerpc/fsl: lbc: sparse fixes · 01673a13
      Kim Phillips 提交于
      arch/powerpc/sysdev/fsl_lbc.c:77:36: warning: incorrect type in initializer (different base types)
      arch/powerpc/sysdev/fsl_lbc.c:77:36:    expected restricted __be32 [usertype] br
      arch/powerpc/sysdev/fsl_lbc.c:77:36:    got unsigned int
      arch/powerpc/sysdev/fsl_lbc.c:78:36: warning: incorrect type in initializer (different base types)
      arch/powerpc/sysdev/fsl_lbc.c:78:36:    expected restricted __be32 [usertype] or
      arch/powerpc/sysdev/fsl_lbc.c:78:36:    got unsigned int
      arch/powerpc/sysdev/fsl_lbc.c:80:21: warning: restricted __be32 degrades to integer
      arch/powerpc/sysdev/fsl_lbc.c:80:38: warning: restricted __be32 degrades to integer
      arch/powerpc/sysdev/fsl_lbc.c:111:12: warning: incorrect type in assignment (different base types)
      arch/powerpc/sysdev/fsl_lbc.c:111:12:    expected restricted __be32 [usertype] br
      arch/powerpc/sysdev/fsl_lbc.c:111:12:    got unsigned int
      arch/powerpc/sysdev/fsl_lbc.c:113:17: warning: restricted __be32 degrades to integer
      arch/powerpc/sysdev/fsl_lbc.c:127:17: warning: restricted __be32 degrades to integer
      Signed-off-by: NKim Phillips <kim.phillips@freescale.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      01673a13
  4. 08 2月, 2013 4 次提交
    • I
      powerpc: Add support for context switching the TAR register · 2468dcf6
      Ian Munsie 提交于
      This patch adds support for enabling and context switching the Target
      Address Register in Power8. The TAR is a new special purpose register
      that can be used for computed branches with the bctar[l] (branch
      conditional to TAR) instruction in the same manner as the count and link
      registers.
      Signed-off-by: NIan Munsie <imunsie@au1.ibm.com>
      Signed-off-by: NMatt Evans <matt@ozlabs.org>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      2468dcf6
    • N
      pseries/iommu: Remove DDW on kexec · 14b6f00f
      Nishanth Aravamudan 提交于
      pseries/iommu: remove DDW on kexec
      
      We currently insert a property in the device-tree when we successfully
      configure DDW for a given slot. This was meant to be an optimization to
      speed up kexec/kdump, so that we don't need to make the RTAS calls again
      to re-configured DDW in the new kernel.
      
      However, we end up tripping a plpar_tce_stuff failure on kexec/kdump
      because we unconditionally parse the ibm,dma-window property for the
      node at bus/dev setup time. This property contains the 32-bit DMA window
      LIOBN, which is distinct from the DDW window's. We pass that LIOBN (via
      iommu_table_init -> iommu_table_clear -> tce_free ->
      tce_freemulti_pSeriesLP) to plpar_tce_stuff, which fails because that
      32-bit window is no longer present after
      25ebc45b ("powerpc/pseries/iommu: remove
      default window before attempting DDW manipulation").
      
      I believe the simplest, easiest-to-maintain fix is to just change our
      initcall to, rather than detecting and updating the new kernel's DDW
      knowledge, just remove all DDW configurations. When the drivers
      re-initialize, we will set everything back up as it was before.
      Signed-off-by: NNishanth Aravamudan <nacc@us.ibm.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      14b6f00f
    • N
      pseries/iommu: Restore_default_window does not use liobn parameter · a1dabade
      Nishanth Aravamudan 提交于
      The parameter is unused, and complicates a following fix. Just remove
      it.
      Signed-off-by: NNishanth Aravamudan <nacc@us.ibm.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      a1dabade
    • D
      powerpc: fix ics_rtas_init and start_secondary section mismatch · 174ea471
      Daniel Borkmann 提交于
      It seems, we're fine with just annotating the two functions.
      Thus, this fixes the following build warnings on ppc64:
      
      WARNING: arch/powerpc/sysdev/xics/built-in.o(.text+0x1664):
      The function .ics_rtas_init() references
      the function __init .xics_register_ics().
      This is often because .ics_rtas_init lacks a __init
      annotation or the annotation of .xics_register_ics is wrong.
      
      WARNING: arch/powerpc/sysdev/built-in.o(.text+0x6044):
      The function .ics_rtas_init() references
      the function __init .xics_register_ics().
      This is often because .ics_rtas_init lacks a __init
      annotation or the annotation of .xics_register_ics is wrong.
      
      WARNING: arch/powerpc/kernel/built-in.o(.text+0x2db30):
      The function .start_secondary() references
      the function __cpuinit .vdso_getcpu_init().
      This is often because .start_secondary lacks a __cpuinit
      annotation or the annotation of .vdso_getcpu_init is wrong.
      
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NDaniel Borkmann <dborkman@redhat.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      174ea471
  5. 29 1月, 2013 10 次提交