CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+PROJECT(bluetooth-firmware-marvell C)
#INCLUDE(FindPkgConfig)
#pkg_check_modules(package REQUIRED glib-2.0)
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Werror -fPIE")
SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE DESTINATION ${HAL_LICENSE_DIR}/${PROJECT_NAME})
+
ADD_SUBDIRECTORY(scripts)
ADD_SUBDIRECTORY(src)
%setup -q
%build
-cmake ./ -DCMAKE_INSTALL_PREFIX=%{_prefix} -DPLUGIN_INSTALL_PREFIX=%{_prefix}
+cmake ./ -DCMAKE_INSTALL_PREFIX=%{_prefix} \
+ -DPLUGIN_INSTALL_PREFIX=%{_prefix} \
+ -DHAL_LIB_DIR=%{_hal_libdir} \
+ -DHAL_LICENSE_DIR=%{_hal_licensedir} \
+ -DHAL_SYSCONF_DIR=%{_hal_sysconfdir}
make %{?jobs:-j%jobs}
%install
%files artik530
%manifest %{name}.manifest
-%license LICENSE
-%defattr(-,root,root,-)
-%attr(755,-,-) %{_prefix}/etc/bluetooth/bt-dev-end.sh
-%attr(755,-,-) %{_prefix}/etc/bluetooth/bt-dev-start.sh
-%attr(755,-,-) %{_prefix}/etc/bluetooth/bt-set-addr.sh
-/hal/lib/*.so*
+%{_hal_licensedir}/%{name}/LICENSE
+%{_hal_sysconfdir}/bluetooth/bt-dev-end.sh
+%{_hal_sysconfdir}/bluetooth/bt-dev-start.sh
+%{_hal_sysconfdir}/bluetooth/bt-set-addr.sh
+%{_hal_libdir}/*.so*
# install scripts
-INSTALL(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/bt-dev-end.sh DESTINATION ${PLUGIN_INSTALL_PREFIX}/etc/bluetooth)
-INSTALL(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/bt-dev-start.sh DESTINATION ${PLUGIN_INSTALL_PREFIX}/etc/bluetooth)
-INSTALL(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/bt-set-addr.sh DESTINATION ${PLUGIN_INSTALL_PREFIX}/etc/bluetooth)
+INSTALL(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/bt-dev-end.sh DESTINATION ${HAL_SYSCONF_DIR}/bluetooth)
+INSTALL(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/bt-dev-start.sh DESTINATION ${HAL_SYSCONF_DIR}/bluetooth)
+INSTALL(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/bt-set-addr.sh DESTINATION ${HAL_SYSCONF_DIR}/bluetooth)
# Turn off Bluetooth Chip
/usr/sbin/rfkill block bluetooth
+HCI_CONFIG=/usr/bin/hciconfig
+TIMEOUT=20
+for ((i=1; i<=$TIMEOUT; i++))
+do
+ /bin/sleep 0.1
+ if [ $i -eq $TIMEOUT ]
+ then
+ echo "time expired happen $i"
+ exit 2
+ fi
+ if (${HCI_CONFIG} | grep DOWN); then
+ echo "Bluetooth device is down"
+ break
+ fi
+ if (${HCI_CONFIG} | grep hci); then
+ echo "Bluetooth device still exist"
+ else
+ echo "hci is removed"
+ break
+ fi
+ echo "Continue...$i"
+done
+
+exit 0
echo 2 > /sys/devices/platform/sd8x-rfkill/pwr_ctrl
TIMEOUT=20
-
-for (( i=1; i<=$TIMEOUT; i++))
+for ((i=1; i<=$TIMEOUT; i++))
do
/bin/sleep 0.1
-
- if [ $i -eq $TIMEOUT ]
- then
- echo "time expired happen $i"
- ${RFKILL} block bluetooth
- exit 1
- fi
-
+ if [ $i -eq $TIMEOUT ]
+ then
+ echo "time expired happen $i"
+ ${RFKILL} block bluetooth
+ exit 2
+ fi
if (${HCI_CONFIG} | ${GREP} hci); then
echo "Bluetooth device is made"
break
fi
echo "Continue...$i"
done
+
exit 0
ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${hal-backend-bluetooth_pkgs_LDFLAGS})
-INSTALL(TARGETS ${PROJECT_NAME} DESTINATION /hal/lib COMPONENT RuntimeLibraries)
+INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${HAL_LIB_DIR} COMPONENT RuntimeLibraries)
static int bluetooth_artik_start(void)
{
int ret;
- ret = system("/usr/etc/bluetooth/bt-stack-up.sh");
+ ret = system("/hal/etc/bluetooth/bt-dev-start.sh");
if (ret == 0x100) {
LOGE("script internal failed");
return HAL_BACKEND_ERROR_INTERNAL;
static int bluetooth_artik_stop(void)
{
int ret;
- ret = system("/usr/etc/bluetooth/bt-stack-down.sh");
+ ret = system("/hal/etc/bluetooth/bt-dev-end.sh");
if (ret == 0x100) {
LOGE("script internal failed");
return HAL_BACKEND_ERROR_INTERNAL;