summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2022-01-03staging: r8188eu: turbo scan is always off for r8188euMartin Kaiser
Turbo scan is always disabled. Remove the TurboScanOff variable and related checks. Acked-by: Michael Straube <straube.linux@gmail.com> Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20220102175932.89127-6-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: cmd_issued_cnt is set but not usedMartin Kaiser
cmd_issued_cnt in struct cmd_priv is set but not used. It can be removed. Acked-by: Michael Straube <straube.linux@gmail.com> Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20220102175932.89127-5-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: fix_rate is set but not used.Martin Kaiser
fix_rate in struct adapter is set but not used. Remove the variable and the private ioctl code to set it. Acked-by: Michael Straube <straube.linux@gmail.com> Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20220102175932.89127-4-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: internal autosuspend is always falseMartin Kaiser
bInternalAutoSuspend is always false. Remove the variable and related checks. Acked-by: Michael Straube <straube.linux@gmail.com> Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20220102175932.89127-3-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: remove unused power management definesMartin Kaiser
Remove unused defines from enum power_mgnt. Acked-by: Michael Straube <straube.linux@gmail.com> Signed-off-by: Martin Kaiser <martin@kaiser.cx> Link: https://lore.kernel.org/r/20220102175932.89127-2-martin@kaiser.cx Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: remove unused defines from rtw_eeprom.hMichael Straube
Remove unused defines from rtw_eeprom.h. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220102131141.12310-12-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: remove unused defines from Hal8188EPhyCfg.hMichael Straube
Remove unused defines from Hal8188EPhyCfg.h. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220102131141.12310-11-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: remove unneeded comments from Hal8188EPhyCfg.hMichael Straube
Remove unneeded comments from Hal8188EPhyCfg.h. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220102131141.12310-10-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: enum hw90_block is not usedMichael Straube
The enumeration hw90_block is not used. Remove it. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220102131141.12310-9-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: struct odm_sta_info is not usedMichael Straube
The structure odm_sta_info is not used. Remove it. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220102131141.12310-8-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: clean up struct sw_ant_switchMichael Straube
Remove unused fields from struct sw_ant_switch. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220102131141.12310-7-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: clean up struct rtw_digMichael Straube
Remove unused and set but never used fields from struct rtw_dig. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220102131141.12310-6-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: struct rx_hpc is not usedMichael Straube
The structure rx_hpc is not used. Remove it. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220102131141.12310-5-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: remove unused enum and definesMichael Straube
Remove the unused enum rf90_radio_path and some unused defines. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220102131141.12310-4-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: remove struct rt_channel_plan_2gMichael Straube
The structures rt_channel_plan and rt_channel_plan_2g are identical. Keep rt_channel_plan and remove rt_channel_plan_2g. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220102131141.12310-3-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: remove MAX_CHANNEL_NUM_2GMichael Straube
The constants MAX_CHANNEL_NUM_2G and MAX_CHANNEL_NUM have the same value. Remove MAX_CHANNEL_NUM_2G and fix the place where it is used. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220102131141.12310-2-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: FwRsvdPageStartOffset is set but never usedMichael Straube
The field FwRsvdPageStartOffset of struct hal_data_8188e is set but never used. Remove it. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220101084937.3411-8-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: IntArray and C2hArray are set but never usedMichael Straube
The fields IntArray and C2hArray of struct hal_data_8188e are set but never used. Remove them and remove interrupt_handler_8188eu() since it does nothing now. While at it, remove the unsed defines USB_INTR_CONTENT_CPWM1_OFFSET and USB_INTR_CONTENT_CPWM2_OFFSET as well. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220101084937.3411-7-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: remove unused fields from struct hal_data_8188eMichael Straube
Remove unused fields from struct hal_data_8188e. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220101084937.3411-6-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: bAPKThermalMeterIgnore is set but never usedMichael Straube
The field bAPKThermalMeterIgnore of struct hal_data_8188e is set but never used. Remove it. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220101084937.3411-5-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: bTXPowerDataReadFromEEPORM is set but never usedMichael Straube
The field bTXPowerDataReadFromEEPORM of struct hal_data_8188e is set but never used. Remove it. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220101084937.3411-4-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: UsbRxHighSpeedMode is set but never usedMichael Straube
The field UsbRxHighSpeedMode of struct hal_data_8188e is set but never used. Remove it. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220101084937.3411-3-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: r8188eu: bRDGEnable is always falseMichael Straube
The field bRDGEnable in struct hal_data_8188e is never set. It stays at its default value 0. Remove bRDGEnable and related dead code. Acked-by: Martin Kaiser <martin@kaiser.cx> Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20220101084937.3411-2-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03staging: pi433: add docs to packet_format and tx_start_condition enumPaulo Miguel Almeida
While pi433 driver deals with the nuances of the different possible config combinations, it's hard (at first) to understand the rationale for some of the tx/rx-related source code unless you're fairly familiar with the rf69's inner workings. This patch documents the expected behaviour and limits of both packet_format and tx_start_condition enum fields. Signed-off-by: Paulo Miguel Almeida <paulo.miguel.almeida.rodenas@gmail.com> Link: https://lore.kernel.org/r/20211231001933.GA6779@mail.google.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03Merge tag 'thunderbolt-for-v5.17-rc1' of ↵Greg Kroah-Hartman
git://git.kernel.org/pub/scm/linux/kernel/git/westeri/thunderbolt into usb-next Mika writes: thunderbolt: Changes for v5.17 merge window This includes following Thunderbolt/USB4 changes for the v5.17 merge window: * Enable low-power link state (CL0s) for USB4 and Intel Titan Ridge devices * Add support for TMU (Time Management Unit) uni-directional mode * Power management improvements (suspend-to-disk, runtime PM) * USB4 compatibility fixes * Minor fixes and cleanups. All these have been in linux-next with no reported issues. * tag 'thunderbolt-for-v5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/westeri/thunderbolt: thunderbolt: Add module parameter for CLx disabling thunderbolt: Enable CL0s for Intel Titan Ridge thunderbolt: Rename Intel TB_VSE_CAP_IECS capability thunderbolt: Implement TMU time disruption for Intel Titan Ridge thunderbolt: Move usb4_switch_wait_for_bit() to switch.c thunderbolt: Add CL0s support for USB4 routers thunderbolt: Add TMU uni-directional mode thunderbolt: Check return value of kmemdup() in icm_handle_event() thunderbolt: Do not dereference fwnode in struct device thunderbolt: Add debug logging of DisplayPort resource allocation thunderbolt: Do not program path HopIDs for USB4 routers thunderbolt: Do not allow subtracting more NFC credits than configured thunderbolt: Runtime resume USB4 port when retimers are scanned thunderbolt: Tear down existing tunnels when resuming from hibernate thunderbolt: Runtime PM activate both ends of the device link thunderbolt: xdomain: Avoid potential stack OOB read
2022-01-03Merge 5.16-rc8 into usb-nextGreg Kroah-Hartman
We need the USB fixes in here as well. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-01-03net: vxge: Use dma_set_mask_and_coherent() and simplify codeChristophe JAILLET
Use dma_set_mask_and_coherent() instead of unrolling it with some dma_set_mask()+dma_set_coherent_mask(). Moreover, as stated in [1], dma_set_mask() with a 64-bit mask will never fail if dev->dma_mask is non-NULL. So, if it fails, the 32 bits case will also fail for the same reason. That said, 'high_dma' can only be 1 after a successful dma_set_mask_and_coherent(). Simplify code and remove some dead code accordingly, including a now useless parameter to vxge_device_register(). [1]: https://lkml.org/lkml/2021/6/7/398 Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-01-03ethernet: s2io: Use dma_set_mask_and_coherent() and simplify codeChristophe JAILLET
Use dma_set_mask_and_coherent() instead of unrolling it with some dma_set_mask()+dma_set_coherent_mask(). Moreover, as stated in [1], dma_set_mask() with a 64-bit mask will never fail if dev->dma_mask is non-NULL. So, if it fails, the 32 bits case will also fail for the same reason. That said, 'dma_flag' can only be 'true' after a successful dma_set_mask_and_coherent(). Simplify code and remove some dead code accordingly, including the now useless 'high_dma_flag' field in 'struct s2io_nic'. [1]: https://lkml.org/lkml/2021/6/7/398 Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-01-03net: vertexcom: default to disabled on kbuildSaeed Mahameed
Sorry for being rude but new vendors/drivers are supposed to be disabled by default, otherwise we will have to manually keep track of all vendors we are not interested in building. Fixes: 2f207cbf0dd4 ("net: vertexcom: Add MSE102x SPI support") CC: Stefan Wahren <stefan.wahren@i2se.com> Signed-off-by: Saeed Mahameed <saeedm@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-01-03gpio: dwapb: Switch to use fwnode instead of of_nodeAndy Shevchenko
GPIO library now accepts fwnode as a firmware node, so switch the driver to use it and hence rectify the ACPI case which uses software nodes. Note, in this case it's rather logical fix that doesn't affect functionality, thus no backporting required. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Serge Semin <fancer.lancer@gmail.com> Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
2022-01-03gpiolib: acpi: make fwnode take precedence in struct gpio_chipAndy Shevchenko
If the driver sets the fwnode in struct gpio_chip, let it take precedence over the parent's fwnode. This is a follow up to the commit 9126a738edc1 ("gpiolib: of: make fwnode take precedence in struct gpio_chip"). Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com> Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
2022-01-03gpio: gpio-aspeed-sgpio: Fix wrong hwirq base in irq handlerSteven Lee
Each aspeed sgpio bank has 64 gpio pins(32 input pins and 32 output pins). The hwirq base for each sgpio bank should be multiples of 64 rather than multiples of 32. Signed-off-by: Steven Lee <steven_lee@aspeedtech.com> Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
2022-01-03gpio: max3191x: Use bitmap_free() to free bitmapChristophe JAILLET
kfree() and bitmap_free() are the same. But using the later is more consistent when freeing memory allocated with bitmap_alloc(). Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
2022-01-02net: pcs: lynx: use a common naming scheme for all lynx_pcs variablesColin Foster
pcs-lynx.c used lynx_pcs and lynx as a variable name within the same file. This standardizes all internal variables to just "lynx" Signed-off-by: Colin Foster <colin.foster@in-advantage.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-01-02net: ethernet: enetc: name change for clarity from pcs to mdio_deviceColin Foster
A simple variable update from "pcs" to "mdio_device" for the mdio device will make things a little cleaner. Signed-off-by: Colin Foster <colin.foster@in-advantage.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-01-02net: dsa: seville: name change for clarity from pcs to mdio_deviceColin Foster
A simple variable update from "pcs" to "mdio_device" for the mdio device will make things a little cleaner. Signed-off-by: Colin Foster <colin.foster@in-advantage.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-01-02net: dsa: felix: name change for clarity from pcs to mdio_deviceColin Foster
Simple rename of a variable to make things more logical. Signed-off-by: Colin Foster <colin.foster@in-advantage.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-01-02net: phy: lynx: refactor Lynx PCS module to use generic phylink_pcsColin Foster
Remove references to lynx_pcs structures so drivers like the Felix DSA can reference alternate PCS drivers. Signed-off-by: Colin Foster <colin.foster@in-advantage.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-01-02net/fsl: Remove leftover definition in xgmac_mdioMarkus Koch
commit 26eee0210ad7 ("net/fsl: fix a bug in xgmac_mdio") fixed a bug in the QorIQ mdio driver but left the (now unused) incorrect bit definition for MDIO_DATA_BSY in the code. This commit removes it. Signed-off-by: Markus Koch <markus@notsyncing.net> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-01-02Merge branch 'i2c/for-current' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux Pull i2c fixes from Wolfram Sang: "Better input validation for compat ioctls and a documentation bugfix for 5.16" * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: Docs: Fixes link to I2C specification i2c: validate user data in compat ioctl
2022-01-02pcmcia: make pcmcia_release_io() void, as no-one is interested in return valueDominik Brodowski
As the only user of pcmcia_release_io() is not interested in its return value, and we cannot do anything on failure, convert the function to return void. Reported-by: Jason Wang <wangborong@cdjrlc.com> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2022-01-02pcmcia: rsrc_nonstatic: Fix a NULL pointer dereference in ↵Zhou Qingyang
nonstatic_find_mem_region() In nonstatic_find_mem_region(), pcmcia_make_resource() is assigned to res and used in pci_bus_alloc_resource(). There a dereference of res in pci_bus_alloc_resource(), which could lead to a NULL pointer dereference on failure of pcmcia_make_resource(). Fix this bug by adding a check of res. This bug was found by a static analyzer. The analysis employs differential checking to identify inconsistent security operations (e.g., checks or kfrees) between two code paths and confirms that the inconsistent operations are not recovered in the current function or the callers, so they constitute bugs. Note that, as a bug found by static analysis, it can be a false positive or hard to trigger. Multiple researchers have cross-reviewed the bug. Builds with CONFIG_PCCARD_NONSTATIC=y show no new warnings, and our static analyzer no longer warns about this code. Fixes: 49b1153adfe1 ("pcmcia: move all pcmcia_resource_ops providers into one module") Signed-off-by: Zhou Qingyang <zhou1615@umn.edu> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2022-01-02pcmcia: rsrc_nonstatic: Fix a NULL pointer dereference in ↵Zhou Qingyang
__nonstatic_find_io_region() In __nonstatic_find_io_region(), pcmcia_make_resource() is assigned to res and used in pci_bus_alloc_resource(). There is a dereference of res in pci_bus_alloc_resource(), which could lead to a NULL pointer dereference on failure of pcmcia_make_resource(). Fix this bug by adding a check of res. This bug was found by a static analyzer. The analysis employs differential checking to identify inconsistent security operations (e.g., checks or kfrees) between two code paths and confirms that the inconsistent operations are not recovered in the current function or the callers, so they constitute bugs. Note that, as a bug found by static analysis, it can be a false positive or hard to trigger. Multiple researchers have cross-reviewed the bug. Builds with CONFIG_PCCARD_NONSTATIC=y show no new warnings, and our static analyzer no longer warns about this code. Fixes: 49b1153adfe1 ("pcmcia: move all pcmcia_resource_ops providers into one module") Signed-off-by: Zhou Qingyang <zhou1615@umn.edu> [linux@dominikbrodowski.net: Fix typo in commit message] Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2022-01-02pcmcia: comment out unused exca_readw() functionDominik Brodowski
The exca_readw() function is currently unused; therefore, comment it out. Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2022-01-02pcmcia: Make use of the helper macro SET_NOIRQ_SYSTEM_SLEEP_PM_OPS()Cai Huoqing
Use the helper macro SET_NOIRQ_SYSTEM_SLEEP_PM_OPS() instead of the verbose operators ".suspend_noirq /.resume_noirq/.freeze_noirq/ .thaw_noirq/.poweroff_noirq/.restore_noirq", because the SET_NOIRQ_SYSTEM_SLEEP_PM_OPS() is a nice helper macro that could be brought in to make code a little clearer, a little more concise. Signed-off-by: Cai Huoqing <caihuoqing@baidu.com> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2022-01-02pcmcia: clean up dead drivers for CompuLab CM-X255/CM-X270 boardsLukas Bulwahn
Commit 9d3239147d6d ("ARM: pxa: remove Compulab pxa2xx boards") removes the config MACH_ARMCORE in ./arch/arm/mach-pxa/Kconfig. Hence, ./scripts/checkkconfigsymbols.py warns on non-existing configs: MACH_ARMCORE Referencing files: drivers/pcmcia/Kconfig, drivers/pcmcia/Makefile Clean up the dead remains of pcmcia drivers for Compulab pxa2xx boards. Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
2022-01-02enic: Remove usage of the deprecated "pci-dma-compat.h" APIChristophe JAILLET
In [1], Christoph Hellwig has proposed to remove the wrappers in include/linux/pci-dma-compat.h. Some reasons why this API should be removed have been given by Julia Lawall in [2]. A coccinelle script has been used to perform the needed transformation Only relevant parts are given below. @@ expression e1, e2; @@ - pci_dma_mapping_error(e1, e2) + dma_mapping_error(&e1->dev, e2) [1]: https://lore.kernel.org/kernel-janitors/20200421081257.GA131897@infradead.org/ [2]: https://lore.kernel.org/kernel-janitors/alpine.DEB.2.22.394.2007120902170.2424@hadrien/ Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-01-02qed: Use dma_set_mask_and_coherent() and simplify codeChristophe JAILLET
Use dma_set_mask_and_coherent() instead of unrolling it with some dma_set_mask()+dma_set_coherent_mask(). Moreover, as stated in [1], dma_set_mask() with a 64-bit mask will never fail if dev->dma_mask is non-NULL. So, if it fails, the 32 bits case will also fail for the same reason. Simplify code and remove some dead code accordingly. Now that qed_set_coherency_mask() is mostly a single call to dma_set_mask_and_coherent(), fold it in its only caller. [1]: https://lkml.org/lkml/2021/6/7/398 Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-01-02chelsio: cxgb: Use dma_set_mask_and_coherent() and simplify codeChristophe JAILLET
Use dma_set_mask_and_coherent() instead of unrolling it with some dma_set_mask()+dma_set_coherent_mask(). Moreover, as stated in [1], dma_set_mask() with a 64-bit mask will never fail if dev->dma_mask is non-NULL. So, if it fails, the 32 bits case will also fail for the same reason. That said, 'pci_using_dac' can only be 1 after a successful dma_set_mask_and_coherent(). Simplify code and remove some dead code accordingly. [1]: https://lkml.org/lkml/2021/6/7/398 Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-01-02sun/cassini: Use dma_set_mask_and_coherent() and simplify codeChristophe JAILLET
Use dma_set_mask_and_coherent() instead of unrolling it with some dma_set_mask()+dma_set_coherent_mask(). Moreover, as stated in [1], dma_set_mask() with a 64-bit mask will never fail if dev->dma_mask is non-NULL. So, if it fails, the 32 bits case will also fail for the same reason. That said, 'pci_using_dac' can only be 1 after a successful dma_set_mask_and_coherent(). Simplify code and remove some dead code accordingly. [1]: https://lkml.org/lkml/2021/6/7/398 Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Signed-off-by: David S. Miller <davem@davemloft.net>