diff options
author | Masahiro Yamada <yamada.masahiro@socionext.com> | 2018-04-19 12:14:01 +0900 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2018-05-07 15:15:27 -0400 |
commit | 8c1de5e08b845eb71c9a247d16bc81ebdab0598d (patch) | |
tree | 3cfa1a137c58f01b0a658bc53d0efec5c1734aca /include | |
parent | 9ce751a6f5d6683b0fabd3cfc62da7e9f30bc57f (diff) | |
download | u-boot-8c1de5e08b845eb71c9a247d16bc81ebdab0598d.tar.gz u-boot-8c1de5e08b845eb71c9a247d16bc81ebdab0598d.tar.xz u-boot-8c1de5e08b845eb71c9a247d16bc81ebdab0598d.zip |
regmap: clean up regmap allocation
Putting zero length array at the end of struct is a common technique
to embed arbitrary length of members. There is no good reason to let
regmap_alloc_count() branch by "if (count <= 1)".
As far as I understood the code, regmap->base is an alias of
regmap->ranges[0].start, but it is not helpful but make the code
just ugly.
Rename regmap_alloc_count() to regmap_alloc() because the _count
suffix seems pointless.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[trini: fixup cpu_info-rcar.c]
Signed-off-by: Tom Rini <trini@konsulko.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/regmap.h | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/include/regmap.h b/include/regmap.h index 8d18b07c30..d827a0bd52 100644 --- a/include/regmap.h +++ b/include/regmap.h @@ -21,15 +21,12 @@ struct regmap_range { /** * struct regmap - a way of accessing hardware/bus registers * - * @base: Base address of register map * @range_count: Number of ranges available within the map - * @range: Pointer to the list of ranges, allocated if @range_count > 1 - * @base_range: If @range_count is <= 1, @range points here + * @ranges: Array of ranges */ struct regmap { - phys_addr_t base; int range_count; - struct regmap_range *range, base_range; + struct regmap_range ranges[0]; }; /* |