Re: [PATCH 1/4] gpio: Assign gpio_irq_chip::parents to non-stack pointer

From: kbuild test robot
Date: Tue Oct 09 2018 - 00:57:06 EST


Hi Stephen,

I love your patch! Perhaps something to improve:

[auto build test WARNING on gpio/for-next]
[also build test WARNING on v4.19-rc7 next-20181008]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url: https://github.com/0day-ci/linux/commits/Stephen-Boyd/gpio-chip-cascade-fixes/20181009-041639
base: https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git for-next
reproduce: make htmldocs

All warnings (new ones prefixed by >>):

include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/cfg80211.h:4869: warning: Excess function parameter 'ptr' description in 'reg_query_regdb_wmm'
include/net/mac80211.h:2328: warning: Function parameter or member 'radiotap_timestamp.units_pos' not described in 'ieee80211_hw'
include/net/mac80211.h:2328: warning: Function parameter or member 'radiotap_timestamp.accuracy' not described in 'ieee80211_hw'
include/net/mac80211.h:977: warning: Function parameter or member 'control.rates' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'control.rts_cts_rate_idx' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'control.use_rts' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'control.use_cts_prot' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'control.short_preamble' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'control.skip_table' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'control.jiffies' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'control.vif' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'control.hw_key' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'control.flags' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'control.enqueue_time' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'ack' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'ack.cookie' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'status.rates' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'status.ack_signal' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'status.ampdu_ack_len' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'status.ampdu_len' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'status.antenna' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'status.tx_time' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'status.is_valid_ack_signal' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'status.status_driver_data' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'driver_rates' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'pad' not described in 'ieee80211_tx_info'
include/net/mac80211.h:977: warning: Function parameter or member 'rate_driver_data' not described in 'ieee80211_tx_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'rx_stats_avg' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'rx_stats_avg.signal' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'rx_stats_avg.chain_signal' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.filtered' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.retry_failed' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.retry_count' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.lost_packets' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.last_tdls_pkt_time' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.msdu_retries' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.msdu_failed' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.last_ack' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.last_ack_signal' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.ack_signal_filled' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'status_stats.avg_ack_signal' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'tx_stats.packets' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'tx_stats.bytes' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'tx_stats.last_rate' not described in 'sta_info'
net/mac80211/sta_info.h:588: warning: Function parameter or member 'tx_stats.msdu' not described in 'sta_info'
include/linux/dma-buf.h:304: warning: Function parameter or member 'cb_excl.cb' not described in 'dma_buf'
include/linux/dma-buf.h:304: warning: Function parameter or member 'cb_excl.poll' not described in 'dma_buf'
include/linux/dma-buf.h:304: warning: Function parameter or member 'cb_excl.active' not described in 'dma_buf'
include/linux/dma-buf.h:304: warning: Function parameter or member 'cb_shared.cb' not described in 'dma_buf'
include/linux/dma-buf.h:304: warning: Function parameter or member 'cb_shared.poll' not described in 'dma_buf'
include/linux/dma-buf.h:304: warning: Function parameter or member 'cb_shared.active' not described in 'dma_buf'
include/linux/dma-fence-array.h:54: warning: Function parameter or member 'work' not described in 'dma_fence_array'
include/linux/gpio/driver.h:105: warning: Incorrect use of kernel-doc format: Documentation Makefile include scripts source private: For use by gpiochip_set_cascaded_irqchip()
>> include/linux/gpio/driver.h:167: warning: Function parameter or member 'parent_irq' not described in 'gpio_irq_chip'
Error: Cannot open file drivers/gpio/devres.c
Error: Cannot open file drivers/gpio/devres.c
WARNING: kernel-doc 'scripts/kernel-doc -rst -enable-lineno -export drivers/gpio/devres.c' failed with return code 2
include/linux/iio/hw-consumer.h:1: warning: no structured comments found
include/linux/input/sparse-keymap.h:46: warning: Function parameter or member 'sw' not described in 'key_entry'
drivers/pci/pci.c:218: warning: Excess function parameter 'p' description in 'pci_dev_str_match_path'
include/linux/regulator/driver.h:227: warning: Function parameter or member 'resume' not described in 'regulator_ops'
drivers/regulator/core.c:4479: warning: Excess function parameter 'state' description in 'regulator_suspend'
arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.esw0' not described in 'irb'
arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.esw1' not described in 'irb'
arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.esw2' not described in 'irb'
arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.esw3' not described in 'irb'
arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.eadm' not described in 'irb'
drivers/slimbus/stream.c:1: warning: no structured comments found
drivers/target/target_core_device.c:1: warning: no structured comments found
drivers/usb/typec/bus.c:1: warning: no structured comments found
drivers/usb/typec/class.c:1: warning: no structured comments found
include/linux/w1.h:281: warning: Function parameter or member 'of_match_table' not described in 'w1_family'
fs/direct-io.c:257: warning: Excess function parameter 'offset' description in 'dio_complete'
fs/file_table.c:1: warning: no structured comments found
fs/libfs.c:477: warning: Excess function parameter 'available' description in 'simple_write_end'
fs/posix_acl.c:646: warning: Function parameter or member 'inode' not described in 'posix_acl_update_mode'
fs/posix_acl.c:646: warning: Function parameter or member 'mode_p' not described in 'posix_acl_update_mode'
fs/posix_acl.c:646: warning: Function parameter or member 'acl' not described in 'posix_acl_update_mode'
drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:183: warning: Function parameter or member 'blockable' not described in 'amdgpu_mn_read_lock'
drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:254: warning: Function parameter or member 'blockable' not described in 'amdgpu_mn_invalidate_range_start_gfx'
drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c:302: warning: Function parameter or member 'blockable' not described in 'amdgpu_mn_invalidate_range_start_hsa'
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:3011: warning: Excess function parameter 'dev' description in 'amdgpu_vm_get_task_info'
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:3012: warning: Function parameter or member 'adev' not described in 'amdgpu_vm_get_task_info'
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:3012: warning: Excess function parameter 'dev' description in 'amdgpu_vm_get_task_info'
include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_pin' not described in 'drm_driver'
include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_unpin' not described in 'drm_driver'
include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_res_obj' not described in 'drm_driver'
include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_get_sg_table' not described in 'drm_driver'
include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_import_sg_table' not described in 'drm_driver'
include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_vmap' not described in 'drm_driver'
include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_vunmap' not described in 'drm_driver'
include/drm/drm_drv.h:610: warning: Function parameter or member 'gem_prime_mmap' not described in 'drm_driver'
include/drm/drm_panel.h:98: warning: Function parameter or member 'link' not described in 'drm_panel'
drivers/gpu/drm/i915/i915_vma.h:49: warning: cannot understand function prototype: 'struct i915_vma '
drivers/gpu/drm/i915/i915_vma.h:1: warning: no structured comments found
drivers/gpu/drm/i915/intel_guc_fwif.h:553: warning: cannot understand function prototype: 'struct guc_log_buffer_state '
drivers/gpu/drm/i915/i915_trace.h:1: warning: no structured comments found
include/linux/skbuff.h:860: warning: Function parameter or member 'dev_scratch' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'list' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'ip_defrag_offset' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'skb_mstamp' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member '__cloned_offset' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'head_frag' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member '__pkt_type_offset' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'encapsulation' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'encap_hdr_csum' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'csum_valid' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'csum_complete_sw' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'csum_level' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'inner_protocol_type' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'remcsum_offload' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'offload_fwd_mark' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'offload_mr_fwd_mark' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'sender_cpu' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'reserved_tailroom' not described in 'sk_buff'
include/linux/skbuff.h:860: warning: Function parameter or member 'inner_ipproto' not described in 'sk_buff'
include/net/sock.h:238: warning: Function parameter or member 'skc_addrpair' not described in 'sock_common'
include/net/sock.h:238: warning: Function parameter or member 'skc_portpair' not described in 'sock_common'
include/net/sock.h:238: warning: Function parameter or member 'skc_ipv6only' not described in 'sock_common'
include/net/sock.h:238: warning: Function parameter or member 'skc_net_refcnt' not described in 'sock_common'
include/net/sock.h:238: warning: Function parameter or member 'skc_v6_daddr' not described in 'sock_common'
include/net/sock.h:238: warning: Function parameter or member 'skc_v6_rcv_saddr' not described in 'sock_common'
include/net/sock.h:238: warning: Function parameter or member 'skc_cookie' not described in 'sock_common'
include/net/sock.h:238: warning: Function parameter or member 'skc_listener' not described in 'sock_common'
include/net/sock.h:238: warning: Function parameter or member 'skc_tw_dr' not described in 'sock_common'
include/net/sock.h:238: warning: Function parameter or member 'skc_rcv_wnd' not described in 'sock_common'
include/net/sock.h:238: warning: Function parameter or member 'skc_tw_rcv_nxt' not described in 'sock_common'
include/net/sock.h:509: warning: Function parameter or member 'sk_backlog.rmem_alloc' not described in 'sock'
include/net/sock.h:509: warning: Function parameter or member 'sk_backlog.len' not described in 'sock'
include/net/sock.h:509: warning: Function parameter or member 'sk_backlog.head' not described in 'sock'
include/net/sock.h:509: warning: Function parameter or member 'sk_backlog.tail' not described in 'sock'
include/net/sock.h:509: warning: Function parameter or member 'sk_wq_raw' not described in 'sock'
include/net/sock.h:509: warning: Function parameter or member 'tcp_rtx_queue' not described in 'sock'
include/net/sock.h:509: warning: Function parameter or member 'sk_route_forced_caps' not described in 'sock'
include/net/sock.h:509: warning: Function parameter or member 'sk_txtime_report_errors' not described in 'sock'
include/net/sock.h:509: warning: Function parameter or member 'sk_validate_xmit_skb' not described in 'sock'
include/linux/netdevice.h:2018: warning: Function parameter or member 'adj_list.upper' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'adj_list.lower' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'gso_partial_features' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'switchdev_ops' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'l3mdev_ops' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'xfrmdev_ops' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'tlsdev_ops' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'name_assign_type' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'ieee802154_ptr' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'mpls_ptr' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'xdp_prog' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'gro_flush_timeout' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'nf_hooks_ingress' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member '____cacheline_aligned_in_smp' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'qdisc_hash' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'xps_cpus_map' not described in 'net_device'
include/linux/netdevice.h:2018: warning: Function parameter or member 'xps_rxqs_map' not described in 'net_device'
include/linux/phylink.h:56: warning: Function parameter or member '__ETHTOOL_DECLARE_LINK_MODE_MASK(advertising' not described in 'phylink_link_state'

