Tizen 2.0 Release 2.0_release
authorHyungKyu Song <hk76.song@samsung.com>
Thu, 14 Feb 2013 12:48:05 +0000 (21:48 +0900)
committerHyungKyu Song <hk76.song@samsung.com>
Thu, 14 Feb 2013 12:48:05 +0000 (21:48 +0900)
CMakeLists.txt
debian/changelog [changed mode: 0644->0755]
libslp-pm.manifest [new file with mode: 0644]
packaging/libslp-pm.spec [changed mode: 0644->0755]
pm.c
pmapi.h
pmapi_managed.h [new file with mode: 0644]

index 0875ff4..189c8e5 100644 (file)
@@ -3,7 +3,7 @@ PROJECT(pmapi C)
 
 
 SET(SRCS pm.c)
-SET(HEADERS pmapi.h SLP_pm_PG.h)
+SET(HEADERS pmapi.h pmapi_managed.h SLP_pm_PG.h)
 
 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
 SET(EXEC_PREFIX "\${prefix}")
@@ -29,8 +29,8 @@ SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${VERSION})
 
 CONFIGURE_FILE(${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY)
 
-INSTALL(TARGETS ${PROJECT_NAME} DESTINATION lib COMPONENT RuntimeLibraries)
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION lib/pkgconfig)
+INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
+INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
 
 FOREACH(hfile ${HEADERS})
        INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${hfile} DESTINATION include)
old mode 100644 (file)
new mode 100755 (executable)
index b1d608f..7183bd0
@@ -1,7 +1,23 @@
+libslp-pm (1.2.4-23) unstable; urgency=low
+
+  * pm_change_state is moved to managed API.
+  * Git: slp/pkgs/l/libslp-pm
+  * Tag: libslp-pm_1.2.4-23
+
+ -- Seunghun Pi <sh.pi@samsung.com>  Fri, 07 Aug 2012 11:11:27 +0900
+
+libslp-pm (1.2.4-21) unstable; urgency=low
+
+  * Add parameters for pm_lock_state() : HOLD_KEY_BLOCK
+  * Git: slp/pkgs/l/libslp-pm
+  * Tag: libslp-pm_1.2.4-21
+
+ -- Seunghun Pi <sh.pi@samsung.com>  Sun, 29 Jul 2012 16:17:27 +0900
+
 libslp-pm (1.2.4-20) unstable; urgency=low
 
   * source clean up (remove unnecessary comments, and so on)
-  * Git: 165.213.180.234:slp/pkgs/l/libslp-pm
+  * Git: slp/pkgs/l/libslp-pm
   * Tag: libslp-pm_1.2.4-20
 
  -- Jinkun Jang <jinkun.jang@samsung.com>  Tue, 06 Dec 2011 16:39:27 +0900
diff --git a/libslp-pm.manifest b/libslp-pm.manifest
new file mode 100644 (file)
index 0000000..41a9320
--- /dev/null
@@ -0,0 +1,6 @@
+<manifest>
+    <request>
+        <domain name="_"/>
+    </request>
+</manifest>
+
old mode 100644 (file)
new mode 100755 (executable)
index b6e46a2..fdb975a
@@ -1,4 +1,3 @@
-
 Name:       libslp-pm
 Summary:    Power manager library
 Version:    1.2.4
@@ -6,9 +5,6 @@ Release:    2.1
 Group:      TO_BE/FILLED_IN
 License:    TO BE FILLED IN
 Source0:    libslp-pm-%{version}.tar.bz2
-Patch0:     remove_tests.patch
-Requires(post): /sbin/ldconfig
-Requires(postun): /sbin/ldconfig
 BuildRequires:  cmake
 
 
@@ -29,11 +25,10 @@ SLP power manager client library (devel)
 
 %prep
 %setup -q 
-%patch0 -p1
 
 
 %build
-cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix}
+%cmake .
 
 
 make %{?jobs:-j%jobs}
@@ -43,25 +38,22 @@ rm -rf %{buildroot}
 %make_install
 
 
-
-
 %post -p /sbin/ldconfig
 
 %postun -p /sbin/ldconfig
 
 
 
-
-
 %files
 %defattr(-,root,root,-)
-%doc COPYING
+%manifest libslp-pm.manifest
 %{_libdir}/libpmapi.so.1.2
 
 
 %files devel
 %defattr(-,root,root,-)
 %{_includedir}/pmapi.h
+%{_includedir}/pmapi_managed.h
 %{_includedir}/SLP_pm_PG.h
 %{_libdir}/pkgconfig/pmapi.pc
 %{_libdir}/libpmapi.so
diff --git a/pm.c b/pm.c
index 32cfe59..90b7430 100644 (file)
--- a/pm.c
+++ b/pm.c
@@ -35,6 +35,7 @@
 #define SHIFT_UNLOCK                   4
 #define SHIFT_UNLOCK_PARAMETER         12
 #define SHIFT_CHANGE_STATE             8
