23 Dec, 2009

2 commits

  • This patch (as1318) updates the runtime PM documentation, adding a
    section discussing the interaction between runtime PM and system sleep.

    [rjw: Rebased and made it agree with the other updates better.]

    Signed-off-by: Alan Stern
    Signed-off-by: Rafael J. Wysocki

    Alan Stern
     
  • The power management of some devices is handled through device types
    and device classes rather than through bus types. Since these
    devices may also benefit from using the run-time power management
    core, extend it so that the device type and device class run-time PM
    callbacks can be taken into consideration by it if the bus type
    callback is not defined.

    Update the run-time PM core documentation to reflect this change.

    Signed-off-by: Rafael J. Wysocki

    Rafael J. Wysocki
     

10 Dec, 2009

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (42 commits)
    tree-wide: fix misspelling of "definition" in comments
    reiserfs: fix misspelling of "journaled"
    doc: Fix a typo in slub.txt.
    inotify: remove superfluous return code check
    hdlc: spelling fix in find_pvc() comment
    doc: fix regulator docs cut-and-pasteism
    mtd: Fix comment in Kconfig
    doc: Fix IRQ chip docs
    tree-wide: fix assorted typos all over the place
    drivers/ata/libata-sff.c: comment spelling fixes
    fix typos/grammos in Documentation/edac.txt
    sysctl: add missing comments
    fs/debugfs/inode.c: fix comment typos
    sgivwfb: Make use of ARRAY_SIZE.
    sky2: fix sky2_link_down copy/paste comment error
    tree-wide: fix typos "couter" -> "counter"
    tree-wide: fix typos "offest" -> "offset"
    fix kerneldoc for set_irq_msi()
    spidev: fix double "of of" in comment
    comment typo fix: sybsystem -> subsystem
    ...

    Linus Torvalds
     

06 Dec, 2009

2 commits


04 Dec, 2009

1 commit


24 Sep, 2009

1 commit

  • * git://git.infradead.org/battery-2.6:
    power_supply: Add driver for the PMU on WM831x PMICs
    ds2760_battery: Fix integer overflow for time_to_empty_now
    wm97xx_battery: Convert to dev_pm_ops
    wm97xx_battery: Use irq to detect charger state
    wm97xx_battery: Use platform_data
    wm97xx-core: Pass platform_data to battery
    ds2760_battery: implement set_charged() feature
    power_supply: get_by_name and set_charged functionality
    power_supply: EXPORT_SYMBOL cleanups
    ds2760_battery: add current_accum module parameter
    ds2760_battery: handle full_active_uAh == 0 case correctly
    ds2760_battery: add rated_capacity module parameter
    ds2760_battery: export more features
    ds2760_battery: delay power supply registration
    wm8350_power: Implement charge type property
    power_supply: Add a charge_type property, and use it for olpc driver
    olpc_battery: Add an 'error' sysfs device that displays raw errors
    Revert "power: remove POWER_SUPPLY_PROP_CAPACITY_LEVEL"

    Linus Torvalds
     

23 Sep, 2009

2 commits


22 Sep, 2009

3 commits


23 Aug, 2009

1 commit

  • Introduce a core framework for run-time power management of I/O
    devices. Add device run-time PM fields to 'struct dev_pm_info'
    and device run-time PM callbacks to 'struct dev_pm_ops'. Introduce
    a run-time PM workqueue and define some device run-time PM helper
    functions at the core level. Document all these things.

    Special thanks to Alan Stern for his help with the design and
    multiple detailed reviews of the pereceding versions of this patch
    and to Magnus Damm for testing feedback.

    Signed-off-by: Rafael J. Wysocki
    Acked-by: Magnus Damm

    Rafael J. Wysocki
     

02 Jul, 2009

1 commit


01 Jul, 2009

1 commit

  • This reverts commit 8efe444038a205e79b38b7ad03878824901849a8 and
    4cbc76eadf56399cd11fb736b33c53aec9caab8c.

    Richard@laptop.org was apparently using CAPACITY_LEVEL for debugging
    battery/EC problems, and was upset that it was removed. This readds it.

    Conflicts:

    Documentation/power_supply_class.txt

    Signed-off-by: Andres Salomon
    Signed-off-by: Anton Vorontsov

    Andres Salomon
     

