On some hardware (au0828/au8522), the hardware is broken with
regards to the initial pulse detection. So, the driver needs to
produce a fake start pulse. That limits the acceptable protocols,
as it is not possible to produce a fake pulse that would cover
all supported protocols.
So, allow the driver to explicitly set the allowed protocols.
If the driver doesn't specify, keep the old behavior.
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
if (fattr->type == RC_FILTER_NORMAL) {
enabled = dev->enabled_protocols;
- if (dev->raw)
+ allowed = dev->allowed_protocols;
+ if (dev->raw && !allowed)
allowed = ir_raw_get_allowed_protocols();
- else
- allowed = dev->allowed_protocols;
} else {
enabled = dev->enabled_wakeup_protocols;
allowed = dev->allowed_wakeup_protocols;