Skip to content

Commit

Permalink
soc: fsl: qman: fixup liodns only on ppc targets
Browse files Browse the repository at this point in the history
ARM SoCs use SMMU so the liodn fixup done in the qman driver is no
longer making sense and it also breaks the ICID settings inherited
from u-boot. Do the fixups only for PPC targets.

Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com>
Signed-off-by: Li Yang <leoyang.li@nxp.com>
  • Loading branch information
tudorl authored and Li Yang committed May 20, 2019
1 parent 5842efa commit d9ebd99
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 2 deletions.
2 changes: 1 addition & 1 deletion drivers/soc/fsl/qbman/qman_ccsr.c
Original file line number Diff line number Diff line change
Expand Up @@ -596,7 +596,7 @@ static int qman_init_ccsr(struct device *dev)
}

#define LIO_CFG_LIODN_MASK 0x0fff0000
void qman_liodn_fixup(u16 channel)
void __qman_liodn_fixup(u16 channel)
{
static int done;
static u32 liodn_offset;
Expand Down
9 changes: 8 additions & 1 deletion drivers/soc/fsl/qbman/qman_priv.h
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,14 @@ extern struct gen_pool *qm_cgralloc; /* CGR ID allocator */
u32 qm_get_pools_sdqcr(void);

int qman_wq_alloc(void);
void qman_liodn_fixup(u16 channel);
#ifdef CONFIG_FSL_PAMU
#define qman_liodn_fixup __qman_liodn_fixup
#else
static inline void qman_liodn_fixup(u16 channel)
{
}
#endif
void __qman_liodn_fixup(u16 channel);
void qman_set_sdest(u16 channel, unsigned int cpu_idx);

struct qman_portal *qman_create_affine_portal(
Expand Down

0 comments on commit d9ebd99

Please sign in to comment.