On Mon, 9 May 2022 00:29:30 -0500 Samuel Holland <sam...@sholland.org> wrote:
Hi Samuel, > This series fixes an issue with out-of-bounds access to the gate array > (patches 1-2), uses the rearranged array size information to remove a > bunch of duplicate code (patches 3-4), and then simplifies how the reset > driver is bound (patches 5-7). > > The original motivation for these changes was adding a driver for the > legacy A31/A23/A33 PRCM binding (which I will send separately), and > trying to use OF_PLATDATA in SPL (which did not work out). But I think > at least some of the cleanup is worth applying on its own. > > Patch 4 is generally the same change I made between v1 and v2 of the > pinctrl series, using some #ifdefs to share a U_BOOT_DRIVER. It's not > quite as clean as the pinctrl case, because here the SoC-specific parts > are in different files, so all of the CCU descriptors have to be global. so I skimmed over the series and quite like it: the negative diffstat speaks for itself ;-) I need to go over each individual patch with more scrutiny (unless someone beats me to it), but assuming no issues, I am planning on taking this for the next merge window. You mention out-of-bounds accesses: did you actually encounter one with the old or new DTs, that would need fixing now? Cheers, Andre > Samuel Holland (7): > clk: sunxi: Store the array sizes in the CCU descriptor > clk: sunxi: Prevent out-of-bounds gate array access > reset: sunxi: Get the reset count from the CCU descriptor > clk: sunxi: Use a single driver for all variants > clk: sunxi: Convert driver private data to platform data > reset: sunxi: Convert driver private data to platform data > reset: sunxi: Reuse the platform data from the clock driver > > drivers/clk/sunxi/clk_a10.c | 27 +----- > drivers/clk/sunxi/clk_a10s.c | 27 +----- > drivers/clk/sunxi/clk_a23.c | 27 +----- > drivers/clk/sunxi/clk_a31.c | 25 +---- > drivers/clk/sunxi/clk_a31_r.c | 29 +----- > drivers/clk/sunxi/clk_a64.c | 25 +---- > drivers/clk/sunxi/clk_a80.c | 36 ++------ > drivers/clk/sunxi/clk_a83t.c | 25 +---- > drivers/clk/sunxi/clk_h3.c | 27 +----- > drivers/clk/sunxi/clk_h6.c | 25 +---- > drivers/clk/sunxi/clk_h616.c | 25 +---- > drivers/clk/sunxi/clk_h6_r.c | 27 +----- > drivers/clk/sunxi/clk_r40.c | 25 +---- > drivers/clk/sunxi/clk_sunxi.c | 168 ++++++++++++++++++++++++++++++---- > drivers/clk/sunxi/clk_v3s.c | 27 +----- > drivers/reset/reset-sunxi.c | 55 ++--------- > include/clk/sunxi.h | 21 +---- > 17 files changed, 208 insertions(+), 413 deletions(-) >