Re: [PATCH 4/4] regulator: adding interrupt handling in labibb regulator

From: Nisha Kumari
Date: Tue Jun 18 2019 - 02:47:30 EST



On 6/13/2019 10:57 PM, Mark Brown wrote:
On Wed, Jun 12, 2019 at 04:30:52PM +0530, Nisha Kumari wrote:

+static void labibb_sc_err_recovery_work(void *_labibb)
+{
+ int ret;
+ struct qcom_labibb *labibb = (struct qcom_labibb *)_labibb;
+
+ labibb->ibb_vreg.vreg_enabled = 0;
+ labibb->lab_vreg.vreg_enabled = 0;
+
+ ret = qcom_ibb_regulator_enable(labibb->lab_vreg.rdev);
The driver should *never* enable the regulator itself, it should only do
this if the core told it to.
Ok, I will change it

+ /*
+ * The SC(short circuit) fault would trigger PBS(Portable Batch
+ * System) to disable regulators for protection. This would
+ * cause the SC_DETECT status being cleared so that it's not
+ * able to get the SC fault status.
+ * Check if LAB/IBB regulators are enabled in the driver but
+ * disabled in hardware, this means a SC fault had happened
+ * and SCP handling is completed by PBS.
+ */
Let the core worry about this, the driver should just report the problem
to the core like all other devices do (and this driver doesn't...).

Ok


Thanks,

Nisha