1. 22 Jun, 2004 8 commits
    • Paul Mackerras's avatar
      [PATCH] Handle altivec assist exception properly · 7a08473b
      Paul Mackerras authored
      This is the PPC64 counterpart of the PPC32 Altivec assist exception
      handler that went in recently.
      
      On PPC64 machines with Altivec (i.e.  machines that use the PPC970 chip,
      such as the G5 powermac), the altivec floating-point instructions can
      operate in two modes: one where denormalized inputs or outputs are
      truncated to zero, and one where they aren't.  In the latter mode the
      processor can take an exception when it encounters denormalized
      floating-point inputs or outputs rather than dealing with them in
      hardware.
      
      This patch adds code to deal properly with the exception, by emulating
      the instruction that caused the exception.  Previously the kernel just
      switched the altivec unit into the truncate-to-zero mode, which works
      but is a bit gross.  Fortunately there are only a limited set of altivec
      instructions which can generate the assist exception, so we don't have
      to emulate the whole altivec instruction set.
      
      Note that Altivec is Motorola's name for the PowerPC vector/SIMD
      instructions; IBM calls the same thing VMX, and currently only IBM makes
      64-bit PowerPC CPU chips.  Nevertheless, I have used the term Altivec in
      the PPC64 code for consistency with the PPC32 code.
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      7a08473b
    • Benjamin Herrenschmidt's avatar
      [PATCH] radeonfb: Fix panel detection on some laptops · 6340e7ba
      Benjamin Herrenschmidt authored
      The code in radeonfb looking for the BIOS image currently uses the BIOS
      ROM if any, and falls back to the RAM image if not found.  This is
      unfortunatly not correct for a bunch of laptops where the real panel
      data are only present in the RAM image.
      
      This works around this problem by preferring the RAM image on mobility
      chipsets.  This is definitely not the best workaround, we need some arch
      support for linking the RAM image to the PCI ID (preferrably by having
      the arch snapshot it during boot, isolating us completely from the
      details of where this image is in memory).  I'll see how we can get such
      an improvement later.
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      6340e7ba
    • Benjamin Herrenschmidt's avatar
      [PATCH] ppc32: Support for new Apple laptop models · ca216b8a
      Benjamin Herrenschmidt authored
      This adds support for newer Apple laptop models.  It adds the basic
      identification for the new motherboards and the cpufreq support for
      models using the new 7447A CPU from Motorola.
      
      This is mostly the work of John Steele Scott <toojays@toojays.net> with
      some bits from Sebastian Henschel <linux@kodeaffe.de> and some rework by
      myself.  Please apply,
      Signed-off-by: default avatarJohn Steele Scott <toojays@toojays.net>
      Signed-off-by: default avatarSebastian Henschel <linux@kodeaffe.de>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      ca216b8a
    • Benjamin Herrenschmidt's avatar
      [PATCH] ppc32: oprofile support · e5603f99
      Benjamin Herrenschmidt authored
      This adds basic oprofile support to ppc32.  Originally from Anton
      Blanchard, I just re-diffed it against current kernels.
      Signed-off-by: default avatarAnton Blanchard <anton@samba.org>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      e5603f99
    • Benjamin Herrenschmidt's avatar
      [PATCH] ppc32: Cleanups & warning fixes of traps.c · b62102f6
      Benjamin Herrenschmidt authored
      This cleans up arch/ppc/kernel/traps.c and vecemu.c to use the same
      formatting style for all functions, and fixes 2 warnings in the altivec
      floating point emulation code.  No functional change. 
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      b62102f6
    • Linus Torvalds's avatar
      Merge bk://gkernel.bkbits.net/libata-2.6 · bd67d886
      Linus Torvalds authored
      into ppc970.osdl.org:/home/torvalds/v2.6/linux
      bd67d886
    • Jeff Garzik's avatar
      [libata sata_sil] Re-fix mod15write bug · 48c1a573
      Jeff Garzik authored
      Certain early SATA drives have problems with write requests whose
      length satisfy the equation "sectors % 15 == 1", on the SiI 3112.
      Other drives, and other SiI controllers, are not affected.
      
      The fix for this problem is to avoid such requests, in one of three
      ways, for the affect drive+controller combos:
      1) Limit all writes to 15 sectors
      2) Use block layer features to avoid creating requests whose
         length satisfies the above equation.
      3) When a request satisfies the above equation, split the request
         into two writes, neither of which satisfies the equation.
      
      I chose fix #1, the most simple to implement.  After discussion with
      Silicon Image and others regarding the impact of this fix, I have
      decided to remain with fix #1, and will not be implementing a
      "better fix".  This means that the affected SATA drives will see
      decreased performance, but set of affected drives is small and will
      never grow larger.
      
      Further, the complexity of implementing solution #2 or
      solution #3 is rather large.
      
      When implementing lba48 'large request' support, I unintentionally
      broke the fix for these affected drives.  Kudos to Ricky Beam for
      noticing this.
      
      This change restores the fix, by adding a flag ATA_DFLAG_LOCK_SECTORS
      to indicate that the max_sectors value set by the low-level driver
      should never be changed.
      48c1a573
    • Linus Torvalds's avatar
      Merge bk://bk.arm.linux.org.uk/linux-2.6-rmk · 30c0d5b0
      Linus Torvalds authored
      into ppc970.osdl.org:/home/torvalds/v2.6/linux
      30c0d5b0
  2. 23 Jun, 2004 5 commits
  3. 22 Jun, 2004 3 commits
  4. 23 Jun, 2004 2 commits
  5. 22 Jun, 2004 22 commits