[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20090805.131723.120803503.davem@davemloft.net>
Date: Wed, 05 Aug 2009 13:17:23 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: bhutchings@...arflare.com
Cc: ajitk@...verengines.com, jgarzik@...ox.com, netdev@...r.kernel.org
Subject: Re: [PATCH net-next-2.6] net: Changes to support the "-f" option
of ethtool.
From: Ben Hutchings <bhutchings@...arflare.com>
Date: Wed, 05 Aug 2009 14:06:07 +0100
> request_firmware() is meant for loading firmware that is stored in
> volatile memory (RAM) on the device and therefore needs to be installed
> on the host.
>
> When the firmware is stored in flash on the device, updates only need to
> be used once, and there should be no need to install them on the host.
> So request_firmware() does not seem suitable.
>
> I believe the ethtool EEPROM commands were meant for updating firmware
> on NICs. Although they assume random access and so are unsuitable for
> flash-based firmware, they might be a better model for adding flash
> update commands. However, this command set is already available through
> the MTD device class, which is what we use for firmware update as far as
> possible. Not only does this allow for an arbitrary number of separate
> firmware partitions per network device, but it can be used in an
> out-of-tree driver for older kernel versions.
I mostly agree with this. Either use MTD or create an ethtool
operation that explicitly specifies the file to flash onto the
chip. If you want, I suppose you can take no explicit file
specification to mean "whatever firmware was loaded into the
chip by the driver and is running right now"
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists