| # Kconfig.cc2520 - TI CC2520 configuration options |
| # |
| # |
| # Copyright (c) 2017 Intel Corporation |
| # |
| # SPDX-License-Identifier: Apache-2.0 |
| # |
| |
| menuconfig IEEE802154_CC2520 |
| bool "TI CC2520 Driver support" |
| depends on NETWORKING |
| |
| if IEEE802154_CC2520 |
| |
| config IEEE802154_CC2520_DRV_NAME |
| string "TI CC2520 Driver's name" |
| default "cc2520" |
| help |
| This option sets the driver name |
| |
| config IEEE802154_CC2520_SPI_DRV_NAME |
| string "SPI driver's name to use to access CC2520" |
| help |
| This option is mandatory to set which SPI controller to use in order |
| to actually control the CC2520 chip. |
| |
| config IEEE802154_CC2520_SPI_FREQ |
| int "SPI system frequency" |
| default 0 |
| help |
| This option sets the SPI controller's frequency. Beware this value |
| depends on the SPI controller being used and also on the system |
| clock. |
| |
| config IEEE802154_CC2520_SPI_SLAVE |
| int "SPI slave linked to CC2520" |
| default 0 |
| help |
| This option sets the SPI slave number SPI controller has to switch |
| to when dealing with CC2520 chip. |
| |
| config IEEE802154_CC2520_GPIO_SPI_CS |
| bool "Manage SPI CS through a GPIO pin" |
| help |
| This option is useful if one needs to manage SPI CS through a GPIO |
| pin to by-pass the SPI controller's CS logic. |
| |
| config IEEE802154_CC2520_GPIO_SPI_CS_DRV_NAME |
| string "GPIO driver's name to use to drive SPI CS through" |
| depends on IEEE802154_CC2520_GPIO_SPI_CS |
| help |
| This option is mandatory to set which GPIO controller to use in order |
| to actually emulate the SPI CS. |
| |
| config IEEE802154_CC2520_GPIO_SPI_CS_PIN |
| int "GPIO PIN to use to drive SPI CS through" |
| default 0 |
| depends on IEEE802154_CC2520_GPIO_SPI_CS |
| help |
| This option is mandatory to set which GPIO pin to use in order |
| to actually emulate the SPI CS. |
| |
| config IEEE802154_CC2520_RX_STACK_SIZE |
| int "Driver's internal RX thread stack size" |
| default 800 |
| help |
| This option sets the driver's stack size for its internal RX thread. |
| The default value should be sufficient, but in case it proves to be |
| a too little one, this option makes it easy to play with the size. |
| |
| config IEEE802154_CC2520_INIT_PRIO |
| int "CC2520 initialization priority" |
| default 80 |
| help |
| Set the initialization priority number. Do not mess with it unless |
| you know what you are doing. Beware cc2520 requires gpio and spi to |
| be ready first (and sometime gpio should be the very first as spi |
| might need it too). And of course it has to start before the net stack. |
| |
| config IEEE802154_CC2520_RANDOM_MAC |
| bool "Random MAC address" |
| default y |
| help |
| Generate a random MAC address dynamically. |
| |
| if ! IEEE802154_CC2520_RANDOM_MAC |
| |
| config IEEE802154_CC2520_MAC4 |
| hex "MAC Address Byte 4" |
| default 0 |
| range 0 0xff |
| help |
| This is the byte 4 of the MAC address. |
| |
| config IEEE802154_CC2520_MAC5 |
| hex "MAC Address Byte 5" |
| default 0 |
| range 0 0xff |
| help |
| This is the byte 5 of the MAC address. |
| |
| config IEEE802154_CC2520_MAC6 |
| hex "MAC Address Byte 6" |
| default 0 |
| range 0 0xff |
| help |
| This is the byte 6 of the MAC address. |
| |
| config IEEE802154_CC2520_MAC7 |
| hex "MAC Address Byte 7" |
| default 0 |
| range 0 0xff |
| help |
| This is the byte 7 of the MAC address. |
| |
| endif # IEEE802154_CC2520_RANDOM_MAC |
| |
| config IEEE802154_CC2520_CRYPTO |
| bool "Enable hardware crypto helper on cc2520" |
| depends on NET_L2_IEEE802154_SECURITY |
| help |
| This option will expose the hardware AES encryption from CC2520. |
| Such feature should not be used for anything but 802.15.4 security. |
| The crypto device exposed will only support synchronous CCM operation. |
| |
| config IEEE802154_CC2520_CRYPTO_DRV_NAME |
| string "TI CC2520 Crypto Driver's name" |
| default "cc2520_crypto" |
| depends on IEEE802154_CC2520_CRYPTO |
| help |
| This option sets the driver name for the crypto part found on CC2520. |
| |
| config IEEE802154_CC2520_CRYPTO_INIT_PRIO |
| int "TI CC2520 crypto device initialization priority" |
| default 81 |
| depends on IEEE802154_CC2520_CRYPTO |
| help |
| Set the initialization priority number. Do not mess with it unless |
| you know what you are doing. It should be initialized after CC2520 |
| as it shares the same runtime context. |
| |
| endif # IEEE802154_CC2520 |