summaryrefslogtreecommitdiff
path: root/drivers/regulator/pf1550-regulator-rpmsg.c
AgeCommit message (Collapse)Author
2019-02-12MLK-14275: regulator: pf1550-regulator-rpmsg: clear 'u32 val' before read ↵Robin Gong
value by rpmsg Actually, m4 only fill the least 1byte, so we'd better clear 'val' before reading by rpmsg, thus the gabage data will not bother us. Signed-off-by: Robin Gong <yibin.gong@nxp.com> (cherry picked from commit df3428c6588a00fa153a3b6996cc33b21b69efb6)
2019-02-12MLK-14241-1 regulator: pf1550-regulator-rpmsg: add mutex for ↵Robin Gong
pm_qos_add_request reentry Multi drivers(mmc, cpufreq..) may access pf1550 regulator rpmsg driver at the same time, so we have to add mutex for this multi-entry case. Otherwise the below kernel warning maybe triggered: ------------[ cut here ]------------ WARNING: CPU: 0 PID: 19 at kernel/power/qos.c:453 pf1550_send_message+0x4c/0xf8() pm_qos_add_request() called for already added request Modules linked in: CPU: 0 PID: 19 Comm: kworker/0:1 Not tainted 4.1.33-02293-g80b8c19 #636 Hardware name: Freescale i.MX7ULP (Device Tree) Workqueue: events od_dbs_timer [<80015d78>] (unwind_backtrace) from [<8001271c>] (show_stack+0x10/0x14) [<8001271c>] (show_stack) from [<8082ba50>] (dump_stack+0x88/0x9c) [<8082ba50>] (dump_stack) from [<800387c8>] (warn_slowpath_common+0x80/0xb0) [<800387c8>] (warn_slowpath_common) from [<80038828>] (warn_slowpath_fmt+0x30/0x40) [<80038828>] (warn_slowpath_fmt) from [<80341180>] (pf1550_send_message+0x4c/0xf8) [<80341180>] (pf1550_send_message) from [<80341504>] (pf1550_get_voltage+0x48/0x5c) [<80341504>] (pf1550_get_voltage) from [<803370a0>] (_regulator_get_voltage+0x68/0xb4) [<803370a0>] (_regulator_get_voltage) from [<8033936c>] (_regulator_do_set_voltage+0x5c/0x3e4) [<8033936c>] (_regulator_do_set_voltage) from [<803397a4>] (regulator_set_voltage+0xb0/0x14c) [<803397a4>] (regulator_set_voltage) from [<8058dae8>] (imx7ulp_set_target+0x178/0x238) [<8058dae8>] (imx7ulp_set_target) from [<80584d14>] (__cpufreq_driver_target+0x164/0x294) [<80584d14>] (__cpufreq_driver_target) from [<8058bb08>] (dbs_check_cpu+0x1a0/0x1e0) [<8058bb08>] (dbs_check_cpu) from [<805888e8>] (od_dbs_timer+0x80/0x138) [<805888e8>] (od_dbs_timer) from [<8004bbbc>] (process_one_work+0x118/0x3e4) [<8004bbbc>] (process_one_work) from [<8004bed4>] (worker_thread+0x4c/0x4f4) [<8004bed4>] (worker_thread) from [<80050e4c>] (kthread+0xdc/0xf4) [<80050e4c>] (kthread) from [<8000f528>] (ret_from_fork+0x14/0x2c) ---[ end trace f8281ecde7a0b4ce ]--- ------------[ cut here ]------------ Signed-off-by: Robin Gong <yibin.gong@nxp.com>
2019-02-12MLK-13733-3 regulator: pf1550-regulator-rpmsg: update pf1550-rpmsg interfaceRobin Gong
update driver since m4 side refine the header structure. Signed-off-by: Robin Gong <yibin.gong@nxp.com>
2019-02-12MLK-13720-4: regulator: pf1550-regulator-rpmsg: fix "rpmsg_send timeout"Robin Gong
Sometimes rpmsg callback triggered quickly before reinit_completion, then cause "rpmsg_send timeout!". Move reinit_completion to the place before rpmsg_send to make sure the completion is ready before callback triggered. Signed-off-by: Robin Gong <yibin.gong@nxp.com> (cherry picked from commit 8e44277d3f27e5f46232bd705ee9ef594db42575)
2019-02-12MLK-13720-3: regulator: pf1550-regulator-rpmsg: use the specific pf1550 ↵Robin Gong
rpmsg channel name Since multi rpmsg instances supported now, we can use the specific rpmsg channel name "rpmsg-regulator-channel" instead of "rpmsg-openamp-demo-channel" Signed-off-by: Robin Gong <yibin.gong@nxp.com> (cherry picked from commit 8a9d73fe43da2833951b428f389aac01aef7cb2a)
2019-02-12MLK-13636-2 regulator: pf1550-regulator-rmpsg: enable pm_qos to prevent low ↵Robin Gong
power idle CLKE bit of MU_CR may bring VLS state mess in M4 side, so use pm_qos instead to prevent i.mx7ulp A7 core enter STOP mode during pf1550 send command by rpmsg Signed-off-by: Robin Gong <yibin.gong@nxp.com>
2019-02-12MLK-13615-1 regulator: pf1550-regulator-rpmsg: should set voltage closest to ↵Dong Aisheng
min_uV According to API definition, Set the voltage for the regulator within the range specified, the driver should select the voltage closest to min_uV. Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
2019-02-12MLK-13577-3 regulator: pf1550-regulator-rpmsg: add pf1550 regulator rpmsg driverRobin Gong
add pf1550 regulator rpmsg driver to control pf1550 on the m4 side by rpmsg. Signed-off-by: Robin Gong <yibin.gong@nxp.com>