2006-12-22 10:55:35

by Pavel Machek

[permalink] [raw]
Subject: omap compilation fixes

Hi!

This is not yet complete set. set_map() is missing in latest kernels.

Fix DECLARE_WORK()-change-related compilation problems. Please apply,

Signed-off-by: Pavel Machek <[email protected]>

---
commit 28aed6101a8d8b4385db50dd7d08ac90db380b23
tree f80885ed5ef18cdded05aece527179cef096af75
parent 9c9252734f70ff04bb1ffad8a7c2d7e97e1e033f
author Pavel <[email protected]> Fri, 22 Dec 2006 11:38:40 +0100
committer Pavel <[email protected]> Fri, 22 Dec 2006 11:38:40 +0100

Makefile | 5 +----
arch/arm/plat-omap/dsp/dsp_mem.c | 9 ++++-----
arch/arm/plat-omap/dsp/ipbuf.c | 5 ++---
3 files changed, 7 insertions(+), 12 deletions(-)

diff --git a/arch/arm/plat-omap/dsp/dsp_mem.c b/arch/arm/plat-omap/dsp/dsp_mem.c
index ebf3c6b..dccd95d 100644
--- a/arch/arm/plat-omap/dsp/dsp_mem.c
+++ b/arch/arm/plat-omap/dsp/dsp_mem.c
@@ -2009,7 +2009,7 @@ #ifdef CONFIG_FB_OMAP_LCDC_EXTERNAL
* fbupd_cb() is called when fb update is done, in interrupt context.
* mbox_fbupd() is called when KFUNC:FBCTL:UPD is received from DSP.
*/
-static void fbupd_response(void *arg)
+static void fbupd_response(struct work_struct *ignored)
{
int status;

@@ -2022,8 +2022,7 @@ static void fbupd_response(void *arg)
}
}

-static DECLARE_WORK(fbupd_response_work, (void (*)(void *))fbupd_response,
- NULL);
+static DECLARE_WORK(fbupd_response_work, fbupd_response);

static void fbupd_cb(void *arg)
{
@@ -2283,7 +2282,7 @@ #define MMUFAULT_MASK \
DSP_MMU_FAULT_ST_TRANS)
#endif /* CONFIG_ARCH_OMAP1 */

-static void do_mmu_int(void)
+static void do_mmu_int(struct work_struct *ignored)
{
#if defined(CONFIG_ARCH_OMAP1)

@@ -2417,7 +2416,7 @@ #endif
enable_irq(omap_dsp->mmu_irq);
}

-static DECLARE_WORK(mmu_int_work, (void (*)(void *))do_mmu_int, NULL);
+static DECLARE_WORK(mmu_int_work, do_mmu_int);

/*
* DSP MMU interrupt handler
diff --git a/arch/arm/plat-omap/dsp/ipbuf.c b/arch/arm/plat-omap/dsp/ipbuf.c
index 26cdf74..aa6c6c9 100644
--- a/arch/arm/plat-omap/dsp/ipbuf.c
+++ b/arch/arm/plat-omap/dsp/ipbuf.c
@@ -245,7 +245,7 @@ static int try_yld(struct ipbuf_head *ip
/*
* balancing ipbuf lines with DSP
*/
-static void do_balance_ipbuf(void)
+static void do_balance_ipbuf(struct work_struct *ignored)
{
while (ipbcfg.bsycnt <= ipbcfg.ln / 4) {
struct ipbuf_head *ipb_h;
@@ -257,8 +257,7 @@ static void do_balance_ipbuf(void)
}
}

-static DECLARE_WORK(balance_ipbuf_work, (void (*)(void *))do_balance_ipbuf,
- NULL);
+static DECLARE_WORK(balance_ipbuf_work, do_balance_ipbuf);

