Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ddc9e69b authored by Andy Shevchenko's avatar Andy Shevchenko Committed by Mark Brown
Browse files

ASoC: rt5677: Hide platform data in the module sources



There is no user of legacy platform data.

Remove separate header and hide its content inside module sources.

Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 5771a8c0
Loading
Loading
Loading
Loading

include/sound/rt5677.h

deleted100644 → 0
+0 −45
Original line number Diff line number Diff line
/*
 * linux/sound/rt5677.h -- Platform data for RT5677
 *
 * Copyright 2013 Realtek Semiconductor Corp.
 * Author: Oder Chiou <oder_chiou@realtek.com>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */

#ifndef __LINUX_SND_RT5677_H
#define __LINUX_SND_RT5677_H

enum rt5677_dmic2_clk {
	RT5677_DMIC_CLK1 = 0,
	RT5677_DMIC_CLK2 = 1,
};


struct rt5677_platform_data {
	/* IN1/IN2/LOUT1/LOUT2/LOUT3 can optionally be differential */
	bool in1_diff;
	bool in2_diff;
	bool lout1_diff;
	bool lout2_diff;
	bool lout3_diff;
	/* DMIC2 clock source selection */
	enum rt5677_dmic2_clk dmic2_clk_pin;

	/* configures GPIO, 0 - floating, 1 - pulldown, 2 - pullup */
	u8 gpio_config[6];

	/* jd1 can select 0 ~ 3 as OFF, GPIO1, GPIO2 and GPIO3 respectively */
	unsigned int jd1_gpio;
	/* jd2 and jd3 can select 0 ~ 3 as
		OFF, GPIO4, GPIO5 and GPIO6 respectively */
	unsigned int jd2_gpio;
	unsigned int jd3_gpio;

	/* Set MICBIAS1 VDD 1v8 or 3v3 */
	bool micbias1_vdd_3v3;
};

#endif
+17 −12
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@
#include <linux/platform_device.h>
#include <linux/spi/spi.h>
#include <linux/firmware.h>
#include <linux/of_device.h>
#include <linux/property.h>
#include <sound/core.h>
#include <sound/pcm.h>
@@ -5019,25 +5020,21 @@ static const struct regmap_config rt5677_regmap = {
};

static const struct i2c_device_id rt5677_i2c_id[] = {
	{ "rt5677", RT5677 },
	{ "rt5676", RT5676 },
	{ }
};
MODULE_DEVICE_TABLE(i2c, rt5677_i2c_id);

static const struct of_device_id rt5677_of_match[] = {
	{ .compatible = "realtek,rt5677", },
	{ .compatible = "realtek,rt5677", RT5677 },
	{ }
};
MODULE_DEVICE_TABLE(of, rt5677_of_match);

#ifdef CONFIG_ACPI
static const struct acpi_device_id rt5677_acpi_match[] = {
	{ "RT5677CE", RT5677 },
	{ }
};
MODULE_DEVICE_TABLE(acpi, rt5677_acpi_match);
#endif

static void rt5677_read_acpi_properties(struct rt5677_priv *rt5677,
		struct device *dev)
@@ -5147,7 +5144,6 @@ static void rt5677_free_irq(struct i2c_client *i2c)
static int rt5677_i2c_probe(struct i2c_client *i2c,
		    const struct i2c_device_id *id)
{
	struct rt5677_platform_data *pdata = dev_get_platdata(&i2c->dev);
	struct rt5677_priv *rt5677;
	int ret;
	unsigned int val;
@@ -5159,16 +5155,25 @@ static int rt5677_i2c_probe(struct i2c_client *i2c,

	i2c_set_clientdata(i2c, rt5677);

	rt5677->type = id->driver_data;
	if (i2c->dev.of_node) {
		const struct of_device_id *match_id;

		match_id = of_match_device(rt5677_of_match, &i2c->dev);
		if (match_id)
			rt5677->type = (enum rt5677_type)match_id->data;

	if (pdata)
		rt5677->pdata = *pdata;
	else if (i2c->dev.of_node)
		rt5677_read_device_properties(rt5677, &i2c->dev);
	else if (ACPI_HANDLE(&i2c->dev))
	} else if (ACPI_HANDLE(&i2c->dev)) {
		const struct acpi_device_id *acpi_id;

		acpi_id = acpi_match_device(rt5677_acpi_match, &i2c->dev);
		if (acpi_id)
			rt5677->type = (enum rt5677_type)acpi_id->driver_data;

		rt5677_read_acpi_properties(rt5677, &i2c->dev);
	else
	} else {
		return -EINVAL;
	}

	/* pow-ldo2 and reset are optional. The codec pins may be statically
	 * connected on the board without gpios. If the gpio device property
+29 −1
Original line number Diff line number Diff line
@@ -12,7 +12,6 @@
#ifndef __RT5677_H__
#define __RT5677_H__

#include <sound/rt5677.h>
#include <linux/gpio/driver.h>
#include <linux/gpio/consumer.h>

@@ -1761,6 +1760,35 @@ enum {
	RT5677_I2S4_SOURCE = (0x1 << 18),
};

enum rt5677_dmic2_clk {
	RT5677_DMIC_CLK1 = 0,
	RT5677_DMIC_CLK2 = 1,
};

struct rt5677_platform_data {
	/* IN1/IN2/LOUT1/LOUT2/LOUT3 can optionally be differential */
	bool in1_diff;
	bool in2_diff;
	bool lout1_diff;
	bool lout2_diff;
	bool lout3_diff;
	/* DMIC2 clock source selection */
	enum rt5677_dmic2_clk dmic2_clk_pin;

	/* configures GPIO, 0 - floating, 1 - pulldown, 2 - pullup */
	u8 gpio_config[6];

	/* jd1 can select 0 ~ 3 as OFF, GPIO1, GPIO2 and GPIO3 respectively */
	unsigned int jd1_gpio;
	/* jd2 and jd3 can select 0 ~ 3 as
		OFF, GPIO4, GPIO5 and GPIO6 respectively */
	unsigned int jd2_gpio;
	unsigned int jd3_gpio;

	/* Set MICBIAS1 VDD 1v8 or 3v3 */
	bool micbias1_vdd_3v3;
};

struct rt5677_priv {
	struct snd_soc_codec *codec;
	struct rt5677_platform_data pdata;