Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752702AbdFVOrF convert rfc822-to-8bit (ORCPT ); Thu, 22 Jun 2017 10:47:05 -0400 Received: from metis.ext.4.pengutronix.de ([92.198.50.35]:60405 "EHLO metis.ext.4.pengutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751147AbdFVOrE (ORCPT ); Thu, 22 Jun 2017 10:47:04 -0400 Message-ID: <1498142790.2533.80.camel@pengutronix.de> Subject: Re: [RFC PATCH 3/4] ARM: l2x0: add arm,ecc-enable property for aurora From: Jan =?ISO-8859-1?Q?L=FCbbe?= To: Chris Packham Cc: "bp@alien8.de" , "linux-arm-kernel@lists.infradead.org" , "linux-edac@vger.kernel.org" , Rob Herring , Mark Rutland , Russell King , "devicetree@vger.kernel.org" , "linux-kernel@vger.kernel.org" Date: Thu, 22 Jun 2017 16:46:30 +0200 In-Reply-To: <220533aeb8f64e829f483e38e209cdc8@svr-chch-ex1.atlnz.lc> References: <20170608041124.4624-1-chris.packham@alliedtelesis.co.nz> <20170608041124.4624-4-chris.packham@alliedtelesis.co.nz> <1496998692.3536.24.camel@pengutronix.de> <220533aeb8f64e829f483e38e209cdc8@svr-chch-ex1.atlnz.lc> Organization: Pengutronix Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8BIT X-Mailer: Evolution 3.12.9-1+b1 Mime-Version: 1.0 X-SA-Exim-Connect-IP: 2001:67c:670:100:1d::c3 X-SA-Exim-Mail-From: jlu@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1744 Lines: 41 Chris, On So, 2017-06-11 at 22:55 +0000, Chris Packham wrote: > On 09/06/17 20:58, Jan Lübbe wrote: > > On Do, 2017-06-08 at 16:11 +1200, Chris Packham wrote: > >> + if (of_property_read_bool(np, "arm,ecc-enable")) { > >> + mask |= L2C_AUX_CTRL_EVTMON_ENABLE; > >> + val |= L2C_AUX_CTRL_EVTMON_ENABLE; > >> + } else if (of_property_read_bool(np, "arm,ecc-disable")) { > >> + mask |= L2C_AUX_CTRL_EVTMON_ENABLE; > >> + } > > > > Unless I misunderstand the code in __l2c_init(), the mask is used to > > specify the bits to preserve: > > old_aux = aux = readl_relaxed(l2x0_base + L2X0_AUX_CTRL); > > aux &= aux_mask; > > aux |= aux_val; > > > > if (old_aux != aux) > > pr_warn("L2C: DT/platform modifies aux control register: 0x%08x -> 0x%08x\n", > > old_aux, aux); > > > > So the arm,ecc-disable property will have no effect. This probably also > > applies to patch 2/4. The existing property *-disable code removes the > > corresponding bit from the mask. > > Indeed the disable version should be mask &= ~L2C_AUX_CTRL_EVTMON_ENABLE > and I was probably a little lazy to have used the L2C EVTMON instead of > adding AURORA specific ones like you have in your series. > > I'll rebase my series on top of yours and send it direct to you so you > can include it in the overall submission. While picking up your arm,parity-enable and arm,ecc-enable patches for my series, I noticed that the mask variable is inverted when merging the local changes into aux_val/aux_mask at the end of aurora_of_parse. So I now believe your code is correct. ;) I'd appreciate a close look, nevertheless. Regards, Jan