Subject: Re: linux-next: mfd tree build failure

From: Samuel Ortiz <[email-masked]>
Date: Mon, 23 Nov 2009 13:26:07 +0100

Hi Dmitry,

On Mon, Nov 23, 2009 at 02:35:03PM +1100, Stephen Rothwell wrote:
> Hi Samuel,
> 
> Today's linux-next build (x86_64 allmodconfig) failed like this:
> 
> drivers/power/pcf50633-charger.c: In function 'pcf50633_mbc_get_usb_online_status':
> drivers/power/pcf50633-charger.c:147: error: 'struct pcf50633' has no member named 'mbc_pdev'
> 
> Caused by commit 4c2e3bacc050f0ebf884954bb007616c162564cd ("mfd: pcf50633
> - fix error handling during probe") from the mfd tree interacting with
> commit c329795052aa339850a45fab649ab97a36905136 ("pcf50633: Query charger
> status directly") from the battery tree.
Could we split the above fix so that we get back to the:

	struct platform_device *rtc_pdev;
	struct platform_device *mbc_pdev;
	struct platform_device *adc_pdev;
	struct platform_device *input_pdev;
	struct platform_device *regulator_pdev[PCF50633_NUM_REGULATORS];

structure ? We can move to the index based structure after the next merge
window. That would make my life easier in terms of tree dependencies.
If you dont have time to do this change, I'll do it some time this week.

Thanks in advance.

Cheers,
Samuel.

> I have applied the following merge fixup patch and can carry it as
> necessary.
> 
> From: Stephen Rothwell <[email-masked]>
> Date: Mon, 23 Nov 2009 14:31:43 +1100
> Subject: [PATCH] mfd: fix pcf50633-charger.c for fallout from merge
> 
> Signed-off-by: Stephen Rothwell <[email-masked]>
> ---
>  drivers/power/pcf50633-charger.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/power/pcf50633-charger.c b/drivers/power/pcf50633-charger.c
> index d4a3e77..4e535bb 100644
> --- a/drivers/power/pcf50633-charger.c
> +++ b/drivers/power/pcf50633-charger.c
> @@ -144,7 +144,8 @@ EXPORT_SYMBOL_GPL(pcf50633_mbc_get_status);
>  
>  int pcf50633_mbc_get_usb_online_status(struct pcf50633 *pcf)
>  {
> -	struct pcf50633_mbc *mbc  = platform_get_drvdata(pcf->mbc_pdev);
> +	struct pcf50633_mbc *mbc =
> +		platform_get_drvdata(pcf->pdevs[PCF50633_PDEV_ADC_IDX]);
>  
>  	if (!mbc)
>  		return 0;
> -- 
> 1.6.5.3
> 
> -- 
> Cheers,
> Stephen Rothwell                    [email-masked]
> http://www.canb.auug.org.au/~sfr/

-- 
Intel Open Source Technology Centre
http://oss.intel.com/