15 Jan, 2006

1 commit


14 Jan, 2006

2 commits


13 Jan, 2006

2 commits


10 Jan, 2006

2 commits


09 Jan, 2006

11 commits

  • This is the platform function interpreter itself along with the backends
    for UniN/U3/U4, mac-io, GPIOs and i2c. It adds the ability to execute
    those do-platform-* scripts in the device-tree (at least for most
    devices for which a backend is provided). This should replace the clock
    spreading hacks properly. It might also have an impact on all sort of
    machines since some of the scripts marked "at init" will now be executed
    on boot (or some other on sleep/wakeup), those will possibly do things
    that the kernel didn't do at all, like setting some values into some i2c
    devices (changing thermal sensor calibration or conversion rate) etc...
    Thus regression testing is MUCH welcome. Also loook for errors in dmesg.
    That's also why I've left rather verbose debugging enabled in this
    version of the patch.

    (I do expect some Windtunnel G4s to show some errors as they have an i2c
    clock chip on the PMU bus that uses some primitives that the i2c backend
    doesn't implement yet. I really need users that have one of those
    machine to come back to me so we can get that done right, though the
    errors themselves should be harmless, I suspect the machine might not
    run at full speed).

    Signed-off-by: Benjamin Herrenschmidt
    Signed-off-by: Paul Mackerras

    Benjamin Herrenschmidt
     
  • This is the continuation of the previous patch. This one removes the old
    PowerMac i2c drivers (i2c-keywest and i2c-pmac-smu) and replaces them
    both with a single stub driver that uses the new PowerMac low i2c layer.

    Now that i2c-keywest is gone, the low-i2c code is extended to support
    interrupt driver transfers. All i2c busses now appear as platform
    devices. Compatibility with existing drivers should be maintained as the
    i2c bus names have been kept identical, except for the SMU bus but in
    that later case, all users has been fixed.

    With that patch added, matching a device node to an i2c_adapter becomes
    trivial.

    Signed-off-by: Benjamin Herrenschmidt
    Signed-off-by: Paul Mackerras

    Benjamin Herrenschmidt
     
  • This is the first part of a rework of the PowerMac i2c code. It
    completely reworks the "low_i2c" layer. It is now more flexible,
    supports KeyWest, SMU and PMU i2c busses, and provides functions to
    match device nodes to i2c busses and adapters.

    This patch also extends & fix some bugs in the SMU driver related to i2c
    support and removes the clock spreading hacks from the pmac feature code
    rather than adapting them to the new API since they'll be replaced by
    the platform function code completely in patch 3/5

    Signed-off-by: Benjamin Herrenschmidt
    Signed-off-by: Paul Mackerras

    Benjamin Herrenschmidt
     
  • Include fixes for 2.6.14-git11. Should allow to remove sched.h from
    module.h on i386, x86_64, arm, ia64, ppc, ppc64, and s390. Probably more
    to come since I haven't yet checked the other archs.

    Signed-off-by: Tim Schmielau
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tim Schmielau
     
  • Fix compilation of via-pmu.c without Power Management support.

    Signed-off-by: Paul Mackerras

    Kristian Mueller
     
  • This adds some very basic support for the new machines, including the
    Quad G5 (tested), and other new dual core based machines and iMac G5
    iSight (untested). This is still experimental ! There is no thermal
    control yet, there is no proper handing of MSIs, etc.. but it
    boots, I have all 4 cores up on my machine. Compared to the previous
    version of this patch, this one adds DART IOMMU support for the U4
    chipset and thus should work fine on setups with more than 2Gb of RAM.

    Signed-off-by: Benjamin Herrenschmidt
    Signed-off-by: Paul Mackerras

    Benjamin Herrenschmidt
     
  • The pre-parsed addrs/n_addrs fields in struct device_node are finally
    gone. Remove the dodgy heuristics that did that parsing at boot and
    remove the fields themselves since we now have a good replacement with
    the new OF parsing code. This patch also fixes a bunch of drivers to use
    the new code instead, so that at least pmac32, pseries, iseries and g5
    defconfigs build.

    Signed-off-by: Benjamin Herrenschmidt
    Signed-off-by: Paul Mackerras

    Benjamin Herrenschmidt
     
  • This updates the OF address parsers to return the IO flags
    indicating the type of address obtained. It also adds a PCI
    call for converting physical addresses that hit IO space into
    into IO tokens, and add routines that return the translated
    addresses into struct resource

    Signed-off-by: Benjamin Herrenschmidt
    Signed-off-by: Paul Mackerras

    Benjamin Herrenschmidt
     
  • The udbg low level io layer has an issue with udbg_getc() returning a
    char (unsigned on ppc) instead of an int, thus the -1 if you had no
    available input device could end up turned into 0xff, filling your
    display with bogus characters. This fixes it, along with adding a little
    blob to xmon to do a delay before exiting when getting an EOF and fixing
    the detection of ADB keyboards in udbg_adb.c

    Signed-off-by: Benjamin Herrenschmidt
    Signed-off-by: Paul Mackerras

    Benjamin Herrenschmidt
     
  • Converts the macio_asic core to use the new OF parsing routines instead
    of relying on the pre-parsed values in struct device_node.

    Signed-off-by: Benjamin Herrenschmidt
    Signed-off-by: Paul Mackerras

    Benjamin Herrenschmidt
     
  • This patch unifies udbg for both ppc32 and ppc64 when building the
    merged achitecture. xmon now has a single "back end". The powermac udbg
    stuff gets enriched with some ADB capabilities and btext output. In
    addition, the early_init callback is now called on ppc32 as well,
    approx. in the same order as ppc64 regarding device-tree manipulations.
    The init sequences of ppc32 and ppc64 are getting closer, I'll unify
    them in a later patch.

    For now, you can force udbg to the scc using "sccdbg" or to btext using
    "btextdbg" on powermacs. I'll implement a cleaner way of forcing udbg
    output to something else than the autodetected OF output device in a
    later patch.

    Signed-off-by: Benjamin Herrenschmidt
    Signed-off-by: Paul Mackerras

    Benjamin Herrenschmidt
     

