Message ID | SG2PR01MB2951EBFD4C4EB2A2519FF4199FA79@SG2PR01MB2951.apcprd01.prod.exchangelabs.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | uio:ppc: cache-sram driver implementation | expand |
Wang Wenhu <wenhu.wang@hotmail.com> writes: > The function ioremap_coherent may be called by modules such as > fsl_85xx_cache_sram. So export it for access in other modules. ioremap_coherent() is powerpc specific, and only has one other caller, I'd like to remove it. Does ioremap_cache() work for you? cheers > diff --git a/arch/powerpc/mm/ioremap.c b/arch/powerpc/mm/ioremap.c > index 4f12504fb405..08a00dacef0b 100644 > --- a/arch/powerpc/mm/ioremap.c > +++ b/arch/powerpc/mm/ioremap.c > @@ -40,6 +40,7 @@ void __iomem *ioremap_coherent(phys_addr_t addr, unsigned long size) > return iowa_ioremap(addr, size, prot, caller); > return __ioremap_caller(addr, size, prot, caller); > } > +EXPORT_SYMBOL(ioremap_coherent); > > void __iomem *ioremap_prot(phys_addr_t addr, unsigned long size, unsigned long flags) > { > -- > 2.25.1
On Tue, Jun 14, 2022 at 08:45:25PM +1000, Michael Ellerman wrote: > Wang Wenhu <wenhu.wang@hotmail.com> writes: > > The function ioremap_coherent may be called by modules such as > > fsl_85xx_cache_sram. So export it for access in other modules. > > ioremap_coherent() is powerpc specific, and only has one other caller, > I'd like to remove it. > > Does ioremap_cache() work for you? Chances are that both are the wrong thing and this really wants memremap, as SRAM tends to have memory and not MMIO semantics.
>发件人: Michael Ellerman <mpe@ellerman.id.au> >发送时间: 2022年6月14日 18:45 >收件人: Wang Wenhu <wenhu.wang@hotmail.com>; gregkh@linuxfoundation.org <gregkh@linuxfoundation.org>; christophe.leroy@csgroup.eu <christophe.leroy@csgroup.eu> >抄送: linuxppc-dev@lists.ozlabs.org <linuxppc-dev@lists.ozlabs.org>; linux-kernel@vger.kernel.org <linux-kernel@vger.kernel.org>; Wang Wenhu <wenhu.wang@hotmail.com> >主题: Re: [PATCH 1/2] powerpc:mm: export symbol ioremap_coherent > >Wang Wenhu <wenhu.wang@hotmail.com> writes: >> The function ioremap_coherent may be called by modules such as >> fsl_85xx_cache_sram. So export it for access in other modules. > >ioremap_coherent() is powerpc specific, and only has one other caller, >I'd like to remove it. > >Does ioremap_cache() work for you? > Yes, it works. I will update in v2 to use ioremap_cache. I tested and compared the outcomes of ioremap_cache and ioremap_coherent, and found they ended same values. Thanks, Wenhu > >> diff --git a/arch/powerpc/mm/ioremap.c b/arch/powerpc/mm/ioremap.c >> index 4f12504fb405..08a00dacef0b 100644 >> --- a/arch/powerpc/mm/ioremap.c >> +++ b/arch/powerpc/mm/ioremap.c >> @@ -40,6 +40,7 @@ void __iomem *ioremap_coherent(phys_addr_t addr, unsigned long size) >> return iowa_ioremap(addr, size, prot, caller); >> return __ioremap_caller(addr, size, prot, caller); >> } >> +EXPORT_SYMBOL(ioremap_coherent); >> >> void __iomem *ioremap_prot(phys_addr_t addr, unsigned long size, unsigned long flags) > { > -- > 2.25.1
diff --git a/arch/powerpc/mm/ioremap.c b/arch/powerpc/mm/ioremap.c index 4f12504fb405..08a00dacef0b 100644 --- a/arch/powerpc/mm/ioremap.c +++ b/arch/powerpc/mm/ioremap.c @@ -40,6 +40,7 @@ void __iomem *ioremap_coherent(phys_addr_t addr, unsigned long size) return iowa_ioremap(addr, size, prot, caller); return __ioremap_caller(addr, size, prot, caller); } +EXPORT_SYMBOL(ioremap_coherent); void __iomem *ioremap_prot(phys_addr_t addr, unsigned long size, unsigned long flags) {
The function ioremap_coherent may be called by modules such as fsl_85xx_cache_sram. So export it for access in other modules. Signed-off-by: Wang Wenhu <wenhu.wang@hotmail.com> --- arch/powerpc/mm/ioremap.c | 1 + 1 file changed, 1 insertion(+)