Re: [PATCH v2] reset: add support for non-DT systems

From: Sekhar Nori
Date: Wed Feb 14 2018 - 10:00:55 EST


On Wednesday 14 February 2018 12:09 AM, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx>
>
> The reset framework only supports device-tree. There are some platforms
> however, which need to use it even in legacy, board-file based mode.
>
> An example of such architecture is the DaVinci family of SoCs which
> supports both device tree and legacy boot modes and we don't want to
> introduce any regressions.
>
> We're currently working on converting the platform from its hand-crafted
> clock API to using the common clock framework. Part of the overhaul will
> be representing the chip's power sleep controller's reset lines using
> the reset framework.
>
> This changeset extends the core reset code with a new field in the
> reset controller struct which contains an array of lookup entries. Each
> entry contains the device name and an additional, optional identifier
> string.
>
> Drivers can register a set of reset lines using this lookup table and
> concerned devices can access them using the regular reset_control API.
>
> This new function is only called as a fallback in case the of_node
> field is NULL and doesn't change anything for current users.
>
> Tested with a dummy reset driver with several lookup entries.
>
> An example lookup table can look like this:
>
> static const struct reset_lookup foobar_reset_lookup[] = {
> [FOO_RESET] = { .dev = "foo", .id = "foo_id" },
> [BAR_RESET] = { .dev = "bar", .id = NULL },
> { }
> };
>
> where FOO_RESET and BAR_RESET will correspond with the id parameters
> of reset callbacks.
>
> Cc: Sekhar Nori <nsekhar@xxxxxx>
> Cc: Kevin Hilman <khilman@xxxxxxxxxxxx>
> Cc: David Lechner <david@xxxxxxxxxxxxxx>
> Signed-off-by: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx>

This should really help get rid of the private
davinci_clk_reset_assert() API. Thanks for getting this done.

I noticed that the array based API still remains DT only. Its not a
concern for DaVinci so it can probably be supported when its really needed.

Reviewed-by: Sekhar Nori <nsekhar@xxxxxx>

Thanks,
Sekhar