summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2011-05-27Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6Linus Torvalds23-119/+189
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: net: Kill ratelimit.h dependency in linux/net.h net: Add linux/sysctl.h includes where needed. net: Kill ether_table[] declaration. inetpeer: fix race in unused_list manipulations atm: expose ATM device index in sysfs IPVS: bug in ip_vs_ftp, same list heaad used in all netns. bug.h: Move ratelimit warn interfaces to ratelimit.h bonding: cleanup module option descriptions net:8021q:vlan.c Fix pr_info to just give the vlan fullname and version. net: davinci_emac: fix dev_err use at probe can: convert to %pK for kptr_restrict support net: fix ETHTOOL_SFEATURES compatibility with old ethtool_ops.set_flags netfilter: Fix several warnings in compat_mtw_from_user(). netfilter: ipset: fix ip_set_flush return code netfilter: ipset: remove unused variable from type_pf_tdel() netfilter: ipset: Use proper timeout value to jiffies conversion
2011-05-27Merge branch 'for-linus' of ↵Linus Torvalds3-26/+24
git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6: MAINTAINERS: Update eCryptfs mailing list eCryptfs: Allow 2 scatterlist entries for encrypted filenames eCryptfs: Clear i_nlink in rmdir
2011-05-27net: Kill ratelimit.h dependency in linux/net.hDavid S. Miller4-6/+10
Ingo Molnar noticed that we have this unnecessary ratelimit.h dependency in linux/net.h, which hid compilation problems from people doing builds only with CONFIG_NET enabled. Move this stuff out to a seperate net/net_ratelimit.h file and include that in the only two places where this thing is needed. Signed-off-by: David S. Miller <davem@davemloft.net> Acked-by: Ingo Molnar <mingo@elte.hu>
2011-05-27net: Add linux/sysctl.h includes where needed.David S. Miller2-0/+2
Several networking headers were depending upon the implicit linux/sysctl.h include they get when including linux/net.h Add explicit includes. Signed-off-by: David S. Miller <davem@davemloft.net>
2011-05-27net: Kill ether_table[] declaration.David S. Miller1-4/+0
This got missed back in 2006 when Jes Sorensen deleted net/ethernet/sysctl_net_ether.c Signed-off-by: David S. Miller <davem@davemloft.net>
2011-05-27inetpeer: fix race in unused_list manipulationsEric Dumazet1-15/+27
Several crashes in cleanup_once() were reported in recent kernels. Commit d6cc1d642de9 (inetpeer: various changes) added a race in unlink_from_unused(). One way to avoid taking unused_peers.lock before doing the list_empty() test is to catch 0->1 refcnt transitions, using full barrier atomic operations variants (atomic_cmpxchg() and atomic_inc_return()) instead of previous atomic_inc() and atomic_add_unless() variants. We then call unlink_from_unused() only for the owner of the 0->1 transition. Add a new atomic_add_unless_return() static helper With help from Arun Sharma. Refs: https://bugzilla.kernel.org/show_bug.cgi?id=32772 Reported-by: Arun Sharma <asharma@fb.com> Reported-by: Maximilian Engelhardt <maxi@daemonizer.de> Reported-by: Yann Dupont <Yann.Dupont@univ-nantes.fr> Reported-by: Denys Fedoryshchenko <denys@visp.net.lb> Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-05-27Merge branch 'docs-move' of ↵Linus Torvalds23-27/+43
git://git.kernel.org/pub/scm/linux/kernel/git/rdunlap/linux-docs * 'docs-move' of git://git.kernel.org/pub/scm/linux/kernel/git/rdunlap/linux-docs: Create Documentation/security/, move LSM-, credentials-, and keys-related files from Documentation/ to Documentation/security/, add Documentation/security/00-INDEX, and update all occurrences of Documentation/<moved_file> to Documentation/security/<moved_file>.
2011-05-27Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-blockLinus Torvalds5-26/+48
* 'for-linus' of git://git.kernel.dk/linux-2.6-block: loop: export module parameters block: export blk_{get,put}_queue() block: remove unused variable in bio_attempt_front_merge() block: always allocate genhd->ev if check_events is implemented brd: export module parameters brd: fix comment on initial device creation brd: handle on-demand devices correctly brd: limit 'max_part' module param to DISK_MAX_PARTS brd: get rid of unused members from struct brd_device block: fix oops on !disk->queue and sysfs discard alignment display
2011-05-27Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6Linus Torvalds28-1044/+1571
* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: [CIFS] Fix endian error comparing authusers when cifsacl enabled [CIFS] Rename three structures to avoid camel case Fix extended security auth failure CIFS: Add rwpidforward mount option CIFS: Migrate to shared superblock model [CIFS] Migrate from prefixpath logic CIFS: Fix memory leak in cifs_do_mount [CIFS] When mandatory encryption on share, fail mount CIFS: Use pid saved from cifsFileInfo in writepages and set_file_size cifs: add cifs_async_writev cifs: clean up wsize negotiation and allow for larger wsize cifs: convert cifs_writepages to use async writes CIFS: Fix undefined behavior when mount fails cifs: don't call mid_q_entry->callback under the Global_MidLock (try #5) CIFS: Simplify mount code for further shared sb capability CIFS: Simplify connection structure search calls cifs: remove unused SMB2 config and mount options cifs: add ignore_pend flag to cifs_call_async cifs: make cifs_send_async take a kvec array cifs: consolidate SendReceive response checks
2011-05-27Merge branch 'linux-next' of ↵Linus Torvalds1-21/+20
git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2 * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2: Ocfs2/move_extents: Validate moving goal after the adjustment. Ocfs2/move_extents: Avoid doing division in extent moving.
2011-05-27Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6Linus Torvalds24-193/+221
* 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: [S390] mm: add ZONE_DMA to 31-bit config again [S390] mm: add page fault retry handling [S390] mm: handle kernel caused page fault oom situations [S390] delay: implement ndelay [S390] topology,sched: fix cpu_coregroup_mask/cpu_book_mask definitions [S390] hwsampler: allow cpu hotplug [S390] uaccess: turn __access_ok() into a define [S390] irq: merge irq.c and s390_ext.c [S390] irq: fix service signal external interrupt handling [S390] pfault: always enable service signal interrupt
2011-05-27Merge branch 'merge' of ↵Linus Torvalds5-22/+107
git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: powerpc/fsl_rio: Error interrupt handler for sRIO on MPC85xx powerpc/fsl_rio: move machine_check handler powerpc/fsl_lbc: Add workaround for ELBC-A001 erratum
2011-05-27Merge branch 'v4l_for_linus' of ↵Linus Torvalds33-195/+3750
git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: [media] v1.88 DM04/QQBOX Move remote to use rc_core dvb-usb-remote [media] Add missing include guard to header file [media] Inlined functions should be static [media] Remove invalid parameter description [media] cpia2: fix warning about invalid trigraph sequence [media] s5p-csis: Add missing dependency on PLAT_S5P [media] gspca/kinect: wrap gspca_debug with GSPCA_DEBUG [media] fintek-cir: new driver for Fintek LPC SuperIO CIR function [media] uvcvideo: Connect video devices to media entities [media] uvcvideo: Register subdevices for each entity [media] uvcvideo: Register a v4l2_device [media] add V4L2-PIX-FMT-SRGGB12 & friends to docbook [media] Documentation/DocBook: Rename media fops xml files [media] Media DocBook: fix validation errors [media] wl12xx: g_volatile_ctrl fix: wrong field set [media] fix kconfig dependency warning for VIDEO_TIMBERDALE [media] dm1105: GPIO handling added, I2C on GPIO added, LNB control through GPIO reworked [media] Add support for M-5MOLS 8 Mega Pixel camera ISP
2011-05-27Merge branch 'for-linus' of ↵Linus Torvalds27-150/+3161
git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6: (42 commits) regulator: Fix _regulator_get_voltage if get_voltage callback is NULL USB: TWL6025 allow different regulator name REGULATOR: TWL6025: add support to twl-regulator regulator: twl6030: do not write to _GRP for regulator disable regulator: twl6030: do not write to _GRP for regulator enable TPS65911: Comparator: Add comparator driver TPS65911: Add support for added GPIO lines GPIO: TPS65910: Move driver to drivers/gpio/ TPS65911: Add new irq definitions regulator: tps65911: Add new chip version MFD: TPS65910: Add support for TPS65911 device regulator: Fix off-by-one value range checking for mc13xxx_regulator_get_voltage regulator: mc13892: Fix voltage unit in test case. regulator: Remove MAX8997_REG_BUCK1DVS/MAX8997_REG_BUCK2DVS/MAX8997_REG_BUCK5DVS macros mfd: Fix off-by-one value range checking for tps65910_i2c_write regulator: Only apply voltage constraints from consumers that set them regulator: If we can't configure optimum mode we're always in the best one regulator: max8997: remove useless code regulator: Fix memory leak in max8998_pmic_probe failure path regulator: Fix desc_id for tps65023/6507x/65910 ...
2011-05-27Merge git://git.infradead.org/battery-2.6Linus Torvalds12-24/+840
* git://git.infradead.org/battery-2.6: PXA: Use dev_pm_ops in z2_battery ds2760_battery: Fix rated capacity of the hx4700 1800mAh battery ds2760_battery: Fix indexing of the 4 active full EEPROM registers power: Make test_power driver more dynamic. bq27x00_battery: Name of cycle count property max8903_charger: Add GENERIC_HARDIRQS as a dependency (fixes S390 build) ARM: RX-51: Enable isp1704 power on/off isp1704_charger: Allow board specific powering routine gpio-charger: Add gpio_charger_resume power_supply: Add driver for MAX8903 charger
2011-05-27Merge branch 'hwmon-for-linus' of ↵Linus Torvalds2-7/+10
git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging: hwmon: (coretemp) Fix section mismatch hwmon: (pmbus) Initialize sysfs attributes hwmon: (coretemp) Update comments describing the handling of HT CPUs hwmon: (coretemp) Initialize sysfs attributes
2011-05-27Merge branch 'for-linus' of ↵Linus Torvalds27-284/+432
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (26 commits) ASoC: Fix power down for widgetless per-card DAPM context case ASoC: wm1250-ev1: Define "WM1250 Output" with SND_SOC_DAPM_OUTPUT ASoC: Remove duplicate linux/delay.h inclusion. ASoC: sam9g20_wm8731: use the proper SYSCKL value ASoC: wm8731: fix wm8731_check_osc() connected condition ALSA: hda - Reorganize controller quriks with bit flags ALSA: hda - Use snd_printd() in snd_hda_parse_pin_def_config() ALSA: core: remove unused variables. ALSA: HDA: Increase MAX_HDMI_PINS ALSA: PCM - Don't check DMA time-out too shortly MAINTAINERS: add FireWire audio maintainer ALSA: usb-audio: more control quirks for M-Audio FastTrack devices ALSA: usb-audio: add new quirk type QUIRK_AUDIO_STANDARD_MIXER ALSA: usb-audio: export snd_usb_feature_unit_ctl ALSA: usb-audio: rework add_control_to_empty() ALSA: usb-audio: move assignment of chip->ctrl_intf ALSA: hda - Use model=auto for Lenovo G555 ALSA: HDA: Unify HDMI hotplug handling. ALSA: hda - Force AD1988_6STACK_DIG for Asus M3N-HT Deluxe ASoC: core - remove superfluous new line. ...
2011-05-27atm: expose ATM device index in sysfsDan Williams1-0/+10
It's currently exposed only through /proc which, besides requiring screen-scraping, doesn't allow userspace to distinguish between two identical ATM adapters with different ATM indexes. The ATM device index is required when using PPPoATM on a system with multiple ATM adapters. Signed-off-by: Dan Williams <dcbw@redhat.com> Reviewed-by: Eric Dumazet <eric.dumazet@gmail.com> Tested-by: David Woodhouse <dwmw2@infradead.org> Cc: stable@kernel.org Signed-off-by: David S. Miller <davem@davemloft.net>
2011-05-27Merge branch 'pablo/nf-2.6-updates' of git://1984.lsi.us.es/net-2.6David S. Miller6-22/+38
2011-05-27MAINTAINERS: Update eCryptfs mailing listTyler Hicks1-1/+1
The eCryptfs mailing list has moved from lists.launchpad.net to vger.kernel.org. Signed-off-by: Tyler Hicks <tyhicks@linux.vnet.ibm.com>
2011-05-27eCryptfs: Allow 2 scatterlist entries for encrypted filenamesTyler Hicks1-25/+21
The buffers allocated while encrypting and decrypting long filenames can sometimes straddle two pages. In this situation, virt_to_scatterlist() will return -ENOMEM, causing the operation to fail and the user will get scary error messages in their logs: kernel: ecryptfs_write_tag_70_packet: Internal error whilst attempting to convert filename memory to scatterlist; expected rc = 1; got rc = [-12]. block_aligned_filename_size = [272] kernel: ecryptfs_encrypt_filename: Error attempting to generate tag 70 packet; rc = [-12] kernel: ecryptfs_encrypt_and_encode_filename: Error attempting to encrypt filename; rc = [-12] kernel: ecryptfs_lookup: Error attempting to encrypt and encode filename; rc = [-12] The solution is to allow up to 2 scatterlist entries to be used. Signed-off-by: Tyler Hicks <tyhicks@linux.vnet.ibm.com> Cc: <stable@kernel.org>
2011-05-27eCryptfs: Clear i_nlink in rmdirTyler Hicks1-0/+2
eCryptfs wasn't clearing the eCryptfs inode's i_nlink after a successful vfs_rmdir() on the lower directory. This resulted in the inode evict and destroy paths to be missed. https://bugs.launchpad.net/ecryptfs/+bug/723518 Signed-off-by: Tyler Hicks <tyhicks@linux.vnet.ibm.com> Cc: <stable@kernel.org>
2011-05-27[CIFS] Fix endian error comparing authusers when cifsacl enabledSteve French1-2/+3
Fix sparse warning: CHECK fs/cifs/cifsacl.c fs/cifs/cifsacl.c:41:36: warning: incorrect type in initializer (different base types) fs/cifs/cifsacl.c:41:36: expected restricted __le32 fs/cifs/cifsacl.c:41:36: got int fs/cifs/cifsacl.c:461:52: warning: restricted __le32 degrades to integer fs/cifs/cifsacl.c:461:73: warning: restricted __le32 degrades to integer The second one looks harmless but the first one (sid_authusers) was added in commit 2fbc2f1729e785a7b2faf9d8d60926bb1ff62af0 and only affects 2.6.38/2.6.39 CC: Stable <stable@kernel.org> Reviewed-and-Tested-by: Shirish Pargaonkar <shirishpargaonkar@gmail.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
2011-05-27IPVS: bug in ip_vs_ftp, same list heaad used in all netns.Hans Schillstrom2-9/+21
When ip_vs was adapted to netns the ftp application was not adapted in a correct way. However this is a fix to avoid kernel errors. In the long term another solution might be chosen. I.e the ports that the ftp appl, uses should be per netns. Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com> Acked-by: Julian Anastasov <ja@ssi.bg> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
2011-05-27regulator: Fix _regulator_get_voltage if get_voltage callback is NULLAxel Lin1-3/+5
In the case of get_voltage callback is NULL, current implementation in _regulator_get_voltage will return -EINVAL. Also returns proper error if ret is negative value. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27USB: TWL6025 allow different regulator nameGraeme Gregory1-1/+9
The twl6025 uses a different regulator for USB than the 6030 so select the correct regulator name depending on the subclass of device. Since V1 Use features passed via platform data instead of global variable. Signed-off-by: Graeme Gregory <gg@slimlogic.co.uk> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27REGULATOR: TWL6025: add support to twl-regulatorGraeme Gregory1-8/+321
Adding support for the twl6025. Major difference in the twl6025 is the group functionality has been removed from the chip so this affects how regulators are enabled and disabled. The names of the regulators also changed. The DCDCs of the 6025 are software controllable as well. Since V1 Use the features variable passed via platform data instead of calling global function. Change the very switch like if statements to be a more readable switch statement. Since V2 twl6025 doesn't use remap so remove it from the macros. Since V3 enable/disable functions for 4030/6030 were seperated upstream so rebase on top of this. Change DCDC reference to SMPS as this is used in TRM. Change list_voltage slightly to have less code. Signed-off-by: Graeme Gregory <gg@slimlogic.co.uk> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27regulator: twl6030: do not write to _GRP for regulator disableBalaji T K1-25/+22
TWL6030: regulator is disabled via VREG_STATE TWL4030: regulator is disabled via VREG_GRP Since there is nothing common, split twlreg_enable similar to other regulator_ops Signed-off-by: Balaji T K <balajitk@ti.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27regulator: twl6030: do not write to _GRP for regulator enableBalaji T K1-14/+25
TWL6030: regulator is enabled via VREG_STATE TWL4030: regulator is enabled via VREG_GRP Since there is nothing common, split twlreg_enable similar to other regulator_ops Signed-off-by: Balaji T K <balajitk@ti.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27TPS65911: Comparator: Add comparator driverJorge Eduardo Candelaria2-0/+192
This driver adds functionality to the tps65911 chip driver. Two of the comparators are configurable by software and measures VCCS voltage to detect high or low voltage scenarios. Signed-off-by: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> Acked-by: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27TPS65911: Add support for added GPIO linesJorge Eduardo Candelaria2-86/+33
GPIO 1 to 8 are added for TPS65911 chip version. The gpio driver now handles more than one gpio lines. Subsequent versions of the chip family can add new GPIO lines with minimal driver changes. Signed-off-by: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27GPIO: TPS65910: Move driver to drivers/gpio/Jorge Eduardo Candelaria5-2/+11
The GPIO driver should reside in drivers/gpio/ for better organization. Signed-off-by: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27TPS65911: Add new irq definitionsJorge Eduardo Candelaria2-14/+75
TPS65911 adds new interrupt sources, as well as two new registers to handle them, one for interrupt status and one for interrupt masking. The added irqs are: -VMBCH2 - Low and High threshold -GPIO1-8 - Rising and falling edge detection -WTCHDG - Watchdog interrupt -PWRDN - PWRDN reset interrupt The code should handle these new registers only when the chip version is TPS65911. Signed-off-by: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> Acked-by: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27regulator: tps65911: Add new chip versionJorge Eduardo Candelaria2-35/+332
The tps65911 chip introduces new features, including changes in the regulator module. - VDD1 and VDD2 remain unchanged. - VDD3 is now named VDDCTRL and has a wider voltage range. - LDOs are now named LDO1...8 and voltage ranges are sequential, making LDOs easier to handle. Signed-off-by: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27MFD: TPS65910: Add support for TPS65911 deviceJorge Eduardo Candelaria2-1/+49
The TPS65911 is the next generation of the TPS65910 family of PMIC chips. It adds a few features: - Watchdog Timer - PWM & LED generators - Comparators for system control status It also adds a set of Interrupts and GPIOs, among other things. The driver exports a function to identify between different versions of the tps65910 family, allowing other modules to identify the capabilities of the current chip. Signed-off-by: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> Acked-by: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27regulator: Fix off-by-one value range checking for mc13xxx_regulator_get_voltageAxel Lin1-1/+1
We use val as array index, thus the valid value rangae for val should be 0 .. n_voltages-1. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27regulator: mc13892: Fix voltage unit in test case.Fabio Estevam1-2/+2
Voltage values should be expressed in microvolts, not in milivolts. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Signed-off-by: Ranjani Vaidyanathan <ra5478@freescale.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27regulator: Remove ↵Axel Lin2-10/+6
MAX8997_REG_BUCK1DVS/MAX8997_REG_BUCK2DVS/MAX8997_REG_BUCK5DVS macros In current implementation, the original macro implementation assumes the caller pass the parameter starting from 1 (to match the register names in datasheet). Thus we have unneeded plus one then minus one operations when using MAX8997_REG_BUCK1DVS/MAX8997_REG_BUCK2DVS/MAX8997_REG_BUCK5DVS macros. This patch removes these macros to avoid unneeded plus one then minus one operations without reducing readability. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: MyungJoo Ham <myungjoo.ham@samsung.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27mfd: Fix off-by-one value range checking for tps65910_i2c_writeAxel Lin1-1/+1
If bytes == (TPS65910_MAX_REGISTER + 1), we have a buffer overflow when doing memcpy(&msg[1], src, bytes). Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27regulator: Only apply voltage constraints from consumers that set themMark Brown1-0/+7
When applying the set_voltage() requests from consumers skip over those consumers that haven't set anything, otherwise we'll come out with a maximum voltage of zero. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27regulator: If we can't configure optimum mode we're always in the best oneMark Brown1-3/+13
If either a regulator driver can't tell us what the optimum mode is (or doesn't have modes in the first place) or the system doesn't allow DRMS changes then it's more helpful for users to just say that we're in the optimal mode, even if it's from a selection of one. Still report errors if the process of picking and setting a mode changes as this may indicate that we're stuck in a low power mode and unable to deliver a higher current that the consumer just asked for. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27regulator: max8997: remove useless codeJonghwan Choi1-1/+0
fix unreachable code. Signed-off-by: Jonghwan Choi <jhbird.choi@samsung.com> Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27regulator: Fix memory leak in max8998_pmic_probe failure pathAxel Lin1-9/+13
Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27regulator: Fix desc_id for tps65023/6507x/65910Axel Lin3-6/+3
The desc_id variable should not be a static variable. The rest of the code assumes the desc_id must less than TPSxxxxx_NUM_REGULATOR. If we set desc_id to be a static variable, checking the return value of rdev_get_id() may return error. Signed-off-by: Axel Lin <axel.lin@gmail.com> Cc: Anuj Aggarwal <anuj.aggarwal@ti.com> Cc: Graeme Gregory <gg@slimlogic.co.uk> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27linux-next: build failure after merge of the voltage treeJorge Eduardo Candelaria1-1/+1
On May 10, 2011, at 9:27 PM, Stephen Rothwell wrote: > Hi Jorge, > > On Tue, 10 May 2011 12:30:36 -0500 Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> wrote: >> >> On May 10, 2011, at 3:38 AM, Liam Girdwood wrote: >> >>> On Tue, 2011-05-10 at 12:44 +1000, Stephen Rothwell wrote: >>>> Hi Liam, >>>> >>>> After merging the voltage tree, today's linux-next build (x86_64 >>>> allmodconfig) failed like this: >>>> >>>> ERROR: "tps65910_gpio_init" [drivers/mfd/tps65910.ko] undefined! >>>> ERROR: "tps65910_irq_init" [drivers/mfd/tps65910.ko] undefined! >>>> ERROR: "irq_modify_status" [drivers/mfd/tps65910-irq.ko] undefined! >>>> ERROR: "irq_set_chip_and_handler_name" [drivers/mfd/tps65910-irq.ko] undefined! >>>> ERROR: "handle_edge_irq" [drivers/mfd/tps65910-irq.ko] undefined! >>>> >>>> I have used the voltage tree from next-20110509 for today. >>> >>> Jorge, could you send a fix for this today. >> >> The following patch should solve this: >> >> From: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> >> MFD: Fix TPS65910 build >> >> Support for tps65910 as a module is not available. The driver can >> only be compiled as built-in. OTOH, the regulator driver can still >> be built as module without breaking the compilation. >> >> Signed-off-by: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> > > Today (even with the above patch included) I got these errors from the > x86_64 allmodconfig build: > > tps65910.c:(.text+0xf4140): undefined reference to `i2c_master_send' > drivers/built-in.o: In function `tps65910_i2c_read': > tps65910.c:(.text+0xf41d2): undefined reference to `i2c_transfer' > drivers/built-in.o: In function `tps65910_i2c_init': > tps65910.c:(.init.text+0xcb83): undefined reference to `i2c_register_driver' > drivers/built-in.o: In function `tps65910_i2c_exit': > tps65910.c:(.exit.text+0x6e0): undefined reference to `i2c_del_driver' > > I have used the voltage tree from next-20110509 again today. Following patch should fix the dependency problems. Please review: From: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> [PATCH] MFD: TPS65910: Fix I2C dependency TPS65910 driver can only be compiled built-in, so the I2C driver should be as well. Signed-off-by: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27Revert "regulator: Move VCOINCELL to be the last element of ↵Axel Lin1-1/+1
mc13892_regulators array" I check this patch again and found this actually is not a bug because MC13xxx_DEFINE explictly defines the order of each entry in the array. Thus revert the patch. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27regulator: Remove some unused variables from wm831x DCDCsMark Brown1-2/+0
These became unused with the IRQ removal patch, I'm fairly sure that a patch was sent earlier by someone else but it doesn't seem to have been applied and I don't have a copy sitting around any more. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27linux-next: build failure after merge of the voltage treeJorge Eduardo Candelaria1-2/+2
On May 10, 2011, at 3:38 AM, Liam Girdwood wrote: > On Tue, 2011-05-10 at 12:44 +1000, Stephen Rothwell wrote: >> Hi Liam, >> >> After merging the voltage tree, today's linux-next build (x86_64 >> allmodconfig) failed like this: >> >> ERROR: "tps65910_gpio_init" [drivers/mfd/tps65910.ko] undefined! >> ERROR: "tps65910_irq_init" [drivers/mfd/tps65910.ko] undefined! >> ERROR: "irq_modify_status" [drivers/mfd/tps65910-irq.ko] undefined! >> ERROR: "irq_set_chip_and_handler_name" [drivers/mfd/tps65910-irq.ko] undefined! >> ERROR: "handle_edge_irq" [drivers/mfd/tps65910-irq.ko] undefined! >> >> I have used the voltage tree from next-20110509 for today. > > Jorge, could you send a fix for this today. > > Thanks > > Liam > The following patch should solve this: From: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> MFD: Fix TPS65910 build Support for tps65910 as a module is not available. The driver can only be compiled as built-in. OTOH, the regulator driver can still be built as module without breaking the compilation. Signed-off-by: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27TPS65910: Add tps65910 regulator driverGraeme Gregory4-0/+726
The regulator module consists of 3 DCDCs and 8 LDOs. The output voltages are configurable and are meant to supply power to the main processor and other components Signed-off-by: Graeme Gregory <gg@slimlogic.co.uk> Signed-off-by: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-05-27TPS65910: IRQ: Add interrupt controllerGraeme Gregory4-1/+205
This module controls the interrupt handling for the tps chip. The interrupt sources are the following: - GPIO falling/rising edge detection - Battery voltage below/above threshold - PWRON signal - PWRHOLD signal - Temperature detection - RTC alarm and periodic event Signed-off-by: Graeme Gregory <gg@slimlogic.co.uk> Signed-off-by: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk> Reviewed-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>