From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pd0-f180.google.com (mail-pd0-f180.google.com [209.85.192.180]) by dpdk.org (Postfix) with ESMTP id C462BC42E for ; Mon, 6 Jul 2015 08:25:25 +0200 (CEST) Received: by pdbdz6 with SMTP id dz6so4671999pdb.0 for ; Sun, 05 Jul 2015 23:25:25 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=BY3Vp45B8utQ+OpRj74Dj/YABxn4fBiz+03X6AcmJ2M=; b=AFuQIIvC9Gqn+Q0pYJMV+dMeuHk8ndBPIEBDp6X23cw+JW+o/m72/C5HihzVEALizX OaHLR77X41p2vnydwlycaQ53NiiDaRjzEDK6bDp1KXlNJ6QDVI7DoRtMU0mH9F6hXzv+ MoiYwugoSv/tNJpvxLTh/U/F8IWXy2IZhrPSc5J71eFsqSh85KBl3hKogRrQVKv5+yPz WRUKrf5ingsGnuX+ax5r7Iy25h5HmlNyhk7DG37aikkkx4vqwjyjNr5y6PZfULF5mp3z ybJSasSs35RJ/NqFGO5uQXvvn9Gdt6KZWNJotyjoQ5AgHKqJiF0zLaZHdj0nTGP+H0eO GMrQ== X-Gm-Message-State: ALoCoQmQqsWQu6WunVw/hK7gQ6PjVRU3kke9H+Mb+jgKrmGcTpikJCaMewDuMEb62KQC8S3pkUxQ X-Received: by 10.68.136.42 with SMTP id px10mr103116159pbb.19.1436163925145; Sun, 05 Jul 2015 23:25:25 -0700 (PDT) Received: from localhost.localdomain (napt.igel.co.jp. [219.106.231.132]) by mx.google.com with ESMTPSA id fd3sm16874716pdb.0.2015.07.05.23.25.23 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Sun, 05 Jul 2015 23:25:24 -0700 (PDT) From: Tetsuya Mukawa To: dev@dpdk.org Date: Mon, 6 Jul 2015 15:24:17 +0900 Message-Id: <1436163861-3025-9-git-send-email-mukawa@igel.co.jp> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1436163861-3025-1-git-send-email-mukawa@igel.co.jp> References: <1435652668-3380-12-git-send-email-mukawa@igel.co.jp> <1436163861-3025-1-git-send-email-mukawa@igel.co.jp> Subject: [dpdk-dev] [PATCH v8 08/12] eal: Consolidate pci_map and mapped_pci_resource of linuxapp and bsdapp X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Jul 2015 06:25:26 -0000 From: "Tetsuya.Mukawa" This patch consolidates below structures, and defines them in common code. - struct pci_map - strucy mapped_pci_resouces Signed-off-by: Tetsuya Mukawa --- lib/librte_eal/bsdapp/eal/eal_pci.c | 24 ------------------------ lib/librte_eal/common/include/rte_pci.h | 29 +++++++++++++++++++++++++++++ lib/librte_eal/linuxapp/eal/eal_pci_init.h | 23 ----------------------- 3 files changed, 29 insertions(+), 47 deletions(-) diff --git a/lib/librte_eal/bsdapp/eal/eal_pci.c b/lib/librte_eal/bsdapp/eal/eal_pci.c index c76f936..6067e31 100644 --- a/lib/librte_eal/bsdapp/eal/eal_pci.c +++ b/lib/librte_eal/bsdapp/eal/eal_pci.c @@ -83,30 +83,6 @@ * network card, only providing access to PCI BAR to applications, and * enabling bus master. */ - -struct pci_map { - void *addr; - char *path; - uint64_t offset; - uint64_t size; - uint64_t phaddr; -}; - -/* - * For multi-process we need to reproduce all PCI mappings in secondary - * processes, so save them in a tailq. - */ -struct mapped_pci_resource { - TAILQ_ENTRY(mapped_pci_resource) next; - - struct rte_pci_addr pci_addr; - char path[PATH_MAX]; - int nb_maps; - struct pci_map maps[PCI_MAX_RESOURCE]; -}; - -TAILQ_HEAD(mapped_pci_res_list, mapped_pci_resource); - static struct rte_tailq_elem rte_uio_tailq = { .name = "UIO_RESOURCE_LIST", }; diff --git a/lib/librte_eal/common/include/rte_pci.h b/lib/librte_eal/common/include/rte_pci.h index 7801fa0..d95747e 100644 --- a/lib/librte_eal/common/include/rte_pci.h +++ b/lib/librte_eal/common/include/rte_pci.h @@ -2,6 +2,7 @@ * BSD LICENSE * * Copyright(c) 2010-2014 Intel Corporation. All rights reserved. + * Copyright(c) 2015 IGEL Co., Ltd. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -220,6 +221,34 @@ struct rte_pci_driver { /** Device driver supports detaching capability */ #define RTE_PCI_DRV_DETACHABLE 0x0010 +/** + * A structure describing a PCI mapping. + */ +struct pci_map { + void *addr; + char *path; + uint64_t offset; + uint64_t size; + uint64_t phaddr; +}; + +/** + * A structure describing a mapped PCI resource. + * For multi-process we need to reproduce all PCI mappings in secondary + * processes, so save them in a tailq. + */ +struct mapped_pci_resource { + TAILQ_ENTRY(mapped_pci_resource) next; + + struct rte_pci_addr pci_addr; + char path[PATH_MAX]; + int nb_maps; + struct pci_map maps[PCI_MAX_RESOURCE]; +}; + +/** mapped pci device list */ +TAILQ_HEAD(mapped_pci_res_list, mapped_pci_resource); + /**< Internal use only - Macro used by pci addr parsing functions **/ #define GET_PCIADDR_FIELD(in, fd, lim, dlm) \ do { \ diff --git a/lib/librte_eal/linuxapp/eal/eal_pci_init.h b/lib/librte_eal/linuxapp/eal/eal_pci_init.h index aa7b755..d9d1878 100644 --- a/lib/librte_eal/linuxapp/eal/eal_pci_init.h +++ b/lib/librte_eal/linuxapp/eal/eal_pci_init.h @@ -36,29 +36,6 @@ #include "eal_vfio.h" -struct pci_map { - void *addr; - char *path; - uint64_t offset; - uint64_t size; - uint64_t phaddr; -}; - -/* - * For multi-process we need to reproduce all PCI mappings in secondary - * processes, so save them in a tailq. - */ -struct mapped_pci_resource { - TAILQ_ENTRY(mapped_pci_resource) next; - - struct rte_pci_addr pci_addr; - char path[PATH_MAX]; - int nb_maps; - struct pci_map maps[PCI_MAX_RESOURCE]; -}; - -TAILQ_HEAD(mapped_pci_res_list, mapped_pci_resource); - /* * Helper function to map PCI resources right after hugepages in virtual memory */ -- 2.1.4