import PULS_20160108
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / drivers / misc / mediatek / flashlight / src / mt8127 / sub_strobe.c
diff --git a/drivers/misc/mediatek/flashlight/src/mt8127/sub_strobe.c b/drivers/misc/mediatek/flashlight/src/mt8127/sub_strobe.c
new file mode 100644 (file)
index 0000000..1264186
--- /dev/null
@@ -0,0 +1,99 @@
+#include <linux/kernel.h>
+#include <linux/module.h>
+#include <linux/init.h>
+#include <linux/types.h>
+#include <linux/wait.h>
+#include <linux/slab.h>
+#include <linux/fs.h>
+#include <linux/sched.h>
+#include <linux/poll.h>
+#include <linux/device.h>
+#include <linux/interrupt.h>
+#include <linux/delay.h>
+#include <linux/platform_device.h>
+#include <linux/cdev.h>
+#include <linux/errno.h>
+#include <linux/time.h>
+#include "kd_flashlight.h"
+#include <asm/io.h>
+#include <asm/uaccess.h>
+#include "kd_camera_hw.h"
+#include <cust_gpio_usage.h>
+#include <linux/hrtimer.h>
+#include <linux/ktime.h>
+#include <linux/xlog.h>
+#include <linux/version.h>
+/******************************************************************************
+ * Debug configuration
+******************************************************************************/
+// availible parameter
+// ANDROID_LOG_ASSERT
+// ANDROID_LOG_ERROR
+// ANDROID_LOG_WARNING
+// ANDROID_LOG_INFO
+// ANDROID_LOG_DEBUG
+// ANDROID_LOG_VERBOSE
+#define TAG_NAME "leds_strobe.c"
+#define PK_DBG_NONE(fmt, arg...)    do {} while (0)
+#define PK_DBG_FUNC(fmt, arg...)    xlog_printk(ANDROID_LOG_DEBUG  , TAG_NAME, KERN_INFO  "%s: " fmt, __FUNCTION__ ,##arg)
+#define PK_WARN(fmt, arg...)        xlog_printk(ANDROID_LOG_WARNING, TAG_NAME, KERN_WARNING  "%s: " fmt, __FUNCTION__ ,##arg)
+#define PK_NOTICE(fmt, arg...)      xlog_printk(ANDROID_LOG_DEBUG  , TAG_NAME, KERN_NOTICE  "%s: " fmt, __FUNCTION__ ,##arg)
+#define PK_INFO(fmt, arg...)        xlog_printk(ANDROID_LOG_INFO   , TAG_NAME, KERN_INFO  "%s: " fmt, __FUNCTION__ ,##arg)
+#define PK_TRC_FUNC(f)              xlog_printk(ANDROID_LOG_DEBUG  , TAG_NAME,  "<%s>\n", __FUNCTION__);
+#define PK_TRC_VERBOSE(fmt, arg...) xlog_printk(ANDROID_LOG_VERBOSE, TAG_NAME,  fmt, ##arg)
+#define PK_ERROR(fmt, arg...)       xlog_printk(ANDROID_LOG_ERROR  , TAG_NAME, KERN_ERR "%s: " fmt, __FUNCTION__ ,##arg)
+
+
+#define DEBUG_LEDS_STROBE
+#ifdef  DEBUG_LEDS_STROBE
+       #define PK_DBG PK_DBG_FUNC
+       #define PK_VER PK_TRC_VERBOSE
+       #define PK_ERR PK_ERROR
+#else
+       #define PK_DBG(a,...)
+       #define PK_VER(a,...)
+       #define PK_ERR(a,...)
+#endif
+
+
+static int sub_strobe_ioctl(MUINT32 cmd, MUINT32 arg)
+{
+       PK_DBG("sub dummy ioctl");
+    return 0;
+}
+
+static int sub_strobe_open(void *pArg)
+{
+    PK_DBG("sub dummy open");
+    return 0;
+
+}
+
+static int sub_strobe_release(void *pArg)
+{
+    PK_DBG("sub dummy release");
+    return 0;
+
+}
+
+FLASHLIGHT_FUNCTION_STRUCT     subStrobeFunc=
+{
+       sub_strobe_open,
+       sub_strobe_release,
+       sub_strobe_ioctl
+};
+
+
+MUINT32 subStrobeInit(PFLASHLIGHT_FUNCTION_STRUCT *pfFunc)
+{
+    if (pfFunc != NULL)
+    {
+        *pfFunc = &subStrobeFunc;
+    }
+    return 0;
+}
+
+
+
+
+