Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1629120 > unrolled thread
| Started by | Scott Wood <oss@buserror.net> |
|---|---|
| First post | 2017-04-24 03:50 +0200 |
| Last post | 2017-04-24 03:50 +0200 |
| Articles | 1 — 1 participant |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [PATCH v2 07/11] soc/fsl/qbman: Rework ioremap() calls for ARM/PPC Scott Wood <oss@buserror.net> - 2017-04-24 03:50 +0200
| From | Scott Wood <oss@buserror.net> |
|---|---|
| Date | 2017-04-24 03:50 +0200 |
| Subject | Re: [PATCH v2 07/11] soc/fsl/qbman: Rework ioremap() calls for ARM/PPC |
| Message-ID | <tzBiy-8qY-5@gated-at.bofh.it> |
On Wed, 2017-04-19 at 16:48 -0400, Roy Pledge wrote: > Rework ioremap() for PPC and ARM. The PPC devices require a > non-coherent mapping while ARM will work with a non-cachable/write > combine mapping. > > Signed-off-by: Roy Pledge <roy.pledge@nxp.com> > --- > drivers/soc/fsl/qbman/bman_portal.c | 16 +++++++++++++--- > drivers/soc/fsl/qbman/qman_portal.c | 16 +++++++++++++--- > 2 files changed, 26 insertions(+), 6 deletions(-) > > diff --git a/drivers/soc/fsl/qbman/bman_portal.c > b/drivers/soc/fsl/qbman/bman_portal.c > index 8354d4d..a661f30 100644 > --- a/drivers/soc/fsl/qbman/bman_portal.c > +++ b/drivers/soc/fsl/qbman/bman_portal.c > @@ -125,7 +125,18 @@ static int bman_portal_probe(struct platform_device > *pdev) > } > pcfg->irq = irq; > > - va = ioremap_prot(addr_phys[0]->start, resource_size(addr_phys[0]), > 0); > +#ifdef CONFIG_PPC > + /* PPC requires a cacheable/non-coherent mapping of the portal */ > + va = ioremap_prot(addr_phys[0]->start, resource_size(addr_phys[0]), > + (pgprot_val(PAGE_KERNEL) & ~_PAGE_COHERENT)); > +#else > + /* > + * For ARM we can use write combine mapping. A cacheable/non > shareable > + * mapping will perform better but equires additional platform > + * support which is not currently available > + */ s/equires/requires/ Would be nice to describe the platform support that is required. -Scott
Back to top | Article view | linux.kernel
csiph-web