1. 30 Mar, 2007 4 commits
    • Bjorn Helgaas's avatar
      [IA64] make ioremap avoid unsupported attributes · 9b50ffb0
      Bjorn Helgaas authored
      Example memory map (from HP sx1000 with VGA enabled):
          0x00000 - 0x9FFFF supports only WB (cacheable) access
          0xA0000 - 0xBFFFF supports only UC (uncacheable) access
          0xC0000 - 0xFFFFF supports only WB (cacheable) access
      
      pci_read_rom() indirectly uses ioremap(0xC0000) to read the shadow VGA option
      ROM.  ioremap() used to default to a 16MB or 64MB UC kernel identity mapping,
      which would cause an MCA when reading 0xC0000 since only WB is supported there.
      
      X uses reads the option ROM to initialize devices.  A smaller test case is:
        # echo 1 > /sys/bus/pci/devices/0000:aa:03.0/rom
        # cp /sys/bus/pci/devices/0000:aa:03.0/rom x
      
      To avoid this, we can use the same ioremap_page_range() strategy that most
      architectures use for all ioremaps.  These page table mappings come out of the
      vmalloc area.  On ia64, these are in region 5 (0xA... addresses) and typically
      use 16KB or 64KB mappings instead of 16MB or 64MB mappings.  The smaller
      mappings give more flexibility to use the correct attributes.
      Signed-off-by: default avatarBjorn Helgaas <bjorn.helgaas@hp.com>
      Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
      9b50ffb0
    • Bjorn Helgaas's avatar
      [IA64] rename ioremap variables to match i386 · c4add2e5
      Bjorn Helgaas authored
      No functional change, just use the same names as i386.
      Signed-off-by: default avatarBjorn Helgaas <bjorn.helgaas@hp.com>
      Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
      c4add2e5
    • Linus Torvalds's avatar
      Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus · ce20269d
      Linus Torvalds authored
      * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
        [MIPS] SMTC: Fix recursion in instant IPI replay code.
        [MIPS] BCM1480: Fix setting of irq affinity.
        [MIPS] do_page_fault() needs to use raw_smp_processor_id().
        [MIPS] SMTC: Fix false trigger of debug code on single VPE.
        [MIPS] SMTC: irq_{enter,leave} and kstats keeping for relayed timer ints.
        [MIPS] lockdep: Deal with interrupt disable hazard in TRACE_IRQFLAGS
        [MIPS] lockdep: Handle interrupts in R3000 style c0_status register.
        [MIPS] MV64340: Add missing prototype for mv64340_irq_init().
        [MIPS] MT: MIPS_MT_SMTC_INSTANT_REPLAY currently conflicts with PREEMPT.
        [MIPS] EV64120: Include <asm/irq.h> to fix warning.
        [MIPS] Ocelot: Fix warning.
        [MIPS] Ocelot: Give PMON_v1_setup a proper prototype.
      ce20269d
    • Linus Torvalds's avatar
      Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 · 9754c5f6
      Linus Torvalds authored
      * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
        [IA64] Fix arch/ia64/pci/pci.c:571: warning: `return' with a value
        [IA64] Speed up boot - skip unnecessary clock calibration
        [IA64] bugfix stack layout upside-down
        [IA64] Fix possible invalid memory access in ia64_setup_msi_irq()
      9754c5f6
  2. 29 Mar, 2007 36 commits