15 Jun, 2009

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (31 commits)
    trivial: remove the trivial patch monkey's name from SubmittingPatches
    trivial: Fix a typo in comment of addrconf_dad_start()
    trivial: usb: fix missing space typo in doc
    trivial: pci hotplug: adding __init/__exit macros to sgi_hotplug
    trivial: Remove the hyphen from git commands
    trivial: fix ETIMEOUT -> ETIMEDOUT typos
    trivial: Kconfig: .ko is normally not included in module names
    trivial: SubmittingPatches: fix typo
    trivial: Documentation/dell_rbu.txt: fix typos
    trivial: Fix Pavel's address in MAINTAINERS
    trivial: ftrace:fix description of trace directory
    trivial: unnecessary (void*) cast removal in sound/oss/msnd.c
    trivial: input/misc: Fix typo in Kconfig
    trivial: fix grammo in bus_for_each_dev() kerneldoc
    trivial: rbtree.txt: fix rb_entry() parameters in sample code
    trivial: spelling fix in ppc code comments
    trivial: fix typo in bio_alloc kernel doc
    trivial: Documentation/rbtree.txt: cleanup kerneldoc of rbtree.txt
    trivial: Miscellaneous documentation typo fixes
    trivial: fix typo milisecond/millisecond for documentation and source comments.
    ...

    Linus Torvalds
     

13 Jun, 2009

2 commits


17 Oct, 2008

1 commit

  • As pm_trace uses the system's hardware clock to save its magic value,
    users of that option should be warned that using this debug option will
    result in an incorrect system time after resume.

    Signed-off-by: Frans Pop
    Acked-by: Pavel Machek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Frans Pop
     

14 Oct, 2008

1 commit

  • This improves the machine level API in order to configure
    regulator constraints and consumers as platform data and removes the
    old string based API that required several calls to set up each regulator.

    The intention is to create a struct regulator_init_data, populate
    it's fields with constraints, consumers devices, etc and then register
    the regulator device from board.c in the standard Linux way.

    e.g. regulator LDO2 (supplying codec and sim) platform data.

    /* regulator LDO2 consumer devices */
    static struct regulator_consumer_supply ldo2_consumers[] = {
    {
    .dev = &platform_audio_device.dev,
    .supply = "codec_avdd",
    },
    {
    .dev = &platform_sim_device.dev,
    .supply = "sim_vcc",
    }
    };

    /* regulator LDO2 constraints */
    static struct regulator_init_data ldo2_data = {
    .constraints = {
    .min_uV = 3300000,
    .max_uV = 3300000,
    .valid_modes_mask = REGULATOR_MODE_NORMAL,
    .apply_uV = 1,
    },
    .num_consumer_supplies = ARRAY_SIZE(ldo2_consumers),
    .consumer_supplies = ldo2_consumers,
    };

    /* machine regulator devices with thier consumers and constraints */
    static struct platform_device wm8350_regulator_devices[] = {
    {
    .name = "wm8350-regulator",
    .id = WM8350_LDO_2,
    .dev = {
    .platform_data = &ldo2_data,
    },
    },
    };

    Changes in detail:-

    o Removed all const char* regulator config functions in machine API.
    o Created new struct regulator_init_data to contain regulator
    machine configuration constraints and consmuers.
    o Changed set_supply(), set_machine_constraints(),
    set_consumer_device_supply() to remove their string identifier
    parameters. Also made them static and moved functions nearer top of
    core.c.
    o Removed no longer used inline func to_rdev()
    o Added regulator_get_init_drvdata() to retrieve init data.
    o Added struct device* as parameter to regulator_register().
    o Changed my email address.

    Signed-off-by: Eric Miao
    Signed-off-by: Mark Brown
    Signed-off-by: Liam Girdwood

    Liam Girdwood
     

06 Aug, 2008

1 commit

  • A documentation cleanup patch. With a minor tweak to clarify units for
    kbs.

    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: mark gross
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Richard Hughes
     

