From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andy Gross Subject: Re: [PATCH] Lock 7 is cpuidle specific, use non-generic value for locking Date: Thu, 12 Mar 2015 15:49:02 -0500 Message-ID: <20150312204902.GA14659@qualcomm.com> References: <1425076217-10415-2-git-send-email-bjorn.andersson@sonymobile.com> <1426189108-35488-1-git-send-email-lina.iyer@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <1426189108-35488-1-git-send-email-lina.iyer@linaro.org> Sender: linux-kernel-owner@vger.kernel.org To: Lina Iyer Cc: bjorn.andersson@sonymobile.com, linux-arm-msm@vger.kernel.org, jhugo@codeaurora.org, linux-kernel@vger.kernel.org List-Id: linux-arm-msm@vger.kernel.org On Thu, Mar 12, 2015 at 01:38:28PM -0600, Lina Iyer wrote: > static int qcom_hwspinlock_trylock(struct hwspinlock *lock) > { > struct regmap_field *field = lock->priv; > u32 lock_owner; > int ret; > + u32 proc_id; > > - ret = regmap_field_write(field, QCOM_MUTEX_APPS_PROC_ID); > + proc_id = hwspin_lock_get_id(lock) == QCOM_CPUIDLE_LOCK ? > + QCOM_MUTEX_CPUIDLE_OFFSET + smp_processor_id(): > + QCOM_MUTEX_APPS_PROC_ID; > + > + ret = regmap_field_write(field, proc_id); I think I'd rather have a qcom specific function and EXPORT_SYMBOL that to deal with this special case. > if (ret) > return ret; > > @@ -42,7 +49,7 @@ static int qcom_hwspinlock_trylock(struct hwspinlock *lock) > if (ret) > return ret; > > - return lock_owner == QCOM_MUTEX_APPS_PROC_ID; > + return lock_owner == proc_id; > } > > static void qcom_hwspinlock_unlock(struct hwspinlock *lock) > -- > 2.1.0 > -- Qualcomm Innovation Center, Inc. The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project