Tab5 audio, I2C improvements, UiDensity moved to lvgl-module and cleanup (#506)
- UiDensity moved to lvgl-module - Deleted tt_hal and tt_hal_gpio (breaks apps, but will fix those right after merging) - Added I2C 8 bit register operations - Added device.properties to simulator - Improved Tab5 hardware init, implement audio - Add README.md to kernel
This commit is contained in:
committed by
GitHub
parent
3a24d058c9
commit
d860ba1f34
@@ -21,3 +21,59 @@ function(GET_PROPERTY_FILE_CONTENT PROPERTY_FILE RESULT_VAR)
|
||||
set(${RESULT_VAR} "${file_content}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
function(READ_PROPERTIES_TO_MAP PROPERTY_FILE RESULT_VAR)
|
||||
get_filename_component(PROPERTY_FILE_ABS ${PROPERTY_FILE} ABSOLUTE)
|
||||
if (NOT EXISTS ${PROPERTY_FILE_ABS})
|
||||
message(FATAL_ERROR "Property file not found: ${PROPERTY_FILE}")
|
||||
endif ()
|
||||
|
||||
file(STRINGS ${PROPERTY_FILE_ABS} lines)
|
||||
set(current_section "")
|
||||
set(map_content "")
|
||||
|
||||
foreach(line IN LISTS lines)
|
||||
string(STRIP "${line}" line)
|
||||
if (line STREQUAL "" OR line MATCHES "^#")
|
||||
continue()
|
||||
endif ()
|
||||
|
||||
if (line MATCHES "^\\[.*\\]$")
|
||||
set(current_section "${line}")
|
||||
elseif (line MATCHES "^([^=]+)=(.*)$")
|
||||
set(key "${CMAKE_MATCH_1}")
|
||||
set(value "${CMAKE_MATCH_2}")
|
||||
string(STRIP "${key}" key)
|
||||
string(STRIP "${value}" value)
|
||||
# Remove optional quotes from value
|
||||
if (value MATCHES "^\"(.*)\"$")
|
||||
set(value "${CMAKE_MATCH_1}")
|
||||
endif ()
|
||||
|
||||
list(APPEND map_content "${current_section}${key}" "${value}")
|
||||
endif ()
|
||||
endforeach()
|
||||
|
||||
set(${RESULT_VAR} "${map_content}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
function(GET_VALUE_FROM_MAP MAP_VAR KEY_NAME RESULT_VAR)
|
||||
list(FIND ${MAP_VAR} "${KEY_NAME}" key_index)
|
||||
if (key_index EQUAL -1)
|
||||
set(${RESULT_VAR} "" PARENT_SCOPE)
|
||||
return()
|
||||
endif ()
|
||||
|
||||
math(EXPR value_index "${key_index} + 1")
|
||||
list(GET ${MAP_VAR} ${value_index} value)
|
||||
set(${RESULT_VAR} "${value}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
function(KEY_EXISTS_IN_MAP MAP_VAR KEY_NAME RESULT_VAR)
|
||||
list(FIND ${MAP_VAR} "${KEY_NAME}" key_index)
|
||||
if (key_index EQUAL -1)
|
||||
set(${RESULT_VAR} FALSE PARENT_SCOPE)
|
||||
else ()
|
||||
set(${RESULT_VAR} TRUE PARENT_SCOPE)
|
||||
endif ()
|
||||
endfunction()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user