Subject: [RFC v2 01/18] mailbox: OMAP2+: Add support for AM33XX

From: [email-masked] (Tony Lindgren)
Date: Tue, 1 Jan 2013 10:25:06 -0800

* Vaibhav Bedia <[email-masked]> [121231 05:10]:
> Mailbox IP on AM33XX is the same as that present in OMAP4.
> The single instance of Mailbox IP on AM33XX contains
> 8 sub-modules and facilitates communication between MPU,
> PRUs and WKUP_M3.
> 
> The first mailbox sub-module is assigned for communication
> between MPU and WKUP-M3.
> 
> Signed-off-by: Vaibhav Bedia <[email-masked]>
> Cc: Russ Dill <[email-masked]>
> Cc: Santosh Shilimkar <[email-masked]>
> ---
> v1->v2:
> 	Address the comment on operator usage from Russ Dill
> 
>  drivers/mailbox/mailbox-omap2.c |   35 ++++++++++++++++++++++++++++++++++-
>  1 files changed, 34 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/mailbox/mailbox-omap2.c b/drivers/mailbox/mailbox-omap2.c
> index 7c26bed..6d61159 100644
> --- a/drivers/mailbox/mailbox-omap2.c
> +++ b/drivers/mailbox/mailbox-omap2.c
> @@ -151,7 +151,7 @@ static void omap2_mbox_disable_irq(struct mailbox *mbox,
>  	struct omap_mbox2_priv *p = mbox->priv;
>  	u32 bit = (irq == IRQ_TX) ? p->notfull_bit : p->newmsg_bit;
>  
> -	if (!cpu_is_omap44xx())
> +	if (!cpu_is_omap44xx() && !soc_is_am33xx())
>  		bit = mbox_read_reg(p->irqdisable) & ~bit;
>  
>  	mbox_write_reg(bit, p->irqdisable);

The cpu_is/soc_is macros are no longer available to drivers
with 8d91a42e (Merge tag 'omap-late-cleanups'...). So you'll
have to pass whatever flags the driver needs in platform_data
or as device tree properties.

> @@ -386,6 +412,13 @@ static int __devinit omap2_mbox_probe(struct platform_device *pdev)
>  		list[0]->irq = list[1]->irq = platform_get_irq(pdev, 0);
>  	}
>  #endif
> +#if defined(CONFIG_SOC_AM33XX)
> +	else if (soc_is_am33xx()) {
> +		list = am33xx_mboxes;
> +
> +		list[0]->irq = platform_get_irq(pdev, 0);
> +	}
> +#endif
>  	else {
>  		pr_err("%s: platform not supported\n", __func__);
>  		return -ENODEV;

Here too.

Tony