aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/pvr/omaplfb/omaplfb-sysfs.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/pvr/omaplfb/omaplfb-sysfs.c')
-rw-r--r--drivers/gpu/pvr/omaplfb/omaplfb-sysfs.c130
1 files changed, 0 insertions, 130 deletions
diff --git a/drivers/gpu/pvr/omaplfb/omaplfb-sysfs.c b/drivers/gpu/pvr/omaplfb/omaplfb-sysfs.c
deleted file mode 100644
index 2e04583..0000000
--- a/drivers/gpu/pvr/omaplfb/omaplfb-sysfs.c
+++ /dev/null
@@ -1,130 +0,0 @@
-/*
- * omaplfb-sysfs.c
- *
- * Copyright (C) 2011 Texas Instruments.
- *
- * This file is licensed under the terms of the GNU General Public License
- * version 2. This program is licensed "as is" without any warranty of any
- * kind, whether express or implied.
- *
- * Author: Gustavo Diaz (gusdp@ti.com)
- *
- */
-
-#include <linux/version.h>
-#include <linux/module.h>
-#include <linux/sysfs.h>
-#include <linux/platform_device.h>
-#include <linux/device.h>
-#include <linux/uaccess.h>
-
-#include "img_defs.h"
-#include "servicesext.h"
-#include "kerneldisplay.h"
-#include "omaplfb.h"
-
-static ssize_t show_ignore_sync(OMAPLFB_DEVINFO *display_info, char *buf)
-{
- return snprintf(buf, PAGE_SIZE, "%d\n", display_info->ignore_sync);
-}
-
-static ssize_t store_ignore_sync(OMAPLFB_DEVINFO *display_info,
- const char *buf, size_t count)
-{
- unsigned long new_value;
-
- if (strict_strtoul(buf, 10, &new_value))
- return -EINVAL;
-
- if (new_value == 0 || new_value == 1) {
- display_info->ignore_sync = new_value;
- return count;
- }
-
- return -EINVAL;
-}
-
-struct omaplfb_attribute {
- struct attribute attr;
- ssize_t (*show)(OMAPLFB_DEVINFO *, char *);
- ssize_t (*store)(OMAPLFB_DEVINFO *, const char *, size_t);
-};
-
-static ssize_t omaplfb_attr_show(struct kobject *kobj, struct attribute *attr,
- char *buf)
-{
- OMAPLFB_DEVINFO *display_info;
- struct omaplfb_attribute *omaplfb_attr;
-
- display_info = container_of(kobj, OMAPLFB_DEVINFO, kobj);
- omaplfb_attr = container_of(attr, struct omaplfb_attribute, attr);
-
- if (!omaplfb_attr->show)
- return -ENOENT;
-
- return omaplfb_attr->show(display_info, buf);
-}
-
-static ssize_t omaplfb_attr_store(struct kobject *kobj, struct attribute *attr,
- const char *buf, size_t size)
-{
- OMAPLFB_DEVINFO *display_info;
- struct omaplfb_attribute *omaplfb_attr;
-
- display_info = container_of(kobj, OMAPLFB_DEVINFO, kobj);
- omaplfb_attr = container_of(attr, struct omaplfb_attribute, attr);
-
- if (!omaplfb_attr->store)
- return -ENOENT;
-
- return omaplfb_attr->store(display_info, buf, size);
-}
-
-#define OMAPLFB_ATTR(_name, _mode, _show, _store) \
- struct omaplfb_attribute omaplfb_attr_##_name = \
- __ATTR(_name, _mode, _show, _store)
-
-static OMAPLFB_ATTR(ignore_sync, S_IRUGO|S_IWUSR, show_ignore_sync,
- store_ignore_sync);
-
-#undef OMAPLFB_ATTR
-
-static struct attribute *omaplfb_sysfs_attrs[] = {
- &omaplfb_attr_ignore_sync.attr,
- NULL
-};
-
-static const struct sysfs_ops omaplfb_sysfs_ops = {
- .show = omaplfb_attr_show,
- .store = omaplfb_attr_store,
-};
-
-static struct kobj_type omaplfb_ktype = {
- .sysfs_ops = &omaplfb_sysfs_ops,
- .default_attrs = omaplfb_sysfs_attrs,
-};
-
-void omaplfb_create_sysfs(struct omaplfb_device *odev)
-{
- int i, r;
-
- /* Create a sysfs entry for every display */
- for (i = 0; i < odev->display_count; i++) {
- OMAPLFB_DEVINFO *display_info = &odev->display_info_list[i];
- r = kobject_init_and_add(&display_info->kobj, &omaplfb_ktype,
- &odev->dev->kobj, "display%d",
- display_info->uDeviceID);
- if (r)
- ERROR_PRINTK("failed to create sysfs file\n");
- }
-}
-
-void omaplfb_remove_sysfs(struct omaplfb_device *odev)
-{
- int i;
- for (i = 0; i < odev->display_count; i++) {
- OMAPLFB_DEVINFO *display_info = &odev->display_info_list[i];
- kobject_del(&display_info->kobj);
- kobject_put(&display_info->kobj);
- }
-}