From patchwork Wed Nov 30 12:36:12 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 27772 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp900835wrr; Wed, 30 Nov 2022 04:43:40 -0800 (PST) X-Google-Smtp-Source: AA0mqf42fP+nm1l5eaDBZ1ZN5IScdYnRMCh8Ht60tSWUA4RP57Hd//fZOHRRCFdrbKEcHALdsQjm X-Received: by 2002:a05:6402:1a:b0:467:30ad:c4ca with SMTP id d26-20020a056402001a00b0046730adc4camr55892970edu.285.1669812220255; Wed, 30 Nov 2022 04:43:40 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669812220; cv=none; d=google.com; s=arc-20160816; b=krsZ7pPs7WbYHzihPW9DYUYA19Xy2Z6qeiC/6wa49urf7GY279NRC98mFoNGFWYIMw Vqh8hyYaZlrhSWFObZd9t739Yn9Ohh247KzHYNwBYMWLyCQd9yhDtXGjWf3piVX7h/mx lO3Lgj8xkLMF5oAuUlZbqsr9VTDqwY8gsY+LT9xzdPRdGMVltrUVs12rK7m8z2wqJ2ie FAI5mL15YyPpDAJuUwp7zp9FZ0955Di5mK4I+hZl7fdBQkk67iscnogdXYJGmafT2yXR 7emdq4T3sVfwiQjAaY2+AMaKJpIDiQkEvG6Lw7Do+kIuxtM5MFpUEOgiKHRZQs7S/1wp YKtQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=gGmXngTpB6YShIu+UzGUUVfzXegbIjlvViM/z+vVBnA=; b=r5eTg4Ia1g1LSOWXjBZUCwCn0YQYEg4sS4gamj18P902ZSxpekPn4phS3DfKFS31eO p0Z68T5Nrc4kyflVjgQ1yoP/Llbn4FEtOjEc8+ZxpVaw83a//VDAT2kaavGt8N7jIGNj Z2SuJXRp0nMGxb/mehsBTmSldPW4nbN26g/q1pVxVpHSoXMhv3TcOPfd4UhhbDMWIwYT M0JNz1DLGpDxEJXeAqVuOLQOy+mjLllwcPpst7rFcSRxF07r8VTeK4WdJK7RPooaIXNh PH3OYhFvsPkXjL2q6mWbYk8Lxb3E5X76mIYbXxxeboxnjxRaS7DvURYD8NNsckWCk9LR PwdQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=XEm+d+JB; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id n10-20020a05640205ca00b0046b67e245dasi1292753edx.121.2022.11.30.04.43.16; Wed, 30 Nov 2022 04:43:40 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=XEm+d+JB; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234890AbiK3Mfy (ORCPT + 99 others); Wed, 30 Nov 2022 07:35:54 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48070 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229921AbiK3Mfw (ORCPT ); Wed, 30 Nov 2022 07:35:52 -0500 Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C67DD286D5; Wed, 30 Nov 2022 04:35:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1669811751; x=1701347751; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=Y6YImtjFUGnItblf4QVHZN5K6aqgx8h21CJrsd1H+SE=; b=XEm+d+JBtoD9rSObnK5zcCOs24FkXFzLd87CFkftSQWyyaD+tydv7dNf ypd/28Dwwye5A3QMDMc5l4SUZqEFURbdLhZyv04+lWHtkZrJTZNO9BwIt gEA84+sXG8fDyv1dF74B+j0gk9C9Nxj6WaTebUz0awYABjBmXIT3j+GNg xtmsCSjFC5YqhbQan80VWbRCiHfXmIhnj9xbNETvRPhgA1ezy/WcyBoZX h9kVPIrjtFEZ8EM7yOszy5LuGmJtLyKtMON07b3VwP6xpGFLQG5LtSS+l 6h43fv+X0ZWwz9jLsZ1lfICuVqO8ZHODNabn8SIt1+lXznySoQ4sA2Sna g==; X-IronPort-AV: E=McAfee;i="6500,9779,10546"; a="315412993" X-IronPort-AV: E=Sophos;i="5.96,206,1665471600"; d="scan'208";a="315412993" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Nov 2022 04:35:51 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10546"; a="621868377" X-IronPort-AV: E=Sophos;i="5.96,206,1665471600"; d="scan'208";a="621868377" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga006.jf.intel.com with ESMTP; 30 Nov 2022 04:35:48 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id E31F010E; Wed, 30 Nov 2022 14:36:14 +0200 (EET) From: Andy Shevchenko To: netdev@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Michael Jamet , Mika Westerberg , Yehezkel Bernat , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Andy Shevchenko Subject: [PATCH net-next v3 1/2] net: thunderbolt: Switch from __maybe_unused to pm_sleep_ptr() etc Date: Wed, 30 Nov 2022 14:36:12 +0200 Message-Id: <20221130123613.20829-1-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.35.1 MIME-Version: 1.0 X-Spam-Status: No, score=-7.0 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_HI,SPF_HELO_NONE, SPF_NONE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1750925018800455346?= X-GMAIL-MSGID: =?utf-8?q?1750925018800455346?= Letting the compiler remove these functions when the kernel is built without CONFIG_PM_SLEEP support is simpler and less heavier for builds than the use of __maybe_unused attributes. Signed-off-by: Andy Shevchenko Acked-by: Mika Westerberg --- v3: sent proper patch v2: added tag (Mika) drivers/net/thunderbolt.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/drivers/net/thunderbolt.c b/drivers/net/thunderbolt.c index b20cd370b7f2..c73d419f1456 100644 --- a/drivers/net/thunderbolt.c +++ b/drivers/net/thunderbolt.c @@ -1319,7 +1319,7 @@ static void tbnet_shutdown(struct tb_service *svc) tbnet_tear_down(tb_service_get_drvdata(svc), true); } -static int __maybe_unused tbnet_suspend(struct device *dev) +static int tbnet_suspend(struct device *dev) { struct tb_service *svc = tb_to_service(dev); struct tbnet *net = tb_service_get_drvdata(svc); @@ -1334,7 +1334,7 @@ static int __maybe_unused tbnet_suspend(struct device *dev) return 0; } -static int __maybe_unused tbnet_resume(struct device *dev) +static int tbnet_resume(struct device *dev) { struct tb_service *svc = tb_to_service(dev); struct tbnet *net = tb_service_get_drvdata(svc); @@ -1350,9 +1350,7 @@ static int __maybe_unused tbnet_resume(struct device *dev) return 0; } -static const struct dev_pm_ops tbnet_pm_ops = { - SET_SYSTEM_SLEEP_PM_OPS(tbnet_suspend, tbnet_resume) -}; +static DEFINE_SIMPLE_DEV_PM_OPS(tbnet_pm_ops, tbnet_suspend, tbnet_resume); static const struct tb_service_id tbnet_ids[] = { { TB_SERVICE("network", 1) }, @@ -1364,7 +1362,7 @@ static struct tb_service_driver tbnet_driver = { .driver = { .owner = THIS_MODULE, .name = "thunderbolt-net", - .pm = &tbnet_pm_ops, + .pm = pm_sleep_ptr(&tbnet_pm_ops), }, .probe = tbnet_probe, .remove = tbnet_remove, From patchwork Wed Nov 30 12:36:13 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 27771 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp900678wrr; Wed, 30 Nov 2022 04:43:18 -0800 (PST) X-Google-Smtp-Source: AA0mqf5EZ1oPJMeYXuUy1r7gLXwFYeGdzbGKn07mX2fBzBC1WTM05bskAlYv+K+urlmdWprD0o5B X-Received: by 2002:aa7:d659:0:b0:46b:1687:2e5d with SMTP id v25-20020aa7d659000000b0046b16872e5dmr14605635edr.136.1669812198553; Wed, 30 Nov 2022 04:43:18 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669812198; cv=none; d=google.com; s=arc-20160816; b=GGMxKQTZgP9d+hUCuNxL2AOMbvVnErbAMCx93oQa4z9hKBDIGaWFfsXdJ/TTvsIdUJ eWv3OjDqKQu9h+YucEKyXBvszIpoQ3ktsRwoEj8dToiMVmCyq3PBa4Jb7g4cDhewyoIn hruv3NT4I7ccFx1kWa1vSN42wXi/jN/aKK4k6uOBezjSR2jVh70JloJ85Yb/UK/ps4a/ DYJbpl9VCiVpWM1z6fZLqoP7AOMX8NV6oCpjwkQ9f//4zo7R6isesGpKOsbJ4QLnWXJU 8r2hNu6LCr7YDNjktSytGuTwZ/wmORCLfZNzfL5gywBvQ4+Q1sh+oqztXykTZv8V55J/ zZzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=goQU4tlmdSYdQhHdXOiePyV1Aq/bcGmp257hARBshBw=; b=R/NzdqgvzYLWSSqO8rQkiYFpMPg7DVb/wyEykIF7WzuduAO2zss1Kg2KThjG2rbSr0 XfNkkXYZBAbuhXNjdldmbURGUZ0b+9+mPjeo8bXLJKjA8NSgHXNnfj8o5EZmtAb47aGy yNLoNrorfIHJzK8oh0eEVIc6+FH4HaLq6jVUA52JvJFnLg7Q/omGVW7k6qbX3jSOgMkl orXyB/2G34O1t7rqKlXwbxeGn4kwWZWsJ9x/S1ZFjRiZdOgJR740v8gFxvdg+6atkloZ VLwIwS2rzRtmUwwJ5zZ3HpFos69qZNlhr5H0SZiFcER+gt3C56EGVcHYD8LUZhVj//jX WL0Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=hp9eV7KL; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id sc28-20020a1709078a1c00b007878144285csi1161229ejc.314.2022.11.30.04.42.54; Wed, 30 Nov 2022 04:43:18 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=hp9eV7KL; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234939AbiK3Mf6 (ORCPT + 99 others); Wed, 30 Nov 2022 07:35:58 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48080 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229929AbiK3Mfw (ORCPT ); Wed, 30 Nov 2022 07:35:52 -0500 Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6F2A67722B; Wed, 30 Nov 2022 04:35:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1669811752; x=1701347752; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=RgyhU5bmK96xArXf/6a/u43HPi5BukzWqwYI+tdpOpA=; b=hp9eV7KLqmJnZijuhtn10/C6xUvAXeXj4MdMEGA1Gzr1Tyi1t3ZpuBlG gwx7sTVYG849cm/kSFKG/aWOcI92MtwEJ2sQICvOF3b7Ocd4I/jgM0foj dLCbOlDsxZWtteUgA/0c+bIckvvk+/rmS/I1XC7QKq4QZAaWe7XW47AIm r/HBWCs28Yhx/TgQIsDY138Mm+ytbAVFq5raeJQyI3OYfTyothr7eMm+U s2SP5109Ib2JDsDjr5E8ljyODGqMJiWviXiAOMswiYYXY6hx5tNXviqa9 YdjRbqjmoxj9Ym7ft2hDic3fKeK8UlgI0rkB9P5C8gHvDRDyA5HzJ2gFA Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10546"; a="315413002" X-IronPort-AV: E=Sophos;i="5.96,206,1665471600"; d="scan'208";a="315413002" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Nov 2022 04:35:51 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10546"; a="621868380" X-IronPort-AV: E=Sophos;i="5.96,206,1665471600"; d="scan'208";a="621868380" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga006.jf.intel.com with ESMTP; 30 Nov 2022 04:35:48 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id ECC5D6A; Wed, 30 Nov 2022 14:36:14 +0200 (EET) From: Andy Shevchenko To: netdev@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Michael Jamet , Mika Westerberg , Yehezkel Bernat , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Andy Shevchenko Subject: [PATCH net-next v3 2/2] net: thunderbolt: Use bitwise types in the struct thunderbolt_ip_frame_header Date: Wed, 30 Nov 2022 14:36:13 +0200 Message-Id: <20221130123613.20829-2-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20221130123613.20829-1-andriy.shevchenko@linux.intel.com> References: <20221130123613.20829-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-7.0 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_HI,SPF_HELO_NONE, SPF_NONE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1750924996113120530?= X-GMAIL-MSGID: =?utf-8?q?1750924996113120530?= The main usage of the struct thunderbolt_ip_frame_header is to handle the packets on the media layer. The header is bound to the protocol in which the byte ordering is crucial. However the data type definition doesn't use that and sparse is unhappy, for example (17 altogether): .../thunderbolt.c:718:23: warning: cast to restricted __le32 .../thunderbolt.c:966:42: warning: incorrect type in assignment (different base types) .../thunderbolt.c:966:42: expected unsigned int [usertype] frame_count .../thunderbolt.c:966:42: got restricted __le32 [usertype] Switch to the bitwise types in the struct thunderbolt_ip_frame_header to reduce this, but not completely solving (9 left), because the same data type is used for Rx header handled locally (in CPU byte order). Signed-off-by: Andy Shevchenko Acked-by: Mika Westerberg --- v3: no changes v2: changed only types without splitting the data type (Mika) drivers/net/thunderbolt.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/net/thunderbolt.c b/drivers/net/thunderbolt.c index c73d419f1456..4ed7f5b547e3 100644 --- a/drivers/net/thunderbolt.c +++ b/drivers/net/thunderbolt.c @@ -58,10 +58,10 @@ * supported then @frame_id is filled, otherwise it stays %0. */ struct thunderbolt_ip_frame_header { - u32 frame_size; - u16 frame_index; - u16 frame_id; - u32 frame_count; + __le32 frame_size; + __le16 frame_index; + __le16 frame_id; + __le32 frame_count; }; enum thunderbolt_ip_frame_pdf {