mirror of https://gitee.com/openkylin/linux.git
rtc: ds1343: check regmap_read return value
Check whether regmap_read fails before continuing in the sysfs .show callbacks. Link: https://lore.kernel.org/r/20191019204941.6203-6-alexandre.belloni@bootlin.com Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
This commit is contained in:
parent
ac08888b25
commit
ce0fd9db65
|
@ -92,8 +92,11 @@ static ssize_t ds1343_show_glitchfilter(struct device *dev,
|
||||||
{
|
{
|
||||||
struct ds1343_priv *priv = dev_get_drvdata(dev->parent);
|
struct ds1343_priv *priv = dev_get_drvdata(dev->parent);
|
||||||
int glitch_filt_status, data;
|
int glitch_filt_status, data;
|
||||||
|
int res;
|
||||||
|
|
||||||
regmap_read(priv->map, DS1343_CONTROL_REG, &data);
|
res = regmap_read(priv->map, DS1343_CONTROL_REG, &data);
|
||||||
|
if (res)
|
||||||
|
return res;
|
||||||
|
|
||||||
glitch_filt_status = !!(data & DS1343_EGFIL);
|
glitch_filt_status = !!(data & DS1343_EGFIL);
|
||||||
|
|
||||||
|
@ -147,10 +150,12 @@ static ssize_t ds1343_show_tricklecharger(struct device *dev,
|
||||||
struct device_attribute *attr, char *buf)
|
struct device_attribute *attr, char *buf)
|
||||||
{
|
{
|
||||||
struct ds1343_priv *priv = dev_get_drvdata(dev->parent);
|
struct ds1343_priv *priv = dev_get_drvdata(dev->parent);
|
||||||
int data;
|
int res, data;
|
||||||
char *diodes = "disabled", *resistors = " ";
|
char *diodes = "disabled", *resistors = " ";
|
||||||
|
|
||||||
regmap_read(priv->map, DS1343_TRICKLE_REG, &data);
|
res = regmap_read(priv->map, DS1343_TRICKLE_REG, &data);
|
||||||
|
if (res)
|
||||||
|
return res;
|
||||||
|
|
||||||
if ((data & 0xf0) == DS1343_TRICKLE_MAGIC) {
|
if ((data & 0xf0) == DS1343_TRICKLE_MAGIC) {
|
||||||
switch (data & 0x0c) {
|
switch (data & 0x0c) {
|
||||||
|
|
Loading…
Reference in New Issue