All of lore.kernel.org
 help / color / mirror / Atom feed
From: ygardi@codeaurora.org (ygardi at codeaurora.org)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] phy: qcom-ufs: export symbols needed by main drivers
Date: Mon, 2 Feb 2015 14:31:59 -0000	[thread overview]
Message-ID: <7dbea2dd0edafbb35cbd36f8a9b135ed.squirrel@www.codeaurora.org> (raw)
In-Reply-To: <1840882.huchmEIh5K@wuerfel>

> The qcom ufs phy support is split into three separate loadable
> modules, however none of the interfaces are exported, resulting
> in a link error:
>
> ERROR: "ufs_qcom_phy_power_off" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_power_on" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_exit" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_generic_probe" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_init_vregulators"
> [drivers/phy/phy-qcom-ufs-qmp-20nm.ko] undefined!
> ERROR: "ufs_qcom_phy_init_clks" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_calibrate" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_remove" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "get_ufs_qcom_phy" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_power_off" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_power_on" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_exit" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_generic_probe" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_init_vregulators"
> [drivers/phy/phy-qcom-ufs-qmp-14nm.ko] undefined!
> ERROR: "ufs_qcom_phy_init_clks" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_calibrate" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_remove" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
> ERROR: "get_ufs_qcom_phy" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
>
> This exports all of the symbols that are provided by the base library
> module and used by the two driver modules.
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> Fixes: adaafaa393ef ("phy: qcom-ufs: add support for QUALCOMM Technologies
> UFS PHY drivers")
> ---
>
> The broken patch is currently in the scsi tree, so if the phy maintainer
> thinks that my fix is correct, it should go there too.

I believe that exporting all interface functions is a good solution.

>
> An alternative approach would be to link all three phy-qcom-ufs source
> files into a single module.
>
>  drivers/phy/phy-qcom-ufs.c | 21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
>
> diff --git a/drivers/phy/phy-qcom-ufs.c b/drivers/phy/phy-qcom-ufs.c
> index 44ee983d57fe..c8f8c2dac18c 100644
> --- a/drivers/phy/phy-qcom-ufs.c
> +++ b/drivers/phy/phy-qcom-ufs.c
> @@ -73,6 +73,7 @@ int ufs_qcom_phy_calibrate(struct ufs_qcom_phy
> *ufs_qcom_phy,
>  out:
>  	return ret;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_calibrate);
>
>  struct phy *ufs_qcom_phy_generic_probe(struct platform_device *pdev,
>  				struct ufs_qcom_phy *common_cfg,
> @@ -110,6 +111,7 @@ struct phy *ufs_qcom_phy_generic_probe(struct
> platform_device *pdev,
>  out:
>  	return generic_phy;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_generic_probe);
>
>  /*
>   * This assumes the embedded phy structure inside generic_phy is of type
> @@ -121,6 +123,7 @@ struct ufs_qcom_phy *get_ufs_qcom_phy(struct phy
> *generic_phy)
>  {
>  	return (struct ufs_qcom_phy *)phy_get_drvdata(generic_phy);
>  }
> +EXPORT_SYMBOL_GPL(get_ufs_qcom_phy);
>
>  static
>  int ufs_qcom_phy_base_init(struct platform_device *pdev,
> @@ -228,6 +231,7 @@ ufs_qcom_phy_init_clks(struct phy *generic_phy,
>  out:
>  	return err;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_init_clks);
>
>  int
>  ufs_qcom_phy_init_vregulators(struct phy *generic_phy,
> @@ -252,6 +256,7 @@ ufs_qcom_phy_init_vregulators(struct phy *generic_phy,
>  out:
>  	return err;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_init_vregulators);
>
>  static int __ufs_qcom_phy_init_vreg(struct phy *phy,
>  		struct ufs_qcom_phy_vreg *vreg, const char *name, bool optional)
> @@ -443,6 +448,7 @@ out_disable_src:
>  out:
>  	return ret;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_enable_ref_clk);
>
>  static
>  int ufs_qcom_phy_disable_vreg(struct phy *phy,
> @@ -485,6 +491,7 @@ void ufs_qcom_phy_disable_ref_clk(struct phy
> *generic_phy)
>  		phy->is_ref_clk_enabled = false;
>  	}
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_disable_ref_clk);
>
>  #define UFS_REF_CLK_EN	(1 << 5)
>
> @@ -523,16 +530,19 @@ static void ufs_qcom_phy_dev_ref_clk_ctrl(struct phy
> *generic_phy, bool enable)
>  		phy->is_dev_ref_clk_enabled = enable;
>  	}
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_dev_ref_clk_ctrl);
>
>  void ufs_qcom_phy_enable_dev_ref_clk(struct phy *generic_phy)
>  {
>  	ufs_qcom_phy_dev_ref_clk_ctrl(generic_phy, true);
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_enable_dev_ref_clk);
>
>  void ufs_qcom_phy_disable_dev_ref_clk(struct phy *generic_phy)
>  {
>  	ufs_qcom_phy_dev_ref_clk_ctrl(generic_phy, false);
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_disable_dev_ref_clk);
>
>  /* Turn ON M-PHY RMMI interface clocks */
>  int ufs_qcom_phy_enable_iface_clk(struct phy *generic_phy)
> @@ -561,6 +571,7 @@ int ufs_qcom_phy_enable_iface_clk(struct phy
> *generic_phy)
>  out:
>  	return ret;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_enable_iface_clk);
>
>  /* Turn OFF M-PHY RMMI interface clocks */
>  void ufs_qcom_phy_disable_iface_clk(struct phy *generic_phy)
> @@ -573,6 +584,7 @@ void ufs_qcom_phy_disable_iface_clk(struct phy
> *generic_phy)
>  		phy->is_iface_clk_enabled = false;
>  	}
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_disable_iface_clk);
>
>  int ufs_qcom_phy_start_serdes(struct phy *generic_phy)
>  {
> @@ -589,6 +601,7 @@ int ufs_qcom_phy_start_serdes(struct phy *generic_phy)
>
>  	return ret;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_start_serdes);
>
>  int ufs_qcom_phy_set_tx_lane_enable(struct phy *generic_phy, u32
> tx_lanes)
>  {
> @@ -606,6 +619,7 @@ int ufs_qcom_phy_set_tx_lane_enable(struct phy
> *generic_phy, u32 tx_lanes)
>
>  	return ret;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_set_tx_lane_enable);
>
>  void ufs_qcom_phy_save_controller_version(struct phy *generic_phy,
>  					  u8 major, u16 minor, u16 step)
> @@ -616,6 +630,7 @@ void ufs_qcom_phy_save_controller_version(struct phy
> *generic_phy,
>  	ufs_qcom_phy->host_ctrl_rev_minor = minor;
>  	ufs_qcom_phy->host_ctrl_rev_step = step;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_save_controller_version);
>
>  int ufs_qcom_phy_calibrate_phy(struct phy *generic_phy, bool is_rate_B)
>  {
> @@ -636,6 +651,7 @@ int ufs_qcom_phy_calibrate_phy(struct phy
> *generic_phy, bool is_rate_B)
>
>  	return ret;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_calibrate_phy);
>
>  int ufs_qcom_phy_remove(struct phy *generic_phy,
>  			struct ufs_qcom_phy *ufs_qcom_phy)
> @@ -647,6 +663,7 @@ int ufs_qcom_phy_remove(struct phy *generic_phy,
>
>  	return 0;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_remove);
>
>  int ufs_qcom_phy_exit(struct phy *generic_phy)
>  {
> @@ -657,6 +674,7 @@ int ufs_qcom_phy_exit(struct phy *generic_phy)
>
>  	return 0;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_exit);
>
>  int ufs_qcom_phy_is_pcs_ready(struct phy *generic_phy)
>  {
> @@ -671,6 +689,7 @@ int ufs_qcom_phy_is_pcs_ready(struct phy *generic_phy)
>  	return ufs_qcom_phy->phy_spec_ops->
>  			is_physical_coding_sublayer_ready(ufs_qcom_phy);
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_is_pcs_ready);
>
>  int ufs_qcom_phy_power_on(struct phy *generic_phy)
>  {
> @@ -725,6 +744,7 @@ out_disable_phy:
>  out:
>  	return err;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_power_on);
>
>  int ufs_qcom_phy_power_off(struct phy *generic_phy)
>  {
> @@ -743,3 +763,4 @@ int ufs_qcom_phy_power_off(struct phy *generic_phy)
>
>  	return 0;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_power_off);
>
>

