1# Copyright (c) 2020-2021 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("//drivers/adapter/khdf/liteos/hdf.gni") 30 31module_switch = defined(LOSCFG_DRIVERS_HDF_STORAGE) 32module_name = "hdf_storage_driver" 33hdf_driver(module_name) { 34 FRAMEWORKS_STORAGE_ROOT = "$HDF_FRAMEWORKS_PATH/model/storage" 35 36 include_dirs = [ "//base/hiviewdfx/interfaces/kits" ] 37 38 sources = [] 39 40 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_MMC)) { 41 sources += [ 42 "$FRAMEWORKS_STORAGE_ROOT/src/mmc/mmc_block.c", 43 "$FRAMEWORKS_STORAGE_ROOT/src/mmc/mmc_core.c", 44 "$FRAMEWORKS_STORAGE_ROOT/src/mmc/mmc_dispatch.c", 45 "$FRAMEWORKS_STORAGE_ROOT/src/mmc/mmc_emmc.c", 46 "$FRAMEWORKS_STORAGE_ROOT/src/mmc/mmc_if.c", 47 "$FRAMEWORKS_STORAGE_ROOT/src/mmc/mmc_protocol.c", 48 "$FRAMEWORKS_STORAGE_ROOT/src/mmc/mmc_sdio.c", 49 "src/mmc/mmc_block_lite.c", 50 ] 51 } 52 53 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_SDIO)) { 54 sources += [ "$HDF_FRAMEWORKS_PATH/model/storage/src/mmc/sdio_if.c" ] 55 } 56 57 if (defined(LOSCFG_DRIVERS_HDF_PLATFORM_EMMC)) { 58 sources += [ "$HDF_FRAMEWORKS_PATH/model/storage/src/mmc/emmc_if.c" ] 59 } 60 61 if (defined(LOSCFG_DRIVERS_HDF_STORAGE_MTD)) { 62 sources += [ 63 "$FRAMEWORKS_STORAGE_ROOT/src/mtd/mtd_block.c", 64 "$FRAMEWORKS_STORAGE_ROOT/src/mtd/mtd_char.c", 65 "$FRAMEWORKS_STORAGE_ROOT/src/mtd/mtd_core.c", 66 "$FRAMEWORKS_STORAGE_ROOT/src/mtd/mtd_spi_common.c", 67 "src/mtd/mtd_block_lite.c", 68 "src/mtd/mtd_char_lite.c", 69 "src/mtd/mtd_legacy_lite.c", 70 ] 71 } 72 73 public_configs = [ ":public" ] 74} 75 76config("public") { 77 include_dirs = [ 78 "include", 79 "include/mmc", 80 "include/mtd", 81 "$HDF_FRAMEWORKS_PATH/model/storage/include", 82 "$HDF_FRAMEWORKS_PATH/model/storage/include/mmc", 83 "$HDF_FRAMEWORKS_PATH/model/storage/include/mtd", 84 ] 85} 86