From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wj0-f194.google.com (mail-wj0-f194.google.com [209.85.210.194]) by dpdk.org (Postfix) with ESMTP id 8EA3C2BB9 for ; Fri, 23 Dec 2016 16:58:28 +0100 (CET) Received: by mail-wj0-f194.google.com with SMTP id j10so40817044wjb.3 for ; Fri, 23 Dec 2016 07:58:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=0p1xlLH2os1+QUWyKNmApUUYX6RHMFCdImR25L9fPoM=; b=G+39nTJJ6V4VJ0lLjgH/yIdOCg3iceKrzpCaav1vR3JCpeZhQAM1ntfK84pxX6LP/3 P7bhXnw8cEZrM7HDnZLw75l5LzlCR/yIkWQWwb1etsFsmnOVggIEDfMBZG600fidQPYl J2fJUDx7pHsOc1oN8+j5LOnQ/Bt/+fodKCHpMNZmK1d+HkGD3xIDV17mTzK7hEC2vM4M VHHzqYH0vFTpCieOD77weD5DAvH6Bu+ydLPohSWBEXTOz2xJqNry8OAXk3e96jUjlEvS Enr/uTZ6Zr7YbvsOYe9+dhoDp4er6O2kr+CE7Fl+Gfs/YoA26dK/rP1KAKi1G9Yf87bB fcCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=0p1xlLH2os1+QUWyKNmApUUYX6RHMFCdImR25L9fPoM=; b=k9u3b0P2bki2d8mcK40FoPY6ljwrWDhUhzJXMZNdR3ipS+2SP1gKD+apAak05PhW+a yR2iCJbS8FIHxZFTkvsEYhrkAW8Rsi8zOZF/3umNaxJe6tIN8QPNXDv7Nsg+GiZ3o35g Vdt0xaHsX+h878npKtAwKA3TPu8I1fCOwBgkziE2mC89ZF5gjvL6oU12ixx9AhWqa1Y9 s/Nn7NJWAEaQD9pN5IBmd4GaOdXiOlY3qjkk6Uq2DWjJN/f/DjUiZCtyPG3nil4bvRet lYtbY5d5dhHJeSqqT9whKhSCzZzr2go2MVRZYNn/+b6esgnX3BOtKEzBt5+JBZSXjj+0 HhDg== X-Gm-Message-State: AIkVDXJOgZBnqtPPvWPZC3ivldUYKCckY2/PRJraNfwhHre26predMxxyTNUc2HurjJzfw== X-Received: by 10.194.169.227 with SMTP id ah3mr14071496wjc.2.1482508708118; Fri, 23 Dec 2016 07:58:28 -0800 (PST) Received: from weierstrass.local.net ([91.200.109.169]) by smtp.gmail.com with ESMTPSA id jm6sm41027072wjb.27.2016.12.23.07.58.26 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 23 Dec 2016 07:58:27 -0800 (PST) Sender: Jan Blunck From: Jan Blunck To: dev@dpdk.org Cc: shreyansh.jain@nxp.com, david.marchand@6wind.com, stephen@networkplumber.org Date: Fri, 23 Dec 2016 16:57:51 +0100 Message-Id: <1482508691-11408-1-git-send-email-jblunck@infradead.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1482332986-7599-1-git-send-email-jblunck@infradead.org> References: <1482332986-7599-1-git-send-email-jblunck@infradead.org> Subject: [dpdk-dev] [PATCH v5 00/20] Decouple ethdev from PCI device X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Dec 2016 15:58:28 -0000 This repost addresses the review comments of Thomas Monjalon to completely remove the ethdev helper to further decrease the coupling of the ethdev and the eal layers. This required me to squash together all patches using the rte_eth_dev_to_pci() helper into "Decouple from PCI device" patch. As discussed privately I'll keep the PCI information in rte_eth_dev_info untouched. Changes between v5 and v4: - Removed ethdev helper rte_eth_dev_to_pci() Changes between v4 and v3: - broken out refactorings of drivers similar to Stephens example - use inline function instead of macro - fix build issues with bnx2x and mlx4/5 Changes between v3 and v2: - converted PCI device users I've missed in previous version Jan Blunck (14): eal: define container_of macro eal: Allow passing const rte_intr_handle virtio: Don't fill dev_info->driver_name virtio: Add vtpci_intr_handle() helper to get rte_intr_handle virtio: Don't depend on struct rte_eth_dev's pci_dev bnx2x: localize mapping from eth_dev to pci fm10k: localize mapping from eth_dev to pci qede: localize mapping of eth_dev to pci szedata2: localize handling of pci resources nfp: localize rte_pci_device handling vmxnet3: use eth_dev->data->drv_name instead of pci_drv name ethdev: Decouple interrupt handling from PCI device ethdev: Move dev_info filling of PCI information into drivers ethdev: Decouple from PCI device Stephen Hemminger (6): rte_device: make driver pointer const pmd: remove useless reset of dev_info->dev_pci e1000: localize mapping from eth_dev to pci ixgbe: localize mapping from eth_dev to pci_device i40e: localize mapping of eth_dev to pci broadcom: localize mapping from eth_dev to pci app/test/virtual_pmd.c | 5 +- drivers/net/af_packet/rte_eth_af_packet.c | 1 - drivers/net/bnx2x/bnx2x_ethdev.c | 15 +-- drivers/net/bnxt/bnxt_ethdev.c | 24 +++-- drivers/net/bnxt/bnxt_ring.c | 16 ++-- drivers/net/bonding/rte_eth_bond_args.c | 12 ++- drivers/net/bonding/rte_eth_bond_pmd.c | 1 - drivers/net/cxgbe/cxgbe_ethdev.c | 4 +- drivers/net/cxgbe/cxgbe_main.c | 4 +- drivers/net/e1000/e1000_ethdev.h | 2 + drivers/net/e1000/em_ethdev.c | 51 ++++++----- drivers/net/e1000/igb_ethdev.c | 101 +++++++++++--------- drivers/net/e1000/igb_pf.c | 4 +- drivers/net/ena/ena_ethdev.c | 4 +- drivers/net/enic/enic_ethdev.c | 3 +- drivers/net/fm10k/fm10k_ethdev.c | 84 +++++++++-------- drivers/net/i40e/i40e_ethdev.c | 78 ++++++++++------ drivers/net/i40e/i40e_ethdev.h | 3 + drivers/net/i40e/i40e_ethdev_vf.c | 59 +++++++----- drivers/net/ixgbe/ixgbe_ethdev.c | 122 ++++++++++++++----------- drivers/net/ixgbe/ixgbe_ethdev.h | 3 + drivers/net/ixgbe/ixgbe_pf.c | 4 +- drivers/net/mlx4/mlx4.c | 4 +- drivers/net/mlx5/mlx5.c | 2 +- drivers/net/mlx5/mlx5_ethdev.c | 2 + drivers/net/nfp/nfp_net.c | 19 ++-- drivers/net/null/rte_eth_null.c | 1 - drivers/net/pcap/rte_eth_pcap.c | 1 - drivers/net/qede/qede_ethdev.c | 19 ++-- drivers/net/ring/rte_eth_ring.c | 1 - drivers/net/szedata2/rte_eth_szedata2.c | 73 +++++++++------ drivers/net/szedata2/rte_eth_szedata2.h | 58 +++++------- drivers/net/thunderx/nicvf_ethdev.c | 7 +- drivers/net/virtio/virtio_ethdev.c | 44 ++++----- drivers/net/virtio/virtio_pci.h | 6 ++ drivers/net/virtio/virtio_user_ethdev.c | 1 - drivers/net/vmxnet3/vmxnet3_ethdev.c | 8 +- drivers/net/xenvirt/rte_eth_xenvirt.c | 1 - lib/librte_eal/bsdapp/eal/eal_interrupts.c | 24 +++-- lib/librte_eal/common/include/rte_common.h | 20 ++++ lib/librte_eal/common/include/rte_dev.h | 2 +- lib/librte_eal/common/include/rte_interrupts.h | 8 +- lib/librte_eal/common/include/rte_pci.h | 6 ++ lib/librte_eal/linuxapp/eal/eal_interrupts.c | 62 +++++++++---- lib/librte_ether/rte_ethdev.c | 25 +++-- lib/librte_ether/rte_ethdev.h | 3 +- 46 files changed, 594 insertions(+), 403 deletions(-) -- 2.7.4