Commit 0fcd3f0a authored by Sean Young's avatar Sean Young Committed by Mauro Carvalho Chehab

[media] rc5x: document that this is the 20 bit variant

There are many variants of extended rc5. This implements the 20 bit
version.
Signed-off-by: default avatarSean Young <sean@mess.org>
Cc: David Härdeman <david@hardeman.nu>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent fd844d90
...@@ -124,7 +124,7 @@ static int ir_rc5_decode(struct rc_dev *dev, struct ir_raw_event ev) ...@@ -124,7 +124,7 @@ static int ir_rc5_decode(struct rc_dev *dev, struct ir_raw_event ev)
if (data->is_rc5x && data->count == RC5X_NBITS) { if (data->is_rc5x && data->count == RC5X_NBITS) {
/* RC5X */ /* RC5X */
u8 xdata, command, system; u8 xdata, command, system;
if (!(dev->enabled_protocols & RC_BIT_RC5X)) { if (!(dev->enabled_protocols & RC_BIT_RC5X_20)) {
data->state = STATE_INACTIVE; data->state = STATE_INACTIVE;
return 0; return 0;
} }
...@@ -134,7 +134,7 @@ static int ir_rc5_decode(struct rc_dev *dev, struct ir_raw_event ev) ...@@ -134,7 +134,7 @@ static int ir_rc5_decode(struct rc_dev *dev, struct ir_raw_event ev)
toggle = (data->bits & 0x20000) ? 1 : 0; toggle = (data->bits & 0x20000) ? 1 : 0;
command += (data->bits & 0x40000) ? 0 : 0x40; command += (data->bits & 0x40000) ? 0 : 0x40;
scancode = system << 16 | command << 8 | xdata; scancode = system << 16 | command << 8 | xdata;
protocol = RC_TYPE_RC5X; protocol = RC_TYPE_RC5X_20;
} else if (!data->is_rc5x && data->count == RC5_NBITS) { } else if (!data->is_rc5x && data->count == RC5_NBITS) {
/* RC5 */ /* RC5 */
...@@ -182,7 +182,7 @@ static int ir_rc5_decode(struct rc_dev *dev, struct ir_raw_event ev) ...@@ -182,7 +182,7 @@ static int ir_rc5_decode(struct rc_dev *dev, struct ir_raw_event ev)
} }
static struct ir_raw_handler rc5_handler = { static struct ir_raw_handler rc5_handler = {
.protocols = RC_BIT_RC5 | RC_BIT_RC5X | RC_BIT_RC5_SZ, .protocols = RC_BIT_RC5 | RC_BIT_RC5X_20 | RC_BIT_RC5_SZ,
.decode = ir_rc5_decode, .decode = ir_rc5_decode,
}; };
......
...@@ -796,7 +796,7 @@ static const struct { ...@@ -796,7 +796,7 @@ static const struct {
{ RC_BIT_OTHER, "other", NULL }, { RC_BIT_OTHER, "other", NULL },
{ RC_BIT_UNKNOWN, "unknown", NULL }, { RC_BIT_UNKNOWN, "unknown", NULL },
{ RC_BIT_RC5 | { RC_BIT_RC5 |
RC_BIT_RC5X, "rc-5", "ir-rc5-decoder" }, RC_BIT_RC5X_20, "rc-5", "ir-rc5-decoder" },
{ RC_BIT_NEC | { RC_BIT_NEC |
RC_BIT_NECX | RC_BIT_NECX |
RC_BIT_NEC32, "nec", "ir-nec-decoder" }, RC_BIT_NEC32, "nec", "ir-nec-decoder" },
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
* @RC_TYPE_UNKNOWN: Protocol not known * @RC_TYPE_UNKNOWN: Protocol not known
* @RC_TYPE_OTHER: Protocol known but proprietary * @RC_TYPE_OTHER: Protocol known but proprietary
* @RC_TYPE_RC5: Philips RC5 protocol * @RC_TYPE_RC5: Philips RC5 protocol
* @RC_TYPE_RC5X: Philips RC5x protocol * @RC_TYPE_RC5X_20: Philips RC5x 20 bit protocol
* @RC_TYPE_RC5_SZ: StreamZap variant of RC5 * @RC_TYPE_RC5_SZ: StreamZap variant of RC5
* @RC_TYPE_JVC: JVC protocol * @RC_TYPE_JVC: JVC protocol
* @RC_TYPE_SONY12: Sony 12 bit protocol * @RC_TYPE_SONY12: Sony 12 bit protocol
...@@ -41,7 +41,7 @@ enum rc_type { ...@@ -41,7 +41,7 @@ enum rc_type {
RC_TYPE_UNKNOWN = 0, RC_TYPE_UNKNOWN = 0,
RC_TYPE_OTHER = 1, RC_TYPE_OTHER = 1,
RC_TYPE_RC5 = 2, RC_TYPE_RC5 = 2,
RC_TYPE_RC5X = 3, RC_TYPE_RC5X_20 = 3,
RC_TYPE_RC5_SZ = 4, RC_TYPE_RC5_SZ = 4,
RC_TYPE_JVC = 5, RC_TYPE_JVC = 5,
RC_TYPE_SONY12 = 6, RC_TYPE_SONY12 = 6,
...@@ -66,7 +66,7 @@ enum rc_type { ...@@ -66,7 +66,7 @@ enum rc_type {
#define RC_BIT_UNKNOWN (1ULL << RC_TYPE_UNKNOWN) #define RC_BIT_UNKNOWN (1ULL << RC_TYPE_UNKNOWN)
#define RC_BIT_OTHER (1ULL << RC_TYPE_OTHER) #define RC_BIT_OTHER (1ULL << RC_TYPE_OTHER)
#define RC_BIT_RC5 (1ULL << RC_TYPE_RC5) #define RC_BIT_RC5 (1ULL << RC_TYPE_RC5)
#define RC_BIT_RC5X (1ULL << RC_TYPE_RC5X) #define RC_BIT_RC5X_20 (1ULL << RC_TYPE_RC5X_20)
#define RC_BIT_RC5_SZ (1ULL << RC_TYPE_RC5_SZ) #define RC_BIT_RC5_SZ (1ULL << RC_TYPE_RC5_SZ)
#define RC_BIT_JVC (1ULL << RC_TYPE_JVC) #define RC_BIT_JVC (1ULL << RC_TYPE_JVC)
#define RC_BIT_SONY12 (1ULL << RC_TYPE_SONY12) #define RC_BIT_SONY12 (1ULL << RC_TYPE_SONY12)
...@@ -87,7 +87,7 @@ enum rc_type { ...@@ -87,7 +87,7 @@ enum rc_type {
#define RC_BIT_CEC (1ULL << RC_TYPE_CEC) #define RC_BIT_CEC (1ULL << RC_TYPE_CEC)
#define RC_BIT_ALL (RC_BIT_UNKNOWN | RC_BIT_OTHER | \ #define RC_BIT_ALL (RC_BIT_UNKNOWN | RC_BIT_OTHER | \
RC_BIT_RC5 | RC_BIT_RC5X | RC_BIT_RC5_SZ | \ RC_BIT_RC5 | RC_BIT_RC5X_20 | RC_BIT_RC5_SZ | \
RC_BIT_JVC | \ RC_BIT_JVC | \
RC_BIT_SONY12 | RC_BIT_SONY15 | RC_BIT_SONY20 | \ RC_BIT_SONY12 | RC_BIT_SONY15 | RC_BIT_SONY20 | \
RC_BIT_NEC | RC_BIT_NECX | RC_BIT_NEC32 | \ RC_BIT_NEC | RC_BIT_NECX | RC_BIT_NEC32 | \
......
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