02 Aug, 2008

1 commit

  • * 'reg-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6:
    regulator: TI bq24022 Li-Ion Charger driver
    regulator: maintainers - add maintainers for regulator framework.
    regulator: documentation - ABI
    regulator: documentation - machine
    regulator: documentation - regulator driver
    regulator: documentation - consumer interface
    regulator: documentation - overview
    regulator: core kbuild files
    regulator: regulator test harness
    regulator: add support for fixed regulators.
    regulator: regulator framework core
    regulator: fixed regulator interface
    regulator: machine driver interface
    regulator: regulator driver interface
    regulator: consumer device interface

    Linus Torvalds
     

30 Jul, 2008

5 commits


25 Jul, 2008

1 commit

  • Remove some obsolete PM documentation.

    The majority of contents of Documentation/power/pm.txt are
    outdated. Remove the outdated parts of this file and move the rest
    to Documentation/power/apm-acpi.txt . Update the index in
    Documentation/power/ as appropriate.

    Signed-off-by: Rafael J. Wysocki
    Acked-by: Pavel Machek
    Acked-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Rafael J. Wysocki
     

13 May, 2008

1 commit

  • This adds PROP_CHARGE_COUNTER to the power supply class (documenting it
    as well). The OLPC battery driver uses this for spitting out its ACR
    values (in uAh). We have some rounding errors (the data sheet claims
    416.7, the math actually works out to 416.666667, so we're forced to
    choose between overflows or precision loss. I chose precision loss,
    and stuck w/ data sheet values), but I don't think anyone will care
    that much.

    Signed-off-by: Andres Salomon
    Signed-off-by: Anton Vorontsov

    Andres Salomon
     

20 Apr, 2008

1 commit

  • Modify the PM core to protect its data structures, specifically the
    dpm_active list, from being corrupted if a child of the currently
    suspending device is registered concurrently with its ->suspend()
    callback. In that case, since the new device (the child) is added
    to dpm_active after its parent, the PM core will attempt to
    suspend it after the parent, which is wrong.

    Introduce a new member of struct dev_pm_info, called 'sleeping',
    and use it to check if the parent of the device being added to
    dpm_active has been suspended, in which case the device registration
    fails. Also, use 'sleeping' for checking if the ordering of devices
    on dpm_active is correct.

    Introduce variable 'all_sleeping' that will be set to 'true' once all
    devices have been suspended and make new device registrations fail
    until 'all_sleeping' is reset to 'false', in order to avoid having
    unsuspended devices around while the system is going into a sleep state.

    Remove pm_sleep_rwsem which is not necessary any more.

    Special thanks to Alan Stern for discussions and suggestions that
    lead to the creation of this patch.

    Signed-off-by: Rafael J. Wysocki
    Acked-by: Pavel Machek
    Signed-off-by: Greg Kroah-Hartman

    Rafael J. Wysocki
     

13 Mar, 2008

1 commit


24 Feb, 2008

1 commit

  • During the last step of hibernation in the "platform" mode (with the
    help of ACPI) we use the suspend code, including the devices'
    ->suspend() methods, to prepare the system for entering the ACPI S4
    system sleep state.

    But at least for some devices the operations performed by the
    ->suspend() callback in that case must be different from its operations
    during regular suspend.

    For this reason, introduce the new PM event type PM_EVENT_HIBERNATE and
    pass it to the device drivers' ->suspend() methods during the last phase
    of hibernation, so that they can distinguish this case and handle it as
    appropriate. Modify the drivers that handle PM_EVENT_SUSPEND in a
    special way and need to handle PM_EVENT_HIBERNATE in the same way.

    These changes are necessary to fix a hibernation regression related
    to the i915 driver (ref. http://lkml.org/lkml/2008/2/22/488).

    Signed-off-by: Rafael J. Wysocki
    Acked-by: Pavel Machek
    Tested-by: Jeff Chua
    Signed-off-by: Linus Torvalds

    Rafael J. Wysocki
     

07 Feb, 2008

1 commit


02 Feb, 2008

7 commits