Commit 48d5dbaf authored by Thomas Stilwell's avatar Thomas Stilwell Committed by David S. Miller

ieee802154: at86rf230: add support for rf233 chip

The rf233 and rf231 are sufficiently similar that we can treat
rf233 like rf231.

rf233 is missing some features that rf231 has, but we don't currently
make use of them so there's nothing to handle differently yet.

Should we add support in the future for rf231 *_NOCLK or SLEEP states,
or PAD_IO drive strength, exceptions will need to be made for rf233.
Signed-off-by: default avatarThomas Stilwell <stilwellt@openlabs.co>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 62cf4be9
...@@ -32,10 +32,10 @@ config IEEE802154_FAKELB ...@@ -32,10 +32,10 @@ config IEEE802154_FAKELB
config IEEE802154_AT86RF230 config IEEE802154_AT86RF230
depends on IEEE802154_DRIVERS && MAC802154 depends on IEEE802154_DRIVERS && MAC802154
tristate "AT86RF230/231/212 transceiver driver" tristate "AT86RF230/231/233/212 transceiver driver"
depends on SPI depends on SPI
---help--- ---help---
Say Y here to enable the at86rf230/231/212 SPI 802.15.4 wireless Say Y here to enable the at86rf230/231/233/212 SPI 802.15.4 wireless
controller. controller.
This driver can also be built as a module. To do so, say M here. This driver can also be built as a module. To do so, say M here.
......
...@@ -244,6 +244,7 @@ static bool is_rf212(struct at86rf230_local *local) ...@@ -244,6 +244,7 @@ static bool is_rf212(struct at86rf230_local *local)
#define STATE_TX_ON 0x09 #define STATE_TX_ON 0x09
/* 0x0a - 0x0e */ /* 0x0a - UNSUPPORTED_ATTRIBUTE */ /* 0x0a - 0x0e */ /* 0x0a - UNSUPPORTED_ATTRIBUTE */
#define STATE_SLEEP 0x0F #define STATE_SLEEP 0x0F
#define STATE_PREP_DEEP_SLEEP 0x10
#define STATE_BUSY_RX_AACK 0x11 #define STATE_BUSY_RX_AACK 0x11
#define STATE_BUSY_TX_ARET 0x12 #define STATE_BUSY_TX_ARET 0x12
#define STATE_RX_AACK_ON 0x16 #define STATE_RX_AACK_ON 0x16
...@@ -1108,6 +1109,10 @@ static int at86rf230_probe(struct spi_device *spi) ...@@ -1108,6 +1109,10 @@ static int at86rf230_probe(struct spi_device *spi)
if (version == 1) if (version == 1)
ops = &at86rf212_ops; ops = &at86rf212_ops;
break; break;
case 11:
chip = "at86rf233";
ops = &at86rf230_ops;
break;
default: default:
chip = "UNKNOWN"; chip = "UNKNOWN";
break; break;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment