31 Jul, 2009

1 commit


13 Jul, 2009

1 commit


01 Jul, 2009

3 commits


09 Jun, 2009

4 commits

  • There are cases when charging monitor and the event handler try to
    change the charger state simultaneously. For instance, a charger is
    connected to the system, there's the detection event and the event
    handler tries to enable charging. It is possible that the periodic
    charging monitor runs at the same time and it still thinks there's
    no external charger. So it tries to disable the charging. As the
    result, even if the conditions necessary to charge the battery hold,
    there will be no actual charging.

    The patch changes the event handler so that instead of enabling/
    disabling the charger immediately it would rather make the monitor
    run. The monitor code then decides what should be the charger state.

    Signed-off-by: Mike Rapoport
    Signed-off-by: Andrew Morton
    Signed-off-by: Anton Vorontsov

    Mike Rapoport
     
  • The MAX17040 is a I2C interfaced Fuel Gauge systems for lithium-ion
    batteries This patch adds support the MAX17040 Fuel Gauge

    Signed-off-by: Minkyu Kang
    Signed-off-by: Anton Vorontsov

    Minkyu Kang
     
  • This adds support for ds2760's sleep mode feature. With this feature
    enabled, the chip enters a deep sleep mode and disconnects from the
    battery when the w1 line is held down for more than 2 seconds.

    This new behaviour can be switched on and off using a new module
    parameter.

    Signed-off-by: Daniel Mack
    Cc: Szabolcs Gyurko
    Acked-by: Matt Reimer
    Acked-by: Evgeniy Polyakov
    Signed-off-by: Anton Vorontsov

    Daniel Mack
     
  • Removed struct ds2760_platform_data which wasn't defined anywhere.
    Indentation cleanups.

    Signed-off-by: Daniel Mack
    Cc: Szabolcs Gyurko
    Acked-by: Matt Reimer
    Signed-off-by: Anton Vorontsov

    Daniel Mack
     

09 Apr, 2009

1 commit


05 Apr, 2009

1 commit


30 Mar, 2009

1 commit


28 Mar, 2009

1 commit


13 Mar, 2009

1 commit

  • The 'battery remaining capacity' calculation in
    drivers/power/ds2760_battery.c lacks a parameter check to a division
    operation which causes the kernel to oops on my board.

    [ 21.233750] Division by zero in kernel.
    [ 21.237646] [] (__div0+0x0/0x20) from [] (Ldiv0+0x8/0x10)
    [ 21.244816] [] (ds2760_battery_read_status+0x0/0x2a4) from [] (ds2760_battery_get_property+0x30/0xdc)
    [ 21.255803] r8:c03a22c0 r7:c7886100 r6:00000009 r5:c782fe7c r4:c7886084
    [ 21.262518] [] (ds2760_battery_get_property+0x0/0xdc) from [] (power_supply_show_property+0x48/0x114)
    [ 21.273480] r6:c7996000 r5:00000009 r4:00000000
    [ 21.278111] [] (power_supply_show_property+0x0/0x114) from [] (power_supply_uevent+0x188/0x280)
    [ 21.288537] r8:00000001 r7:c7886100 r6:c7996000 r5:000000b4 r4:00000000
    [ 21.295222] [] (power_supply_uevent+0x0/0x280) from [] (dev_uevent+0xd4/0x10c)
    [ 21.304199] [] (dev_uevent+0x0/0x10c) from [] (kobject_uevent_env+0x180/0x390)
    [ 21.313170] r5:00000000 r4:c78860ac
    [ 21.316725] [] (kobject_uevent_env+0x0/0x390) from [] (kobject_uevent+0x14/0x18)
    [ 21.325850] [] (kobject_uevent+0x0/0x18) from [] (power_supply_changed_work+0x5c/0x70)
    [ 21.335506] [] (power_supply_changed_work+0x0/0x70) from [] (run_workqueue+0xbc/0x144)
    [ 21.345167] r4:c7812040
    [ 21.347716] [] (run_workqueue+0x0/0x144) from [] (worker_thread+0xa8/0xbc)
    [ 21.356296] r7:c7812040 r6:c7820b00 r5:c782ffa4 r4:c7812048
    [ 21.361957] [] (worker_thread+0x0/0xbc) from [] (kthread+0x5c/0x94)
    [ 21.369971] r7:00000000 r6:c004d8a4 r5:c7812040 r4:c782e000
    [ 21.375612] [] (kthread+0x0/0x94) from [] (do_exit+0x0/0x688)

    Signed-off-by: Daniel Mack
    Cc: Szabolcs Gyurko
    Acked-by: Matt Reimer
    Acked-by: Anton Vorontsov
    Cc: David Woodhouse
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Daniel Mack
     

03 Feb, 2009

