[PATCH] radio-bcm2048: Fix region selection

From: Pali RohÃr
Date: Fri May 15 2015 - 17:33:13 EST


From: maxx <maxx@xxxxxxxxxxxxx>

This actually fixes region selection for BCM2048 FM receiver. To select
the japanese FM-band an additional bit in FM_CTRL register needs to be
set. This might not sound so important but it enables at least me to
listen to some 'very interesting' radio transmission below normal
FM-band.

Patch writen by maxx@xxxxxxxxxxxxx

Signed-off-by: Pali RohÃr <pali.rohar@xxxxxxxxx>
Cc: maxx@xxxxxxxxxxxxx
---
drivers/staging/media/bcm2048/radio-bcm2048.c | 13 +++++++++++++
1 file changed, 13 insertions(+)

diff --git a/drivers/staging/media/bcm2048/radio-bcm2048.c b/drivers/staging/media/bcm2048/radio-bcm2048.c
index aeb6c3c..1482d4b 100644
--- a/drivers/staging/media/bcm2048/radio-bcm2048.c
+++ b/drivers/staging/media/bcm2048/radio-bcm2048.c
@@ -739,7 +739,20 @@ static int bcm2048_set_region(struct bcm2048_device *bdev, u8 region)
return -EINVAL;

mutex_lock(&bdev->mutex);
+
bdev->region_info = region_configs[region];
+
+ bdev->cache_fm_ctrl &= ~BCM2048_BAND_SELECT;
+ if (region > 2) {
+ bdev->cache_fm_ctrl |= BCM2048_BAND_SELECT;
+ err = bcm2048_send_command(bdev, BCM2048_I2C_FM_CTRL,
+ bdev->cache_fm_ctrl);
+ if (err) {
+ mutex_unlock(&bdev->mutex);
+ goto done;
+ }
+ }
+
mutex_unlock(&bdev->mutex);

if (bdev->frequency < region_configs[region].bottom_frequency ||
--
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/