- 29 1月, 2019 1 次提交
-
-
由 Sinan Kaya 提交于
After commit 5d32a665 ("PCI/ACPI: Allow ACPI to be built without CONFIG_PCI set") dependencies on CONFIG_PCI that previously were satisfied implicitly through dependencies on CONFIG_ACPI have to be specified directly. WARNING: unmet direct dependencies detected for I2C_DESIGNWARE_PLATFORM Depends on [n]: I2C [=y] && HAS_IOMEM [=y] && (ACPI [=y] && COMMON_CLK [=n] || !ACPI [=y]) Selected by [y]: - MFD_TPS68470 [=y] && HAS_IOMEM [=y] && ACPI [=y] && I2C [=y]=y MFD_TPS68470 is an ACPI only device and selects I2C_DESIGNWARE_PLATFORM. I2C_DESIGNWARE_PLATFORM does not have any configuration today for ACPI support without CONFIG_PCI set. For sake of a quick fix this introduces a new mandatory dependency to the driver which may survive without it. Otherwise we need to revisit the driver architecture to address this properly. Fixes: 5d32a665 ("PCI/ACPI: Allow ACPI to be built without CONFIG_PCI set") Signed-off-by: NSinan Kaya <okaya@kernel.org> Acked-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
-
- 03 1月, 2019 20 次提交
-
-
由 Beomho Seo 提交于
This patch enables proper interrupts routing between UART module in Exynos Audio SubSystem and the rest of the SoC. This routing is completely transparent for UART device and CPU/GIC. UART driver requests interrupts from the respective controller and enables/masks/handles it by itself via standard methods. There are boards (for example TM2), which use UART module in Exynos Audio SubStem for communication with BlueTooth chip. Signed-off-by: NBeomho Seo <beomho.seo@samsung.com> [mszyprow: rephrased commit message, added UART reset] Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com> Reviewed-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Kangjie Lu 提交于
When mc13xxx_reg_read() fails, "old_adc0" is uninitialized and will contain random value. Further execution uses "old_adc0" even when mc13xxx_reg_read() fails. The fix checks the return value of mc13xxx_reg_read(), and exits the execution when it fails. Signed-off-by: NKangjie Lu <kjlu@umn.edu> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Richard Fitzgerald 提交于
Coccinelle warning of a spurious semicolon on the closing brace of a while loop. Signed-off-by: NRichard Fitzgerald <rf@opensource.cirrus.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Yangtao Li 提交于
Caculated -> Calculated Signed-off-by: NYangtao Li <tiny.windzz@gmail.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Keerthy 提交于
Use devm_regmap_add_irq_chip and clean up error path in probe and also the remove function. Reported-by: NChristian Hohnstaedt <Christian.Hohnstaedt@wago.com> Signed-off-by: NKeerthy <j-keerthy@ti.com> Reviewed-by: NSebastian Reichel <sebastian.reichel@collabora.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Rob Herring 提交于
Convert string compares of DT node names to use of_node_name_eq() helper instead. This removes direct access to the node name pointer. Signed-off-by: NRob Herring <robh@kernel.org> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Enric Balletbo i Serra 提交于
The driver adds different MFD child devices via mfd_add_devices() and hence it is required to call mfd_remove_devices() to remove MFD child devices. Fixes: 5e011558 ("cros_ec: Move cros_ec_dev module to drivers/mfd") Signed-off-by: NEnric Balletbo i Serra <enric.balletbo@collabora.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Oskari Lemmela 提交于
Parts of the AXP803 are compatible with their counterparts on the AXP813. These include the GPIO, ADC, AC and battery power supplies. Signed-off-by: NOskari Lemmela <oskari@lemmela.net> Reviewed-by: NChen-Yu Tsai <wens@csie.org> Tested-by: NVasily Khoruzhick <anarsoul@gmail.com> Signed-off-by: NChen-Yu Tsai <wens@csie.org> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Chen-Yu Tsai 提交于
In the axp20x driver, the various mfd_cell lists had varying amounts of indentation, sometimes even within the same list. For the axp288, there's no alignment at all. Re-align the right hand side of the assignments with the least amount of tabs possible. Also collapse the closing bracket and the opening bracket of the next entry onto the same line for the axp288, to be consistent with all the other mfd_cell lists. This patch is whitespace change only. No functionality is modified. Signed-off-by: NChen-Yu Tsai <wens@csie.org> Signed-off-by: NOskari Lemmela <oskari@lemmela.net> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Oskari Lemmela 提交于
As axp20x-ac-power-supply now supports AXP813, add a cell for it. Signed-off-by: NOskari Lemmela <oskari@lemmela.net> Reviewed-by: NQuentin Schulz <quentin.schulz@bootlin.com> Reviewed-by: NChen-Yu Tsai <wens@csie.org> Tested-by: NVasily Khoruzhick <anarsoul@gmail.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Charles Keepax 提交于
Signed-off-by: NCharles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Jonathan Marek 提交于
This is required as part of the initialization sequence on certain SoCs. If these registers are not initialized, the hardware can be unresponsive. This fixes the driver on apq8060 (HP TouchPad device). Signed-off-by: NJonathan Marek <jonathan@marek.ca> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Jonathan Hunter 提交于
The tps6586x driver creates an irqchip that is used by its various child devices for managing interrupts. The tps6586x-rtc device is one of its children that uses the tps6586x irqchip. When using the tps6586x-rtc as a wake-up device from suspend, the following is seen: PM: Syncing filesystems ... done. Freezing user space processes ... (elapsed 0.001 seconds) done. OOM killer disabled. Freezing remaining freezable tasks ... (elapsed 0.000 seconds) done. Disabling non-boot CPUs ... Entering suspend state LP1 Enabling non-boot CPUs ... CPU1 is up tps6586x 3-0034: failed to read interrupt status tps6586x 3-0034: failed to read interrupt status The reason why the tps6586x interrupt status cannot be read is because the tps6586x interrupt is not masked during suspend and when the tps6586x-rtc interrupt occurs, to wake-up the device, the interrupt is seen before the i2c controller has been resumed in order to read the tps6586x interrupt status. The tps6586x-rtc driver sets it's interrupt as a wake-up source during suspend, which gets propagated to the parent tps6586x interrupt. However, the tps6586x-rtc driver cannot disable it's interrupt during suspend otherwise we would never be woken up and so the tps6586x must disable it's interrupt instead. Prevent the tps6586x interrupt handler from executing on exiting suspend before the i2c controller has been resumed by disabling the tps6586x interrupt on entering suspend and re-enabling it on resuming from suspend. Cc: stable@vger.kernel.org Signed-off-by: NJon Hunter <jonathanh@nvidia.com> Reviewed-by: NDmitry Osipenko <digetx@gmail.com> Tested-by: NDmitry Osipenko <digetx@gmail.com> Acked-by: NThierry Reding <treding@nvidia.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Richard Fitzgerald 提交于
Add variables to struct madera that will be shared by the extcon and audio codec drivers to synchronize output state during accessory detection. Also add a mutex to protect the DAPM pointer. Signed-off-by: NRichard Fitzgerald <rf@opensource.cirrus.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Jean Delvare 提交于
It doesn't make sense to present option MFD_AT91_USART by default if not building an AT91 kernel, as the drivers which depend on it are not available. Fixes: 7d3aa342 ("mfd: at91-usart: Add MFD driver for USART") Signed-off-by: NJean Delvare <jdelvare@suse.de> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Dien Pham 提交于
Because BD9571MWV_DVFS_MONIVDAC is not defined in the volatile table, the physical register value is not updated by regmap and DVFS doesn't work as expected. Fix it! Fixes: d3ea2127 ("mfd: Add ROHM BD9571MWV-M MFD PMIC driver") Signed-off-by: NDien Pham <dien.pham.ry@renesas.com> [wsa: rebase, add 'Fixes', reword commit message] Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Reviewed-by: NMarek Vasut <marek.vasut@gmail.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Dan Carpenter 提交于
This function is supposed to return zero on success or negative error codes on error. Unfortunately, there is a bug so it sometimes returns non-zero, positive numbers on success. I noticed this bug during review and I can't test it. It does appear that the return is sometimes propogated back to _regmap_read() where all non-zero returns are treated as failure so this may affect run time. Fixes: 47c16975 ("mfd: Align ab8500 with the abx500 interface") Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Reviewed-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Nicolas Boichat 提交于
If the PMIC ID is unknown, the current code would call irq_domain_remove and panic, as pmic->irq_domain is only initialized by mt6397_irq_init. Return immediately with an error, if the chip ID is unsupported. Signed-off-by: NNicolas Boichat <drinkcat@chromium.org> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Nathan Chancellor 提交于
When building the kernel with Clang, the following section mismatch warnings appear: WARNING: vmlinux.o(.text+0x7239cc): Section mismatch in reference from the function db8500_prcmu_probe() to the function .init.text:init_prcm_registers() The function db8500_prcmu_probe() references the function __init init_prcm_registers(). This is often because db8500_prcmu_probe lacks a __init annotation or the annotation of init_prcm_registers is wrong. WARNING: vmlinux.o(.text+0x723e28): Section mismatch in reference from the function db8500_prcmu_probe() to the function .init.text:fw_project_name() The function db8500_prcmu_probe() references the function __init fw_project_name(). This is often because db8500_prcmu_probe lacks a __init annotation or the annotation of fw_project_name is wrong. db8500_prcmu_probe should not be marked as __init so remove the __init annotation from fw_project_name and init_prcm_registers. Signed-off-by: NNathan Chancellor <natechancellor@gmail.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Nathan Chancellor 提交于
When building the kernel with Clang, the following section mismatch warning appears: WARNING: vmlinux.o(.text+0x3d84a3b): Section mismatch in reference from the function twl_probe() to the function .init.text:unprotect_pm_master() The function twl_probe() references the function __init unprotect_pm_master(). This is often because twl_probe lacks a __init annotation or the annotation of unprotect_pm_master is wrong. Remove the __init annotation on the *protect_pm_master functions so there is no more mismatch. Signed-off-by: NNathan Chancellor <natechancellor@gmail.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
- 14 12月, 2018 2 次提交
-
-
由 Olliver Schinagl 提交于
The AXP20X_OFF define is an actual specific bit, define it as such. Signed-off-by: NOlliver Schinagl <oliver@schinagl.nl> Signed-off-by: NPriit Laes <plaes@plaes.org> Acked-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Olliver Schinagl 提交于
Add the bitops.h header as we need it, alphabetize header order. Signed-off-by: NOlliver Schinagl <oliver@schinagl.nl> Signed-off-by: NPriit Laes <plaes@plaes.org> Acked-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 05 12月, 2018 1 次提交
-
-
由 Enric Balletbo i Serra 提交于
This reverts commit 3aa2177e. That commit triggered a new WARN when unloading the module (see at the end of the commit message). When a class_dev is embedded in a structure then that class_dev is the thing that controls the lifetime of that structure, for that reason device managed allocations can't be used here. See Documentation/kobject.txt. Revert the above patch, so the struct is allocated using kzalloc and we have a release function for it that frees the allocated memory, otherwise it is broken. ------------[ cut here ]------------ Device 'cros_ec' does not have a release() function, it is broken and must be fixed. WARNING: CPU: 3 PID: 3675 at drivers/base/core.c:895 device_release+0x80/0x90 Modules linked in: btusb btrtl btintel btbcm bluetooth ... CPU: 3 PID: 3675 Comm: rmmod Not tainted 4.20.0-rc4 #76 Hardware name: Google Kevin (DT) pstate: 40000005 (nZcv daif -PAN -UAO) pc : device_release+0x80/0x90 lr : device_release+0x80/0x90 sp : ffff00000c47bc70 x29: ffff00000c47bc70 x28: ffff8000e86b0d40 x27: 0000000000000000 x26: 0000000000000000 x25: 0000000056000000 x24: 0000000000000015 x23: ffff8000f0bbf860 x22: ffff000000d320a0 x21: ffff8000ee93e100 x20: ffff8000ed931428 x19: ffff8000ed931418 x18: 0000000000000020 x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000400 x14: 0000000000000143 x13: 0000000000000000 x12: 0000000000000400 x11: 0000000000000157 x10: 0000000000000960 x9 : ffff00000c47b9b0 x8 : ffff8000e86b1700 x7 : 0000000000000000 x6 : ffff8000f7d520b8 x5 : ffff8000f7d520b8 x4 : 0000000000000000 x3 : ffff8000f7d58e68 x2 : ffff8000e86b0d40 x1 : 37d859939c964800 x0 : 0000000000000000 Call trace: device_release+0x80/0x90 kobject_put+0x74/0xe8 device_unregister+0x20/0x30 ec_device_remove+0x34/0x48 [cros_ec_dev] platform_drv_remove+0x28/0x48 device_release_driver_internal+0x1a8/0x240 driver_detach+0x40/0x80 bus_remove_driver+0x54/0xa8 driver_unregister+0x2c/0x58 platform_driver_unregister+0x10/0x18 cros_ec_dev_exit+0x1c/0x2d8 [cros_ec_dev] __arm64_sys_delete_module+0x16c/0x1f8 el0_svc_common+0x84/0xd8 el0_svc_handler+0x2c/0x80 el0_svc+0x8/0xc ---[ end trace a57c4625f3c60ae8 ]--- Cc: stable@vger.kernel.org Fixes: 3aa2177e ("mfd: cros_ec: Use devm_kzalloc for private data") Signed-off-by: NEnric Balletbo i Serra <enric.balletbo@collabora.com> Reviewed-by: NGuenter Roeck <groeck@chromium.org> Reviewed-by: NDmitry Torokhov <dtor@chromium.org> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
- 03 12月, 2018 1 次提交
-
-
由 Vignesh R 提交于
Use PLATFORM_DEVID_AUTO to number mfd cells while registering, so that different instances are uniquely identified. This is required in order to support registering of multiple instances of same ti_am335x_tscadc IP. Signed-off-by: NVignesh R <vigneshr@ti.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
- 16 11月, 2018 1 次提交
-
-
由 Linus Walleij 提交于
Instead of passing a global GPIO number for the enable GPIO, pass a descriptor looked up from the device tree node or the board file decriptor table for the regulator. There is a single board file passing the GPIOs for LDO1 and LDO2 through platform data, so augment this to pass descriptors associated with the i2c device as well. The special GPIO enable DT property for the enable GPIO is nonstandard but this was accomodated in commit 6a537d48 "gpio: of: Support regulator nonstandard GPIO properties". Cc: patches@opensource.cirrus.com Acked-by: NCharles Keepax <ckeepax@opensource.cirrus.com> Acked-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 23 10月, 2018 14 次提交
-
-
由 Nathan Chancellor 提交于
Clang warns: drivers/mfd/cros_ec_dev.c:509:40: warning: variable 'cros_ec_id' is not needed and will not be emitted [-Wunneeded-internal-declaration] static const struct platform_device_id cros_ec_id[] = { ^ 1 warning generated. Avoid this warning by adding it to the cros_ec_dev_driver definition under the id_table member like all other platform drivers. Signed-off-by: NNathan Chancellor <natechancellor@gmail.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Pavel Machek 提交于
Replace of_match_device() with of_device_get_match_data(), which slightly decreases lines of code and allows to move the DT table next to the I2C table. Signed-off-by: NSebastian Reichel <sebastian.reichel@collabora.co.uk> Signed-off-by: NPavel Machek <pavel@ucw.cz> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Pavel Machek 提交于
This replaces all remaining unmanaged resources with device managed ones, so that the remove function is no longer needed. This makes the code slightly shorter and fixes two problems: 1. The hardware is disabled after the child devices have been removed. Previously there was a potential race condition. 2. The hardware is disabled when mfd_add_devices fails during probe. Signed-off-by: NSebastian Reichel <sebastian.reichel@collabora.co.uk> Signed-off-by: NPavel Machek <pavel@ucw.cz> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Pavel Machek 提交于
Use new descriptor based API instead of the legacy one. Signed-off-by: NSebastian Reichel <sebastian.reichel@collabora.co.uk> Signed-off-by: NPavel Machek <pavel@ucw.cz> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Sebastian Reichel 提交于
Add const attribute to all mfd_cell structures. Signed-off-by: NSebastian Reichel <sebastian.reichel@collabora.co.uk> Signed-off-by: NPavel Machek <pavel@ucw.cz> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Marek Szyprowski 提交于
Disable IRQs during suspend/resume cycle to ensure handling of wakeup interrupts (i.e. RTC wake alarm) after max8997_resume(). This way it can be properly handled when I2C bus is finally available. This pattern is also used in other MAX PMIC MFD drivers. Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com> Reviewed-by: NKrzysztof Kozlowski <krzk@kernel.org> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Marek Szyprowski 提交于
IRQ wake up support for MAX8997 driver was initially configured by respective property in pdata. However, after the driver conversion to device-tree, setting it was left as 'todo'. Nowadays most of other PMIC MFD drivers initialized from device-tree assume that they can be an irq wakeup source, so enable it also for MAX8997. This fixes support for wakeup from MAX8997 RTC alarm. Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com> Reviewed-by: NKrzysztof Kozlowski <krzk@kernel.org> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Colin Ian King 提交于
Don't populate the array mclk_name on the stack but instead make it static. Makes the object code smaller by 23 bytes: Before: text data bss dec hex filename 38050 11604 64 49718 c236 linux/drivers/mfd/arizona-core.o After: text data bss dec hex filename 38027 11604 64 49695 c21f linux/drivers/mfd/arizona-core.o (gcc version 8.2.0 x86_64) Signed-off-by: NColin Ian King <colin.king@canonical.com> Acked-by: NCharles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Andy Shevchenko 提交于
1;5201;0c Reduce size of duplicated comments by switching to use SPDX identifier. No functional change. Signed-off-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: NMika Westerberg <mika.westerberg@linux.intel.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Andy Shevchenko 提交于
Sort headers alphabetically for better maintenance. No functional change. Signed-off-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: NMika Westerberg <mika.westerberg@linux.intel.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Andy Shevchenko 提交于
Power button IRQ actually has a second level of interrupts to distinguish between UI and POWER buttons. Moreover, current implementation looks awkward in approach to handle second level IRQs by first level related IRQ chip. To address above issues, split power button IRQ to be chained as well. Signed-off-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: NMika Westerberg <mika.westerberg@linux.intel.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Andy Shevchenko 提交于
Instead of open coding each data structure with regmap IRQresources, use dedicated macro. No functional change intended. Signed-off-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: NMika Westerberg <mika.westerberg@linux.intel.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Andy Shevchenko 提交于
Instead of open coding each data structure with IRQ resources, use dedicated macro. No functional change intended. Signed-off-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: NMika Westerberg <mika.westerberg@linux.intel.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Andy Shevchenko 提交于
Instead of open coding each data structure with IRQ resources, use dedicated macro. In one case use DEFINE_RES_IRQ_NAMED() and DEFINE_RES_MEM_NAMED(). No functional change intended. Signed-off-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: NMika Westerberg <mika.westerberg@linux.intel.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-