Unverified Commit ab589bac authored by Alexandru Ardelean's avatar Alexandru Ardelean Committed by Mark Brown
Browse files

ASoC: adau1977: remove platform data and move micbias bindings include



The change removes the platform_data include/definition. It only contains
some values for the MICBIAS.
These are moved into 'dt-bindings/sound/adi,adau1977.h' so that they can be
used inside device-trees. When moving then, they need to be converted to
pre-compiler defines, so that the DT compiler can understand them.

The driver then, also needs to include the new
'dt-bindings/sound/adi,adau1977.h' file.

Signed-off-by: default avatarAlexandru Ardelean <alexandru.ardelean@analog.com>
Link: https://lore.kernel.org/r/20201019105313.24862-1-alexandru.ardelean@analog.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 76b5f68b
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0-only */
#ifndef __DT_BINDINGS_ADI_ADAU1977_H__
#define __DT_BINDINGS_ADI_ADAU1977_H__

#define ADAU1977_MICBIAS_5V0	0x0
#define ADAU1977_MICBIAS_5V5	0x1
#define ADAU1977_MICBIAS_6V0	0x2
#define ADAU1977_MICBIAS_6V5	0x3
#define ADAU1977_MICBIAS_7V0	0x4
#define ADAU1977_MICBIAS_7V5	0x5
#define ADAU1977_MICBIAS_8V0	0x6
#define ADAU1977_MICBIAS_8V5	0x7
#define ADAU1977_MICBIAS_9V0	0x8

#endif /* __DT_BINDINGS_ADI_ADAU1977_H__ */
+0 −44
Original line number Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * ADAU1977/ADAU1978/ADAU1979 driver
 *
 * Copyright 2014 Analog Devices Inc.
 *  Author: Lars-Peter Clausen <lars@metafoo.de>
 */

#ifndef __LINUX_PLATFORM_DATA_ADAU1977_H__
#define __LINUX_PLATFORM_DATA_ADAU1977_H__

/**
 * enum adau1977_micbias - ADAU1977 MICBIAS pin voltage setting
 * @ADAU1977_MICBIAS_5V0: MICBIAS is set to 5.0 V
 * @ADAU1977_MICBIAS_5V5: MICBIAS is set to 5.5 V
 * @ADAU1977_MICBIAS_6V0: MICBIAS is set to 6.0 V
 * @ADAU1977_MICBIAS_6V5: MICBIAS is set to 6.5 V
 * @ADAU1977_MICBIAS_7V0: MICBIAS is set to 7.0 V
 * @ADAU1977_MICBIAS_7V5: MICBIAS is set to 7.5 V
 * @ADAU1977_MICBIAS_8V0: MICBIAS is set to 8.0 V
 * @ADAU1977_MICBIAS_8V5: MICBIAS is set to 8.5 V
 * @ADAU1977_MICBIAS_9V0: MICBIAS is set to 9.0 V
 */
enum adau1977_micbias {
	ADAU1977_MICBIAS_5V0 = 0x0,
	ADAU1977_MICBIAS_5V5 = 0x1,
	ADAU1977_MICBIAS_6V0 = 0x2,
	ADAU1977_MICBIAS_6V5 = 0x3,
	ADAU1977_MICBIAS_7V0 = 0x4,
	ADAU1977_MICBIAS_7V5 = 0x5,
	ADAU1977_MICBIAS_8V0 = 0x6,
	ADAU1977_MICBIAS_8V5 = 0x7,
	ADAU1977_MICBIAS_9V0 = 0x8,
};

/**
 * struct adau1977_platform_data - Platform configuration data for the ADAU1977
 * @micbias: Specifies the voltage for the MICBIAS pin
 */
struct adau1977_platform_data {
	enum adau1977_micbias micbias;
};

#endif
+3 −6
Original line number Diff line number Diff line
@@ -12,7 +12,6 @@
#include <linux/i2c.h>
#include <linux/init.h>
#include <linux/module.h>
#include <linux/platform_data/adau1977.h>
#include <linux/regmap.h>
#include <linux/regulator/consumer.h>
#include <linux/slab.h>
@@ -24,6 +23,8 @@
#include <sound/soc.h>
#include <sound/tlv.h>

#include <dt-bindings/sound/adi,adau1977.h>

#include "adau1977.h"

#define ADAU1977_REG_POWER		0x00
@@ -881,13 +882,9 @@ static const struct snd_soc_component_driver adau1977_component_driver = {

static int adau1977_setup_micbias(struct adau1977 *adau1977)
{
	struct adau1977_platform_data *pdata = adau1977->dev->platform_data;
	unsigned int micbias;

	if (pdata)
		micbias = pdata->micbias;
	else if (device_property_read_u32(adau1977->dev, "adi,micbias",
					  &micbias))
	if (device_property_read_u32(adau1977->dev, "adi,micbias", &micbias))
		micbias = ADAU1977_MICBIAS_8V5;

	if (micbias > ADAU1977_MICBIAS_9V0) {