From patchwork Thu Mar 22 17:53:34 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ido Schimmel X-Patchwork-Id: 889509 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=mellanox.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=Mellanox.com header.i=@Mellanox.com header.b="k37SB+i1"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 406Z723VM4z9s27 for ; Fri, 23 Mar 2018 04:54:22 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751848AbeCVRyV (ORCPT ); Thu, 22 Mar 2018 13:54:21 -0400 Received: from mail-he1eur01on0078.outbound.protection.outlook.com ([104.47.0.78]:16568 "EHLO EUR01-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751825AbeCVRyQ (ORCPT ); Thu, 22 Mar 2018 13:54:16 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Tl528AF9AK9TNqK8ta+HmZpsd3HDYSnQwMptN92fkh8=; b=k37SB+i1UuSQEvrQM4SIB22oSK3sy29ZjqP+aMfUR2spjl0DADRhusPaSlW+9PtaG6JfeppJ9x+jgDtS1LP/MSSfX9444Moe9ihNmSVofmwupLiZO620nzylb/Ru4bupX6sEMqTsybvGYz546iQcu/k3UPd/S2rthwJ6NljykSY= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=idosch@mellanox.com; Received: from splinter.mtl.com (193.47.165.251) by AM5PR0501MB2003.eurprd05.prod.outlook.com (2603:10a6:203:1a::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.609.10; Thu, 22 Mar 2018 17:54:09 +0000 From: Ido Schimmel To: netdev@vger.kernel.org Cc: davem@davemloft.net, jiri@mellanox.com, lucien.xin@gmail.com, mlxsw@mellanox.com, Petr Machata , Ido Schimmel Subject: [PATCH net 2/3] mlxsw: spectrum_router: Move mlxsw_sp_rif_ipip_lb_op() Date: Thu, 22 Mar 2018 19:53:34 +0200 Message-Id: <20180322175335.26232-3-idosch@mellanox.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180322175335.26232-1-idosch@mellanox.com> References: <20180322175335.26232-1-idosch@mellanox.com> MIME-Version: 1.0 X-Originating-IP: [193.47.165.251] X-ClientProxiedBy: AM0PR0102CA0045.eurprd01.prod.exchangelabs.com (2603:10a6:208::22) To AM5PR0501MB2003.eurprd05.prod.outlook.com (2603:10a6:203:1a::13) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: e60cbbdf-3baf-4812-c88d-08d5901dea74 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:AM5PR0501MB2003; X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2003; 3:/KyY/OpVWWvWKURpQ/Riri58NuZgZ1dJV3NUAoHUVT1DcahS2J0uYgoJO8AEC7XR2SAn1FnDspyTqkwj2/DqT+XnKV6jtZt60bRqL7D4pw2XvL5k/SjWVNxXdjydgQ/WXxpDo3dCJu+qEGdqIxJUkXa7A5UlKC82d5tVLOj/IQysgRzL0eefdJsXy72+WedajFpfMgqCRWhlWo6u6s5FHYKKqh8yDiA9fc9pMjDIGWF7KKcWMJR7fWgEN+0F64n6; 25:7c96tUutYH7ADlsbmBzDGMf75LVHzhk/950CB3mBurv6MTjUyv5FvzsnIRukDUcdKmXTwhCAHTyc03pZ5Z7p79xhVcFcvSZzju7F2HWMUuHnp+1QdqtS2do+FWnfSRSjsoEbGXPLVEyNyR2BORcotnkjcUaPTMrj307ip4zCzOtN08Y6bfOQhroTTexaOEC5aQg8zbZFnJYDIjyxblBgCEfGO3jK6AYdGjpc2hAxy2IazShriGK2EYRoNPnPvhyvEqHRAHg/C/oxnG1maIbYtv98PvFSXApeBjpJiOZZn231rNBQz88Cr+D18nsreXATScSV8SFZQHjXlMhdreMQFA==; 31:Sk7h7Lv8XREYeuqVyNHnD+HfYb1et9e7HxjlSRWrWuS2mfz/mbD1GGL9xYP8HXqvW+nBvZ/6Bjyo9TACwWweyfcvY7HJ1iSch1i+WAeaNH3lnkeZ6hAWF59/jY5WKkEJ+Y9dUG4YkNYmrmhksymJB1pKyY0MPWTnWls9lOM2bNY7zEIUOH0dAzlmY7v4CBzy06DYMA41RejOSpaJmT7pejrrpHv7/LPVtHr+ICLXpM0= X-MS-TrafficTypeDiagnostic: AM5PR0501MB2003: X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2003; 20:zJGhMPjhMj9fQpqFDECKuhzSgkaCR+yaz21HUXh25F/U05D/n1MEfGxLvoN7CPWy9J0820WzkDECGp+RxwAEVHHEWFbmigumrBAKwyFj6etEhsslXnrub/AuFFI3ZoqxAV61Z9oAtmV35H/VyplOs3k8lNc+WRFdZ3whHtkUOSfs/P8OogT6M71GQHUNKsv4dt2KjKdUBujzYg15em6CYrSVhqMJR/c6Ucfdb57CGOzNYDRCP+KJF7uVO2CmVF6S/NoXGtIZyrXCR0Sof9mTp92zqEZ4NDOjqA0R4MeOuejdztA6cIFSKIAIcUKkw+p/wSmOb+hL8f4NVPxNpH1wSEIRlXBMVwwN6+V+PkHTtgZpNX9Zm59SqdBsJBLDx48Vi1x1oi5DXsWmqF9CtTfTfQGfaWIBcLVpD/zHG3eLCB20dvDbYY+N5JrDQjWRJBnrrsjRJmcT+twt3aetjIdrHyuoiYGP/f9a0daqt2iJ4TSIZ3H9Rq9B7GEeOZWSqvxd; 4:2MxDvuGrBOuIprZ3zKb1jTDp5v02yWzu+7Uwn5B0p8SK1+Il+unZvk4eehllbYkByZanXLGNeQ196X4dURi0jV/+LHYbhH3lW7Y3Evsq2lT2QwvEuzEKLipkxvO/a0jB7+H9jz7EB1scbX+wTWB3sX3iD19paTUk8QoKPf0mgKJxRug0Mtqegb31EzvTgKB0lLuknPo1CKx5gaiLbXmPVLWwZZoEM5G8IkP+9a+Nhw8xtOQAOu++HU6ntDkXlvvN0yU/fxhygcWzxo05N+nvlQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231221)(944501327)(52105095)(93006095)(93001095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(20161123560045)(20161123562045)(6072148)(201708071742011); SRVR:AM5PR0501MB2003; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0501MB2003; X-Forefront-PRVS: 0619D53754 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(366004)(376002)(346002)(39380400002)(396003)(39860400002)(199004)(189003)(97736004)(6666003)(86362001)(575784001)(26005)(2906002)(6916009)(47776003)(6486002)(66066001)(107886003)(53936002)(25786009)(11346002)(106356001)(4326008)(51416003)(1076002)(3846002)(8676002)(7736002)(50226002)(54906003)(6512007)(305945005)(6116002)(36756003)(105586002)(6506007)(386003)(39060400002)(53416004)(81156014)(478600001)(81166006)(50466002)(48376002)(5660300001)(8936002)(76176011)(68736007)(52116002)(316002)(186003)(16526019)(2361001)(16586007)(2351001)(446003); DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0501MB2003; H:splinter.mtl.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2003; 23:Whx2ZqKTln/ROHCS6C6jiHqBqWF3wYoMScRGt4CZ2ZCa3SAZ+DHN+yvSRRgL+kc9ws6WZOaq/7CrhW+rak4JzPUVWYZX+yrmp2ETZs9+8GePY/Ic7wuZuCOFg+9/EG027ZnnKMyu4iG2PIsfzs9vlztqmBEmo0Z2+tPGxHw+G41tSbu2cvq9SyKHnO/P8qVVjCVtu9tLwpywJPAChcktkkTMGVIpH8VEF7F+k29OpN1QUbzEc+opUFa70R5IcfCz9LrV9BjV5PhavGw9jM/e9FonQRtAY87w1llObDum3inzudKWKwKXkCWM5wO2q9Fzs3IFj0KHRcryoe97CEgT4E3XsY6cweUKVKEpas3clpiyFHPsroz8pergIfFlXUZdFA5jGH8BRXZzvmcKOndpYl6Hr5sU/X4xsEfZf4ZTQUxeMM5yiS8PmmVim3kvnPy1qogiQiESY64IMFkGBtuJmuolRUp0aNuGiB0YOL/8VWxI8kiLDRuwtCbjV2Rc2I2crCC1rD3KOuJYNWCKiC3El28nv00q4USk95cgFnfP9toTt6QVO42HV35e7BfAoyo2EXB5yjfL8OUMdQd1hoq7JR79R0G2OoCQarX8Ckldc0SwsPIKV/o0/gylpb0q3w3Lb+cjr1Eys/sqtzt+d31oDPkrx+SPvXZg2ctUD6KFmyEGsP5nRzXLDu3Fz0Qjx319dj0kcW5TZT3D4EOGXOhw5wfXfjS7EY3eW4j7fNmTeqSVhKKesE//NeobFPtkppRc0D/n6YKG4+/sxNa9aOm15eWknaMGs64/r5pygjGCdh8DWKDd4IPWclaZB6AdFMPBGlV71x2rg7IQ526g8NzWp65TOTKSv/PQ6gtqMO8CywDJrT4qEJvqGso074MG8l8qlkDEk3slBiFLoXWUA3MDD7+4BQfPuWVRM8XvLTq5EoR7OXWf5ZgjVnOjDx55XqXsYx+8XM1gD+rr/adp50yRTwKW7Vkwehp6UGDQlyk3irFY1FWuVqInX6JNQTpX45LGCTmVvIGzi/cQerg4i9XzsTEtPTN0UcBsuKc9HskEr1XxRcuPJYC7x8CxRJ/RSY6enhVwxYZ0IfUXqNOvk3hCliswb5fvGOtg0+xCx7uq30Jvzu4IEHARrTBd02bnFKDu/HGUcEDR+cDvep2Hlhu+CPsNO57P15A0D9FDfu+IPaCmiOLUkZM+al1+vjmB6ZAlgxao/0oGqvAuQGQL+ae7gwITc/+fdWPJveQkB5YcSVfzKpx+axythEkyijknzoYdun6dWvdEypws555nlDUxSA== X-Microsoft-Antispam-Message-Info: DhYjxKTMgDISoKelgMAltoVToWTKWcnFF2HOP+Gdr1B6mGXvI0GkEYiwS1qUttL5zq+MuqXXvpzslHOpm60MsTjqb/hp7DpGh26b01YpK5zYu4sKcTMFAY5+KBEbILoslI4ss7wjmRLrNACJ1eE159W5xZVV4StB3pUo1Ghrzdl4dh3GQyE/llFexlqa9Udx X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2003; 6:zmjl6CSl76XNVZMCDq1HfvEQQd3ISmaNe4SEmZvIFzlI2hHfIcz0ZqE8XZ3WxbhOc8ollwS9fTaOhSyapQ2WuUk9KXK7N6DvmCUimYtGK0NkJPAvSpccHpPuKdBgKzEGUyEW+ic2vqXejdvz+gBiJMcMhJxCvU35/0MTFfdsNWzrGDqOQ1/86aXi4V13YFGOnvce3yeqMfHdQ3ikFQyQ6Q5grO/x7OuhmR1NiNFlqOTB3k5QYRWf0Rw0pL4oMcCJwIKDRvfBMCPqkhX83ArZcJa5kr1b0zUdInUqHi00wpvxUi1Icn+9saeKNeX2fX9VAD7C61ymorogJpYKLTLPwUx2M/hnNlLQQG8ZI9fk5mGwx9Myt6wSwQ6CUXmEw0z+GN2EPRmkR8dIH7G1MiYdPB5O7CBGLuhyBSyELmmguzvv+cmkUhd/bgLobz0NFuItWNc1EXtrbgxKlcvQ8UHNKA==; 5:dvZYQapDIFaD4ibP48iwpeJfb7mb2b03bPZDnCiWjcf3MDuXCwLfdqPONxcdmbznL2UH6ZsWXfk0Q+Mv7nU181J6eUBuoikKVmAeWxP6J1rRIVQgX4DoPwnIGxCunLkl9HWdZuW9zaXeSUl04BKsTQHO8H5xeyUZv3eMNLvoL98=; 24:nJGuGeMW/2w/Xu3HAolNDB6h7Wz6ZHaLXtYpYbNg3xig8/RDkQOsFij0D//dNLUUzC5sLSUsFDlU/mWuRZyfdxWZ5gxx2HyH6MZqoGupsKc= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2003; 7:+cV/9lM0lsI0iBiCjKiD0N/Spr0qDROAmt0TM+oy4X7BrnFDh/1B1VLjw9zcR/ip+pefC0iz6npNCStH3N7CjD1Sqaoul9MYiuboaDRZOw6avkE+ni0bb4fuOS2/PMD5hhxH5IYZwULgHetlYmm61xCOTdCNGymX4+KinqqaU4cvHijVWZwBPB/5nmYWoDCiEzrfByeooHtX5+LlV8B14Fzv9gWflRZXMv0fqaISp+Ancs6oroQ68NpUXk+RH0zb X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Mar 2018 17:54:09.8828 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e60cbbdf-3baf-4812-c88d-08d5901dea74 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0501MB2003 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Petr Machata Move the function so that it can be called without forward declaration from a function that will be added in a follow-up patch. Fixes: 0063587d3587 ("mlxsw: spectrum: Support decap-only IP-in-IP tunnels") Signed-off-by: Petr Machata Signed-off-by: Ido Schimmel --- .../net/ethernet/mellanox/mlxsw/spectrum_router.c | 54 +++++++++++----------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c b/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c index f7948e983637..a7d0adf068ec 100644 --- a/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c +++ b/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c @@ -1380,6 +1380,33 @@ mlxsw_sp_ipip_entry_ol_up_event(struct mlxsw_sp *mlxsw_sp, decap_fib_entry); } +static int +mlxsw_sp_rif_ipip_lb_op(struct mlxsw_sp_rif_ipip_lb *lb_rif, + struct mlxsw_sp_vr *ul_vr, bool enable) +{ + struct mlxsw_sp_rif_ipip_lb_config lb_cf = lb_rif->lb_config; + struct mlxsw_sp_rif *rif = &lb_rif->common; + struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; + char ritr_pl[MLXSW_REG_RITR_LEN]; + u32 saddr4; + + switch (lb_cf.ul_protocol) { + case MLXSW_SP_L3_PROTO_IPV4: + saddr4 = be32_to_cpu(lb_cf.saddr.addr4); + mlxsw_reg_ritr_pack(ritr_pl, enable, MLXSW_REG_RITR_LOOPBACK_IF, + rif->rif_index, rif->vr_id, rif->dev->mtu); + mlxsw_reg_ritr_loopback_ipip4_pack(ritr_pl, lb_cf.lb_ipipt, + MLXSW_REG_RITR_LOOPBACK_IPIP_OPTIONS_GRE_KEY_PRESET, + ul_vr->id, saddr4, lb_cf.okey); + break; + + case MLXSW_SP_L3_PROTO_IPV6: + return -EAFNOSUPPORT; + } + + return mlxsw_reg_write(mlxsw_sp->core, MLXSW_REG(ritr), ritr_pl); +} + static void mlxsw_sp_netdevice_ipip_ol_up_event(struct mlxsw_sp *mlxsw_sp, struct net_device *ol_dev) { @@ -6843,33 +6870,6 @@ mlxsw_sp_rif_ipip_lb_setup(struct mlxsw_sp_rif *rif, rif_lb->lb_config = params_lb->lb_config; } -static int -mlxsw_sp_rif_ipip_lb_op(struct mlxsw_sp_rif_ipip_lb *lb_rif, - struct mlxsw_sp_vr *ul_vr, bool enable) -{ - struct mlxsw_sp_rif_ipip_lb_config lb_cf = lb_rif->lb_config; - struct mlxsw_sp_rif *rif = &lb_rif->common; - struct mlxsw_sp *mlxsw_sp = rif->mlxsw_sp; - char ritr_pl[MLXSW_REG_RITR_LEN]; - u32 saddr4; - - switch (lb_cf.ul_protocol) { - case MLXSW_SP_L3_PROTO_IPV4: - saddr4 = be32_to_cpu(lb_cf.saddr.addr4); - mlxsw_reg_ritr_pack(ritr_pl, enable, MLXSW_REG_RITR_LOOPBACK_IF, - rif->rif_index, rif->vr_id, rif->dev->mtu); - mlxsw_reg_ritr_loopback_ipip4_pack(ritr_pl, lb_cf.lb_ipipt, - MLXSW_REG_RITR_LOOPBACK_IPIP_OPTIONS_GRE_KEY_PRESET, - ul_vr->id, saddr4, lb_cf.okey); - break; - - case MLXSW_SP_L3_PROTO_IPV6: - return -EAFNOSUPPORT; - } - - return mlxsw_reg_write(mlxsw_sp->core, MLXSW_REG(ritr), ritr_pl); -} - static int mlxsw_sp_rif_ipip_lb_configure(struct mlxsw_sp_rif *rif) {