void balance_ipbuf(void)
{



!-------------------------------------------------------------flip-


Fix DECLARE_WORK()-change-related compilation problems.

Signed-off-by: Pavel Machek <[email protected]>

---
commit 4e72a7ffbd25b231dbb89ca5dc478c3e7ae2fd43
tree 857cdc4f32b5bd17eb79912ca2529ed09f48c9f2
parent 28aed6101a8d8b4385db50dd7d08ac90db380b23
author Pavel <[email protected]> Fri, 22 Dec 2006 11:43:45 +0100
committer Pavel <[email protected]> Fri, 22 Dec 2006 11:43:45 +0100

drivers/mmc/omap.c | 9 +++++----
1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/mmc/omap.c b/drivers/mmc/omap.c
index 3bf7a88..ca08490 100644
--- a/drivers/mmc/omap.c
+++ b/drivers/mmc/omap.c
@@ -2,7 +2,7 @@
* linux/drivers/media/mmc/omap.c
*
* Copyright (C) 2004 Nokia Corporation
- * Written by Tuukka Tikkanen and Juha Yrj?l?<[email protected]>
+ * Written by Tuukka Tikkanen and Juha Yrj?l? <[email protected]>
* Misc hacks here and there by Tony Lindgren <[email protected]>
* Other hacks (DMA, SD, etc) by David Brownell
*
@@ -582,9 +582,10 @@ static void mmc_omap_switch_timer(unsign
schedule_work(&host->switch_work);
}

-static void mmc_omap_switch_handler(void *data)
+static void mmc_omap_switch_handler(struct work_struct *w)
{
- struct mmc_omap_host *host = (struct mmc_omap_host *) data;
+ struct mmc_omap_host *host =
+ container_of(w, struct mmc_omap_host, switch_work);
struct mmc_card *card;
static int complained = 0;
int cards = 0, cover_open;
@@ -1122,7 +1123,7 @@ static int __init mmc_omap_probe(struct
platform_set_drvdata(pdev, host);

if (host->switch_pin >= 0) {
- INIT_WORK(&host->switch_work, mmc_omap_switch_handler, host);
+ INIT_WORK(&host->switch_work, mmc_omap_switch_handler);
init_timer(&host->switch_timer);
host->switch_timer.function = mmc_omap_switch_timer;
host->switch_timer.data = (unsigned long) host;



!-------------------------------------------------------------flip-



--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html


2006-12-22 11:35:33

by Komal Shah

[permalink] [raw]
Subject: Re: omap compilation fixes

On 12/22/06, Pavel Machek <[email protected]> wrote:
> Hi!
>
> This is not yet complete set. set_map() is missing in latest kernels.
>
> Fix DECLARE_WORK()-change-related compilation problems. Please apply,
>
> Signed-off-by: Pavel Machek <[email protected]>
>

Please check linux-omap-open-source mailing list. Some of the build
breakage patches are already posted regarding to latest kernel sync
up.

http://linux.omap.com/pipermail/linux-omap-open-source

--
---Komal Shah
http://komalshah.blogspot.com

2006-12-22 11:51:27

by Russell King

[permalink] [raw]
Subject: Re: omap compilation fixes

On Fri, Dec 22, 2006 at 01:35:31PM +0200, Komal Shah wrote:
> On 12/22/06, Pavel Machek <[email protected]> wrote:
> >Hi!
> >
> >This is not yet complete set. set_map() is missing in latest kernels.
> >
> >Fix DECLARE_WORK()-change-related compilation problems. Please apply,
> >
> >Signed-off-by: Pavel Machek <[email protected]>
> >
>
> Please check linux-omap-open-source mailing list. Some of the build
> breakage patches are already posted regarding to latest kernel sync
> up.
>
> http://linux.omap.com/pipermail/linux-omap-open-source

There are a set of omap patches in the patch system, but they were too
late for me to merge within the 2 week window - there were additional
delays caused by the accidental attempt to merge the silly ATAG_BOARD
stuff which I had previously refused.

Tony needs to either create a git tree containing strictly just fixes
suitable for -rc kernels, or submit them as individual patches.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of:

2006-12-22 19:57:52

by Tony Lindgren

[permalink] [raw]
Subject: Re: omap compilation fixes

Hi,

* Russell King <[email protected]> [061222 03:51]:
> On Fri, Dec 22, 2006 at 01:35:31PM +0200, Komal Shah wrote:
> > On 12/22/06, Pavel Machek <[email protected]> wrote:
> > >Hi!
> > >
> > >This is not yet complete set. set_map() is missing in latest kernels.
> > >
> > >Fix DECLARE_WORK()-change-related compilation problems. Please apply,
> > >
> > >Signed-off-by: Pavel Machek <[email protected]>
> > >
> >
> > Please check linux-omap-open-source mailing list. Some of the build
> > breakage patches are already posted regarding to latest kernel sync
> > up.
> >
> > http://linux.omap.com/pipermail/linux-omap-open-source
>
> There are a set of omap patches in the patch system, but they were too
> late for me to merge within the 2 week window - there were additional
> delays caused by the accidental attempt to merge the silly ATAG_BOARD
> stuff which I had previously refused.
>
> Tony needs to either create a git tree containing strictly just fixes
> suitable for -rc kernels, or submit them as individual patches.

Yeah, I'll put together a set of fixes shortly, and will keep the
larger merge set for post 2.6.20.

Regards,

Tony

2006-12-22 21:17:52

by Tony Lindgren

[permalink] [raw]
Subject: Re: omap compilation fixes

* Pavel Machek <[email protected]> [061222 02:55]:
> Hi!
>
> This is not yet complete set. set_map() is missing in latest kernels.
>
> Fix DECLARE_WORK()-change-related compilation problems. Please apply,
>
> --- a/drivers/mmc/omap.c
> +++ b/drivers/mmc/omap.c
> @@ -2,7 +2,7 @@
> * linux/drivers/media/mmc/omap.c
> *
> * Copyright (C) 2004 Nokia Corporation
> - * Written by Tuukka Tikkanen and Juha Yrj?l?<[email protected]>
> + * Written by Tuukka Tikkanen and Juha Yrj?l? <[email protected]>
> * Misc hacks here and there by Tony Lindgren <[email protected]>
> * Other hacks (DMA, SD, etc) by David Brownell
> *

I already applied similar fixes to linux-omap for the workqueue changes,
so I only applied the MMC typo fix above.

Regards,

Tony

2006-12-22 21:49:00

by Pavel Machek

[permalink] [raw]
Subject: Re: omap compilation fixes

Hi!

> > This is not yet complete set. set_map() is missing in latest kernels.
> >
> > Fix DECLARE_WORK()-change-related compilation problems. Please apply,
> >
> > --- a/drivers/mmc/omap.c
> > +++ b/drivers/mmc/omap.c
> > @@ -2,7 +2,7 @@
> > * linux/drivers/media/mmc/omap.c
> > *
> > * Copyright (C) 2004 Nokia Corporation
> > - * Written by Tuukka Tikkanen and Juha Yrj?l?<[email protected]>
> > + * Written by Tuukka Tikkanen and Juha Yrj?l? <[email protected]>
> > * Misc hacks here and there by Tony Lindgren <[email protected]>
> > * Other hacks (DMA, SD, etc) by David Brownell
> > *
>
> I already applied similar fixes to linux-omap for the workqueue changes,
> so I only applied the MMC typo fix above.

I thought I got pretty recent -git:

omap git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git

...should I use another tree?

Aha, I did another pull now and it seems to be better... no, it is
not:

Recovering from a previously interrupted fetch...
Fetching pack (head and objects)...
Fetching tags...
Missing tag v2.6.20-rc1...
Generating pack...
Done counting 1 objects.
Deltifying 1 objects.
100% (1/1) done
Total 1, written 1 (delta 0), reused 1 (delta 0)
Unpacking 1 objects
100% (1/1) done
Up to date.

Applying changes...
Branch already fully merged.

Plus it still does not compile:

LD vmlinux
arch/arm/plat-omap/built-in.o(.text+0xd470): In function
`exmap_set_armmmu':
: undefined reference to `set_pte'
arch/arm/plat-omap/built-in.o(.text+0xd56c): In function
`exmap_set_armmmu':
: undefined reference to `set_pte'
make: *** [vmlinux] Error 1

Pavel

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

2006-12-23 19:48:23

by Tony Lindgren

[permalink] [raw]
Subject: Re: omap compilation fixes

Hi,

* Pavel Machek <[email protected]> [061222 13:49]:
> Hi!
>
> > > This is not yet complete set. set_map() is missing in latest kernels.
> > >
> > > Fix DECLARE_WORK()-change-related compilation problems. Please apply,
> > >
> > > --- a/drivers/mmc/omap.c
> > > +++ b/drivers/mmc/omap.c
> > > @@ -2,7 +2,7 @@
> > > * linux/drivers/media/mmc/omap.c
> > > *
> > > * Copyright (C) 2004 Nokia Corporation
> > > - * Written by Tuukka Tikkanen and Juha Yrj?l?<[email protected]>
> > > + * Written by Tuukka Tikkanen and Juha Yrj?l? <[email protected]>
> > > * Misc hacks here and there by Tony Lindgren <[email protected]>
> > > * Other hacks (DMA, SD, etc) by David Brownell
> > > *
> >
> > I already applied similar fixes to linux-omap for the workqueue changes,
> > so I only applied the MMC typo fix above.
>
> I thought I got pretty recent -git:
>
> omap git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git
>
> ...should I use another tree?
>
> Aha, I did another pull now and it seems to be better... no, it is
> not:
>
> Recovering from a previously interrupted fetch...
> Fetching pack (head and objects)...
> Fetching tags...
> Missing tag v2.6.20-rc1...
> Generating pack...
> Done counting 1 objects.
> Deltifying 1 objects.
> 100% (1/1) done
> Total 1, written 1 (delta 0), reused 1 (delta 0)
> Unpacking 1 objects
> 100% (1/1) done
> Up to date.
>
> Applying changes...
> Branch already fully merged.
>
> Plus it still does not compile:
>
> LD vmlinux
> arch/arm/plat-omap/built-in.o(.text+0xd470): In function
> `exmap_set_armmmu':
> : undefined reference to `set_pte'
> arch/arm/plat-omap/built-in.o(.text+0xd56c): In function
> `exmap_set_armmmu':
> : undefined reference to `set_pte'
> make: *** [vmlinux] Error 1

Is this still a problem? Sounds like the latest tree was not yet
mirrored from master.kernel.org when you pulled.

Regards,

Tony

2006-12-26 14:22:58

by Pavel Machek

[permalink] [raw]
Subject: Re: omap compilation fixes

On Sat 2006-12-23 11:48:29, Tony Lindgren wrote:
> Hi,
>
> * Pavel Machek <[email protected]> [061222 13:49]:
> > Hi!
> >
> > > > This is not yet complete set. set_map() is missing in latest kernels.
> > > >
> > > > Fix DECLARE_WORK()-change-related compilation problems. Please apply,
> > > >
> > > > --- a/drivers/mmc/omap.c
> > > > +++ b/drivers/mmc/omap.c
> > > > @@ -2,7 +2,7 @@
> > > > * linux/drivers/media/mmc/omap.c
> > > > *
> > > > * Copyright (C) 2004 Nokia Corporation
> > > > - * Written by Tuukka Tikkanen and Juha Yrj?l?<[email protected]>
> > > > + * Written by Tuukka Tikkanen and Juha Yrj?l? <[email protected]>
> > > > * Misc hacks here and there by Tony Lindgren <[email protected]>
> > > > * Other hacks (DMA, SD, etc) by David Brownell
> > > > *
> > >
> > > I already applied similar fixes to linux-omap for the workqueue changes,
> > > so I only applied the MMC typo fix above.
> >
> > I thought I got pretty recent -git:
> >
> > omap git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git
> >
> > ...should I use another tree?
> >
> > Aha, I did another pull now and it seems to be better... no, it is
> > not:
> >
> > Recovering from a previously interrupted fetch...
> > Fetching pack (head and objects)...
> > Fetching tags...
> > Missing tag v2.6.20-rc1...
> > Generating pack...
> > Done counting 1 objects.
> > Deltifying 1 objects.
> > 100% (1/1) done
> > Total 1, written 1 (delta 0), reused 1 (delta 0)
> > Unpacking 1 objects
> > 100% (1/1) done
> > Up to date.
> >
> > Applying changes...
> > Branch already fully merged.
> >
> > Plus it still does not compile:
> >
> > LD vmlinux
> > arch/arm/plat-omap/built-in.o(.text+0xd470): In function
> > `exmap_set_armmmu':
> > : undefined reference to `set_pte'
> > arch/arm/plat-omap/built-in.o(.text+0xd56c): In function
> > `exmap_set_armmmu':
> > : undefined reference to `set_pte'
> > make: *** [vmlinux] Error 1
>
> Is this still a problem? Sounds like the latest tree was not yet
> mirrored from master.kernel.org when you pulled.

Yep, it seems fixed.
Pavel

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html