Path: csiph.com!news.mixmin.net!feeds.phibee-telecom.net!news.panservice.it!bofh.it!news.nic.it!robomod From: Serge Semin Newsgroups: linux.kernel Subject: [PATCH v2 0/9] NTB: Alter kernel API to support multi-port devices Date: Mon, 12 Dec 2016 22:10:01 +0100 Message-ID: References: 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=9kJEYQrl7BoVxlwk/VD/hloKxHGAhQB++lvCrdsXvEI=; b=udOXGt7DqnQFNSsY9+gRgwNSHuhW7kA90s7duGMl2hhccfngYlBAv5AWDHPK81Azsc aFduQlTF342oERRhSM/m3vEpXzBVFeDg37CK0LO3CGn3AxZiEEifs+wJ0O8pMSyG62Gd 82lnPLW1TdodZD5H57D2IO9otnT1zhujT5tjaLbjcNe171JUOdR2mFwdHcY5o13dsGkd tyL1TnjUVu0IksKAc9Koz/rQ841QNJqK993vBnSAAi+qZNpqpp9L0thx1Jy+haIGV+G4 lGw4/PAFexBdqWd9PtjtDJxHlYGUCol/TUyfIaCpXSSR5Fa0LScifYE2FsovmyUCVH/t 2hrA== 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=9kJEYQrl7BoVxlwk/VD/hloKxHGAhQB++lvCrdsXvEI=; b=L/ag3YMxy7pFcFtQ2vUvihyQg2Ts6rMsHmC4NPEw0pVha33GwCd0xnol5e5hj5R/sK MwZl2BZ5KCK15BU+oWb3xl/yOJ9Ag+iGanUlGmJauXcM6Q7mBmbQ51G7TniXF+QVUSxx zh74qOa0hxnQLJ4nbtRV/HmkZx6E2AtiBK5yHQ2Lblspy8Hreh9PcCNKKinZGKc+pASK Womf7anL/gqV46Vk0HYfGrTrdYIUgD/4+/UnwUilI44EZS2nTTe1ivOzmnfnC47OtB+8 ejIQaLZBBy/NPfC0+A5MvqI7H7yOthu3JUviYa3RRE9rot4IntdDlNLy4A0v3tpyN5T1 Q9/w== X-Gm-Message-State: AKaTC027Z1SIUCiqByfOTHuYTtNEUmY1Ext57RXg0bxMIxNQuVss8miyJr9OzccF6E7Bog== X-Received: by 10.25.159.78 with SMTP id i75mr31265495lfe.123.1481576949989; Mon, 12 Dec 2016 13:09:09 -0800 (PST) X-Mailer: git-send-email 2.6.6 Sender: robomod@news.nic.it List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Approved: robomod@news.nic.it Lines: 45 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 X-Original-Date: Tue, 13 Dec 2016 00:08:13 +0300 X-Original-Message-ID: <1481576902-21091-1-git-send-email-fancer.lancer@gmail.com> X-Original-References: <1480439777-1080-1-git-send-email-fancer.lancer@gmail.com> X-Original-Sender: linux-kernel-owner@vger.kernel.org Xref: csiph.com linux.kernel:1540656 There are devices, like IDT PCIe-switches, which have more than just two ports. Particularly one device can have up to eight ports with NTB-function activated. In order to support such devices, NTB kernel API should be altered since currently it's optimized to work with two-ports devices only. Changelog v2: - Move comments from cover letter to individual patches - Combine patches to make code buildable - Alter patchset to support Intel SKX driver - Make sure all the API uses the same midx/widx/pidx/sidx arguments notation - Move new MW API usage description into Documention - Alter Spad/Msg API checking valid function to make spad and msg interfaces optional - Alter comments in ntb.h - Split: add NTB_SPEED_GEN4 and ntb.h comments into separate patches - Put copyrights into some of the existing patches - Get rid of TOPO updates Signed-off-by: Serge Semin Serge Semin (9): NTB: Make link-state API being declared first NTB: Add indexed ports NTB API NTB: Alter link-state API to support multi-port devices NTB: Alter MW API to support multi-ports devices NTB: Alter Scratchpads API to support multi-ports devices NTB: Add Messaging NTB API NTB: Add new Memory Windows API documentation NTB: Add PCIe Gen4 link speed NTB: Add ntb.h comments Documentation/ntb.txt | 99 +++++- drivers/ntb/hw/amd/ntb_hw_amd.c | 291 ++++++++++------ drivers/ntb/hw/amd/ntb_hw_amd.h | 11 + drivers/ntb/hw/intel/ntb_hw_intel.c | 296 +++++++++++------ drivers/ntb/hw/intel/ntb_hw_intel.h | 11 + drivers/ntb/ntb.c | 15 + drivers/ntb/ntb_transport.c | 44 ++- drivers/ntb/test/ntb_perf.c | 27 +- drivers/ntb/test/ntb_pingpong.c | 14 +- drivers/ntb/test/ntb_tool.c | 93 ++++-- include/linux/ntb.h | 639 ++++++++++++++++++++++++++++++------ 11 files changed, 1173 insertions(+), 367 deletions(-) -- 2.6.6