+#define SHIFT_HOLD_KEY_BLOCK           16
 #define TIMEOUT_RESET_BIT              0x80
 
 struct pwr_msg {
@@ -113,6 +114,9 @@ API int pm_lock_state(unsigned int s_bits, unsigned int flag,
        if (flag & GOTO_STATE_NOW)
                /* if the flag is true, go to the locking state directly */
                s_bits = s_bits | (s_bits << SHIFT_CHANGE_STATE);
+       if (flag & HOLD_KEY_BLOCK)
+               s_bits = s_bits | (1 << SHIFT_HOLD_KEY_BLOCK);
+
        return send_msg(s_bits, timeout);
 }
 
diff --git a/pmapi.h b/pmapi.h
index fbd9c6c..1bb2a40 100644 (file)
--- a/pmapi.h
+++ b/pmapi.h
 #ifndef __POWER_MANAGER_LIBRARY_H__
 #define __POWER_MANAGER_LIBRARY_H__
 
+#include "pmapi_managed.h"
+
 /**
- * @defgroup POWER_MANAGER Power manager library 
+ * @defgroup POWER_MANAGER Power manager library
  * @ingroup SYSTEM_FRAMEWORK
  * @brief Power manager control API library
  *
@@ -100,8 +102,9 @@ extern "C" {
 #define SETALL (LCD_DIM | LCD_OFF | LCD_NORMAL)        /*< select all state - not supported yet */
 
 /* parameters for pm_lock_state() */
-#define GOTO_STATE_NOW 0x1
 #define STAY_CUR_STATE 0x0
+#define GOTO_STATE_NOW 0x1
+#define HOLD_KEY_BLOCK 0x2
 
 /* paramters for pm_unlcok_state() - details are described at 162 line */
 #define PM_SLEEP_MARGIN        0x0     /**< keep guard time for unlock */
@@ -115,13 +118,20 @@ extern "C" {
  * @brief This API is used to lock a particular power-state as the current power-state.\n
  *             The parameter state specifies the power state which you want to lock LCD_NORMAL, LCD_DIM, LCD_OFF. \n
  *             The second parameter Flag is set if you want to go the requested lock state directly.\n
- *             The third parameter timeout specifies lock-timeout in milliseconds. 
+ *             The third parameter timeout specifies lock-timeout in milliseconds.
  *             If the value 0 is selected, the power state remains locked until pm_unlock_state is called.
  * @param[in] state target power state which you want to lock - LCD_NORMAL, LCD_DIM, LCD_OFF
- * @param[in] flag set if you want to go the lock state directly - GOTO_STATE_NOW, STAY_CUR_STATE
- * @param[in] timeout lock-timeout in miliseconds. 
+ * @param[in] flag set if you want to go the lock state directly
+ *             GOTO_STATE_NOW - State is changed directly you want to lock.
+ *             STAY_CUR_STATE - State is not changed directly and phone stay current state until timeout expired.
+ *                              (Default if there is no value in flag.)
+ *             HOLD_KEY_BLOCK - Hold key is blocked during locking LCD_NORMAL or LCD_DIM.
+ *                              Then LCD state transition to LCD_OFF is blocked.
+ *                              If this flag is not set, phone state is lcd off after pressing hold key.
+ *             GOTO_STATE_NOW and STAY_CUR_STATE can't be applied at the same time.
+ * @param[in] timeout lock-timeout in miliseconds.
  *                                       0 is always lock until calling pm_unlock_state
- *                                       If you call this function with same state in duplicate, 
+ *                                       If you call this function with same state in duplicate,
  *                                       only last one will be processed and others are ignored.
  * @return 0 on success, -1 if failed
  * @see pm_unlock_state(), pm_change_state()
@@ -169,25 +179,6 @@ extern "C" {
        int pm_unlock_state(unsigned int, unsigned int);
 
 /**
- * @fn int pm_change_state(unsigned int state);
- * @brief This API is used to change the power manager state by force.
- * @param[in] state power manager state - LCD_NORMAL, LCD_DIM, LCD_OFF
- * @return 0 on success, -1 if failed.
- * @see pm_lock_state(), pm_unlock_state()
- * @pat Example
- * @code
- *     ...
- *     result = pm_change_state(LCD_OFF);
- *     if( result < 0 ) 
- *              printf("[ERROR] return value result =%d, \n",result);
- *      else
- *              printf("[SUCCESS]return value result =%d \n",result);
- *      ...
- * @endcode
- */
-       int pm_change_state(unsigned int);
-
-/**
  * @}
  */
 
diff --git a/pmapi_managed.h b/pmapi_managed.h
new file mode 100644 (file)
index 0000000..4deb80d
--- /dev/null
@@ -0,0 +1,52 @@
+/*
+ *  libslp-pm
+ *
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Contact: Seunghun Pi <sh.pi@samsung.com>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+*/
+
+
+#ifndef __POWER_MANAGER_LIBRARY_MANAGED_H__
+#define __POWER_MANAGER_LIBRARY_MANAGED_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**
+ * @fn int pm_change_state(unsigned int state);
+ * @brief This API is used to change the power manager state by force.
+ * @param[in] state power manager state - LCD_NORMAL, LCD_DIM, LCD_OFF
+ * @return 0 on success, -1 if failed.
+ * @see pm_lock_state(), pm_unlock_state()
+ * @pat Example
+ * @code
+ *     ...
+ *     result = pm_change_state(LCD_OFF);
+ *     if( result < 0 )
+ *              printf("[ERROR] return value result =%d, \n",result);
+ *      else
+ *              printf("[SUCCESS]return value result =%d \n",result);
+ *      ...
+ * @endcode
+ */
+       int pm_change_state(unsigned int);
+
+#ifdef __cplusplus
+}
+#endif
+#endif                         /* __POWER_MANAGER_LIBRARY_MANAGED_H__ */