summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* mfd: wm8994-core: Disable regulators before removing themViresh Kumar2016-11-291-1/+1
| | | | | | | | | | | | The order in which resources were freed in wm8994_device_exit() isn't correct. The regulators are removed before they are disabled. Fix it by reordering code a bit, which makes it exact opposite of wm8994_device_init() as well. Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
* mfd: wm8994-core: Don't split lines unnecessarilyViresh Kumar2016-11-291-4/+2
| | | | | | | | These can fit in a single line (80 columns), don't split lines unnecessarily. Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Lee Jones <lee.jones@linaro.org>
* mfd: Enable compile testing for max77620 and max77686Krzysztof Kozlowski2016-11-291-2/+2
| | | | | | | | The OF is not a strict build-time dependency so max77620 and max77686 can be compile tested to increase build coverage. Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> Signed-off-by: Lee Jones <lee.jones@linaro.org>
* mfd: tc3589x: Improve function-level documentationJulia Lawall2016-11-291-2/+2
| | | | | | | | | | Use the correct function name in one case and adjust a variable name to that of the corresponding function parameter in another case. Issue detected using Coccinelle (http://coccinelle.lip6.fr/) Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: Lee Jones <lee.jones@linaro.org>
* mfd: Add support for Allwinner SoCs ADCQuentin Schulz2016-11-294-0/+291
| | | | | | | | | | | | The Allwinner SoCs all have an ADC that can also act as a touchscreen controller and a thermal sensor. For now, only the ADC and the thermal sensor drivers are probed by the MFD, the touchscreen controller support will be added later. Signed-off-by: Quentin Schulz <quentin.schulz@free-electrons.com> Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by: Jonathan Cameron <jic23@kernel.org> Signed-off-by: Lee Jones <lee.jones@linaro.org>
* dt-bindings: mfd: Add Altera Arria10 System Resource Chip bindingsThor Thayer2016-11-291-0/+46
| | | | | | | | | | The Altera Arria10 Devkit System Resource chip is a Multi-Function Device with a GPIO expander. This patch adds documentation for the Altera A10-SR DT bindings. Signed-off-by: Thor Thayer <tthayer@opensource.altera.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
* mfd: arizona: Mark AIFx_TX_BCLK_RATE as readable for cs47l24Praveen Kumar Vegivada2016-11-211-0/+6
| | | | | | | | | This register is used in the AIF code but is missing from the register tables. Signed-off-by: Praveen Kumar Vegivada <praveen.vegivada@cirrus.com> Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
* mfd: lpc_ich: Use gpio-ich driver for 8-series and 9-series Intel PCH devicesDan Gora2016-11-211-0/+2
| | | | | | | | | | | | | | | | | | | | | The Intel 8-series and 9-series PCH devices, described by the descriptors LPC_LPT and LPC_9S although codenamed 'lynxpoint' do not use the same GPIO register layout which is used by the gpio-lynxpoint driver. They use the same ICH_V5_GPIO layout as the gpio-ich driver. See: http://www.intel.com/content/www/us/en/chipsets/8-series-chipset-pch-datasheet.html http://www.intel.com/content/www/us/en/chipsets/9-series-chipset-pch-datasheet.html The devices described by "Mobile 4th Generation Intel Core Processor Family I/O" manual use the gpio-lynxpoint driver and are described by the LPC_LPT_LP descriptor. See: http://www.intel.com/content/www/us/en/processors/core/4th-gen-core-family-mobile-i-o-datasheet.html Signed-off-by: Dan Gora <dg@adax.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
* mfd: axp20x: Add adc volatile ranges for axp22xIcenowy Zheng2016-11-212-0/+5
| | | | | | | | AXP22x has also some different register map than axp20x, they're also added here. Signed-off-by: Icenowy Zheng <icenowy@aosc.xyz> Signed-off-by: Lee Jones <lee.jones@linaro.org>
* Merge branches 'ib-mfd-arm-leds-4.10' and 'ib-mfd-gpio-input-regulator-4.10' ↵Lee Jones2016-11-216-131/+157
|\ | | | | | | into ibs-for-mfd-merged
| * regulator: tps65218: Remove all the compatiblesKeerthy2016-10-262-94/+57
| | | | | | | | | | | | | | | | | | | | Remove all the individual compatibles for all the regulators and introduce id_table and update the driver accordingly to parse device tree nodes using the regulator framework. Signed-off-by: Keerthy <j-keerthy@ti.com> Acked-by: Mark Brown <broonie@kernel.org> Signed-off-by: Lee Jones <lee.jones@linaro.org>
| * mfd: tps65218: Use mfd_add_devices instead of of_platform_populateKeerthy2016-10-261-2/+16
| | | | | | | | | | | | | | | | | | | | mfd_add_devices enables parsing device tree nodes without compatibles for regulators and gpio modules. Replace of_platform_populate with mfd_add_devices. mfd_cell currently is populated with regulators, gpio and powerbutton. Signed-off-by: Keerthy <j-keerthy@ti.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
| * input: tps65218-pwrbutton: Add platform_device_id tableKeerthy2016-10-261-0/+8
| | | | | | | | | | | | | | | | | | platform_device_id table is needed for adding the tps65218-pwrbutton module to the mfd_cell array. Signed-off-by: Keerthy <j-keerthy@ti.com> Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
| * Documentation: regulator: tps65218: Update examplesKeerthy2016-10-261-16/+71
| | | | | | | | | | | | | | | | | | This updates the Device Tree according to the preferred way of parsing the nodes using the regulator framework. Signed-off-by: Keerthy <j-keerthy@ti.com> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Lee Jones <lee.jones@linaro.org>
| * mfd: tps65218: Remove redundant read wrapperKeerthy2016-10-264-21/+7
| | | | | | | | | | | | | | | | | | Currently read directly calls the repmap read function. Hence remove the redundant wrapper and use regmap read wherever needed. Signed-off-by: Keerthy <j-keerthy@ti.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
* | mfd: qcom-pm8xxx: Clean up PM8XXX namespaceLinus Walleij2016-11-217-35/+29
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Kconfig and file naming for the PM8xxx driver is totally confusing: - Kconfig options MFD_PM8XXX and MFD_PM8921_CORE, some in-kernel users depending on or selecting either at random. - A driver file named pm8921-core.c even if it is indeed used by the whole PM8xxx family of chips. - An irqchip named pm8xxx since it was (I guess) realized that the driver was generic for all pm8xxx PMICs. As I may want to add support for PM8901 this is starting to get really messy. Fix this situation by: - Remove the MFD_PM8921_CORE symbol and rely solely on MFD_PM8XXX and convert all users, including LEDs Kconfig and ARM defconfigs for qcom and multi_v7 to use that single symbol. - Renaming the driver to qcom-pm8xxx.c to fit along the two other qcom* prefixed drivers. - Rename functions withing the driver from 8921 to 8xxx to indicate it is generic. - Just drop the =m config from the pxa_defconfig, I have no clue why it is even there, it is not a Qualcomm platform. (Possibly older Kconfig noise from saveconfig.) Cc: Stephen Boyd <sboyd@codeaurora.org> Cc: Neil Armstrong <narmstrong@baylibre.com> Cc: Abhijeet Dharmapurikar <adharmap@codeaurora.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Reviewed-by: Andy Gross <andy.gross@linaro.org> Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org> Acked-by: Jacek Anaszewski <j.anaszewski@samsung.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Lee Jones <lee.jones@linaro.org>
* Linux 4.9-rc1v4.9-rc1Linus Torvalds2016-10-151-2/+2
|
* Merge tag 'befs-v4.9-rc1' of git://github.com/luisbg/linux-befsLinus Torvalds2016-10-158-283/+244
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull befs fixes from Luis de Bethencourt: "I recently took maintainership of the befs file system [0]. This is the first time I send you a git pull request, so please let me know if all the below is OK. Salah Triki and myself have been cleaning the code and fixing a few small bugs. Sorry I couldn't send this sooner in the merge window, I was waiting to have my GPG key signed by kernel members at ELCE in Berlin a few days ago." [0] https://lkml.org/lkml/2016/7/27/502 * tag 'befs-v4.9-rc1' of git://github.com/luisbg/linux-befs: (39 commits) befs: befs: fix style issues in datastream.c befs: improve documentation in datastream.c befs: fix typos in datastream.c befs: fix typos in btree.c befs: fix style issues in super.c befs: fix comment style befs: add check for ag_shift in superblock befs: dump inode_size superblock information befs: remove unnecessary initialization befs: fix typo in befs_sb_info befs: add flags field to validate superblock state befs: fix typo in befs_find_key befs: remove unused BEFS_BT_PARMATCH fs: befs: remove ret variable fs: befs: remove in vain variable assignment fs: befs: remove unnecessary *befs_sb variable fs: befs: remove useless initialization to zero fs: befs: remove in vain variable assignment fs: befs: Insert NULL inode to dentry fs: befs: Remove useless calls to brelse in befs_find_brun_dblindirect ...
| * befs: befs: fix style issues in datastream.cLuis de Bethencourt2016-10-081-15/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixing the following checkpatch.pl errors: ERROR: "foo * bar" should be "foo *bar" + befs_blocknr_t blockno, befs_block_run * run); WARNING: Missing a blank line after declarations + struct buffer_head *bh; + befs_debug(sb, "---> %s length: %llu", __func__, len); WARNING: Block comments use * on subsequent lines + /* + Double indir block, plus all the indirect blocks it maps. (and other instances of these) Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com> Signed-off-by: Salah Triki <salah.triki@gmail.com>
| * befs: improve documentation in datastream.cLuis de Bethencourt2016-10-081-95/+98
| | | | | | | | | | | | | | Convert function descriptions to kernel-doc style. Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com> Signed-off-by: Salah Triki <salah.triki@gmail.com>
| * befs: fix typos in datastream.cLuis de Bethencourt2016-10-081-4/+4
| | | | | | | | | | Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com> Signed-off-by: Salah Triki <salah.triki@gmail.com>
| * befs: fix typos in btree.cLuis de Bethencourt2016-10-081-4/+3
| | | | | | | | | | | | | | Fixing typos in kernel-doc function descriptions in fs/befs/btree.c. Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com> Signed-off-by: Salah Triki <salah.triki@gmail.com>
| * befs: fix style issues in super.cLuis de Bethencourt2016-10-081-7/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixing the following checkpatch.pl error: ERROR: "foo * bar" should be "foo *bar" +befs_load_sb(struct super_block *sb, befs_super_block * disk_sb) And the following warnings: WARNING: suspect code indent for conditional statements (8, 12) + if (disk_sb->fs_byte_order == BEFS_BYTEORDER_NATIVE_LE) + befs_sb->byte_order = BEFS_BYTESEX_LE; WARNING: suspect code indent for conditional statements (8, 12) + else if (disk_sb->fs_byte_order == BEFS_BYTEORDER_NATIVE_BE) + befs_sb->byte_order = BEFS_BYTESEX_BE; WARNING: break quoted strings at a space character + befs_error(sb, "blocksize(%u) cannot be larger" + "than system pagesize(%lu)", befs_sb->block_size, WARNING: line over 80 characters + if (befs_sb->log_start != befs_sb->log_end || befs_sb->flags == BEFS_DIRTY) { Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com> Signed-off-by: Salah Triki <salah.triki@gmail.com>
| * befs: fix comment styleLuis de Bethencourt2016-10-081-7/+3
| | | | | | | | | | | | | | | | | | | | | | The description of befs_load_sb was confusing the kernel-doc system since, because it starts with /**, it thinks it will document the function with kernel-doc formatting. Which it isn't. Fix other comment style issues in the file while we are at it. Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com> Signed-off-by: Salah Triki <salah.triki@gmail.com>
| * befs: add check for ag_shift in superblockLuis de Bethencourt2016-10-081-0/+7
| | | | | | | | | | | | | | | | | | | | | | ag_shift and blocks_per_ag contain the same information in different ways, same as block_shift and block_size do. It is worth checking this two are consistent, but since blocks_per_ag isn't documented as mandatory to use some implementations of befs don't enforce this, so making it non-fatal if they don't match and just having it as a warning. Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com> Signed-off-by: Salah Triki <salah.triki@gmail.com>
| * befs: dump inode_size superblock informationLuis de Bethencourt2016-10-081-0/+1
| | | | | | | | | | | | | | | | | | befs_dump_super_block() wasn't giving the inode_size information when dumping all elements of the superblock. Add this element to have complete information of the superblock. Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com> Signed-off-by: Salah Triki <salah.triki@gmail.com>
| * befs: remove unnecessary initializationSalah Triki2016-10-081-1/+1
| | | | | | | | | | | | | | | | There is no need to init block, since it will be overwitten later by iaddr2blockno(). Signed-off-by: Salah Triki <salah.triki@gmail.com> Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * befs: fix typo in befs_sb_infoSalah Triki2016-10-081-1/+1
| | | | | | | | | | | | | | Fixing jornal to Journal. Signed-off-by: Salah Triki <salah.triki@gmail.com> Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * befs: add flags field to validate superblock stateSalah Triki2016-10-082-1/+6
| | | | | | | | | | | | | | | | For validating superblock state, add flags field to befs_sb_info, read the state from the disk and check if it is equal to BEFS_DIRTY. Signed-off-by: Salah Triki <salah.triki@gmail.com> Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * befs: fix typo in befs_find_keyLuis de Bethencourt2016-10-081-1/+1
| | | | | | | | | | | | | | Fixing skeep to skip. Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com> Signed-off-by: Salah Triki <salah.triki@gmail.com>
| * befs: remove unused BEFS_BT_PARMATCHLuis de Bethencourt2016-10-082-19/+16
| | | | | | | | | | | | | | | | | | | | befs_btree_find(), the only caller of befs_find_key(), only cares about if the return from that function is BEFS_BT_MATCH or not. It never uses the partial match given with BEFS_BT_PARMATCH. Make the overflow return clearer by having BEFS_BT_OVERFLOW instead of BEFS_BT_PARMATCH. Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com> Signed-off-by: Salah Triki <salah.triki@gmail.com>
| * fs: befs: remove ret variableSalah Triki2016-10-081-2/+1
| | | | | | | | | | | | | | | | ret is initialized to -EIO and is never modified, so remove ret and use -EIO directly. Signed-off-by: Salah Triki <salah.triki@gmail.com> Acked-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * fs: befs: remove in vain variable assignmentSalah Triki2016-10-081-1/+1
| | | | | | | | | | | | | | | | There is no need to init res, since it will be overwitten later by befs_fblock2brun(). Signed-off-by: Salah Triki <salah.triki@gmail.com> Acked-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * fs: befs: remove unnecessary *befs_sb variableSalah Triki2016-10-081-2/+1
| | | | | | | | | | | | | | | | Remove *befs_sb and just call BEFS_SB(sb) directly, since the returned value by this function is only used once. Signed-off-by: Salah Triki <salah.triki@gmail.com> Acked-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * fs: befs: remove useless initialization to zeroSalah Triki2016-10-081-1/+1
| | | | | | | | | | | | | | | | node_off is unconditionally set to bt_super.root_node_ptr, so no need to init it to zero. Signed-off-by: Salah Triki <salah.triki@gmail.com> Acked-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * fs: befs: remove in vain variable assignmentSalah Triki2016-10-081-2/+0
| | | | | | | | | | | | | | There is no need to set *value, it will be overwritten later. Signed-off-by: Salah Triki <salah.triki@gmail.com> Acked-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * fs: befs: Insert NULL inode to dentrySalah Triki2016-10-081-0/+1
| | | | | | | | | | | | | | | | As VFS expects, lookup inserts NULL inode to dentry when the named inode does not exist. Signed-off-by: Salah Triki <salah.triki@gmail.com> Acked-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * fs: befs: Remove useless calls to brelse in befs_find_brun_dblindirectSalah Triki2016-10-081-2/+0
| | | | | | | | | | | | | | | | The calls to brelse are useless since dbl_indir_block and indir_block are NULL. Signed-off-by: Salah Triki <salah.triki@gmail.com> Acked-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * fs: befs: Coding style fixSalah Triki2016-10-081-3/+3
| | | | | | | | | | | | | | Constant has to be capitalized. Signed-off-by: Salah Triki <salah.triki@gmail.com> Acked-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * fs: befs: Remove redundant validation from befs_find_brun_directSalah Triki2016-10-081-8/+0
| | | | | | | | | | | | | | | | | | The only caller of befs_find_brun_direct is befs_fblock2brun, which already validates that the block is within the range of direct blocks. So remove the duplicate validation. Signed-off-by: Salah Triki <salah.triki@gmail.com> Acked-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * befs: fix typo in befs_bt_read_node documentationLuis de Bethencourt2016-10-081-2/+2
| | | | | | | | | | | | Fixing a grammatical error in the documentation. Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * befs: in memory free_node_ptr and max_size never readLuis de Bethencourt2016-10-081-2/+0
| | | | | | | | | | | | | | | | The only place the values of free_node_ptr and max_size are read is in befs_dump_index_entry(), which both times it is called, it is passed the on disk superblock. Removing assignment of unused values. Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * befs: make consistent use of befs_error()Luis de Bethencourt2016-10-083-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | befs_error() is used in potential errors that could happen in befs to provide informational log messages. befs_debug() is silent when CONFIG_BEFS_DEBUG=no, and very verbose when switched on, which is why it is used for general debugging but not for errors. Fix a few cases where the befs debug utility usage isn't following the expected pattern. To make sure we have consistent information in the logs. Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * befs: use simpler while loopLuis de Bethencourt2016-10-081-36/+38
| | | | | | | | | | | | Replace goto with simpler while loop to make befs_readdir() more readable. Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * befs: remove constant variableLuis de Bethencourt2016-10-081-5/+2
| | | | | | | | | | | | | | Use macro directly instead of via assigning it to an unchanging variable. Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com> Acked-by: Salah Triki <salah.triki@gmail.com>
| * befs: avoid dereferencing dentry twiceLuis de Bethencourt2016-10-081-1/+1
| | | | | | | | | | | | | | No need to dereference dentry twice to get the name when we already have it stored in a local variable. Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * fs: befs: remove comment that confuses kernel-docLuis de Bethencourt2016-10-081-4/+0
| | | | | | | | | | | | | | | | This comment with a mysterious unfinished line confuses the kernel-doc system since, because it starts with /**, it thinks it is documenting a function. Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com>
| * fs: befs: check silent flag before logging errorLuis de Bethencourt2016-10-081-1/+2
| | | | | | | | | | | | | | | | Log error only when silent flag is not set. Fixes: dbe6460388bc ("fs/befs/linuxvfs.c: check silent flag before logging errors") Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com> Acked-by: Salah Triki <salah.triki@gmail.com>
| * fs: befs: replace befs_bread by sb_breadSalah Triki2016-10-084-30/+4
| | | | | | | | | | | | | | | | | | Since befs_bread merely calls sb_bread, replace it by sb_bread. Link: http://lkml.kernel.org/r/1466800258-4542-1-git-send-email-salah.triki@gmail.com Signed-off-by: Salah Triki <salah.triki@gmail.com> Acked-by: Luis de Bethencourt <luisbg@osg.samsung.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
| * befs: remove unused functionsLuis de Bethencourt2016-10-081-12/+0
| | | | | | | | | | | | | | | | befs_iaddr_is_empty() and befs_brun_size() are unused. Remove them. Link: http://lkml.kernel.org/r/1465700235-22881-3-git-send-email-luisbg@osg.samsung.com Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>