vim +167 include/linux/gpio/driver.h

bb1e88cc Alexandre Courbot 2014-02-09 22
c44eafd7 Thierry Reding 2017-11-07 23 #ifdef CONFIG_GPIOLIB_IRQCHIP
c44eafd7 Thierry Reding 2017-11-07 24 /**
c44eafd7 Thierry Reding 2017-11-07 25 * struct gpio_irq_chip - GPIO interrupt controller
c44eafd7 Thierry Reding 2017-11-07 26 */
c44eafd7 Thierry Reding 2017-11-07 27 struct gpio_irq_chip {
c44eafd7 Thierry Reding 2017-11-07 28 /**
da80ff81 Thierry Reding 2017-11-07 29 * @chip:
da80ff81 Thierry Reding 2017-11-07 30 *
da80ff81 Thierry Reding 2017-11-07 31 * GPIO IRQ chip implementation, provided by GPIO driver.
da80ff81 Thierry Reding 2017-11-07 32 */
da80ff81 Thierry Reding 2017-11-07 33 struct irq_chip *chip;
da80ff81 Thierry Reding 2017-11-07 34
da80ff81 Thierry Reding 2017-11-07 35 /**
f0fbe7bc Thierry Reding 2017-11-07 36 * @domain:
f0fbe7bc Thierry Reding 2017-11-07 37 *
f0fbe7bc Thierry Reding 2017-11-07 38 * Interrupt translation domain; responsible for mapping between GPIO
f0fbe7bc Thierry Reding 2017-11-07 39 * hwirq number and Linux IRQ number.
f0fbe7bc Thierry Reding 2017-11-07 40 */
f0fbe7bc Thierry Reding 2017-11-07 41 struct irq_domain *domain;
f0fbe7bc Thierry Reding 2017-11-07 42
f0fbe7bc Thierry Reding 2017-11-07 43 /**
c44eafd7 Thierry Reding 2017-11-07 44 * @domain_ops:
c44eafd7 Thierry Reding 2017-11-07 45 *
c44eafd7 Thierry Reding 2017-11-07 46 * Table of interrupt domain operations for this IRQ chip.
c44eafd7 Thierry Reding 2017-11-07 47 */
c44eafd7 Thierry Reding 2017-11-07 48 const struct irq_domain_ops *domain_ops;
c44eafd7 Thierry Reding 2017-11-07 49
c44eafd7 Thierry Reding 2017-11-07 50 /**
c7a0aa59 Thierry Reding 2017-11-07 51 * @handler:
c7a0aa59 Thierry Reding 2017-11-07 52 *
c7a0aa59 Thierry Reding 2017-11-07 53 * The IRQ handler to use (often a predefined IRQ core function) for
c7a0aa59 Thierry Reding 2017-11-07 54 * GPIO IRQs, provided by GPIO driver.
c7a0aa59 Thierry Reding 2017-11-07 55 */
c7a0aa59 Thierry Reding 2017-11-07 56 irq_flow_handler_t handler;
c7a0aa59 Thierry Reding 2017-11-07 57
c7a0aa59 Thierry Reding 2017-11-07 58 /**
3634eeb0 Thierry Reding 2017-11-07 59 * @default_type:
3634eeb0 Thierry Reding 2017-11-07 60 *
3634eeb0 Thierry Reding 2017-11-07 61 * Default IRQ triggering type applied during GPIO driver
3634eeb0 Thierry Reding 2017-11-07 62 * initialization, provided by GPIO driver.
3634eeb0 Thierry Reding 2017-11-07 63 */
3634eeb0 Thierry Reding 2017-11-07 64 unsigned int default_type;
3634eeb0 Thierry Reding 2017-11-07 65
3634eeb0 Thierry Reding 2017-11-07 66 /**
ca9df053 Thierry Reding 2017-11-07 67 * @lock_key:
ca9df053 Thierry Reding 2017-11-07 68 *
02ad0437 Randy Dunlap 2018-09-03 69 * Per GPIO IRQ chip lockdep class for IRQ lock.
ca9df053 Thierry Reding 2017-11-07 70 */
ca9df053 Thierry Reding 2017-11-07 71 struct lock_class_key *lock_key;
02ad0437 Randy Dunlap 2018-09-03 72
02ad0437 Randy Dunlap 2018-09-03 73 /**
02ad0437 Randy Dunlap 2018-09-03 74 * @request_key:
02ad0437 Randy Dunlap 2018-09-03 75 *
02ad0437 Randy Dunlap 2018-09-03 76 * Per GPIO IRQ chip lockdep class for IRQ request.
02ad0437 Randy Dunlap 2018-09-03 77 */
39c3fd58 Andrew Lunn 2017-12-02 78 struct lock_class_key *request_key;
ca9df053 Thierry Reding 2017-11-07 79
ca9df053 Thierry Reding 2017-11-07 80 /**
c44eafd7 Thierry Reding 2017-11-07 81 * @parent_handler:
c44eafd7 Thierry Reding 2017-11-07 82 *
c44eafd7 Thierry Reding 2017-11-07 83 * The interrupt handler for the GPIO chip's parent interrupts, may be
c44eafd7 Thierry Reding 2017-11-07 84 * NULL if the parent interrupts are nested rather than cascaded.
c44eafd7 Thierry Reding 2017-11-07 85 */
c44eafd7 Thierry Reding 2017-11-07 86 irq_flow_handler_t parent_handler;
c44eafd7 Thierry Reding 2017-11-07 87
c44eafd7 Thierry Reding 2017-11-07 88 /**
c44eafd7 Thierry Reding 2017-11-07 89 * @parent_handler_data:
c44eafd7 Thierry Reding 2017-11-07 90 *
c44eafd7 Thierry Reding 2017-11-07 91 * Data associated, and passed to, the handler for the parent
c44eafd7 Thierry Reding 2017-11-07 92 * interrupt.
c44eafd7 Thierry Reding 2017-11-07 93 */
c44eafd7 Thierry Reding 2017-11-07 94 void *parent_handler_data;
39e5f096 Thierry Reding 2017-11-07 95
39e5f096 Thierry Reding 2017-11-07 96 /**
39e5f096 Thierry Reding 2017-11-07 97 * @num_parents:
39e5f096 Thierry Reding 2017-11-07 98 *
39e5f096 Thierry Reding 2017-11-07 99 * The number of interrupt parents of a GPIO chip.
39e5f096 Thierry Reding 2017-11-07 100 */
39e5f096 Thierry Reding 2017-11-07 101 unsigned int num_parents;
39e5f096 Thierry Reding 2017-11-07 102
39e5f096 Thierry Reding 2017-11-07 103 /**
7f91778d Stephen Boyd 2018-10-08 104 * private: For use by gpiochip_set_cascaded_irqchip()
7f91778d Stephen Boyd 2018-10-08 @105 */
7f91778d Stephen Boyd 2018-10-08 106 unsigned int parent_irq;
7f91778d Stephen Boyd 2018-10-08 107
7f91778d Stephen Boyd 2018-10-08 108 /**
39e5f096 Thierry Reding 2017-11-07 109 * @parents:
39e5f096 Thierry Reding 2017-11-07 110 *
39e5f096 Thierry Reding 2017-11-07 111 * A list of interrupt parents of a GPIO chip. This is owned by the
39e5f096 Thierry Reding 2017-11-07 112 * driver, so the core will only reference this list, not modify it.
39e5f096 Thierry Reding 2017-11-07 113 */
39e5f096 Thierry Reding 2017-11-07 114 unsigned int *parents;
dc6bafee Thierry Reding 2017-11-07 115
dc6bafee Thierry Reding 2017-11-07 116 /**
e0d89728 Thierry Reding 2017-11-07 117 * @map:
e0d89728 Thierry Reding 2017-11-07 118 *
e0d89728 Thierry Reding 2017-11-07 119 * A list of interrupt parents for each line of a GPIO chip.
e0d89728 Thierry Reding 2017-11-07 120 */
e0d89728 Thierry Reding 2017-11-07 121 unsigned int *map;
e0d89728 Thierry Reding 2017-11-07 122
e0d89728 Thierry Reding 2017-11-07 123 /**
60ed54ca Thierry Reding 2017-11-07 124 * @threaded:
dc6bafee Thierry Reding 2017-11-07 125 *
60ed54ca Thierry Reding 2017-11-07 126 * True if set the interrupt handling uses nested threads.
dc6bafee Thierry Reding 2017-11-07 127 */
60ed54ca Thierry Reding 2017-11-07 128 bool threaded;
dc7b0387 Thierry Reding 2017-11-07 129
dc7b0387 Thierry Reding 2017-11-07 130 /**
dc7b0387 Thierry Reding 2017-11-07 131 * @need_valid_mask:
dc7b0387 Thierry Reding 2017-11-07 132 *
dc7b0387 Thierry Reding 2017-11-07 133 * If set core allocates @valid_mask with all bits set to one.
dc7b0387 Thierry Reding 2017-11-07 134 */
dc7b0387 Thierry Reding 2017-11-07 135 bool need_valid_mask;
dc7b0387 Thierry Reding 2017-11-07 136
dc7b0387 Thierry Reding 2017-11-07 137 /**
dc7b0387 Thierry Reding 2017-11-07 138 * @valid_mask:
dc7b0387 Thierry Reding 2017-11-07 139 *
dc7b0387 Thierry Reding 2017-11-07 140 * If not %NULL holds bitmask of GPIOs which are valid to be included
dc7b0387 Thierry Reding 2017-11-07 141 * in IRQ domain of the chip.
dc7b0387 Thierry Reding 2017-11-07 142 */
dc7b0387 Thierry Reding 2017-11-07 143 unsigned long *valid_mask;
8302cf58 Thierry Reding 2017-11-07 144
8302cf58 Thierry Reding 2017-11-07 145 /**
8302cf58 Thierry Reding 2017-11-07 146 * @first:
8302cf58 Thierry Reding 2017-11-07 147 *
8302cf58 Thierry Reding 2017-11-07 148 * Required for static IRQ allocation. If set, irq_domain_add_simple()
8302cf58 Thierry Reding 2017-11-07 149 * will allocate and map all IRQs during initialization.
8302cf58 Thierry Reding 2017-11-07 150 */
8302cf58 Thierry Reding 2017-11-07 151 unsigned int first;
461c1a7d Hans Verkuil 2018-09-08 152
461c1a7d Hans Verkuil 2018-09-08 153 /**
461c1a7d Hans Verkuil 2018-09-08 154 * @irq_enable:
461c1a7d Hans Verkuil 2018-09-08 155 *
461c1a7d Hans Verkuil 2018-09-08 156 * Store old irq_chip irq_enable callback
461c1a7d Hans Verkuil 2018-09-08 157 */
461c1a7d Hans Verkuil 2018-09-08 158 void (*irq_enable)(struct irq_data *data);
461c1a7d Hans Verkuil 2018-09-08 159
461c1a7d Hans Verkuil 2018-09-08 160 /**
461c1a7d Hans Verkuil 2018-09-08 161 * @irq_disable:
461c1a7d Hans Verkuil 2018-09-08 162 *
461c1a7d Hans Verkuil 2018-09-08 163 * Store old irq_chip irq_disable callback
461c1a7d Hans Verkuil 2018-09-08 164 */
461c1a7d Hans Verkuil 2018-09-08 165 void (*irq_disable)(struct irq_data *data);
c44eafd7 Thierry Reding 2017-11-07 166 };
da80ff81 Thierry Reding 2017-11-07 @167

:::::: The code at line 167 was first introduced by commit
:::::: da80ff81a8f54611b834d73149f8ac0d59151c87 gpio: Move irqchip into struct gpio_irq_chip

:::::: TO: Thierry Reding <treding@xxxxxxxxxx>
:::::: CC: Linus Walleij <linus.walleij@xxxxxxxxxx>

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: application/gzip