WARNING: multiple messages have this Message-ID (diff)
From: ygardi@codeaurora.org
To: "Arnd Bergmann" <arnd@arndb.de>
Cc: "James Bottomley" <jbottomley@parallels.com>,
	"Yaniv Gardi" <ygardi@codeaurora.org>,
	"Dov Levenglick" <dovl@codeaurora.org>,
	"Christoph Hellwig" <hch@lst.de>,
	"Kishon Vijay Abraham I" <kishon@ti.com>,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH] phy: qcom-ufs: export symbols needed by main drivers
Date: Mon, 2 Feb 2015 14:31:59 -0000	[thread overview]
Message-ID: <7dbea2dd0edafbb35cbd36f8a9b135ed.squirrel@www.codeaurora.org> (raw)
In-Reply-To: <1840882.huchmEIh5K@wuerfel>

> The qcom ufs phy support is split into three separate loadable
> modules, however none of the interfaces are exported, resulting
> in a link error:
>
> ERROR: "ufs_qcom_phy_power_off" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_power_on" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_exit" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_generic_probe" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_init_vregulators"
> [drivers/phy/phy-qcom-ufs-qmp-20nm.ko] undefined!
> ERROR: "ufs_qcom_phy_init_clks" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_calibrate" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_remove" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "get_ufs_qcom_phy" [drivers/phy/phy-qcom-ufs-qmp-20nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_power_off" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_power_on" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_exit" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_generic_probe" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_init_vregulators"
> [drivers/phy/phy-qcom-ufs-qmp-14nm.ko] undefined!
> ERROR: "ufs_qcom_phy_init_clks" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_calibrate" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
> ERROR: "ufs_qcom_phy_remove" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
> ERROR: "get_ufs_qcom_phy" [drivers/phy/phy-qcom-ufs-qmp-14nm.ko]
> undefined!
>
> This exports all of the symbols that are provided by the base library
> module and used by the two driver modules.
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> Fixes: adaafaa393ef ("phy: qcom-ufs: add support for QUALCOMM Technologies
> UFS PHY drivers")
> ---
>
> The broken patch is currently in the scsi tree, so if the phy maintainer
> thinks that my fix is correct, it should go there too.

I believe that exporting all interface functions is a good solution.

>
> An alternative approach would be to link all three phy-qcom-ufs source
> files into a single module.
>
>  drivers/phy/phy-qcom-ufs.c | 21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
>
> diff --git a/drivers/phy/phy-qcom-ufs.c b/drivers/phy/phy-qcom-ufs.c
> index 44ee983d57fe..c8f8c2dac18c 100644
> --- a/drivers/phy/phy-qcom-ufs.c
> +++ b/drivers/phy/phy-qcom-ufs.c
> @@ -73,6 +73,7 @@ int ufs_qcom_phy_calibrate(struct ufs_qcom_phy
> *ufs_qcom_phy,
>  out:
>  	return ret;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_calibrate);
>
>  struct phy *ufs_qcom_phy_generic_probe(struct platform_device *pdev,
>  				struct ufs_qcom_phy *common_cfg,
> @@ -110,6 +111,7 @@ struct phy *ufs_qcom_phy_generic_probe(struct
> platform_device *pdev,
>  out:
>  	return generic_phy;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_generic_probe);
>
>  /*
>   * This assumes the embedded phy structure inside generic_phy is of type
> @@ -121,6 +123,7 @@ struct ufs_qcom_phy *get_ufs_qcom_phy(struct phy
> *generic_phy)
>  {
>  	return (struct ufs_qcom_phy *)phy_get_drvdata(generic_phy);
>  }
> +EXPORT_SYMBOL_GPL(get_ufs_qcom_phy);
>
>  static
>  int ufs_qcom_phy_base_init(struct platform_device *pdev,
> @@ -228,6 +231,7 @@ ufs_qcom_phy_init_clks(struct phy *generic_phy,
>  out:
>  	return err;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_init_clks);
>
>  int
>  ufs_qcom_phy_init_vregulators(struct phy *generic_phy,
> @@ -252,6 +256,7 @@ ufs_qcom_phy_init_vregulators(struct phy *generic_phy,
>  out:
>  	return err;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_init_vregulators);
>
>  static int __ufs_qcom_phy_init_vreg(struct phy *phy,
>  		struct ufs_qcom_phy_vreg *vreg, const char *name, bool optional)
> @@ -443,6 +448,7 @@ out_disable_src:
>  out:
>  	return ret;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_enable_ref_clk);
>
>  static
>  int ufs_qcom_phy_disable_vreg(struct phy *phy,
> @@ -485,6 +491,7 @@ void ufs_qcom_phy_disable_ref_clk(struct phy
> *generic_phy)
>  		phy->is_ref_clk_enabled = false;
>  	}
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_disable_ref_clk);
>
>  #define UFS_REF_CLK_EN	(1 << 5)
>
> @@ -523,16 +530,19 @@ static void ufs_qcom_phy_dev_ref_clk_ctrl(struct phy
> *generic_phy, bool enable)
>  		phy->is_dev_ref_clk_enabled = enable;
>  	}
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_dev_ref_clk_ctrl);
>
>  void ufs_qcom_phy_enable_dev_ref_clk(struct phy *generic_phy)
>  {
>  	ufs_qcom_phy_dev_ref_clk_ctrl(generic_phy, true);
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_enable_dev_ref_clk);
>
>  void ufs_qcom_phy_disable_dev_ref_clk(struct phy *generic_phy)
>  {
>  	ufs_qcom_phy_dev_ref_clk_ctrl(generic_phy, false);
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_disable_dev_ref_clk);
>
>  /* Turn ON M-PHY RMMI interface clocks */
>  int ufs_qcom_phy_enable_iface_clk(struct phy *generic_phy)
> @@ -561,6 +571,7 @@ int ufs_qcom_phy_enable_iface_clk(struct phy
> *generic_phy)
>  out:
>  	return ret;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_enable_iface_clk);
>
>  /* Turn OFF M-PHY RMMI interface clocks */
>  void ufs_qcom_phy_disable_iface_clk(struct phy *generic_phy)
> @@ -573,6 +584,7 @@ void ufs_qcom_phy_disable_iface_clk(struct phy
> *generic_phy)
>  		phy->is_iface_clk_enabled = false;
>  	}
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_disable_iface_clk);
>
>  int ufs_qcom_phy_start_serdes(struct phy *generic_phy)
>  {
> @@ -589,6 +601,7 @@ int ufs_qcom_phy_start_serdes(struct phy *generic_phy)
>
>  	return ret;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_start_serdes);
>
>  int ufs_qcom_phy_set_tx_lane_enable(struct phy *generic_phy, u32
> tx_lanes)
>  {
> @@ -606,6 +619,7 @@ int ufs_qcom_phy_set_tx_lane_enable(struct phy
> *generic_phy, u32 tx_lanes)
>
>  	return ret;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_set_tx_lane_enable);
>
>  void ufs_qcom_phy_save_controller_version(struct phy *generic_phy,
>  					  u8 major, u16 minor, u16 step)
> @@ -616,6 +630,7 @@ void ufs_qcom_phy_save_controller_version(struct phy
> *generic_phy,
>  	ufs_qcom_phy->host_ctrl_rev_minor = minor;
>  	ufs_qcom_phy->host_ctrl_rev_step = step;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_save_controller_version);
>
>  int ufs_qcom_phy_calibrate_phy(struct phy *generic_phy, bool is_rate_B)
>  {
> @@ -636,6 +651,7 @@ int ufs_qcom_phy_calibrate_phy(struct phy
> *generic_phy, bool is_rate_B)
>
>  	return ret;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_calibrate_phy);
>
>  int ufs_qcom_phy_remove(struct phy *generic_phy,
>  			struct ufs_qcom_phy *ufs_qcom_phy)
> @@ -647,6 +663,7 @@ int ufs_qcom_phy_remove(struct phy *generic_phy,
>
>  	return 0;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_remove);
>
>  int ufs_qcom_phy_exit(struct phy *generic_phy)
>  {
> @@ -657,6 +674,7 @@ int ufs_qcom_phy_exit(struct phy *generic_phy)
>
>  	return 0;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_exit);
>
>  int ufs_qcom_phy_is_pcs_ready(struct phy *generic_phy)
>  {
> @@ -671,6 +689,7 @@ int ufs_qcom_phy_is_pcs_ready(struct phy *generic_phy)
>  	return ufs_qcom_phy->phy_spec_ops->
>  			is_physical_coding_sublayer_ready(ufs_qcom_phy);
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_is_pcs_ready);
>
>  int ufs_qcom_phy_power_on(struct phy *generic_phy)
>  {
> @@ -725,6 +744,7 @@ out_disable_phy:
>  out:
>  	return err;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_power_on);
>
>  int ufs_qcom_phy_power_off(struct phy *generic_phy)
>  {
> @@ -743,3 +763,4 @@ int ufs_qcom_phy_power_off(struct phy *generic_phy)
>
>  	return 0;
>  }
> +EXPORT_SYMBOL_GPL(ufs_qcom_phy_power_off);
>
>



  reply	other threads:[~2015-02-02 14:31 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-28 16:18 [PATCH] phy: qcom-ufs: export symbols needed by main drivers Arnd Bergmann
2015-01-28 16:18 ` Arnd Bergmann
2015-02-02 14:31 ` ygardi at codeaurora.org [this message]
2015-02-02 14:31   ` ygardi
2015-02-02 14:37   ` Kishon Vijay Abraham I
2015-02-02 14:37     ` Kishon Vijay Abraham I
2015-02-02 14:42 ` ygardi at codeaurora.org
2015-02-02 14:42   ` ygardi
2015-02-02 15:30 ` James Bottomley
2015-02-02 15:30   ` James Bottomley
2015-02-02 15:30   ` James Bottomley
2015-02-02 16:26   ` hch
2015-02-02 16:26     ` hch at lst.de
2015-02-02 17:55     ` James Bottomley
2015-02-02 17:55       ` James Bottomley
2015-02-02 17:55       ` James Bottomley

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7dbea2dd0edafbb35cbd36f8a9b135ed.squirrel@www.codeaurora.org \
    --to=ygardi@codeaurora.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.