Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1540654
| Path | csiph.com!weretis.net!feeder4.news.weretis.net!news.unit0.net!news.panservice.it!bofh.it!news.nic.it!robomod |
|---|---|
| From | Serge Semin <fancer.lancer@gmail.com> |
| Newsgroups | linux.kernel |
| Subject | [PATCH v2 9/9] NTB: Add ntb.h comments |
| Date | Mon, 12 Dec 2016 22:10:01 +0100 |
| Message-ID | <sNG1b-R8-17@gated-at.bofh.it> (permalink) |
| References | <sIUet-2Xs-3@gated-at.bofh.it> <sNG1b-R8-9@gated-at.bofh.it> |
| Dkim-Signature | v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=o2vnJuURYqQbnO8FELRJF1On4Di8Z+Uj1xFEURCxDe4=; b=IaUSKP371lyRhFUCd63c9/wH6sRzZyH61G2Wa0CSiNFBSQhijHGqyZX7cxZN+W/p7u mNSlih9lbHZRSB8Wo+n1fODCVmcdwjg+0GlMcPPvaM8uYFvFbO3AJXB4AEea/IdqYiA9 d6cx+cGcX8ByQ2v0FuECXDdIQ/eE1+GRjaOl4tHI3JMdvgrM7Z7cnOOgMKeblnmYl1+I u348r40XC7en4965aSH4sYwDI/+F9d/8objKoIHxJ07FbMTF0oem4hp0W85bOo7ayigG ORPAw+iGcrSgkZ6Kq+TQlZyLC0IWqA8zSmKimVxcEjvdIYdDEHcR+0XFeJfAk7N2Jcgc xShg== |
| 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=o2vnJuURYqQbnO8FELRJF1On4Di8Z+Uj1xFEURCxDe4=; b=P32VCismm5NTjxDzKo+96ptHQY0gorMAemdsQWP9Em2VUQepbLRtkiRP/GgelVPXkQ 9H/ZwQd3tMu2m87NYHU3zY83BkzQfIe0ey5E8UnxJHUQq19PAV5zpNHlo6JU+27Z7di/ BWy+ACphdh71MZ+tU6vMmM/3bm23iHznFzNdnkKXwIjDG20vqeMakYQyeS5PQFC969P1 U1VCp85+sa2EYI7/pBCcTiNFsABNE0JhgAbIIBiBV3PFDSLLGtHdQokLBG4jMgj4qg0J 1j7VjihfJL0aTpZu7erDR+YVXERMP95Q0XAMjdCeojiClo0X0gHpJcfKiFZbbEkWuY6z 5zCg== |
| X-Gm-Message-State | AKaTC03sT6GUbmHeCLYPPukxDyXNeYQZx5ujpRCPYaUMK4YXGh6YQ0xZxfUSaT6jSPNzsA== |
| X-Received | by 10.46.7.26 with SMTP id 26mr37414974ljh.18.1481576959192; Mon, 12 Dec 2016 13:09:19 -0800 (PST) |
| X-Mailer | git-send-email 2.6.6 |
| Sender | robomod@news.nic.it |
| List-ID | <linux-kernel.vger.kernel.org> |
| X-Mailing-List | linux-kernel@vger.kernel.org |
| Approved | robomod@news.nic.it |
| Lines | 94 |
| Organization | linux.* mail to news gateway |
| X-Original-Cc | Sergey.Semin@t-platforms.ru, linux-ntb@googlegroups.com, linux-kernel@vger.kernel.org, Serge Semin <fancer.lancer@gmail.com> |
| X-Original-Date | Tue, 13 Dec 2016 00:08:22 +0300 |
| X-Original-Message-ID | <1481576902-21091-10-git-send-email-fancer.lancer@gmail.com> |
| X-Original-References | <1480439777-1080-1-git-send-email-fancer.lancer@gmail.com> <1481576902-21091-1-git-send-email-fancer.lancer@gmail.com> |
| X-Original-Sender | linux-kernel-owner@vger.kernel.org |
| Xref | csiph.com linux.kernel:1540654 |
Show key headers only | View raw
Signed-off-by: Serge Semin <fancer.lancer@gmail.com>
---
include/linux/ntb.h | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/include/linux/ntb.h b/include/linux/ntb.h
index fe0437c..c5a369c 100644
--- a/include/linux/ntb.h
+++ b/include/linux/ntb.h
@@ -312,13 +312,18 @@ static inline int ntb_dev_ops_is_valid(const struct ntb_dev_ops *ops)
{
/* commented callbacks are not required: */
return
+ /* Port operations are required */
ops->port_number &&
ops->peer_port_count &&
ops->peer_port_number &&
ops->peer_port_idx &&
+
+ /* Link operations are requiered */
ops->link_is_up &&
ops->link_enable &&
ops->link_disable &&
+
+ /* One or both MW interfaces should be developed */
ops->mw_count &&
ops->mw_get_align &&
(ops->mw_set_trans ||
@@ -328,12 +333,11 @@ static inline int ntb_dev_ops_is_valid(const struct ntb_dev_ops *ops)
ops->peer_mw_get_addr &&
/* ops->peer_mw_clear_trans && */
+ /* Doorbell operations are mostly required */
/* ops->db_is_unsafe && */
ops->db_valid_mask &&
-
/* both set, or both unset */
(!ops->db_vector_count == !ops->db_vector_mask) &&
-
ops->db_read &&
/* ops->db_set && */
ops->db_clear &&
@@ -347,6 +351,8 @@ static inline int ntb_dev_ops_is_valid(const struct ntb_dev_ops *ops)
/* ops->peer_db_read_mask && */
/* ops->peer_db_set_mask && */
/* ops->peer_db_clear_mask && */
+
+ /* Scrachpad interface is optional */
/* !ops->spad_is_unsafe == !ops->spad_count && */
!ops->spad_read == !ops->spad_count &&
!ops->spad_write == !ops->spad_count &&
@@ -354,6 +360,7 @@ static inline int ntb_dev_ops_is_valid(const struct ntb_dev_ops *ops)
/* !ops->peer_spad_read == !ops->spad_count && */
!ops->peer_spad_write == !ops->spad_count &&
+ /* Message registers interface is optional */
!ops->msg_inbits == !ops->msg_count &&
!ops->msg_outbits == !ops->msg_count &&
!ops->msg_read_sts == !ops->msg_count &&
@@ -374,13 +381,12 @@ struct ntb_client {
struct device_driver drv;
const struct ntb_client_ops ops;
};
-
#define drv_ntb_client(__drv) container_of((__drv), struct ntb_client, drv)
/**
* struct ntb_device - ntb device
* @dev: Linux device object.
- * @pdev: Pci device entry of the ntb.
+ * @pdev: PCI device entry of the ntb.
* @topo: Detected topology of the ntb.
* @ops: See &ntb_dev_ops.
* @ctx: See &ntb_ctx_ops.
@@ -401,7 +407,6 @@ struct ntb_dev {
/* block unregister until device is fully released */
struct completion released;
};
-
#define dev_ntb(__dev) container_of((__dev), struct ntb_dev, dev)
/**
@@ -498,7 +503,7 @@ void ntb_link_event(struct ntb_dev *ntb);
* multiple interrupt vectors for doorbells, the vector number indicates which
* vector received the interrupt. The vector number is relative to the first
* vector used for doorbells, starting at zero, and must be less than
- ** ntb_db_vector_count(). The driver may call ntb_db_read() to check which
+ * ntb_db_vector_count(). The driver may call ntb_db_read() to check which
* doorbell bits need service, and ntb_db_vector_mask() to determine which of
* those bits are associated with the vector number.
*/
--
2.6.6
Back to linux.kernel | Previous | Next | Find similar | Unroll thread
[PATCH v2 9/9] NTB: Add ntb.h comments Serge Semin <fancer.lancer@gmail.com> - 2016-12-12 22:10 +0100
csiph-web