Skip to content

Commit 0b985f2

Browse files
keveryangrkhuangtao
authored andcommitted
irqchip/gic-v3-its: force to config its tables as no-inner-cache in rk3588
Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Change-Id: I7275cbf011061f11968505a7570230d2d789e9fc
1 parent 6588d22 commit 0b985f2

File tree

1 file changed

+16
-8
lines changed

1 file changed

+16
-8
lines changed

drivers/irqchip/irq-gic-v3-its.c

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2354,8 +2354,10 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
23542354
its_write_baser(its, baser, val);
23552355
tmp = baser->val;
23562356

2357-
if (of_machine_is_compatible("rockchip,rk3568") ||
2358-
of_machine_is_compatible("rockchip,rk3566")) {
2357+
if (IS_ENABLED(CONFIG_NO_GKI) &&
2358+
(of_machine_is_compatible("rockchip,rk3568") ||
2359+
of_machine_is_compatible("rockchip,rk3566") ||
2360+
of_machine_is_compatible("rockchip,rk3588"))) {
23592361
if (tmp & GITS_BASER_SHAREABILITY_MASK)
23602362
tmp &= ~GITS_BASER_SHAREABILITY_MASK;
23612363
else
@@ -3093,8 +3095,10 @@ static void its_cpu_init_lpis(void)
30933095
gicr_write_propbaser(val, rbase + GICR_PROPBASER);
30943096
tmp = gicr_read_propbaser(rbase + GICR_PROPBASER);
30953097

3096-
if (of_machine_is_compatible("rockchip,rk3568") ||
3097-
of_machine_is_compatible("rockchip,rk3566"))
3098+
if (IS_ENABLED(CONFIG_NO_GKI) &&
3099+
(of_machine_is_compatible("rockchip,rk3568") ||
3100+
of_machine_is_compatible("rockchip,rk3566") ||
3101+
of_machine_is_compatible("rockchip,rk3588")))
30983102
tmp &= ~GICR_PROPBASER_SHAREABILITY_MASK;
30993103

31003104
if ((tmp ^ val) & GICR_PROPBASER_SHAREABILITY_MASK) {
@@ -3121,8 +3125,10 @@ static void its_cpu_init_lpis(void)
31213125
gicr_write_pendbaser(val, rbase + GICR_PENDBASER);
31223126
tmp = gicr_read_pendbaser(rbase + GICR_PENDBASER);
31233127

3124-
if (of_machine_is_compatible("rockchip,rk3568") ||
3125-
of_machine_is_compatible("rockchip,rk3566"))
3128+
if (IS_ENABLED(CONFIG_NO_GKI) &&
3129+
(of_machine_is_compatible("rockchip,rk3568") ||
3130+
of_machine_is_compatible("rockchip,rk3566") ||
3131+
of_machine_is_compatible("rockchip,rk3588")))
31263132
tmp &= ~GICR_PENDBASER_SHAREABILITY_MASK;
31273133

31283134
if (!(tmp & GICR_PENDBASER_SHAREABILITY_MASK)) {
@@ -5084,8 +5090,10 @@ static int __init its_probe_one(struct resource *res,
50845090
gits_write_cbaser(baser, its->base + GITS_CBASER);
50855091
tmp = gits_read_cbaser(its->base + GITS_CBASER);
50865092

5087-
if (of_machine_is_compatible("rockchip,rk3568") ||
5088-
of_machine_is_compatible("rockchip,rk3566"))
5093+
if (IS_ENABLED(CONFIG_NO_GKI) &&
5094+
(of_machine_is_compatible("rockchip,rk3568") ||
5095+
of_machine_is_compatible("rockchip,rk3566") ||
5096+
of_machine_is_compatible("rockchip,rk3588")))
50895097
tmp &= ~GITS_CBASER_SHAREABILITY_MASK;
50905098

50915099
if ((tmp ^ baser) & GITS_CBASER_SHAREABILITY_MASK) {

0 commit comments

Comments
 (0)