23 Dec, 2008

1 commit


06 Dec, 2008

1 commit

  • This reverts commit 558073dd56707864f09d563b64e7c37c021e89d2, along with
    the failed try to fix the regression it caused ("ACPI: Fix ACPI battery
    regression introduced by commit 558073"), which just made things worse.

    Commit aaad077638be1a25871bcae5e43952d6b63abfca (that failed "Fix ACPI
    battery regression") got the voltage conversion confused, and fixed the
    problem with Rafael's battery monitor apparently just by mistake.

    So revert them both, getting us back to the 2.6.27 state in this, and
    let's revisit it when people understand what's going on.

    Noted-by: Paul Martin
    Requested-by: Rafael J. Wysocki
    Cc: Len Brown
    Cc: Alexey Starikovskiy
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

05 Dec, 2008

1 commit

  • Commit 558073dd56707864f09d563b64e7c37c021e89d2 ("ACPI: battery: Convert
    discharge energy rate to current properly") caused the battery subsystem
    to report wrong values of the remaining time on battery power and the
    time until fully charged on Toshiba Portege R500 (and presumably on
    other boxes too).

    Fix the issue by correcting the conversion from mW to mA.

    Signed-off-by: Rafael J. Wysocki
    Signed-off-by: Linus Torvalds

    Rafael J. Wysocki
     

27 Nov, 2008

1 commit

  • ACPI battery interface reports its state either in mW or in mA, and
    discharge rate in your case is reported in mW. power_supply interface
    does not have such a parameter, so current_now parameter is used
    for all cases. But in case of mW, reported discharge should
    be converted into mA.

    Signed-off-by: Alexey Starikovskiy
    Tested-by: Ferenc Wagner
    Signed-off-by: Len Brown

    Alexey Starikovskiy
     

12 Nov, 2008

1 commit


08 Nov, 2008

1 commit


07 Nov, 2008

1 commit

  • This patch is part of a larger patch series which will remove
    the "char bus_id[20]" name string from struct device. The device
    name is managed in the kobject anyway, and without any size
    limitation, and just needlessly copied into "struct device".

    To set and read the device name dev_name(dev) and dev_set_name(dev)
    must be used. If your code uses static kobjects, which it shouldn't
    do, "const char *init_name" can be used to statically provide the
    name the registered device should have. At registration time, the
    init_name field is cleared, to enforce the use of dev_name(dev) to
    access the device name at a later time.

    We need to get rid of all occurrences of bus_id in the entire tree
    to be able to enable the new interface. Please apply this patch,
    and possibly convert any remaining remaining occurrences of bus_id.

    We want to submit a patch to -next, which will remove bus_id from
    "struct device", to find the remaining pieces to convert, and finally
    switch over to the new api, which will remove the 20 bytes array
    and does no longer have a size limitation.

    Acked-by: Greg Kroah-Hartman
    Signed-Off-By: Kay Sievers
    Signed-off-by: Len Brown

    Kay Sievers
     

23 Oct, 2008

1 commit


20 Oct, 2008

1 commit

  • Tejun's commit 7b595756ec1f49e0049a9e01a1298d53a7faaa15 made sysfs
    attribute->owner unnecessary. But the field was left in the structure to
    ease the merge. It's been over a year since that change and it is now
    time to start killing attribute->owner along with its users - one arch at
    a time!

    This patch is attempt #1 to get rid of attribute->owner only for
    CONFIG_X86_64 or CONFIG_X86_32 . We will deal with other arches later on
    as and when possible - avr32 will be the next since that is something I
    can test. Compile (make allyesconfig / make allmodconfig / custom config)
    and boot tested.

    akpm: the idea is that we put the declaration of sttribute.owner inside
    `#ifndef CONFIG_X86'. But that proved to be too ambitious for now because
    new usages kept on turning up in subsystem trees.

    [akpm: remove the ifdef for now]
    Signed-off-by: Parag Warudkar
    Cc: Greg KH
    Cc: Ingo Molnar
    Cc: Tejun Heo
    Cc: Len Brown
    Cc: Jens Axboe
    Cc: Jean Delvare
    Cc: Roland Dreier
    Cc: David Brownell
    Cc: Alessandro Zummo
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Parag Warudkar
     

11 Oct, 2008

1 commit


29 Apr, 2008

1 commit

  • Use proc_create()/proc_create_data() to make sure that ->proc_fops and ->data
    be setup before gluing PDE to main tree.

    Add correct ->owner to proc_fops to fix reading/module unloading race.

    Signed-off-by: Denis V. Lunev
    Cc: Len Brown
    Cc: Alexey Dobriyan
    Cc: "Eric W. Biederman"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Denis V. Lunev
     

18 Mar, 2008

1 commit

  • Acer BIOS has a bug which is exposed when a dead battery is present.

    The package template that is used to describe battery status is
    over-written with sane values when the battery is live.
    But when the batter is dead, a bogus reference in the template
    is used. In this case, Linux returns a fault, when instead
    it should simply return that it doesn't know the missing value.

    http://bugzilla.kernel.org/show_bug.cgi?id=8573
    http://bugzilla.kernel.org/show_bug.cgi?id=10202

    Signed-off-by: Alexey Starikovskiy
    Signed-off-by: Len Brown

    Alexey Starikovskiy
     

06 Feb, 2008

1 commit


02 Jan, 2008

1 commit


07 Dec, 2007

1 commit


20 Nov, 2007

3 commits


14 Nov, 2007

1 commit


09 Nov, 2007

1 commit

  • If a battery is at a critical charge level and not being charged or
    discharged, then the ACPI _BST method will return a state of 4, and
    the current acpi_battery_get_property() code will not set any property
    value for POWER_SUPPLY_PROP_STATUS. This will cause an oops in
    power_supply_show_property() when it reads off the end of the
    status_text array. This actually was causing a 100% reproducible
    crash on boot on my laptop with two batteries, when one battery was
    completely drained and the laptop was not plugged in.

    Fix this by making sure acpi_battery_get_property() returns
    POWER_SUPPLY_STATUS_UNKNOWN for any battery state it doesn't already
    handle explicitly. There doesn't seem to be any status enum value
    defined that makes more sense than 'unknown' for a battery at a
    critical charge level.

    Signed-off-by: Roland Dreier
    Acked-by: Alexey Starikovskiy
    Signed-off-by: Len Brown

    Roland Dreier
     

30 Oct, 2007

3 commits


26 Oct, 2007

2 commits


28 Sep, 2007

5 commits


25 Aug, 2007

1 commit


24 Aug, 2007

2 commits

  • Schedule /proc/acpi/event for removal in 6 months.

    Re-name acpi_bus_generate_event() to acpi_bus_generate_proc_event()
    to make sure there is no confusion that it is for /proc/acpi/event only.

    Add CONFIG_ACPI_PROC_EVENT to allow removal of /proc/acpi/event.
    There is no functional change if CONFIG_ACPI_PROC_EVENT=y

    Signed-off-by: Len Brown

    Len Brown
     
  • The previous events patch added a netlink event for every
    user of the legacy /proc/acpi/event interface.

    However, some users of /proc/acpi/event are really input events,
    and they already report their events via the input layer.

    Introduce a new interface, acpi_bus_generate_netlink_event(),
    which is explicitly called by devices that want to repoprt
    events via netlink. This allows the input-like events
    to opt-out of generating netlink events. In summary:

    events that are sent via netlink:
    ac/battery/sbs
    thermal
    processor
    thinkpad_acpi dock/bay

    events that are sent via input layer:
    button
    video hotkey
    thinkpad_acpi hotkey
    asus_acpi/asus-laptop hotkey
    sonypi/sonylaptop

    Signed-off-by: Zhang Rui
    Signed-off-by: Len Brown

    Zhang Rui
     

15 Aug, 2007

1 commit


04 Aug, 2007

1 commit


24 Jul, 2007

1 commit


12 May, 2007

1 commit


22 Apr, 2007

1 commit


07 Mar, 2007

2 commits

  • Signed-off-by: Vladimir Lebedev
    Signed-off-by: Len Brown

    Vladimir Lebedev
     
  • /proc exports _BST in a single file, and _BST is re-evaulated
    whenever that file is read.

    Sometimes user-space reads this file frequently, and on some
    systems _BST takes a long time to evaluate due to a slow EC.

    Further, when we move to sysfs, the values returned from _BST
    will be in multiple files, and evaluating _BST for each
    file read would make matters worse.

    Here code is added to support caching the results of _BST.
    A new module parameter "update_time" tells how many seconds the
    cached _BST should be used before it is re-evaluated.
    Currently, update_time defaults to 0, and so the
    existing behaviour of re-evaluating on each read retained.

    Signed-off-by: Vladimir Lebedev
    Signed-off-by: Len Brown

    Vladimir Lebedev