Received: by 2002:ab2:715a:0:b0:1fd:c064:50c with SMTP id l26csp59287lqm; Mon, 10 Jun 2024 12:36:29 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCUxLApbiqYm/xnlSRu96ebQ6aPrXiFVkcIg53CzwU7DN5NgL6j/KgnxPfI7KQqgcb2+tFayadXCR9sI3R2qFeqVo9rhpNuq+xUOnhqlcA== X-Google-Smtp-Source: AGHT+IFiXjjJ/eamuCys1RAh9cQleA8WSdLbEloKSNxHRESIxkQV3BV8en2FbyShvd7qe/9B2HNd X-Received: by 2002:a17:902:c1d2:b0:1f6:ecf8:65e4 with SMTP id d9443c01a7336-1f6ecf868bfmr82193155ad.15.1718048189596; Mon, 10 Jun 2024 12:36:29 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1718048189; cv=pass; d=google.com; s=arc-20160816; b=AKPbP7DtRDeDn40CyzDlTV3cFj81srLdM5rNb2CaL9ac543DLwBOP1Anfh0QSEUpw+ PsilDM5x7qozhbJpHK0vG4Nspdbu0iJNmn/uc2YA/d6GYiWPz1bksN4SzRJEl1u0fTxz bcyd58gzVU+Qc2MkWkZePS1hsAFqvFCzbygJOIv1QwBbqE+Y928my8paQkyFjRAnBYlL oNDO5beb46XuxK56YjPy79AYfElTwpFTrlCYDAzX92wZ+Ys2HB2ZAPzVDPGub03Nivtq jsj9xvstk69B7kVGdt7Wg4jcNdpt0t8vOu58/j5IDegiibUYSYZgTb8+aD6ndcqDmLOi EPZA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=in-reply-to:content-disposition:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:message-id:subject:cc :to:from:date:dkim-signature; bh=jYzuoLcn+paF8D6hwBRNWpyNSs/pBEMZxZI5thdD4JQ=; fh=2u307kypvUpdycO4HI5NTwrKe+pSyavPruKJfQYcgTA=; b=oHifnWo66vn6dKGpeanoWrfBM1oU59v+Y53Rb4OxS7RnwU48wdgMJq6j31hBVuGaa+ wUVpCCIu8YUsSmzgQ2nZh6wg3bIoJrN8T6nIIGY7PsJGB/g08/OOQZ8ZzDoXML9V0+vi MzepJnwvHU0zwXNnMw5AyhbhyJ86iXvA5WdlqUfibZTwEbIy1yMhyb4dFoJC/Shdmkrl AMQ0lhRqESQ37dYABQLH2h0jYAfzsMWI6DOi9cfbUhtzaKCOc607lTgeHUIBGy9Vl++j 3NPpbztRTU0VoqbfDoVT/ZjGNZEef6AH89WDe9162Xx3t1cQsjN5BCa4mAZMfr4CmpPb jJSA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@lunn.ch header.s=20171124 header.b="CeU/QKAf"; arc=pass (i=1 spf=pass spfdomain=lunn.ch dkim=pass dkdomain=lunn.ch dmarc=pass fromdomain=lunn.ch); spf=pass (google.com: domain of linux-kernel+bounces-208806-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-208806-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=lunn.ch Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [2604:1380:45e3:2400::1]) by mx.google.com with ESMTPS id d9443c01a7336-1f6dfc40c42si58303015ad.52.2024.06.10.12.36.29 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 10 Jun 2024 12:36:29 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-208806-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) client-ip=2604:1380:45e3:2400::1; Authentication-Results: mx.google.com; dkim=pass header.i=@lunn.ch header.s=20171124 header.b="CeU/QKAf"; arc=pass (i=1 spf=pass spfdomain=lunn.ch dkim=pass dkdomain=lunn.ch dmarc=pass fromdomain=lunn.ch); spf=pass (google.com: domain of linux-kernel+bounces-208806-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-208806-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=lunn.ch Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 2FE492819B9 for ; Mon, 10 Jun 2024 19:36:29 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id DAF9314E2E3; Mon, 10 Jun 2024 19:36:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=lunn.ch header.i=@lunn.ch header.b="CeU/QKAf" Received: from vps0.lunn.ch (vps0.lunn.ch [156.67.10.101]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5A77B2230F; Mon, 10 Jun 2024 19:36:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=156.67.10.101 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718048181; cv=none; b=Ce8BZhBnWkb5lSRWXQWC9IFpXpMsFeS9jZvStmI6/GF3rYH0BPDtz6sVCGg1HG4nTQ+LBcCHBD8MBaV561FEzdRcxQXSZ7FnCr/auLGZ2g7urtwK3e4Sm7uTS7PK3mZMppM3FWC/Ny3ibECK9ZhrD3ZBb6TYg+44ngPupDTZpNs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718048181; c=relaxed/simple; bh=tMS6tBLh/D5dVlFWpkRUR8GjedWgB0bTz59xkhYVqWA=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=kTYIw/aI/ANPekgx7tnRmPwvDc5r1Yyhz6hLZRGyS5Fmx3r+ZnG56uuaZJoaaW237XNGDhghM+PHOVMo6BHEkQZv3sRsQTtSKBh8oRwae+bqNTfZXDt5h4e5YLPoPUhHqttnhcp7RbBAJA0dxF34EoKVvm/jAjlrVgBHv9LBb3E= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=lunn.ch; spf=pass smtp.mailfrom=lunn.ch; dkim=pass (1024-bit key) header.d=lunn.ch header.i=@lunn.ch header.b=CeU/QKAf; arc=none smtp.client-ip=156.67.10.101 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=lunn.ch Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=lunn.ch DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lunn.ch; s=20171124; h=In-Reply-To:Content-Disposition:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:From:Sender:Reply-To:Subject: Date:Message-ID:To:Cc:MIME-Version:Content-Type:Content-Transfer-Encoding: Content-ID:Content-Description:Content-Disposition:In-Reply-To:References; bh=jYzuoLcn+paF8D6hwBRNWpyNSs/pBEMZxZI5thdD4JQ=; b=CeU/QKAfY8l0/tShQA7/RW8iAi P8z6WQPAnlL5zdyFAvbme/u2okBddIQLYPCZxGpylS38HYN3FgcpYYE8elpC88906sa5drmszmDvJ 1K5xkKm7pfk8O6Ih3yMTBhRnGHQCL4YbFnSsU43lLy2sx06AejdsDEbKD75HCapgR0dc=; Received: from andrew by vps0.lunn.ch with local (Exim 4.94.2) (envelope-from ) id 1sGkoK-00HK7b-71; Mon, 10 Jun 2024 21:36:08 +0200 Date: Mon, 10 Jun 2024 21:36:08 +0200 From: Andrew Lunn To: Richard chien Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, jesse.brandeburg@intel.com, anthony.l.nguyen@intel.com, intel-wired-lan@lists.osuosl.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Richard chien Subject: Re: [PATCH] ixgbe: Add support for firmware update Message-ID: References: <20240609085735.6253-1-richard.chien@hpe.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240609085735.6253-1-richard.chien@hpe.com> On Sun, Jun 09, 2024 at 04:57:35PM +0800, Richard chien wrote: > This patch adds support for firmware update to the in-tree ixgbe driver and it is actually a port > from the out-of-tree ixgbe driver. In-band firmware update is one of the essential system maintenance > tasks. To simplify this task, the Intel online firmware update utility provides a common interface > that works across different Intel NICs running the igb/ixgbe/i40e drivers. Unfortunately, the in-tree > igb and ixgbe drivers are unable to support this firmware update utility, causing problems for > enterprise users who do not or cannot use out-of-distro drivers due to security and various other > reasons (e.g. commercial Linux distros do not provide technical support for out-of-distro drivers). > As a result, getting this feature into the in-tree ixgbe driver is highly desirable. > > Signed-off-by: Richard chien How about you work on one driver at a time, to learn about the processes for submitting to the Linux kernel. https://www.kernel.org/doc/html/latest/process/maintainer-netdev.html#netdev-faq https://docs.kernel.org/process/submitting-patches.html https://www.kernel.org/doc/html/latest/process/coding-style.html I would also think about why Intel has not submitted this code before? Maybe because it does things the wrong way? Please look at how other Ethernet drivers support firmware. Is it the same? It might be you need to throw away this code and reimplement it to mainline standards, maybe using devlink flash, or ethtool -f. One additional question. Is the firmware part of linux-firmware? Given this is Intel, i expect the firmware is distributeable, but have they distributed it? Andrew