1. 23 Jul, 2020 1 commit
  2. 22 Jul, 2020 1 commit
    • Linus Walleij's avatar
      Merge tag 'intel-pinctrl-v5.9-1' of... · b8e73b5f
      Linus Walleij authored
      Merge tag 'intel-pinctrl-v5.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pinctrl/intel into devel
      
      intel-pinctrl for v5.9-1
      
      * New driver for Emmitsburg
      * New driver for Tiger Lake-H
      * Part 3 of Cherryview driver clean up
      * Fix a glitch on Baytrail platforms
      
      The following is an automated git shortlog grouped by driver:
      
      ARM/orion/gpio:
       -  Make use of for_each_requested_gpio()
      
      at91:
       -  Make use of for_each_requested_gpio()
      
      baytrail:
       -  Use fallthrough pseudo-keyword
       -  Fix pin being driven low for a while on gpiod_get(..., GPIOD_OUT_HIGH)
       -  Drop no-op ACPI_PTR() call
      
      cherryview:
       -  Re-use data structures from pinctrl-intel.h (part 3)
       -  Convert chv_writel() to use chv_padreg()
       -  Introduce helpers to IO with common registers
       -  Introduce chv_readl() helper
      
      gpio:
       -  xra1403: Make use of for_each_requested_gpio()
       -  mvebu: Make use of for_each_requested_gpio()
      
      gpiolib:
       -  Introduce for_each_requested_gpio_in_range() macro
      
      intel:
       -  Add Intel Emmitsburg pin controller support
       -  Make use of for_each_requested_gpio_in_range()
       -  Protect IO in few call backs by lock
       -  Split intel_config_get() to three functions
       -  Drop the only label in the code for consistency
       -  Get rid of redundant 'else' in intel_config_set_debounce()
       -  Make use of IRQ_RETVAL()
       -  Reduce scope of the lock
       -  Disable input and output buffer when switching to GPIO
       -  Allow drivers to define ACPI address space ID
       -  Allow drivers to define total amount of IRQs per community
      
      lynxpoint:
       -  Drop no-op ACPI_PTR() call
       -  Introduce helpers to enable or disable input
       -  Make use of for_each_requested_gpio()
      
      merrifield:
       -  Add I²S bus 2 pins to groups and functions
       -  Update pin names in accordance with official list
      
      tigerlake:
       -  Add support for Tiger Lake-H
      b8e73b5f
  3. 21 Jul, 2020 2 commits
  4. 20 Jul, 2020 4 commits
  5. 19 Jul, 2020 1 commit
  6. 17 Jul, 2020 3 commits
  7. 16 Jul, 2020 28 commits
    • Lee Jones's avatar
      pinctrl: pinctrl-amd: Do not define 'struct acpi_device_id' when !CONFIG_ACPI · de4334f7
      Lee Jones authored
      Since ACPI_PTR() is used to NULLify the value when !CONFIG_ACPI,
      'struct amd_gpio_acpi_match' becomes defined but unused.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/pinctrl-amd.c:959:36: warning: ‘amd_gpio_acpi_match’ defined but not used [-Wunused-const-variable=]
       959 | static const struct acpi_device_id amd_gpio_acpi_match[] = {
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Cc: Ken Xue <Ken.Xue@amd.com>
      Cc: "Wu, Jeff" <Jeff.Wu@amd.com>
      Cc: Nehal Shah <Nehal-bakulchandra.Shah@amd.com>
      Cc: Sundar S K <Shyam-sundar.S-k@amd.com>
      Link: https://lore.kernel.org/r/20200713144930.1034632-26-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      de4334f7
    • Lee Jones's avatar
      pinctrl: mvebu: pinctrl-armada-37xx: Update documentation block for 'struct armada_37xx_pin_group' · 192b752e
      Lee Jones authored
      Correct misspellings and provide missing entries.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/mvebu/pinctrl-armada-37xx.c:68: warning: Function parameter or member 'start_pin' not described in 'armada_37xx_pin_group'
       drivers/pinctrl/mvebu/pinctrl-armada-37xx.c:68: warning: Function parameter or member 'val' not described in 'armada_37xx_pin_group'
       drivers/pinctrl/mvebu/pinctrl-armada-37xx.c:68: warning: Function parameter or member 'extra_pin' not described in 'armada_37xx_pin_group'
       drivers/pinctrl/mvebu/pinctrl-armada-37xx.c:68: warning: Function parameter or member 'extra_npins' not described in 'armada_37xx_pin_group'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Cc: Jason Cooper <jason@lakedaemon.net>
      Cc: Andrew Lunn <andrew@lunn.ch>
      Cc: Gregory Clement <gregory.clement@bootlin.com>
      Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
      Link: https://lore.kernel.org/r/20200713144930.1034632-25-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      192b752e
    • Lee Jones's avatar
      pinctrl: meson: pinctrl-meson-a1: Remove unused const variable 'i2c_slave_groups' · fb5dd429
      Lee Jones authored
      It has never been used.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/meson/pinctrl-meson-a1.c:749:27: warning: ‘i2c_slave_groups’ defined but not used [-Wunused-const-variable=]
       749 | static const char const i2c_slave_groups[] = {
       | ^~~~~~~~~~~~~~~~
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Cc: Kevin Hilman <khilman@baylibre.com>
      Cc: Qianggui Song <qianggui.song@amlogic.com>
      Cc: linux-amlogic@lists.infradead.org
      Link: https://lore.kernel.org/r/20200713144930.1034632-24-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      fb5dd429
    • Lee Jones's avatar
      pinctrl: tegra: pinctrl-tegra194: Do not initialise field twice · 92cadf68
      Lee Jones authored
      Both PIN_PINGROUP_ENTRY_Y() and DRV_PINGROUP_ENTRY_Y() macros are
      called for each of the 2 pin groups defined here, and both of them
      initialise 'drv_reg', causing the compiler to complain.
      
      Only initialise 'drv_reg' once.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/tegra/pinctrl-tegra194.c:71:14: warning: initialized field overwritten [-Woverride-init]
       71 | .drv_reg = ((r)), | ^
       drivers/pinctrl/tegra/pinctrl-tegra194.c:105:2: note: in expansion of macro ‘DRV_PINGROUP_ENTRY_Y’
       105 | DRV_PINGROUP_ENTRY_Y(0x14004, 12, 5, 20, 5, -1, -1, -1, -1, 0)
       | ^~~~~~~~~~~~~~~~~~~~
       drivers/pinctrl/tegra/pinctrl-tegra194.c:124:3: note: in expansion of macro ‘drive_pex_l5_clkreq_n_pgg0’
       124 | drive_##pg_name, | ^~~~~~
       drivers/pinctrl/tegra/pinctrl-tegra194.c:128:2: note: in expansion of macro ‘PINGROUP’
       128 | PINGROUP(pex_l5_clkreq_n_pgg0, PE5, RSVD1, RSVD2, RSVD3, 0x14000, 0,
       | ^~~~~~~~
       drivers/pinctrl/tegra/pinctrl-tegra194.c:71:14: note: (near initialization for ‘tegra194_groups[0].drv_reg’)
       71 | .drv_reg = ((r)), | ^
       drivers/pinctrl/tegra/pinctrl-tegra194.c:105:2: note: in expansion of macro ‘DRV_PINGROUP_ENTRY_Y’
       105 | DRV_PINGROUP_ENTRY_Y(0x14004, 12, 5, 20, 5, -1, -1, -1, -1, 0)
       | ^~~~~~~~~~~~~~~~~~~~
       drivers/pinctrl/tegra/pinctrl-tegra194.c:124:3: note: in expansion of macro ‘drive_pex_l5_clkreq_n_pgg0’
       124 | drive_##pg_name, | ^~~~~~
       drivers/pinctrl/tegra/pinctrl-tegra194.c:128:2: note: in expansion of macro ‘PINGROUP’
       128 | PINGROUP(pex_l5_clkreq_n_pgg0, PE5, RSVD1, RSVD2, RSVD3, 0x14000, 0,
       | ^~~~~~~~
       drivers/pinctrl/tegra/pinctrl-tegra194.c:71:14: warning: initialized field overwritten [-Woverride-init]
       71 | .drv_reg = ((r)), | ^
       drivers/pinctrl/tegra/pinctrl-tegra194.c:107:2: note: in expansion of macro ‘DRV_PINGROUP_ENTRY_Y’
       107 | DRV_PINGROUP_ENTRY_Y(0x1400c, 12, 5, 20, 5, -1, -1, -1, -1, 0)
       | ^~~~~~~~~~~~~~~~~~~~
       drivers/pinctrl/tegra/pinctrl-tegra194.c:124:3: note: in expansion of macro ‘drive_pex_l5_rst_n_pgg1’
       124 | drive_##pg_name, | ^~~~~~
       drivers/pinctrl/tegra/pinctrl-tegra194.c:130:2: note: in expansion of macro ‘PINGROUP’
       130 | PINGROUP(pex_l5_rst_n_pgg1, PE5, RSVD1, RSVD2, RSVD3, 0x14008, 0,
       | ^~~~~~~~
       drivers/pinctrl/tegra/pinctrl-tegra194.c:71:14: note: (near initialization for ‘tegra194_groups[1].drv_reg’)
       71 | .drv_reg = ((r)), | ^
       drivers/pinctrl/tegra/pinctrl-tegra194.c:107:2: note: in expansion of macro ‘DRV_PINGROUP_ENTRY_Y’
       107 | DRV_PINGROUP_ENTRY_Y(0x1400c, 12, 5, 20, 5, -1, -1, -1, -1, 0)
       | ^~~~~~~~~~~~~~~~~~~~
       drivers/pinctrl/tegra/pinctrl-tegra194.c:124:3: note: in expansion of macro ‘drive_pex_l5_rst_n_pgg1’
       124 | drive_##pg_name, | ^~~~~~
       drivers/pinctrl/tegra/pinctrl-tegra194.c:130:2: note: in expansion of macro ‘PINGROUP’
       130 | PINGROUP(pex_l5_rst_n_pgg1, PE5, RSVD1, RSVD2, RSVD3, 0x14008, 0,
       | ^~~~~~~~
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Acked-by: default avatarThierry Reding <treding@nvidia.com>
      Cc: Thierry Reding <thierry.reding@gmail.com>
      Cc: Jonathan Hunter <jonathanh@nvidia.com>
      Cc: linux-tegra@vger.kernel.org
      Link: https://lore.kernel.org/r/20200713144930.1034632-23-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      92cadf68
    • Lee Jones's avatar
      pinctrl: pinctrl-single: Fix struct/function documentation blocks · 0ba5ab00
      Lee Jones authored
      Add some missing attributes/parameter descriptions, remove other
      superfluous ones, add struct header titles and fix misspellings.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/pinctrl-single.c:50: warning: Function parameter or member 'mask' not described in 'pcs_func_vals'
       drivers/pinctrl/pinctrl-single.c:97: warning: Function parameter or member 'conf' not described in 'pcs_function'
       drivers/pinctrl/pinctrl-single.c:97: warning: Function parameter or member 'nconfs' not described in 'pcs_function'
       drivers/pinctrl/pinctrl-single.c:659: warning: Function parameter or member 'pin_pos' not described in 'pcs_add_pin'
       drivers/pinctrl/pinctrl-single.c:985: warning: Excess function parameter 'pctldev' description in 'pcs_parse_one_pinctrl_entry'
       drivers/pinctrl/pinctrl-single.c:1357: warning: Cannot understand  * @reg:        virtual address of interrupt register
       drivers/pinctrl/pinctrl-single.c:1377: warning: Function parameter or member 'pcs_soc' not described in 'pcs_irq_set'
       drivers/pinctrl/pinctrl-single.c:1377: warning: Function parameter or member 'irq' not described in 'pcs_irq_set'
       drivers/pinctrl/pinctrl-single.c:1377: warning: Function parameter or member 'enable' not described in 'pcs_irq_set'
       drivers/pinctrl/pinctrl-single.c:1458: warning: Function parameter or member 'pcs_soc' not described in 'pcs_irq_handle'
       drivers/pinctrl/pinctrl-single.c:1458: warning: Excess function parameter 'pcs_irq' description in 'pcs_irq_handle'
       drivers/pinctrl/pinctrl-single.c:1506: warning: Excess function parameter 'irq' description in 'pcs_irq_chain_handler'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Acked-by: default avatarTony Lindgren <tony@atomide.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Haojian Zhuang <haojian.zhuang@linaro.org>
      Cc: linux-omap@vger.kernel.org
      Link: https://lore.kernel.org/r/20200713144930.1034632-22-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      0ba5ab00
    • Lee Jones's avatar
      pinctrl: pinctrl-rockchip: Fix a bunch of kerneldoc misdemeanours · e1524ea8
      Lee Jones authored
      Demote headers which are clearly not kerneldoc, provide titles for
      struct definition blocks, fix API slip (bitrot) misspellings and
      provide some missing entries.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/pinctrl-rockchip.c:82: warning: cannot understand function prototype: 'struct rockchip_iomux '
       drivers/pinctrl/pinctrl-rockchip.c:97: warning: Enum value 'DRV_TYPE_IO_DEFAULT' not described in enum 'rockchip_pin_drv_type'
       drivers/pinctrl/pinctrl-rockchip.c:97: warning: Enum value 'DRV_TYPE_IO_1V8_OR_3V0' not described in enum 'rockchip_pin_drv_type'
       drivers/pinctrl/pinctrl-rockchip.c:97: warning: Enum value 'DRV_TYPE_IO_1V8_ONLY' not described in enum 'rockchip_pin_drv_type'
       drivers/pinctrl/pinctrl-rockchip.c:97: warning: Enum value 'DRV_TYPE_IO_1V8_3V0_AUTO' not described in enum 'rockchip_pin_drv_type'
       drivers/pinctrl/pinctrl-rockchip.c:97: warning: Enum value 'DRV_TYPE_IO_3V3_ONLY' not described in enum 'rockchip_pin_drv_type'
       drivers/pinctrl/pinctrl-rockchip.c:97: warning: Enum value 'DRV_TYPE_MAX' not described in enum 'rockchip_pin_drv_type'
       drivers/pinctrl/pinctrl-rockchip.c:106: warning: Enum value 'PULL_TYPE_IO_DEFAULT' not described in enum 'rockchip_pin_pull_type'
       drivers/pinctrl/pinctrl-rockchip.c:106: warning: Enum value 'PULL_TYPE_IO_1V8_ONLY' not described in enum 'rockchip_pin_pull_type'
       drivers/pinctrl/pinctrl-rockchip.c:106: warning: Enum value 'PULL_TYPE_MAX' not described in enum 'rockchip_pin_pull_type'
       drivers/pinctrl/pinctrl-rockchip.c:109: warning: Cannot understand  * @drv_type: drive strength variant using rockchip_perpin_drv_type
       on line 109 - I thought it was a doc line
       drivers/pinctrl/pinctrl-rockchip.c:122: warning: Cannot understand  * @reg_base: register base of the gpio bank
       on line 109 - I thought it was a doc line
       drivers/pinctrl/pinctrl-rockchip.c:325: warning: Function parameter or member 'route_location' not described in 'rockchip_mux_route_data'
       drivers/pinctrl/pinctrl-rockchip.c:328: warning: Cannot understand  */
       on line 109 - I thought it was a doc line
       drivers/pinctrl/pinctrl-rockchip.c:375: warning: Function parameter or member 'data' not described in 'rockchip_pin_group'
       drivers/pinctrl/pinctrl-rockchip.c:387: warning: Function parameter or member 'ngroups' not described in 'rockchip_pmx_func'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Reviewed-by: default avatarHeiko Stuebner <heiko@sntech.de>
      Cc: Heiko Stuebner <heiko@sntech.de>
      Cc: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
      Cc: linux-rockchip@lists.infradead.org
      Link: https://lore.kernel.org/r/20200713144930.1034632-20-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      e1524ea8
    • Lee Jones's avatar
      pinctrl: pinctrl-bm1880: Rename ill documented struct attribute entries · 21f97985
      Lee Jones authored
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/pinctrl-bm1880.c:40: warning: Function parameter or member 'pctrldev' not described in 'bm1880_pinctrl'
       drivers/pinctrl/pinctrl-bm1880.c:40: warning: Function parameter or member 'pinconf' not described in 'bm1880_pinctrl'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Reviewed-by: default avatarManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
      Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
      Link: https://lore.kernel.org/r/20200713144930.1034632-19-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      21f97985
    • Lee Jones's avatar
      pinctrl: pinctrl-at91: Demote non-kerneldoc header and complete another · aa78655d
      Lee Jones authored
      The documentation header for 'struct at91_pinctrl_mux_ops' was missing
      entries for {g,s}et_drivestrength and {g,s}et_slewrate.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/pinctrl-at91.c:77: warning: cannot understand function prototype: 'enum drive_strength_bit '
       drivers/pinctrl/pinctrl-at91.c:187: warning: Function parameter or member 'get_drivestrength' not described in 'at91_pinctrl_mux_ops'
       drivers/pinctrl/pinctrl-at91.c:187: warning: Function parameter or member 'set_drivestrength' not described in 'at91_pinctrl_mux_ops'
       drivers/pinctrl/pinctrl-at91.c:187: warning: Function parameter or member 'get_slewrate' not described in 'at91_pinctrl_mux_ops'
       drivers/pinctrl/pinctrl-at91.c:187: warning: Function parameter or member 'set_slewrate' not described in 'at91_pinctrl_mux_ops'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Cc: Ludovic Desroches <ludovic.desroches@microchip.com>
      Cc: Nicolas Ferre <nicolas.ferre@microchip.com>
      Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
      Cc: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
      Link: https://lore.kernel.org/r/20200713144930.1034632-18-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      aa78655d
    • Lee Jones's avatar
      pinctrl: pinctrl-at91-pio4: PM related attribute descriptions · 898503ee
      Lee Jones authored
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/pinctrl-at91-pio4.c:132: warning: Function parameter or member 'pm_wakeup_sources' not described in 'atmel_pioctrl'
       drivers/pinctrl/pinctrl-at91-pio4.c:132: warning: Function parameter or member 'pm_suspend_backup' not described in 'atmel_pioctrl'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Cc: Ludovic Desroches <ludovic.desroches@microchip.com>
      Cc: Nicolas Ferre <nicolas.ferre@microchip.com>
      Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
      Link: https://lore.kernel.org/r/20200713144930.1034632-16-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      898503ee
    • Lee Jones's avatar
      pinctrl: pinconf-generic: Add function parameter description 'pctldev' · b4dab774
      Lee Jones authored
      Fix a spelling/typo while we're here.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/pinconf-generic.c:242: warning: Function parameter or member 'pctldev' not described in 'pinconf_generic_parse_dt_config'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Link: https://lore.kernel.org/r/20200713144930.1034632-15-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      b4dab774
    • Lee Jones's avatar
      pinctrl: devicetree: Add one new attribute description and rename another two · 0b93a57a
      Lee Jones authored
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/devicetree.c:27: warning: Function parameter or member 'map' not described in 'pinctrl_dt_map'
       drivers/pinctrl/devicetree.c:27: warning: Function parameter or member 'num_maps' not described in 'pinctrl_dt_map'
       drivers/pinctrl/devicetree.c:409: warning: Function parameter or member 'out_args' not described in 'pinctrl_parse_index_with_args'
       drivers/pinctrl/devicetree.c:409: warning: Excess function parameter 'out_arts' description in 'pinctrl_parse_index_with_args'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Link: https://lore.kernel.org/r/20200713144930.1034632-14-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      0b93a57a
    • Lee Jones's avatar
      pinctrl: pinmux: Add some missing parameter descriptions · d340351f
      Lee Jones authored
      And rename another which has probably bitrotted.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/pinmux.c:83: warning: Function parameter or member 'pctldev' not described in 'pinmux_can_be_used_for_gpio'
       drivers/pinctrl/pinmux.c:108: warning: Function parameter or member 'pctldev' not described in 'pin_request'
       drivers/pinctrl/pinmux.c:261: warning: Function parameter or member 'gpio' not described in 'pinmux_request_gpio'
       drivers/pinctrl/pinmux.c:751: warning: Function parameter or member 'selector' not described in 'pinmux_generic_get_function'
       drivers/pinctrl/pinmux.c:751: warning: Excess function parameter 'group_selector' description in 'pinmux_generic_get_function'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Link: https://lore.kernel.org/r/20200713144930.1034632-13-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      d340351f
    • Lee Jones's avatar
      pinctrl: core: Fix a bunch of kerneldoc issues · 9c340bbb
      Lee Jones authored
      Most are likely due to bitrot/API slip.  Some are formatting issues.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/core.c:167: warning: Function parameter or member 'pin' not described in 'pin_get_name'
       drivers/pinctrl/core.c:167: warning: Excess function parameter 'name' description in 'pin_get_name'
       drivers/pinctrl/core.c:584: warning: Function parameter or member 'selector' not described in 'pinctrl_generic_get_group'
       drivers/pinctrl/core.c:584: warning: Excess function parameter 'gselector' description in 'pinctrl_generic_get_group'
       drivers/pinctrl/core.c:1356: error: Cannot parse struct or union!
       drivers/pinctrl/core.c:1458: warning: Function parameter or member 'map' not described in 'pinctrl_unregister_mappings'
       drivers/pinctrl/core.c:1458: warning: Excess function parameter 'maps' description in 'pinctrl_unregister_mappings'
       drivers/pinctrl/core.c:2239: warning: Function parameter or member 'pctldev' not described in 'devm_pinctrl_register_and_init'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Link: https://lore.kernel.org/r/20200713144930.1034632-12-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      9c340bbb
    • Lee Jones's avatar
      pinctrl: mediatek: pinctrl-mtk-common-v2: Mark 'mtk_default_register_base_names' as __maybe_unused · ea0b879b
      Lee Jones authored
      Not all sourcefiles which end up including pinctrl-mtk-common-v2.h make use
      of 'mtk_default_register_base_names' and there is nowhere we can place the
      definition to void the need for __maybe_unused except its own headerfile,
      which seems like overkill.  So instead we tell the compiler that it's okay
      for it to be unused by some of the consumers.
      
      Fixes the following W=1 kernel build warning(s):
      
       In file included from drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.c:19:
       drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h:83:27: warning: ‘mtk_default_register_base_names’ defined but not used [-Wunused-const-variable=]
       83 | static const char const mtk_default_register_base_names[] = {
       | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       In file included from drivers/pinctrl/mediatek/pinctrl-moore.h:25,
       from drivers/pinctrl/mediatek/pinctrl-moore.c:12:
       drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h:83:27: warning: ‘mtk_default_register_base_names’ defined but not used [-Wunused-const-variable=]
       83 | static const char const mtk_default_register_base_names[] = {
       | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       In file included from drivers/pinctrl/mediatek/pinctrl-paris.h:27,
       from drivers/pinctrl/mediatek/pinctrl-paris.c:15:
       drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h:83:27: warning: ‘mtk_default_register_base_names’ defined but not used [-Wunused-const-variable=]
       83 | static const char const mtk_default_register_base_names[] = {
       | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       In file included from drivers/pinctrl/mediatek/pinctrl-paris.h:27,
       from drivers/pinctrl/mediatek/pinctrl-mtk-mt6797.h:15,
       from drivers/pinctrl/mediatek/pinctrl-mt6797.c:13:
       drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h:83:27: warning: ‘mtk_default_register_base_names’ defined but not used [-Wunused-const-variable=]
       83 | static const char const mtk_default_register_base_names[] = {
       | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       In file included from drivers/pinctrl/mediatek/pinctrl-paris.h:27,
       from drivers/pinctrl/mediatek/pinctrl-mtk-mt8183.h:12,
       from drivers/pinctrl/mediatek/pinctrl-mt8183.c:9:
       drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h:83:27: warning: ‘mtk_default_register_base_names’ defined but not used [-Wunused-const-variable=]
       83 | static const char const mtk_default_register_base_names[] = {
       | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       In file included from drivers/pinctrl/mediatek/pinctrl-paris.h:27,
       from drivers/pinctrl/mediatek/pinctrl-mtk-mt6765.h:12,
       from drivers/pinctrl/mediatek/pinctrl-mt6765.c:10:
       drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h:83:27: warning: ‘mtk_default_register_base_names’ defined but not used [-Wunused-const-variable=]
       83 | static const char const mtk_default_register_base_names[] = {
       | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Acked-by: default avatarSean Wang <sean.wang@kernel.org>
      Cc: Sean Wang <sean.wang@kernel.org>
      Cc: Matthias Brugger <matthias.bgg@gmail.com>
      Cc: linux-mediatek@lists.infradead.org
      Link: https://lore.kernel.org/r/20200713144930.1034632-11-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      ea0b879b
    • Lee Jones's avatar
      pinctrl: qcom: pinctrl-msm8976: Remove unused variable 'nav_tsync_groups' · cba053ff
      Lee Jones authored
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/qcom/pinctrl-msm8976.c:802:27: warning: ‘nav_tsync_groups’ defined but not used [-Wunused-const-variable=]
       802 | static const char
       const nav_tsync_groups[] = {
       | ^~~~~~~~~~~~~~~~
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Cc: Andy Gross <agross@kernel.org>
      Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
      Cc: Del Regno <kholk11@gmail.com>
      Cc: linux-arm-msm@vger.kernel.org
      Link: https://lore.kernel.org/r/20200713144930.1034632-10-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      cba053ff
    • Lee Jones's avatar
      pinctrl: samsung: pinctrl-s3c64xx: Fix formatting issues · 0dc0bdf0
      Lee Jones authored
      Kerneldoc struct titles must be followed by whitespace else the
      checker gets confused.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/samsung/pinctrl-s3c64xx.c:212: warning: cannot understand function prototype: 'struct s3c64xx_eint0_domain_data '
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Cc: Tomasz Figa <tomasz.figa@gmail.com>
      Cc: Krzysztof Kozlowski <krzk@kernel.org>
      Cc: Sylwester Nawrocki <s.nawrocki@samsung.com>
      Cc: linux-samsung-soc@vger.kernel.org
      Link: https://lore.kernel.org/r/20200713144930.1034632-9-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      0dc0bdf0
    • Lee Jones's avatar
      pinctrl: samsung: pinctrl-s3c24xx: Fix formatting issues · 26b72162
      Lee Jones authored
      Kerneldoc struct titles must be followed by whitespace.  Also attributes
      need to be in the format '@.*: ' else the checker gets confused.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/samsung/pinctrl-s3c24xx.c:100: warning: cannot understand function prototype: 'struct s3c24xx_eint_domain_data '
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Reviewed-by: default avatarHeiko Stuebner <heiko@sntech.de>
      Cc: Kukjin Kim <kgene@kernel.org>
      Cc: Krzysztof Kozlowski <krzk@kernel.org>
      Cc: Tomasz Figa <tomasz.figa@gmail.com>
      Cc: Sylwester Nawrocki <s.nawrocki@samsung.com>
      Cc: Heiko Stuebner <heiko@sntech.de>
      Cc: linux-samsung-soc@vger.kernel.org
      Link: https://lore.kernel.org/r/20200713144930.1034632-8-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      26b72162
    • Lee Jones's avatar
      pinctrl: samsung: pinctrl-samsung: Demote obvious misuse of kerneldoc to standard comment blocks · 84a3fce5
      Lee Jones authored
      No attempt has been made to document either of the demoted functions here.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/samsung/pinctrl-samsung.c:1149: warning: Function parameter or member 'dev' not described in 'samsung_pinctrl_suspend'
       drivers/pinctrl/samsung/pinctrl-samsung.c:1199: warning: Function parameter or member 'dev' not described in 'samsung_pinctrl_resume'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Cc: Tomasz Figa <tomasz.figa@gmail.com>
      Cc: Krzysztof Kozlowski <krzk@kernel.org>
      Cc: Sylwester Nawrocki <s.nawrocki@samsung.com>
      Cc: Thomas Abraham <thomas.ab@samsung.com>
      Cc: linux-samsung-soc@vger.kernel.org
      Link: https://lore.kernel.org/r/20200713144930.1034632-7-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      84a3fce5
    • Lee Jones's avatar
      pinctrl: qcom: pinctrl-msm: Complete 'struct msm_pinctrl' documentation · 0b33c72a
      Lee Jones authored
      Add missing descriptions for attributes and fix 1 formatting issue.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/qcom/pinctrl-msm.c:75: warning: Function parameter or member 'desc' not described in 'msm_pinctrl'
       drivers/pinctrl/qcom/pinctrl-msm.c:75: warning: Function parameter or member 'irq_chip' not described in 'msm_pinctrl'
       drivers/pinctrl/qcom/pinctrl-msm.c:75: warning: Function parameter or member 'intr_target_use_scm' not described in 'msm_pinctrl'
       drivers/pinctrl/qcom/pinctrl-msm.c:75: warning: Function parameter or member 'soc' not described in 'msm_pinctrl'
       drivers/pinctrl/qcom/pinctrl-msm.c:75: warning: Function parameter or member 'phys_base' not described in 'msm_pinctrl'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
      Cc: Andy Gross <agross@kernel.org>
      Cc: linux-arm-msm@vger.kernel.org
      Link: https://lore.kernel.org/r/20200713144930.1034632-6-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      0b33c72a
    • Lee Jones's avatar
      pinctrl: bcm: pinctrl-iproc-gpio: Rename incorrectly documented function param · 2dd2dbc5
      Lee Jones authored
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/bcm/pinctrl-iproc-gpio.c:141: warning: Function parameter or member 'chip' not described in 'iproc_set_bit'
       drivers/pinctrl/bcm/pinctrl-iproc-gpio.c:141: warning: Excess function parameter 'iproc_gpio' description in 'iproc_set_bit'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Acked-by: default avatarScott Branden <scott.branden@broadcom.com>
      Cc: Ray Jui <rjui@broadcom.com>
      Cc: Scott Branden <sbranden@broadcom.com>
      Cc: bcm-kernel-feedback-list@broadcom.com
      Link: https://lore.kernel.org/r/20200713144930.1034632-5-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      2dd2dbc5
    • Lee Jones's avatar
      pinctrl: bcm: pinctrl-bcm281xx: Demote obvious misuse of kerneldoc to standard comment blocks · 1294754e
      Lee Jones authored
      There has been little to no attempt to document any of the demoted
      structures here.  These are obviously not kerneldoc headers.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/bcm/pinctrl-bcm281xx.c:65: warning: cannot understand function prototype: 'enum bcm281xx_pin_type '
       drivers/pinctrl/bcm/pinctrl-bcm281xx.c:79: warning: cannot understand function prototype: 'struct bcm281xx_pin_function '
       drivers/pinctrl/bcm/pinctrl-bcm281xx.c:89: warning: cannot understand function prototype: 'struct bcm281xx_pinctrl_data '
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Acked-by: default avatarScott Branden <scott.branden@broadcom.com>
      Cc: Florian Fainelli <f.fainelli@gmail.com>
      Cc: Ray Jui <rjui@broadcom.com>
      Cc: Scott Branden <sbranden@broadcom.com>
      Cc: bcm-kernel-feedback-list@broadcom.com
      Cc: YueHaibing <yuehaibing@huawei.com>
      Link: https://lore.kernel.org/r/20200713144930.1034632-4-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      1294754e
    • Lee Jones's avatar
      pinctrl: sirf: pinctrl-atlas7: Fix a bunch of documentation misdemeanours · bef63e66
      Lee Jones authored
      >From ill formatted kerneldoc, to incomplete *and* incorrect struct headers,
      through to formatting issues and missing attribute descriptions.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/sirf/pinctrl-atlas7.c:197: warning: Function parameter or member 'id' not described in 'atlas7_pad_config'
       drivers/pinctrl/sirf/pinctrl-atlas7.c:221: warning: Function parameter or member 'func' not described in 'atlas7_pad_status'
       drivers/pinctrl/sirf/pinctrl-atlas7.c:221: warning: Function parameter or member 'pull' not described in 'atlas7_pad_status'
       drivers/pinctrl/sirf/pinctrl-atlas7.c:221: warning: Function parameter or member 'dstr' not described in 'atlas7_pad_status'
       drivers/pinctrl/sirf/pinctrl-atlas7.c:221: warning: Function parameter or member 'reserved' not described in 'atlas7_pad_status'
       drivers/pinctrl/sirf/pinctrl-atlas7.c:359: warning: Cannot understand  * @dev: a pointer back to containing device
       on line 359 - I thought it was a doc line
       drivers/pinctrl/sirf/pinctrl-atlas7.c:4794: warning: Function parameter or member 'pad_type' not described in 'atlas7_pull_info'
       drivers/pinctrl/sirf/pinctrl-atlas7.c:4917: warning: Function parameter or member 'reserved' not described in 'atlas7_ds_info'
       drivers/pinctrl/sirf/pinctrl-atlas7.c:5617: warning: Function parameter or member 'a7gc' not described in 'atlas7_gpio_to_bank'
       drivers/pinctrl/sirf/pinctrl-atlas7.c:5617: warning: Function parameter or member 'gpio' not described in 'atlas7_gpio_to_bank'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Cc: Barry Song <baohua@kernel.org>
      Link: https://lore.kernel.org/r/20200713144930.1034632-3-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      bef63e66
    • Lee Jones's avatar
      pinctrl: actions: pinctrl-owl: Supply missing 'struct owl_pinctrl' attribute descriptions · 80fa3300
      Lee Jones authored
      Fixes the following W=1 kernel build warning(s):
      
       drivers/pinctrl/actions/pinctrl-owl.c:52: warning: Function parameter or member 'clk' not described in 'owl_pinctrl'
       drivers/pinctrl/actions/pinctrl-owl.c:52: warning: Function parameter or member 'irq_chip' not described in 'owl_pinctrl'
       drivers/pinctrl/actions/pinctrl-owl.c:52: warning: Function parameter or member 'num_irq' not described in 'owl_pinctrl'
       drivers/pinctrl/actions/pinctrl-owl.c:52: warning: Function parameter or member 'irq' not described in 'owl_pinctrl'
      Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
      Reviewed-by: default avatarManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
      Cc: "Andreas Färber" <afaerber@suse.de>
      Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
      Cc: David Liu <liuwei@actions-semi.com>
      Link: https://lore.kernel.org/r/20200713144930.1034632-2-lee.jones@linaro.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      80fa3300
    • Brian Norris's avatar
      99d19f5a
    • Jaiganesh Narayanan's avatar
      pinctrl: qcom: ipq4019: add open drain support · 13355ca3
      Jaiganesh Narayanan authored
      [ Brian: adapted from from the Chromium OS kernel used on IPQ4019-based
        WiFi APs. ]
      Signed-off-by: default avatarJaiganesh Narayanan <njaigane@codeaurora.org>
      Signed-off-by: default avatarBrian Norris <computersforpeace@gmail.com>
      Link: https://lore.kernel.org/r/20200703080646.23233-1-computersforpeace@gmail.comSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      13355ca3
    • Andrew Jeffery's avatar
      pinctrl: aspeed: Describe the heartbeat function on ball Y23 · 13c502c8
      Andrew Jeffery authored
      The default pinmux configuration for Y23 is to route a heartbeat to
      drive a LED. Previous revisions of the AST2600 datasheet did not include
      a description of this function.
      
      Fixes: 2eda1cde ("pinctrl: aspeed: Add AST2600 pinmux support")
      Signed-off-by: default avatarAndrew Jeffery <andrew@aj.id.au>
      Signed-off-by: default avatarJoel Stanley <joel@jms.id.au>
      Link: https://lore.kernel.org/r/20200701030756.2834657-1-joel@jms.id.auSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      13c502c8
    • Andrew Jeffery's avatar
      pinctrl: aspeed: Improve debug output · aa639e44
      Andrew Jeffery authored
      We need to iterate over each pin in a group for a function and
      disable higher priority mux configurations on the pin before finally
      muxing the relevant function's signal. With the current debug output it
      is hard to track what register output is relevant to which operation, so
      break up the actions in the debug output by providing some more context.
      
      Before:
      
          [    5.446656] aspeed-g6-pinctrl 1e6e2000.syscon:pinctrl: request pin 37 (B26) for 1e780000.gpio:341
          [    5.447377] Want SCU414[0x00000020]=0x1, got 0x0 from 0x00000000
          [    5.447854] Want SCU4B4[0x00000020]=0x1, got 0x0 from 0x00000000
          [    5.448340] Want SCU4B4[0x00000020]=0x1, got 0x0 from 0x00000000
      
      After:
      
          [    5.298053] Muxing pin 37 for GPIO
          [    5.298294] Disabling signal NRI4 for NRI4
          [    5.298593] Want SCU414[0x00000020]=0x1, got 0x0 from 0x00000000
          [    5.298983] Disabling signal RGMII4RXD1 for RGMII4
          [    5.299309] Want SCU4B4[0x00000020]=0x1, got 0x0 from 0x00000000
          [    5.299694] Disabling signal RMII4RXD1 for RMII4
          [    5.300014] Want SCU4B4[0x00000020]=0x1, got 0x0 from 0x00000000
          [    5.300396] Enabling signal GPIOE5 for GPIOE5
          [    5.300687] Muxed pin 37 as GPIOE5
      Signed-off-by: default avatarAndrew Jeffery <andrew@aj.id.au>
      Signed-off-by: default avatarJoel Stanley <joel@jms.id.au>
      Link: https://lore.kernel.org/r/20200701030039.2834418-1-joel@jms.id.auSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      aa639e44
    • Drew Fustini's avatar
      gpio: omap: handle pin config bias flags · 40e30d26
      Drew Fustini authored
      Modify omap_gpio_set_config() to handle pin config bias flags by calling
      gpiochip_generic_config().
      
      The pin group for the gpio line must have the corresponding pinconf
      properties:
      
      PIN_CONFIG_BIAS_PULL_UP requires "pinctrl-single,bias-pullup"
      PIN_CONFIG_BIAS_PULL_DOWN requires "pinctrl-single,bias-pulldown"
      
      This is necessary for pcs_pinconf_set() to find the requested bias
      parameter in the PIN_MAP_TYPE_CONFIGS_GROUP pinctrl map.
      Signed-off-by: default avatarDrew Fustini <drew@beagleboard.org>
      Acked-by: default avatarGrygorii Strashko <grygorii.strashko@ti.com>
      Acked-by: default avatarTony Lindgren <tony@atomide.com>
      Link: https://lore.kernel.org/r/20200715213738.1640030-1-drew@beagleboard.orgSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      40e30d26