Re: [PATCH v6 6/7] clk: baikal-t1: Add DDR/PCIe directly controlled resets support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jul 11, 2022 at 03:23:48PM +0200, Philipp Zabel wrote:
> On Fri, Jul 08, 2022 at 10:27:24PM +0300, Serge Semin wrote:
> > Aside with a set of the trigger-like resets Baikal-T1 CCU provides two
> > additional blocks with directly controlled reset signals. In particular it
> > concerns DDR full and initial resets and various PCIe sub-domains resets.
> > Let's add the direct reset assertion/de-assertion of the corresponding
> > flags support into the Baikal-T1 CCU driver then. It will be required at
> > least for the PCIe platform driver. Obviously the DDR controller isn't
> > supposed to be fully reset in the kernel, so the corresponding controls
> > are added just for the sake of the interface implementation completeness.
> > 
> > Signed-off-by: Serge Semin <Sergey.Semin@xxxxxxxxxxxxxxxxxxxx>
> > 
> > ---
> > 
> > Changelog v6:
> > - Refactor the code to support the linear reset IDs only. (@Philipp)
> > ---
> >  drivers/clk/baikal-t1/ccu-rst.c     | 67 +++++++++++++++++++++++++++++
> >  drivers/clk/baikal-t1/ccu-rst.h     | 10 +++++
> >  include/dt-bindings/reset/bt1-ccu.h |  9 ++++
> >  3 files changed, 86 insertions(+)
> > 
> > diff --git a/drivers/clk/baikal-t1/ccu-rst.c b/drivers/clk/baikal-t1/ccu-rst.c
> > index 8fd40810d24e..c20aa3e07afb 100644
> > --- a/drivers/clk/baikal-t1/ccu-rst.c
> > +++ b/drivers/clk/baikal-t1/ccu-rst.c
> > @@ -35,18 +35,29 @@
> >  #define CCU_AXI_HWA_BASE		0x054
> >  #define CCU_AXI_SRAM_BASE		0x058
> >  
> > +#define CCU_SYS_DDR_BASE		0x02c
> >  #define CCU_SYS_SATA_REF_BASE		0x060
> >  #define CCU_SYS_APB_BASE		0x064
> > +#define CCU_SYS_PCIE_BASE		0x144
> >  
> >  #define CCU_RST_DELAY_US		1
> >  
> >  #define CCU_RST_TRIG(_base, _ofs)		\
> >  	{					\
> > +		.type = CCU_RST_TRIG,		\
> > +		.base = _base,			\
> > +		.mask = BIT(_ofs),		\
> > +	}
> > +
> > +#define CCU_RST_DIR(_base, _ofs)		\
> > +	{					\
> > +		.type = CCU_RST_DIR,		\
> >  		.base = _base,			\
> >  		.mask = BIT(_ofs),		\
> >  	}
> >  
> >  struct ccu_rst_info {
> > +	enum ccu_rst_type type;
> >  	unsigned int base;
> >  	unsigned int mask;
> >  };
> > @@ -77,8 +88,18 @@ static const struct ccu_rst_info axi_rst_info[] = {
> >   * well while the Linux kernel is working.
> >   */
> >  static const struct ccu_rst_info sys_rst_info[] = {
> > +
> 

> Please drop this empty line. Otherwise,

Don't know how come this has got into the patch. Thanks for noticing
this. I'll fix it in v7.

> 
> Reviewed-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>

Many thanks for review, Philipp. I really appreciate this.

-Sergey

> 
> regards
> Philipp



[Index of Archives]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux