Linux Audio

Check our new training course

Embedded Linux Audio

Check our new training course
with Creative Commons CC-BY-SA
lecture materials

Bootlin logo

Elixir Cross Referencer

Loading...
# SPDX-License-Identifier: Apache-2.0

# Kconfig.cc1200 - TI CC1200 configuration options
#

menuconfig IEEE802154_CC1200
	bool "TI CC1200 Driver support"
	depends on NETWORKING
	select NET_L2_IEEE802154_SUB_GHZ

if IEEE802154_CC1200

config IEEE802154_CC1200_DRV_NAME
	string "TI CC1200 Driver's name"
	default "cc1200"
	help
	  This option sets the driver name

config IEEE802154_CC1200_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_CC1200_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_CC1200_INIT_PRIO
	int "CC1200 initialization priority"
	default 80
	help
	  Set the initialization priority number. Do not mess with it unless
	  you know what you are doing. Beware cc1200 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_CC1200_RANDOM_MAC
	bool "Random MAC address"
	default y
	help
	  Generate a random MAC address dynamically.

if ! IEEE802154_CC1200_RANDOM_MAC

config IEEE802154_CC1200_MAC4
	hex "MAC Address Byte 4"
	default 0
	range 0 0xff
	help
	  This is the byte 4 of the MAC address.

config IEEE802154_CC1200_MAC5
	hex "MAC Address Byte 5"
	default 0
	range 0 0xff
	help
	  This is the byte 5 of the MAC address.

config IEEE802154_CC1200_MAC6
	hex "MAC Address Byte 6"
	default 0
	range 0 0xff
	help
	  This is the byte 6 of the MAC address.

config IEEE802154_CC1200_MAC7
	hex "MAC Address Byte 7"
	default 0
	range 0 0xff
	help
	  This is the byte 7 of the MAC address.

endif # IEEE802154_CC1200_RANDOM_MAC

config IEEE802154_CC1200_XOSC
	int "Value of the Crystal oscillator in kHz"
	default 40000
	help
	  This sets the XOSC value, it must be between 38400 and 40000.
	  This value should follow what has been set in the RF settings via
	  SmartRF tool. Do not touch this unless you know what you are doing.

config IEEE802154_CC1200_RF_PRESET
	bool "Use TI CC1200 RF pre-sets"
	default y

choice
	prompt "TI CC1200 RF preset"
	default IEEE802154_CC1200_RF_SET_0
	depends on IEEE802154_CC1200_RF_PRESET
	help
	  Set the RF preset you want to use.

config IEEE802154_CC1200_RF_SET_0
	bool "868MHz - 50Kbps - 2-GFSK - IEEE 802.15.4g compliant - ETSI"

config IEEE802154_CC1200_RF_SET_1
	bool "920MHz - 50Kbps - 2-GFSK - IEEE 802.15.4g compliant - ARIB"

config IEEE802154_CC1200_RF_SET_2
	bool "434MHz - 50Kbps - 2-GFSK - IEEE 802.15.4g compliant - ETSI"

endchoice

config IEEE802154_CC1200_CCA_THRESHOLD
	int "Value in dbm of the CCA threshold"
	default -91
	help
	  Set the CCA threshold. See datasheet's AGC_CS_THR register for
	  more information. Do not touch this unless you know what you are doing.

config IEEE802154_CC1200_RSSI_OFFSET
	int "Value in dbm of the RSSI offset"
	default -81
	help
	  Set the gain adjustment. See datasheet's AGC_GAIN_ADJUST register for
	  more information. Do not touch this unless you know what you are doing.

# Do no touch below settings unless you know what you are doing
config IEEE802154_CC1200_SETTLING_CFG
	hex
	default 0x03

config IEEE802154_CC1200_PKTCFG0
	hex
	default 0x20

config IEEE802154_CC1200_PKTCFG1
	hex
	default 0x03

config IEEE802154_CC1200_PKTCFG2
	hex
	default 0x00

config IEEE802154_CC1200_RFEND_CFG1
	hex
	default 0x3F

config IEEE802154_CC1200_RFEND_CFG0
	hex
	default 0x00

endif # IEEE802154_CC1200