1. 23 10月, 2006 1 次提交
    • M
      [POWERPC] Add flatdevtree source · 6fb4efc6
      Mark A. Greer 提交于
      Add the latest version of the flatdevtree code and corresponding glue.
      
      A phandle table now tracks values returned by ft_find_device().
      The value returned by ft_find_device() is a phandle which is really
      an index into the phandle table.  The phandle table contains the address
      of the corresponding node.  When the flat dt is edited/moved, the node
      pointers in the phandle table are updated accordingly so no phandles kept
      by the caller become stale.
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      6fb4efc6
  2. 18 10月, 2006 2 次提交
    • M
      [POWERPC] More bootwrapper reorganization · c888554b
      Mark A. Greer 提交于
      More reorganization of the bootwrapper:
      - Add dtb section to zImage
      - ft_init now called by platform_init
      - Pack a flat dt before calling kernel
      - Remove size parameter from free
      - printf only calls console_ops.write it its not NULL
      - Some cleanup
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      c888554b
    • P
      [POWERPC] Make sure interrupt enable gets restored properly · b0a779de
      Paul Mackerras 提交于
      The lazy IRQ disable patch missed a couple of places where the
      interrupt enable flags need to be restored correctly.  First, we
      weren't restoring the paca->hard_enabled flag on interrupt exit.
      Instead of saving it on entry, we compute it from the MSR_EE bit
      in the MSR we are restoring at exit.  Secondly, the MMU hash miss
      code was clearing both paca->soft_enabled and paca->hard_enabled
      but not restoring them in the case where hash_page was able to
      resolve the miss from the Linux page tables.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      b0a779de
  3. 16 10月, 2006 14 次提交
  4. 12 10月, 2006 1 次提交
    • M
      [PATCH] mm: use symbolic names instead of indices for zone initialisation · 6391af17
      Mel Gorman 提交于
      Arch-independent zone-sizing is using indices instead of symbolic names to
      offset within an array related to zones (max_zone_pfns).  The unintended
      impact is that ZONE_DMA and ZONE_NORMAL is initialised on powerpc instead
      of ZONE_DMA and ZONE_HIGHMEM when CONFIG_HIGHMEM is set.  As a result, the
      the machine fails to boot but will boot with CONFIG_HIGHMEM turned off.
      
      The following patch properly initialises the max_zone_pfns[] array and uses
      symbolic names instead of indices in each architecture using
      arch-independent zone-sizing.  Two users have successfully booted their
      powerpcs with it (one an ibook G4).  It has also been boot tested on x86,
      x86_64, ppc64 and ia64.  Please merge for 2.6.19-rc2.
      
      Credit to Benjamin Herrenschmidt for identifying the bug and rolling the
      first fix.  Additional credit to Johannes Berg and Andreas Schwab for
      reporting the problem and testing on powerpc.
      Signed-off-by: NMel Gorman <mel@csn.ul.ie>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      6391af17
  5. 10 10月, 2006 10 次提交
  6. 09 10月, 2006 2 次提交
  7. 07 10月, 2006 5 次提交
  8. 06 10月, 2006 5 次提交
    • G
      [POWERPC] Minor fix for bootargs property · c1ce464d
      Geoff Levand 提交于
      Avoid the use of an uninitialized stack variable when the powerpc device tree
      bootargs property is either missing or incorrectly defined.  This also makes
      CONFIG_CMDLINE work properly under these conditions.  This change adds a test
      for the existence of the bootargs property.
      
      early_init_dt_scan_chosen() tests for a zero length bootargs property in its
      CONFIG_CMDLINE processing, but the current implementation of
      of_get_flat_dt_prop() doesn't assign a value to the length when no property is
      found.  Since an automatic variable is used, a stale value from the stack will
      be used in the test.
      Signed-off-by: NGeoff Levand <geoffrey.levand@am.sony.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      c1ce464d
    • B
      [POWERPC] Update pSeries defconfig for SATA · 3afbf5d6
      Brian King 提交于
      Since the ipr driver now supports SATA and depends on libata,
      enable libata to get built.
      Signed-off-by: NBrian King <brking@us.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      3afbf5d6
    • B
      [POWERPC] Don't get PCI IRQ from OF for devices with no IRQ · 41550c51
      Benjamin Herrenschmidt 提交于
      This patch adds checking of the PCI_INTERRUPT_PIN register before
      using standard OF parsing to retreive PCI interrupts. The reason is
      that some PCI devices may have no PCI interrupt, though they may have
      interrupts attached via other means. In this case, we shall not use
      irq->pdev, but device-specific code can later retreive those interrupts
      instead.
      
      Without that patch, Maple and derivatives don't get the right interrupt
      for the second IDE channel as the linux IDE code fallsback to the PCI
      irq instead of trying to use the legacy ones for the on-board controller
      (which has no PCI_INTERRUPT_PIN). Having no PCI IRQ assign to it (as it
      doesn't request any) fixes it.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      41550c51
    • B
      [POWERPC] Fix zImage decompress location · c998de14
      Benjamin Herrenschmidt 提交于
      The zImage wrapper has a "hack" that force the decompression to happen
      above 20Mb for 64 bits kernels, to work around issues with some
      firmwares on the field. However, the new wrapper has a bug which makes
      that hack not work properly. This fixes it.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      c998de14
    • N
      [POWERPC] linux,tce-size property is 32 bits · 9938c474
      Nathan Lynch 提交于
      The "linux,tce-size" property is only 32 bits (see
      prom_initialize_tce_table() in arch/powerpc/kernel/prom_init.c).
      Treating it as an unsigned long in iommu_table_setparms() leads to
      access beyond the end of the property's buffer, so we pass garbage to
      the memset() in that function.
      
      [boot]0020 XICS Init
      i8259 legacy interrupt controller initialized
      [boot]0021 XICS Done
      PID hash table entries: 4096 (order: 12, 32768 bytes)
      cpu 0x0: Vector: 300 (Data Access) at [c0000000fe783850]
          pc: c000000000035e90: .memset+0x60/0xfc
          lr: c000000000044fa4: .iommu_table_setparms+0xb0/0x158
          sp: c0000000fe783ad0
         msr: 9000000000009032
         dar: c000000100000000
       dsisr: 42010000
        current = 0xc00000000450e810
        paca    = 0xc000000000411580
          pid   = 1, comm = swapper
      enter ? for help
      [link register   ] c000000000044fa4 .iommu_table_setparms+0xb0/0x158
      [c0000000fe783ad0] c000000000044f4c .iommu_table_setparms+0x58/0x158
      (unreliable)
      [c0000000fe783b70] c00000000004529c
      .iommu_bus_setup_pSeries+0x1c4/0x254
      [c0000000fe783c00] c00000000002b8ac .do_bus_setup+0x3c/0xe4
      [c0000000fe783c80] c00000000002c924 .pcibios_fixup_bus+0x64/0xd8
      [c0000000fe783d00] c0000000001a2d5c .pci_scan_child_bus+0x6c/0x10c
      [c0000000fe783da0] c00000000002be28 .scan_phb+0x17c/0x1b4
      [c0000000fe783e40] c0000000003cfa00 .pcibios_init+0x58/0x19c
      [c0000000fe783ec0] c0000000000094b4 .init+0x1e8/0x3d8
      [c0000000fe783f90] c000000000026e54 .kernel_thread+0x4c/0x68
      Signed-off-by: NNathan Lynch <ntl@pobox.com>
      Acked-by: NOlof Johansson <olof@lixom.net>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      9938c474