Skip to content

Commit

Permalink
OMAP: DSS2: string parsing cleanups
Browse files Browse the repository at this point in the history
Use strtobool and kstrto* functions when parsing sysfs inputs.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
  • Loading branch information
Tomi Valkeinen committed Sep 30, 2011
1 parent f6dc815 commit e3a26ae
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 33 deletions.
21 changes: 9 additions & 12 deletions drivers/video/omap2/dss/display.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,14 +45,13 @@ static ssize_t display_enabled_store(struct device *dev,
const char *buf, size_t size)
{
struct omap_dss_device *dssdev = to_dss_device(dev);
int r, enabled;
int r;
bool enabled;

r = kstrtoint(buf, 0, &enabled);
r = strtobool(buf, &enabled);
if (r)
return r;

enabled = !!enabled;

if (enabled != (dssdev->state != OMAP_DSS_DISPLAY_DISABLED)) {
if (enabled) {
r = dssdev->driver->enable(dssdev);
Expand All @@ -79,17 +78,16 @@ static ssize_t display_tear_store(struct device *dev,
struct device_attribute *attr, const char *buf, size_t size)
{
struct omap_dss_device *dssdev = to_dss_device(dev);
int te, r;
int r;
bool te;

if (!dssdev->driver->enable_te || !dssdev->driver->get_te)
return -ENOENT;

r = kstrtoint(buf, 0, &te);
r = strtobool(buf, &te);
if (r)
return r;

te = !!te;

r = dssdev->driver->enable_te(dssdev, te);
if (r)
return r;
Expand Down Expand Up @@ -195,17 +193,16 @@ static ssize_t display_mirror_store(struct device *dev,
struct device_attribute *attr, const char *buf, size_t size)
{
struct omap_dss_device *dssdev = to_dss_device(dev);
int mirror, r;
int r;
bool mirror;

if (!dssdev->driver->set_mirror || !dssdev->driver->get_mirror)
return -ENOENT;

r = kstrtoint(buf, 0, &mirror);
r = strtobool(buf, &mirror);
if (r)
return r;

mirror = !!mirror;

r = dssdev->driver->set_mirror(dssdev, mirror);
if (r)
return r;
Expand Down
37 changes: 19 additions & 18 deletions drivers/video/omap2/dss/manager.c
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ static ssize_t manager_display_store(struct omap_overlay_manager *mgr,
static ssize_t manager_default_color_show(struct omap_overlay_manager *mgr,
char *buf)
{
return snprintf(buf, PAGE_SIZE, "%d\n", mgr->info.default_color);
return snprintf(buf, PAGE_SIZE, "%#x\n", mgr->info.default_color);
}

static ssize_t manager_default_color_store(struct omap_overlay_manager *mgr,
Expand All @@ -116,8 +116,9 @@ static ssize_t manager_default_color_store(struct omap_overlay_manager *mgr,
u32 color;
int r;

if (sscanf(buf, "%d", &color) != 1)
return -EINVAL;
r = kstrtouint(buf, 0, &color);
if (r)
return r;

mgr->get_manager_info(mgr, &info);

Expand Down Expand Up @@ -184,7 +185,7 @@ static ssize_t manager_trans_key_type_store(struct omap_overlay_manager *mgr,
static ssize_t manager_trans_key_value_show(struct omap_overlay_manager *mgr,
char *buf)
{
return snprintf(buf, PAGE_SIZE, "%d\n", mgr->info.trans_key);
return snprintf(buf, PAGE_SIZE, "%#x\n", mgr->info.trans_key);
}

static ssize_t manager_trans_key_value_store(struct omap_overlay_manager *mgr,
Expand All @@ -194,8 +195,9 @@ static ssize_t manager_trans_key_value_store(struct omap_overlay_manager *mgr,
u32 key_value;
int r;

if (sscanf(buf, "%d", &key_value) != 1)
return -EINVAL;
r = kstrtouint(buf, 0, &key_value);
if (r)
return r;

mgr->get_manager_info(mgr, &info);

Expand All @@ -222,15 +224,16 @@ static ssize_t manager_trans_key_enabled_store(struct omap_overlay_manager *mgr,
const char *buf, size_t size)
{
struct omap_overlay_manager_info info;
int enable;
bool enable;
int r;

if (sscanf(buf, "%d", &enable) != 1)
return -EINVAL;
r = strtobool(buf, &enable);
if (r)
return r;

mgr->get_manager_info(mgr, &info);

info.trans_enabled = enable ? true : false;
info.trans_enabled = enable;

r = mgr->set_manager_info(mgr, &info);
if (r)
Expand All @@ -254,15 +257,16 @@ static ssize_t manager_alpha_blending_enabled_store(
const char *buf, size_t size)
{
struct omap_overlay_manager_info info;
int enable;
bool enable;
int r;

if (sscanf(buf, "%d", &enable) != 1)
return -EINVAL;
r = strtobool(buf, &enable);
if (r)
return r;

mgr->get_manager_info(mgr, &info);

info.alpha_enabled = enable ? true : false;
info.alpha_enabled = enable;

r = mgr->set_manager_info(mgr, &info);
if (r)
Expand All @@ -285,19 +289,16 @@ static ssize_t manager_cpr_enable_store(struct omap_overlay_manager *mgr,
const char *buf, size_t size)
{
struct omap_overlay_manager_info info;
int v;
int r;
bool enable;

if (!dss_has_feature(FEAT_CPR))
return -ENODEV;

r = kstrtoint(buf, 0, &v);
r = strtobool(buf, &enable);
if (r)
return r;

enable = !!v;

mgr->get_manager_info(mgr, &info);

if (info.cpr_enable == enable)
Expand Down
7 changes: 4 additions & 3 deletions drivers/video/omap2/dss/overlay.c
Original file line number Diff line number Diff line change
Expand Up @@ -211,16 +211,17 @@ static ssize_t overlay_enabled_show(struct omap_overlay *ovl, char *buf)
static ssize_t overlay_enabled_store(struct omap_overlay *ovl, const char *buf,
size_t size)
{
int r, enable;
int r;
bool enable;
struct omap_overlay_info info;

ovl->get_overlay_info(ovl, &info);

r = kstrtoint(buf, 0, &enable);
r = strtobool(buf, &enable);
if (r)
return r;

info.enabled = !!enable;
info.enabled = enable;

r = ovl->set_overlay_info(ovl, &info);
if (r)
Expand Down

0 comments on commit e3a26ae

Please sign in to comment.