4 commits

  • This patch allows machines to use an OTG transceiver driver instead of
    supplying a custom is_usb_online callback to check USB power.
    Also, in the case that the OTG transceiver handles charger control when
    connected to USB, a regulator named "ac_draw" can be supplied instead of
    the custom set_charge callback to control the charger when connected to
    AC.

    The check for (transceiver->state == OTG_STATE_B_PERIPHERAL) in
    otg_is_usb_online is probably too simple, I'm just using this with a
    peripheral only device and gpio_vbus + bq24022. I'm not sure which other
    OTG states can supply power.

    Signed-off-by: Philipp Zabel
    Signed-off-by: Anton Vorontsov

    Philipp Zabel
     
  • The 'pcf50633_mbc_set_status' function is unused, so remove it.

    Signed-off-by: Balaji Rao
    Cc: Andy Green
    Signed-off-by: Anton Vorontsov

    Balaji Rao
     
  • The battery charger state machine switches into charging mode when
    the battery voltage falls below 96% of a battery float voltage. But
    the voltage drop in Li-ion batteries is marginal(1~2 %) till about
    80% of its capacity - which means, after a BATFULL, charging won't
    be restarted until 80%.

    This work_struct function restarts charging at regular intervals to
    make sure the battery doesn't discharge too much.

    Signed-off-by: Balaji Rao
    Cc: Andy Green
    Signed-off-by: Anton Vorontsov

    Balaji Rao
     
  • container_of(psy, struct pcf50633_mbc, usb); should be
    container_of(psy, struct pcf50633_mbc, adapter);

    Signed-off-by: Balaji Rao
    Cc: Andy Green
    Signed-off-by: Anton Vorontsov

    Balaji Rao
     

26 Jan, 2009

1 commit


11 Jan, 2009

1 commit


07 Jan, 2009

1 commit


04 Jan, 2009

5 commits


21 Oct, 2008

1 commit

  • * git://git.infradead.org/battery-2.6:
    bq27x00_battery: use unaligned access helper
    power_supply: fix dependency of tosa_battery
    power_supply: Support for Texas Instruments BQ27200 battery managers
    power_supply: Add function to return system-wide power state
    pda_power: Check and handle return value of set_irq_wake

    Linus Torvalds
     

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
     

19 Oct, 2008

1 commit


17 Oct, 2008

3 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (46 commits)
    UIO: Fix mapping of logical and virtual memory
    UIO: add automata sercos3 pci card support
    UIO: Change driver name of uio_pdrv
    UIO: Add alignment warnings for uio-mem
    Driver core: add bus_sort_breadthfirst() function
    NET: convert the phy_device file to use bus_find_device_by_name
    kobject: Cleanup kobject_rename and !CONFIG_SYSFS
    kobject: Fix kobject_rename and !CONFIG_SYSFS
    sysfs: Make dir and name args to sysfs_notify() const
    platform: add new device registration helper
    sysfs: use ilookup5() instead of ilookup5_nowait()
    PNP: create device attributes via default device attributes
    Driver core: make bus_find_device_by_name() more robust
    usb: turn dev_warn+WARN_ON combos into dev_WARN
    debug: use dev_WARN() rather than WARN_ON() in device_pm_add()
    debug: Introduce a dev_WARN() function
    sysfs: fix deadlock
    device model: Do a quickcheck for driver binding before doing an expensive check
    Driver core: Fix cleanup in device_create_vargs().
    Driver core: Clarify device cleanup.
    ...

    Linus Torvalds
     
  • Signed-off-by: Harvey Harrison
    Acked-by: Andres Salomon
    Cc: David Woodhouse
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • Now that device_create() has been audited, rename things back to the
    original call to be sane.

    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

13 Oct, 2008

1 commit


03 Oct, 2008

1 commit


26 Sep, 2008

2 commits


01 Sep, 2008

3 commits

  • These battery managers came in two different packages: one for I2C
    busses (BQ27200) and one for HDQ busses (BQ27000).

    This driver currently supports only the I2C chip version but the code
    is designed in order to easily allow the HDQ chip version integration.

    [akpm@linux-foundation.org: coding-style fixes]
    [akpm@linux-foundation.org: make things static, use kasprintf()]
    Signed-off-by: Rodolfo Giometti
    Cc: David Woodhouse
    Signed-off-by: Andrew Morton
    Signed-off-by: Anton Vorontsov

    Rodolfo Giometti
     
  • Certain drivers benefit from knowing whether the system is on ac or
    battery, for instance when determining which backlight registers to
    read. This adds a simple call to determine whether there's an online
    power supply other than any batteries.

    Signed-off-by: Matthew Garrett
    Signed-off-by: Anton Vorontsov

    Matthew Garrett
     
  • The recent change in commit 2db873211ba47ef704c301f9ecf4a33413a0b649
    forces the calls enable_irq_wake() and disable_irq_wake() to
    be balanced. But if in pda_power_suspend() the call to
    enable_irq_wake() fails (because attached gpio cannot wake
    up the CPU), the corresponding disable_irq_wake will WARN().
    Fix it by storing success/failure of enable_irq_wake().

    Signed-off-by: Robert Jarzmik
    Signed-off-by: Anton Vorontsov

    Robert Jarzmik
     

07 Aug, 2008

1 commit