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

Commit fc886107 authored by Mark Charlebois's avatar Mark Charlebois Committed by Rob Clark
Browse files

drm/msm: Change nested function to static function



There is currently a nested function in Russel King's tree
for the msm HDMI driver.

The last nested function was removed from the Linux kernel
when the Thinkpad driver was fixed.

I believe nested functions are not desired upstream, and it
also breaks compilation with clang so here is a patch to
change the nested function into static function. The patch
works with both clang and gcc.

Signed-off-by: default avatarMark Charlebois <charlebm@gmail.com>
Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
parent 3afdd8a0
Loading
Loading
Loading
Loading
+24 −22
Original line number Diff line number Diff line
@@ -258,13 +258,8 @@ static void set_hdmi_pdev(struct drm_device *dev,
	priv->hdmi_pdev = pdev;
}

static int hdmi_bind(struct device *dev, struct device *master, void *data)
{
	static struct hdmi_platform_config config = {};
#ifdef CONFIG_OF
	struct device_node *of_node = dev->of_node;

	int get_gpio(const char *name)
static int get_gpio(struct device *dev, struct device_node *of_node, const char *name)
{
	int gpio = of_get_named_gpio(of_node, name, 0);
	if (gpio < 0) {
@@ -279,6 +274,13 @@ static int hdmi_bind(struct device *dev, struct device *master, void *data)
	}
	return gpio;
}
#endif

static int hdmi_bind(struct device *dev, struct device *master, void *data)
{
	static struct hdmi_platform_config config = {};
#ifdef CONFIG_OF
	struct device_node *of_node = dev->of_node;

	if (of_device_is_compatible(of_node, "qcom,hdmi-tx-8074")) {
		static const char *hpd_reg_names[] = {"hpd-gdsc", "hpd-5v"};
@@ -312,12 +314,12 @@ static int hdmi_bind(struct device *dev, struct device *master, void *data)
	}

	config.mmio_name     = "core_physical";
	config.ddc_clk_gpio  = get_gpio("qcom,hdmi-tx-ddc-clk");
	config.ddc_data_gpio = get_gpio("qcom,hdmi-tx-ddc-data");
	config.hpd_gpio      = get_gpio("qcom,hdmi-tx-hpd");
	config.mux_en_gpio   = get_gpio("qcom,hdmi-tx-mux-en");
	config.mux_sel_gpio  = get_gpio("qcom,hdmi-tx-mux-sel");
	config.mux_lpm_gpio  = get_gpio("qcom,hdmi-tx-mux-lpm");
	config.ddc_clk_gpio  = get_gpio(dev, of_node, "qcom,hdmi-tx-ddc-clk");
	config.ddc_data_gpio = get_gpio(dev, of_node, "qcom,hdmi-tx-ddc-data");
	config.hpd_gpio      = get_gpio(dev, of_node, "qcom,hdmi-tx-hpd");
	config.mux_en_gpio   = get_gpio(dev, of_node, "qcom,hdmi-tx-mux-en");
	config.mux_sel_gpio  = get_gpio(dev, of_node, "qcom,hdmi-tx-mux-sel");
	config.mux_lpm_gpio  = get_gpio(dev, of_node, "qcom,hdmi-tx-mux-lpm");

#else
	static const char *hpd_clk_names[] = {