If /sys/class/usb_mode/usb0/enable exists, it is slp usb_hal.
Otherwise it is configfs usb_hal.
Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
Change-Id: I8e6b74ffbc6287fe7b5f0a7ab475edff16b2fd88
ADD_SUBDIRECTORY(hw/touchscreen)
ADD_SUBDIRECTORY(hw/usb_gadget)
ADD_SUBDIRECTORY(hw/usb_client)
+ADD_SUBDIRECTORY(hw/usb_cfs_client)
--- /dev/null
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+PROJECT(usb_cfs_client C)
+
+SET(PREFIX ${CMAKE_INSTALL_PREFIX})
+
+INCLUDE(FindPkgConfig)
+pkg_check_modules(usb_cfs_client_pkgs REQUIRED hwcommon dlog glib-2.0 libsystemd libusbgx)
+
+FOREACH(flag ${usb_cfs_client_pkgs_CFLAGS})
+ SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
+ENDFOREACH(flag)
+
+SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
+
+ADD_LIBRARY(${PROJECT_NAME} MODULE usb_cfs_client.c ../shared.c)
+TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${usb_cfs_client_pkgs_LDFLAGS})
+SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES PREFIX "")
+INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIB_INSTALL_DIR}/hw COMPONENT RuntimeLibraries)
#include <sys/types.h>
#include <sys/mount.h>
#include <usbg/usbg.h>
+#include <unistd.h>
#include <systemd/sd-bus.h>
#include <unistd.h>
if (!info || !common)
return -EINVAL;
+ /* used exclusively with slp usb_client*/
+ if (!access("/sys/class/usb_mode/usb0/enable", F_OK))
+ return -ENOENT;
+
cfs_client = zalloc(sizeof(*cfs_client));
if (!cfs_client)
return -ENOMEM;
.magic = HARDWARE_INFO_TAG,
.hal_version = HARDWARE_INFO_VERSION,
.device_version = USB_CLIENT_HARDWARE_DEVICE_VERSION,
- .id = USB_CLIENT_HARDWARE_DEVICE_ID,
+ .id = USB_CFS_CLIENT_HARDWARE_DEVICE_ID,
.name = "cfs-gadget",
.open = cfs_gadget_open,
.close = cfs_gadget_close,
#include <limits.h>
#include <stdio.h>
#include <string.h>
+#include <unistd.h>
#include <systemd/sd-bus.h>
#define zalloc(amount) calloc(1, amount)
if (!info || !common)
return -EINVAL;
+ /* check if slp usb gadget exists */
+ if (access("/sys/class/usb_mode/usb0/enable", F_OK))
+ return -ENOENT;
+
legacy = zalloc(sizeof(*legacy));
if (!legacy)
return -ENOMEM;
BuildRequires: pkgconfig(capi-system-peripheral-io)
BuildRequires: pkgconfig(libusbgx)
BuildRequires: pkgconfig(libsystemd)
+BuildRequires: pkgconfig(libusbgx)
%description
Device manager plugin artik