bus: arm-ccn: Fix node->XP config conversion

Events defined as watchpoints on nodes must have their config values
converted so that they apply to the respective node's XP. The
function setting new values was using wrong mask for the "port" field,
resulting in corrupted value. Fixed now.

Cc: stable@vger.kernel.org # 3.17+
Signed-off-by: Pawel Moll <pawel.moll@arm.com>
This commit is contained in:
Pawel Moll 2015-04-02 18:50:32 +01:00
parent b787f68c36
commit a18f8e97fe

View File

@ -212,7 +212,7 @@ static int arm_ccn_node_to_xp_port(int node)
static void arm_ccn_pmu_config_set(u64 *config, u32 node_xp, u32 type, u32 port) static void arm_ccn_pmu_config_set(u64 *config, u32 node_xp, u32 type, u32 port)
{ {
*config &= ~((0xff << 0) | (0xff << 8) | (0xff << 24)); *config &= ~((0xff << 0) | (0xff << 8) | (0x3 << 24));
*config |= (node_xp << 0) | (type << 8) | (port << 24); *config |= (node_xp << 0) | (type << 8) | (port << 24);
} }