1if(${CONFIG_HAS_SEMTECH_RADIO_DRIVERS})
2
3set(ZEPHYR_CURRENT_LIBRARY loramac-node)
4
5zephyr_library_include_directories(
6  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/boards
7  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/system
8  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/radio
9)
10
11zephyr_library_sources(
12  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/boards/mcu/utilities.c
13  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/system/systime.c
14  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/system/timer.c
15  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/system/delay.c
16)
17
18zephyr_library_sources_ifdef(CONFIG_HAS_SEMTECH_SX1272
19  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/radio/sx1272/sx1272.c
20)
21zephyr_library_sources_ifdef(CONFIG_HAS_SEMTECH_SX1276
22  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/radio/sx1276/sx1276.c
23)
24zephyr_library_sources_ifdef(CONFIG_HAS_SEMTECH_SX126X
25  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/radio/sx126x/sx126x.c
26  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/radio/sx126x/radio.c
27)
28
29if(${CONFIG_HAS_SEMTECH_LORAMAC})
30  zephyr_library_include_directories(
31    ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac
32    ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region
33    # required for FUOTA FragDecoder.h
34    ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/apps/LoRaMac/common/LmHandler/packages
35  )
36endif()
37
38zephyr_library_compile_definitions_ifdef(CONFIG_HAS_SEMTECH_SOFT_SE SOFT_SE)
39
40zephyr_library_sources_ifdef(CONFIG_HAS_SEMTECH_SOFT_SE
41  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/peripherals/soft-se/aes.c
42  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/peripherals/soft-se/cmac.c
43  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/peripherals/soft-se/soft-se.c
44  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/peripherals/soft-se/soft-se-hal.c
45)
46
47zephyr_library_sources_ifdef(CONFIG_HAS_SEMTECH_LORAMAC
48  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/LoRaMac.c
49  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/LoRaMacAdr.c
50  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/LoRaMacClassB.c
51  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/LoRaMacCommands.c
52  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/LoRaMacConfirmQueue.c
53  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/LoRaMacCrypto.c
54  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/LoRaMacParser.c
55  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/LoRaMacSerializer.c
56)
57
58zephyr_library_sources_ifdef(CONFIG_LORAWAN_FRAG_TRANSPORT_DECODER_SEMTECH
59  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/apps/LoRaMac/common/LmHandler/packages/FragDecoder.c
60)
61
62zephyr_library_sources_ifdef(CONFIG_HAS_SEMTECH_LORAMAC
63  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/Region.c
64  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionCommon.c
65)
66zephyr_library_sources_ifdef(CONFIG_LORAMAC_REGION_EU868
67  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionEU868.c
68)
69zephyr_library_sources_ifdef(CONFIG_LORAMAC_REGION_US915
70  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionBaseUS.c
71  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionUS915.c
72)
73zephyr_library_sources_ifdef(CONFIG_LORAMAC_REGION_CN779
74  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionCN779.c
75)
76zephyr_library_sources_ifdef(CONFIG_LORAMAC_REGION_EU433
77  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionEU433.c
78)
79zephyr_library_sources_ifdef(CONFIG_LORAMAC_REGION_AU915
80  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionBaseUS.c
81  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionAU915.c
82)
83zephyr_library_sources_ifdef(CONFIG_LORAMAC_REGION_AS923
84  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionAS923.c
85)
86zephyr_library_sources_ifdef(CONFIG_LORAMAC_REGION_CN470
87  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionBaseUS.c
88  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionCN470.c
89  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionCN470A20.c
90  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionCN470A26.c
91  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionCN470B20.c
92  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionCN470B26.c
93)
94zephyr_library_sources_ifdef(CONFIG_LORAMAC_REGION_KR920
95  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionKR920.c
96)
97zephyr_library_sources_ifdef(CONFIG_LORAMAC_REGION_IN865
98  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionIN865.c
99)
100zephyr_library_sources_ifdef(CONFIG_LORAMAC_REGION_RU864
101  ${ZEPHYR_LORAMAC_NODE_MODULE_DIR}/src/mac/region/RegionRU864.c
102)
103
104endif()
105