On Tue, Jan 19, 2021 at 9:21 AM Rasmus Villemoes <rasmus.villem...@prevas.dk> wrote: > > Add a helper that takes a virtual address rather than the muram > offset. This will be used in a couple of places to avoid having to > store both the offset and the virtual address, as well as removing > NULL checks from the callers. > > Signed-off-by: Rasmus Villemoes <rasmus.villem...@prevas.dk>
Acked-by: Li Yang <leoyang...@nxp.com> > --- > drivers/soc/fsl/qe/qe_common.c | 12 ++++++++++++ > include/soc/fsl/qe/qe.h | 5 +++++ > 2 files changed, 17 insertions(+) > > diff --git a/drivers/soc/fsl/qe/qe_common.c b/drivers/soc/fsl/qe/qe_common.c > index 303cc2f5eb4a..448ef7f5321a 100644 > --- a/drivers/soc/fsl/qe/qe_common.c > +++ b/drivers/soc/fsl/qe/qe_common.c > @@ -238,3 +238,15 @@ dma_addr_t cpm_muram_dma(void __iomem *addr) > return muram_pbase + (addr - muram_vbase); > } > EXPORT_SYMBOL(cpm_muram_dma); > + > +/* > + * As cpm_muram_free, but takes the virtual address rather than the > + * muram offset. > + */ > +void cpm_muram_free_addr(const void __iomem *addr) > +{ > + if (!addr) > + return; > + cpm_muram_free(cpm_muram_offset(addr)); > +} > +EXPORT_SYMBOL(cpm_muram_free_addr); > diff --git a/include/soc/fsl/qe/qe.h b/include/soc/fsl/qe/qe.h > index 8ee3747433c0..66f1afc393d1 100644 > --- a/include/soc/fsl/qe/qe.h > +++ b/include/soc/fsl/qe/qe.h > @@ -104,6 +104,7 @@ s32 cpm_muram_alloc_fixed(unsigned long offset, unsigned > long size); > void __iomem *cpm_muram_addr(unsigned long offset); > unsigned long cpm_muram_offset(const void __iomem *addr); > dma_addr_t cpm_muram_dma(void __iomem *addr); > +void cpm_muram_free_addr(const void __iomem *addr); > #else > static inline s32 cpm_muram_alloc(unsigned long size, > unsigned long align) > @@ -135,6 +136,9 @@ static inline dma_addr_t cpm_muram_dma(void __iomem *addr) > { > return 0; > } > +static inline void cpm_muram_free_addr(const void __iomem *addr) > +{ > +} > #endif /* defined(CONFIG_CPM) || defined(CONFIG_QUICC_ENGINE) */ > > /* QE PIO */ > @@ -239,6 +243,7 @@ static inline int qe_alive_during_sleep(void) > #define qe_muram_addr cpm_muram_addr > #define qe_muram_offset cpm_muram_offset > #define qe_muram_dma cpm_muram_dma > +#define qe_muram_free_addr cpm_muram_free_addr > > #ifdef CONFIG_PPC32 > #define qe_iowrite8(val, addr) out_8(addr, val) > -- > 2.23.0 >