1# Copyright (c) 2020-2022 Huawei Device Co., Ltd. All rights reserved. 2# 3# Redistribution and use in source and binary forms, with or without modification, 4# are permitted provided that the following conditions are met: 5# 6# 1. Redistributions of source code must retain the above copyright notice, this list of 7# conditions and the following disclaimer. 8# 9# 2. Redistributions in binary form must reproduce the above copyright notice, this list 10# of conditions and the following disclaimer in the documentation and/or other materials 11# provided with the distribution. 12# 13# 3. Neither the name of the copyright holder nor the names of its contributors may be used 14# to endorse or promote products derived from this software without specific prior written 15# permission. 16# 17# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 19# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 20# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR 21# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 22# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 23# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 24# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 25# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 26# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 27# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 29import("//build/lite/config/component/lite_component.gni") 30import("//drivers/hdf_core/adapter/khdf/liteos/hdf.gni") 31 32module_switch = defined(LOSCFG_DRIVERS_HDF_PLATFORM) 33module_name = "hdf_platform" 34hdf_driver(module_name) { 35 sources = [ 36 "$HDF_FRAMEWORKS_PATH/support/platform/src/fwk/platform_common.c", 37 "$HDF_FRAMEWORKS_PATH/support/platform/src/fwk/platform_device.c", 38 "$HDF_FRAMEWORKS_PATH/support/platform/src/fwk/platform_event.c", 39 "$HDF_FRAMEWORKS_PATH/support/platform/src/fwk/platform_manager.c", 40 "$HDF_FRAMEWORKS_PATH/support/platform/src/fwk/platform_queue.c", 41 "src/plat_common.c", 42 ] 43 44 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_TRACE)) { 45 sources += [ 46 "$HDF_FRAMEWORKS_PATH/support/platform/src/fwk/platform_trace_transfer.c", 47 "src/platform_trace.c", 48 ] 49 } 50 51 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_DUMPER)) { 52 sources += 53 [ "$HDF_FRAMEWORKS_PATH/support/platform/src/fwk/platform_dumper.c" ] 54 } 55 56 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_I2C)) { 57 sources += [ 58 "$HDF_FRAMEWORKS_PATH/support/platform/src/i2c/i2c_core.c", 59 "$HDF_FRAMEWORKS_PATH/support/platform/src/i2c/i2c_if.c", 60 "src/i2c_dev.c", 61 ] 62 } 63 64 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_ADC)) { 65 sources += [ 66 "$HDF_FRAMEWORKS_PATH/support/platform/src/adc/adc_core.c", 67 "$HDF_FRAMEWORKS_PATH/support/platform/src/adc/adc_if.c", 68 ] 69 } 70 71 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_DAC)) { 72 sources += [ 73 "$HDF_FRAMEWORKS_PATH/support/platform/src/dac/dac_core.c", 74 "$HDF_FRAMEWORKS_PATH/support/platform/src/dac/dac_if.c", 75 ] 76 } 77 78 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_I3C)) { 79 sources += [ 80 "$HDF_FRAMEWORKS_PATH/support/platform/src/i3c/i3c_core.c", 81 "$HDF_FRAMEWORKS_PATH/support/platform/src/i3c/i3c_if.c", 82 ] 83 } 84 85 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_GPIO)) { 86 sources += [ 87 "$HDF_FRAMEWORKS_PATH/support/platform/src/gpio/gpio_core.c", 88 "$HDF_FRAMEWORKS_PATH/support/platform/src/gpio/gpio_if.c", 89 "$HDF_FRAMEWORKS_PATH/support/platform/src/gpio/gpio_manager.c", 90 "$HDF_FRAMEWORKS_PATH/support/platform/src/gpio/gpio_service.c", 91 "src/gpio_dev.c", 92 ] 93 } 94 95 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_PIN)) { 96 sources += [ 97 "$HDF_FRAMEWORKS_PATH/support/platform/src/pin/pin_core.c", 98 "$HDF_FRAMEWORKS_PATH/support/platform/src/pin/pin_if.c", 99 ] 100 } 101 102 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_WATCHDOG)) { 103 sources += [ 104 "$HDF_FRAMEWORKS_PATH/support/platform/src/watchdog/watchdog_core.c", 105 "$HDF_FRAMEWORKS_PATH/support/platform/src/watchdog/watchdog_if.c", 106 ] 107 } 108 109 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_SPI)) { 110 sources += [ 111 "$HDF_FRAMEWORKS_PATH/support/platform/src/spi/spi_core.c", 112 "$HDF_FRAMEWORKS_PATH/support/platform/src/spi/spi_if.c", 113 "src/spi_dev.c", 114 ] 115 } 116 117 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_PWM)) { 118 sources += [ 119 "$HDF_FRAMEWORKS_PATH/support/platform/src/pwm/pwm_core.c", 120 "$HDF_FRAMEWORKS_PATH/support/platform/src/pwm/pwm_if.c", 121 ] 122 } 123 124 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_HDMI)) { 125 sources += [ 126 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_cec.c", 127 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_common.c", 128 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_core.c", 129 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_ddc.c", 130 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_dfm.c", 131 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_dispatch.c", 132 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_edid.c", 133 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_event.c", 134 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_frl.c", 135 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_hdcp.c", 136 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_hdr.c", 137 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_if.c", 138 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_infoframe.c", 139 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_ncts.c", 140 "$HDF_FRAMEWORKS_PATH/support/platform/src/hdmi/hdmi_scdc.c", 141 ] 142 } 143 144 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_PCIE)) { 145 sources += [ 146 "$HDF_FRAMEWORKS_PATH/support/platform/src/pcie/pcie_core.c", 147 "$HDF_FRAMEWORKS_PATH/support/platform/src/pcie/pcie_dispatch.c", 148 "$HDF_FRAMEWORKS_PATH/support/platform/src/pcie/pcie_if.c", 149 ] 150 } 151 152 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_RTC)) { 153 sources += [ 154 "$HDF_FRAMEWORKS_PATH/support/platform/src/rtc/rtc_base.c", 155 "$HDF_FRAMEWORKS_PATH/support/platform/src/rtc/rtc_core.c", 156 "$HDF_FRAMEWORKS_PATH/support/platform/src/rtc/rtc_if.c", 157 "$HDF_FRAMEWORKS_PATH/support/platform/src/rtc/rtc_service.c", 158 ] 159 } 160 161 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_MIPI_DSI)) { 162 sources += [ 163 "$HDF_FRAMEWORKS_PATH/support/platform/src/mipi/mipi_dsi_core.c", 164 "$HDF_FRAMEWORKS_PATH/support/platform/src/mipi/mipi_dsi_if.c", 165 ] 166 } 167 168 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_MIPI_CSI)) { 169 sources += [ 170 "$HDF_FRAMEWORKS_PATH/support/platform/src/mipi/mipi_csi_core.c", 171 "$HDF_FRAMEWORKS_PATH/support/platform/src/mipi/mipi_csi_if.c", 172 ] 173 } 174 175 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_DMAC)) { 176 sources += [ "$HDF_FRAMEWORKS_PATH/support/platform/src/dma/dmac_core.c" ] 177 } 178 179 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_UART)) { 180 sources += [ 181 "$HDF_FRAMEWORKS_PATH/support/platform/src/uart/uart_core.c", 182 "$HDF_FRAMEWORKS_PATH/support/platform/src/uart/uart_if.c", 183 "$HDF_FRAMEWORKS_PATH/support/platform/src/uart/uart_service.c", 184 "src/uart_dev.c", 185 ] 186 } 187 188 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_I2S)) { 189 sources += [ 190 "$HDF_FRAMEWORKS_PATH/support/platform/src/i2s/i2s_core.c", 191 "$HDF_FRAMEWORKS_PATH/support/platform/src/i2s/i2s_if.c", 192 ] 193 } 194 195 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_REGULATOR)) { 196 sources += [ 197 "$HDF_FRAMEWORKS_PATH/support/platform/src/regulator/regulator_core.c", 198 "$HDF_FRAMEWORKS_PATH/support/platform/src/regulator/regulator_if.c", 199 "$HDF_FRAMEWORKS_PATH/support/platform/src/regulator/regulator_tree_mgr.c", 200 ] 201 } 202 203 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_TIMER)) { 204 sources += [ 205 "$HDF_FRAMEWORKS_PATH/support/platform/src/timer/timer_core.c", 206 "$HDF_FRAMEWORKS_PATH/support/platform/src/timer/timer_if.c", 207 ] 208 } 209 210 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_CAN)) { 211 sources += [ 212 "$HDF_FRAMEWORKS_PATH/support/platform/src/can/can_client.c", 213 "$HDF_FRAMEWORKS_PATH/support/platform/src/can/can_core.c", 214 "$HDF_FRAMEWORKS_PATH/support/platform/src/can/can_if.c", 215 "$HDF_FRAMEWORKS_PATH/support/platform/src/can/can_mail.c", 216 "$HDF_FRAMEWORKS_PATH/support/platform/src/can/can_manager.c", 217 "$HDF_FRAMEWORKS_PATH/support/platform/src/can/can_msg.c", 218 "$HDF_FRAMEWORKS_PATH/support/platform/src/can/can_service.c", 219 ] 220 } 221 222 public_configs = [ ":public" ] 223} 224 225config("public") { 226 include_dirs = [ 227 "include", 228 "//kernel/liteos_a/kernel/include/", 229 "$HDF_FRAMEWORKS_PATH/include/core", 230 "$HDF_FRAMEWORKS_PATH/core/common/include/host", 231 "$HDF_FRAMEWORKS_PATH/include/platform", 232 "$HDF_FRAMEWORKS_PATH/support/platform/include", 233 "$HDF_FRAMEWORKS_PATH/support/platform/include/fwk", 234 "$HDF_FRAMEWORKS_PATH/support/platform/include/adc", 235 "$HDF_FRAMEWORKS_PATH/support/platform/include/dac", 236 "$HDF_FRAMEWORKS_PATH/support/platform/include/dma", 237 "$HDF_FRAMEWORKS_PATH/support/platform/include/gpio", 238 "$HDF_FRAMEWORKS_PATH/support/platform/include/hdmi", 239 "$HDF_FRAMEWORKS_PATH/support/platform/include/i2c", 240 "$HDF_FRAMEWORKS_PATH/support/platform/include/i2s", 241 "$HDF_FRAMEWORKS_PATH/support/platform/include/i3c", 242 "$HDF_FRAMEWORKS_PATH/support/platform/include/mipi", 243 "$HDF_FRAMEWORKS_PATH/support/platform/include/pcie", 244 "$HDF_FRAMEWORKS_PATH/support/platform/include/pwm", 245 "$HDF_FRAMEWORKS_PATH/support/platform/include/pin", 246 "$HDF_FRAMEWORKS_PATH/support/platform/include/rtc", 247 "$HDF_FRAMEWORKS_PATH/support/platform/include/regulator", 248 "$HDF_FRAMEWORKS_PATH/support/platform/include/spi", 249 "$HDF_FRAMEWORKS_PATH/support/platform/include/uart", 250 "$HDF_FRAMEWORKS_PATH/support/platform/include/watchdog", 251 "$HDF_FRAMEWORKS_PATH/support/platform/include/timer", 252 ] 253} 254