| # |
| # Copyright (c) 2019 Microchip Technology Inc. |
| # |
| # SPDX-License-Identifier: Apache-2.0 |
| # |
| |
| zephyr_library() |
| zephyr_library_sources(pinmux.c) |
| |
| if(DEFINED ENV{EVERGLADES_SPI_GEN}) |
| # Grab it from environment variable if defined |
| set(EVERGLADES_SPI_GEN $ENV{EVERGLADES_SPI_GEN}) |
| else() |
| # Else find the tool in PATH |
| |
| if(CMAKE_HOST_APPLE) |
| # CMAKE_HOST_UNIX is also true for Apple, |
| # but there is no tool for Apple. So |
| # we need to skip it. |
| message(NOTICE "There is no SPI image generation tool for MacOS.") |
| elseif(CMAKE_HOST_UNIX) |
| set(EVERGLADES_SPI_GEN_FILENAME everglades_spi_gen_lin64) |
| elseif(CMAKE_HOST_WIN32) |
| set(EVERGLADES_SPI_GEN_FILENAME everglades_spi_gen.exe) |
| endif() |
| |
| find_file(EVERGLADES_SPI_GEN_FINDFILE ${EVERGLADES_SPI_GEN_FILENAME}) |
| if(EVERGLADES_SPI_GEN_FINDFILE STREQUAL EVERGLADES_SPI_GEN_FINDFILE-NOTFOUND) |
| message(WARNING "Microchip SPI Image Generation tool (${EVERGLADES_SPI_GEN_FILENAME}) is not available. SPI Image will not be generated.") |
| else() |
| set(EVERGLADES_SPI_GEN ${EVERGLADES_SPI_GEN_FINDFILE}) |
| endif() |
| |
| unset(EVERGLADES_SPI_GEN_FINDFILE) |
| unset(EVERGLADES_SPI_GEN_FILENAME) |
| endif() |
| |
| if(DEFINED EVERGLADES_SPI_GEN) |
| if(DEFINED ENV{EVERGLADES_SPI_CFG}) |
| set(EVERGLADES_SPI_CFG $ENV{EVERGLADES_SPI_CFG}) |
| else() |
| set(EVERGLADES_SPI_CFG ${BOARD_DIR}/support/spi_cfg.txt) |
| endif() |
| |
| set_property(GLOBAL APPEND PROPERTY extra_post_build_commands |
| COMMAND ${EVERGLADES_SPI_GEN} |
| -i ${EVERGLADES_SPI_CFG} |
| -o ${PROJECT_BINARY_DIR}/${SPI_IMAGE_NAME} |
| ) |
| |
| unset(EVERGLADES_SPI_GEN) |
| unset(EVERGLADES_SPI_CFG) |
| endif() |