cs42xx8.c (b9f12a5d97f652c77ef6803dccd0d40d1290f5be) cs42xx8.c (689dc643859953651ffb7111fdbcff2eb0f02841)
1/*
2 * Cirrus Logic CS42448/CS42888 Audio CODEC Digital Audio Interface (DAI) driver
3 *
4 * Copyright (C) 2014 Freescale Semiconductor, Inc.
5 *
6 * Author: Nicolin Chen <Guangyu.Chen@freescale.com>
7 *
8 * This file is licensed under the terms of the GNU General Public License

--- 205 unchanged lines hidden (view full) ---

214 val = CS42XX8_INTF_DAC_DIF_LEFTJ | CS42XX8_INTF_ADC_DIF_LEFTJ;
215 break;
216 case SND_SOC_DAIFMT_I2S:
217 val = CS42XX8_INTF_DAC_DIF_I2S | CS42XX8_INTF_ADC_DIF_I2S;
218 break;
219 case SND_SOC_DAIFMT_RIGHT_J:
220 val = CS42XX8_INTF_DAC_DIF_RIGHTJ | CS42XX8_INTF_ADC_DIF_RIGHTJ;
221 break;
1/*
2 * Cirrus Logic CS42448/CS42888 Audio CODEC Digital Audio Interface (DAI) driver
3 *
4 * Copyright (C) 2014 Freescale Semiconductor, Inc.
5 *
6 * Author: Nicolin Chen <Guangyu.Chen@freescale.com>
7 *
8 * This file is licensed under the terms of the GNU General Public License

--- 205 unchanged lines hidden (view full) ---

214 val = CS42XX8_INTF_DAC_DIF_LEFTJ | CS42XX8_INTF_ADC_DIF_LEFTJ;
215 break;
216 case SND_SOC_DAIFMT_I2S:
217 val = CS42XX8_INTF_DAC_DIF_I2S | CS42XX8_INTF_ADC_DIF_I2S;
218 break;
219 case SND_SOC_DAIFMT_RIGHT_J:
220 val = CS42XX8_INTF_DAC_DIF_RIGHTJ | CS42XX8_INTF_ADC_DIF_RIGHTJ;
221 break;
222 case SND_SOC_DAIFMT_DSP_A:
223 val = CS42XX8_INTF_DAC_DIF_TDM | CS42XX8_INTF_ADC_DIF_TDM;
224 break;
222 default:
223 dev_err(codec->dev, "unsupported dai format\n");
224 return -EINVAL;
225 }
226
227 regmap_update_bits(cs42xx8->regmap, CS42XX8_INTF,
228 CS42XX8_INTF_DAC_DIF_MASK |
229 CS42XX8_INTF_ADC_DIF_MASK, val);

--- 187 unchanged lines hidden (view full) ---

417EXPORT_SYMBOL_GPL(cs42448_data);
418
419const struct cs42xx8_driver_data cs42888_data = {
420 .name = "cs42888",
421 .num_adcs = 2,
422};
423EXPORT_SYMBOL_GPL(cs42888_data);
424
225 default:
226 dev_err(codec->dev, "unsupported dai format\n");
227 return -EINVAL;
228 }
229
230 regmap_update_bits(cs42xx8->regmap, CS42XX8_INTF,
231 CS42XX8_INTF_DAC_DIF_MASK |
232 CS42XX8_INTF_ADC_DIF_MASK, val);

--- 187 unchanged lines hidden (view full) ---

420EXPORT_SYMBOL_GPL(cs42448_data);
421
422const struct cs42xx8_driver_data cs42888_data = {
423 .name = "cs42888",
424 .num_adcs = 2,
425};
426EXPORT_SYMBOL_GPL(cs42888_data);
427
425const struct of_device_id cs42xx8_of_match[] = {
428static const struct of_device_id cs42xx8_of_match[] = {
426 { .compatible = "cirrus,cs42448", .data = &cs42448_data, },
427 { .compatible = "cirrus,cs42888", .data = &cs42888_data, },
428 { /* sentinel */ }
429};
430MODULE_DEVICE_TABLE(of, cs42xx8_of_match);
431EXPORT_SYMBOL_GPL(cs42xx8_of_match);
432
433int cs42xx8_probe(struct device *dev, struct regmap *regmap)

--- 167 unchanged lines hidden ---
429 { .compatible = "cirrus,cs42448", .data = &cs42448_data, },
430 { .compatible = "cirrus,cs42888", .data = &cs42888_data, },
431 { /* sentinel */ }
432};
433MODULE_DEVICE_TABLE(of, cs42xx8_of_match);
434EXPORT_SYMBOL_GPL(cs42xx8_of_match);
435
436int cs42xx8_probe(struct device *dev, struct regmap *regmap)

--- 167 unchanged lines hidden ---