Re: [RFC PATCH 00/13] firmware loader: introduce cache/uncache firmware

From: Ming Lei
Date: Tue Jul 24 2012 - 13:08:33 EST


On Wed, Jul 25, 2012 at 1:00 AM, Ming Lei <ming.lei@xxxxxxxxxxxxx> wrote:
> Hi,
>
> In [1][2], the problem below has been discussed for some time:
>
> device's firmware may be lost during suspend/resume
> cycle because device is unplugged and plugged again
> or device experiences system power loss in the period.
> but during resume path, system is still not ready(process
> frozen, rootfs not usable, ...) to complete loading firmware
> from user space for the device
>
> The conclusion is that caching firmware during suspend/resume cycle
> is capable of solving the problem.
>
> This patchset implements cache/uncache firmware mechanism,
> and apply the mechnism to cache device's firmware in kernel memory
> space automatically during suspend/resume cyclye, so device can
> load its firmware easily during resume path. When resume is completed
> and system is ready, the cached firmwares will be removed from
> kernel memory later.

$git diff --stat
drivers/base/devres.c | 42 +++
drivers/base/firmware_class.c | 749 +++++++++++++++++++++++++++++++++++------
include/linux/device.h | 3 +
include/linux/firmware.h | 15 +
4 files changed, 705 insertions(+), 104 deletions(-)


Thanks,
--
Ming Lei
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/