07 Jan, 2006

3 commits


06 Jan, 2006

3 commits

  • Now that i2c_add_driver() doesn't need the module owner to be set by
    hand, we can delete it from the drivers. This patch catches all of the
    drivers that I found in the current tree (if a driver sets the .owner by
    hand, it's not a problem, just not needed.)

    Signed-off-by: Greg Kroah-Hartman
    Cc: Jean Delvare

    Greg Kroah-Hartman
     
  • We should use the i2c_driver.driver's .name and .owner fields
    instead of the i2c_driver's ones.

    This patch updates the drivers for macintosh.

    Signed-off-by: Laurent Riffard
    Signed-off-by: Jean Delvare
    Acked-by: Benjamin Herrenschmidt
    Signed-off-by: Greg Kroah-Hartman

    Laurent Riffard
     
  • Just about every i2c chip driver sets the I2C_DF_NOTIFY flag, so we
    can simply make it the default and drop the flag. If any driver really
    doesn't want to be notified when i2c adapters are added, that driver
    can simply omit to set .attach_adapter. This approach is also more
    robust as it prevents accidental NULL pointer dereferences.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     

05 Jan, 2006

1 commit


03 Jan, 2006

1 commit

  • Some G5s still occasionally experience shutdowns due to overtemp
    conditions despite the recent fix. After analyzing logs from such
    machines, it appears that the overtemp code is a bit too quick at
    shutting the machine down when reaching the critical temperature (tmax +
    8) and doesn't leave the fan enough time to actually cool it down. This
    happens if the temperature of a CPU suddenly rises too high in a very
    short period of time, or occasionally on boot (that is the CPUs are
    already overtemp by the time the driver loads).

    This patches makes the code a bit more relaxed, leaving a few seconds to
    the fans to do their job before kicking the machine shutown.

    Signed-off-by: Benjamin Herrenschmidt
    Signed-off-by: Linus Torvalds

    Benjamin Herrenschmidt
     

21 Dec, 2005

1 commit

  • The g5 thermal control for liquid cooled machines has a small bug, when
    the temperatures gets too high, it boosts all fans to the max, but
    incorrectly sets the liquids pump to the min instead of the max speed,
    thus causing the overtemp condition not to clear and the machine to shut
    down after a while. This fixes it to set the pumps to max speed instead.
    This problem might explain some of the reports of random shutdowns that
    some g5 users have been reporting in the past.

    Many thanks to Marcus Rothe for spending a lot of time trying various
    patches & sending log logs before I found out that typo. Note that
    overtemp handling is still not perfect and the machine might still
    shutdown, that patch should reduce if not eliminate such occcurences in
    "normal" conditions with high load. I'll implement a better handling
    with proper slowing down of the CPUs later.

    Signed-off-by: Benjamin Herrenschmidt
    Signed-off-by: Linus Torvalds

    Benjamin Herrenschmidt
     

09 Dec, 2005

1 commit

  • model_id fields of wf_smu_sys_all_params should match the model ID
    they are supposed to represent (as commented). Fixes windfarm on some
    iMac 8,1 models.

    Signed-off-by: Michal Ostrowski
    Acked-by: Benjamin Herrenschmidt
    Signed-off-by: Paul Mackerras

    Michal Ostrowski
     

08 Nov, 2005

5 commits


07 Nov, 2005

2 commits

  • This is the remaining misc drivers/ part of the big kfree cleanup patch.

    Remove pointless checks for NULL prior to calling kfree() in misc files in
    drivers/.

    Signed-off-by: Jesper Juhl
    Acked-by: Aristeu Sergio Rozanski Filho
    Acked-by: Roland Dreier
    Acked-by: Pierre Ossman
    Acked-by: Jean Delvare
    Acked-by: Greg Kroah-Hartman
    Acked-by: Len Brown
    Acked-by: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jesper Juhl
     
  • Use schedule_timeout_interruptible() instead of
    set_current_state()/schedule_timeout() to reduce kernel size.

    Signed-off-by: Nishanth Aravamudan
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Nishanth Aravamudan
     

02 Nov, 2005

2 commits


31 Oct, 2005

3 commits

  • The problem is that adbhid[]->input is NULL, so the kernel oopses with
    a null pointer dereference as soon as a key is pressed.

    Signed-off-by: Paul Mackerras
    Signed-off-by: Dmitry Torokhov

    Paul Mackerras
     
  • Paul Mackerras
     
  • I recently picked up my older work to remove unnecessary #includes of
    sched.h, starting from a patch by Dave Jones to not include sched.h
    from module.h. This reduces the number of indirect includes of sched.h
    by ~300. Another ~400 pointless direct includes can be removed after
    this disentangling (patch to follow later).
    However, quite a few indirect includes need to be fixed up for this.

    In order to feed the patches through -mm with as little disturbance as
    possible, I've split out the fixes I accumulated up to now (complete for
    i386 and x86_64, more archs to follow later) and post them before the real
    patch. This way this large part of the patch is kept simple with only
    adding #includes, and all hunks are independent of each other. So if any
    hunk rejects or gets in the way of other patches, just drop it. My scripts
    will pick it up again in the next round.

    Signed-off-by: Tim Schmielau
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tim Schmielau