* Compile problem due to compressor changes, UART referenced in section .txt
@ 2010-03-07 17:19 J.I. Cameron
2010-03-07 20:13 ` Ryan Mallon
2010-03-08 10:14 ` Russell King - ARM Linux
0 siblings, 2 replies; 7+ messages in thread
From: J.I. Cameron @ 2010-03-07 17:19 UTC (permalink / raw)
To: linux-arm-kernel
Dear All,
Ran into the following problem on a pxa stargate2 platform (I think it will
effect a number of others).
`UART' referenced in section `.text' of arch/arm/boot/compressed/misc.o:
defined in discarded section `.data' of arch/arm/boot/compressed/misc.o
`UART' referenced in section `.text' of arch/arm/boot/compressed/misc.o:
defined in discarded section `.data' of arch/arm/boot/compressed/misc.o
There is a hack in mach-pxa/include/mach/uncompress.h
that changes the primary uart for some platforms:
static inline void arch_decomp_setup(void)
{
if (machine_is_littleton() || machine_is_intelmote2()
|| machine_is_csb726() || machine_is_stargate2()
|| machine_is_cm_x300() || machine_is_balloon3())
UART = STUART;
}
Simply changing the initial assignment of UART and commenting this function
out acts as a work around. I'm not entirely sure how to fix the problem
properly.
Jonathan
^ permalink raw reply [flat|nested] 7+ messages in thread
* Compile problem due to compressor changes, UART referenced in section .txt
2010-03-07 17:19 Compile problem due to compressor changes, UART referenced in section .txt J.I. Cameron
@ 2010-03-07 20:13 ` Ryan Mallon
2010-03-08 9:55 ` Uwe Kleine-König
2010-03-08 10:14 ` Russell King - ARM Linux
1 sibling, 1 reply; 7+ messages in thread
From: Ryan Mallon @ 2010-03-07 20:13 UTC (permalink / raw)
To: linux-arm-kernel
J.I. Cameron wrote:
> Dear All,
>
> Ran into the following problem on a pxa stargate2 platform (I think it
> will
> effect a number of others).
>
> `UART' referenced in section `.text' of
> arch/arm/boot/compressed/misc.o: defined in discarded section `.data'
> of arch/arm/boot/compressed/misc.o `UART' referenced in section
> `.text' of arch/arm/boot/compressed/misc.o: defined in discarded
> section `.data' of arch/arm/boot/compressed/misc.o
>
> There is a hack in mach-pxa/include/mach/uncompress.h
> that changes the primary uart for some platforms:
>
> static inline void arch_decomp_setup(void)
> {
> if (machine_is_littleton() || machine_is_intelmote2()
> || machine_is_csb726() || machine_is_stargate2()
> || machine_is_cm_x300() || machine_is_balloon3())
> UART = STUART;
> }
>
> Simply changing the initial assignment of UART and commenting this
> function
> out acts as a work around. I'm not entirely sure how to fix the problem
> properly.
Perhaps something like this untested patch:
Signed-off-by: Ryan Mallon <ryan@bluewatersys.com>
---
diff --git a/arch/arm/mach-pxa/include/mach/uncompress.h b/arch/arm/mach-pxa/include/mach/uncompress.h
index 237734b..efd9c0d 100644
--- a/arch/arm/mach-pxa/include/mach/uncompress.h
+++ b/arch/arm/mach-pxa/include/mach/uncompress.h
@@ -15,7 +15,16 @@
#define __REG(x) ((volatile unsigned long *)x)
+#if defined(CONFIG_MACH_LITTLETON) || \
+ defined(CONFIG_MACH_INTELMOTE2) || \
+ defined(CONFIG_MACH_CSB726) || \
+ defined(CONFIG_MACH_STARGATE2) || \
+ defined(CONFIG_MACH_CM_X300) || \
+ defined(CONFIG_MACH_BALLOON3)
+static volatile unsigned long *UART = STUART;
+#else
static volatile unsigned long *UART = FFUART;
+#endif
static inline void putc(char c)
{
@@ -35,10 +44,6 @@ static inline void flush(void)
static inline void arch_decomp_setup(void)
{
- if (machine_is_littleton() || machine_is_intelmote2()
- || machine_is_csb726() || machine_is_stargate2()
- || machine_is_cm_x300() || machine_is_balloon3())
- UART = STUART;
}
/*
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Compile problem due to compressor changes, UART referenced in section .txt
2010-03-07 20:13 ` Ryan Mallon
@ 2010-03-08 9:55 ` Uwe Kleine-König
0 siblings, 0 replies; 7+ messages in thread
From: Uwe Kleine-König @ 2010-03-08 9:55 UTC (permalink / raw)
To: linux-arm-kernel
Hello,
On Mon, Mar 08, 2010 at 09:13:33AM +1300, Ryan Mallon wrote:
> J.I. Cameron wrote:
> > Dear All,
> >
> > Ran into the following problem on a pxa stargate2 platform (I think it
> > will
> > effect a number of others).
> >
> > `UART' referenced in section `.text' of
> > arch/arm/boot/compressed/misc.o: defined in discarded section `.data'
> > of arch/arm/boot/compressed/misc.o `UART' referenced in section
> > `.text' of arch/arm/boot/compressed/misc.o: defined in discarded
> > section `.data' of arch/arm/boot/compressed/misc.o
> >
> > There is a hack in mach-pxa/include/mach/uncompress.h
> > that changes the primary uart for some platforms:
> >
> > static inline void arch_decomp_setup(void)
> > {
> > if (machine_is_littleton() || machine_is_intelmote2()
> > || machine_is_csb726() || machine_is_stargate2()
> > || machine_is_cm_x300() || machine_is_balloon3())
> > UART = STUART;
> > }
> >
> > Simply changing the initial assignment of UART and commenting this
> > function
> > out acts as a work around. I'm not entirely sure how to fix the problem
> > properly.
> Perhaps something like this untested patch:
>
> Signed-off-by: Ryan Mallon <ryan@bluewatersys.com>
> ---
>
> diff --git a/arch/arm/mach-pxa/include/mach/uncompress.h b/arch/arm/mach-pxa/include/mach/uncompress.h
> index 237734b..efd9c0d 100644
> --- a/arch/arm/mach-pxa/include/mach/uncompress.h
> +++ b/arch/arm/mach-pxa/include/mach/uncompress.h
> @@ -15,7 +15,16 @@
>
> #define __REG(x) ((volatile unsigned long *)x)
>
> +#if defined(CONFIG_MACH_LITTLETON) || \
> + defined(CONFIG_MACH_INTELMOTE2) || \
> + defined(CONFIG_MACH_CSB726) || \
> + defined(CONFIG_MACH_STARGATE2) || \
> + defined(CONFIG_MACH_CM_X300) || \
> + defined(CONFIG_MACH_BALLOON3)
> +static volatile unsigned long *UART = STUART;
> +#else
> static volatile unsigned long *UART = FFUART;
> +#endif
This doesn't work for kernels that have support for both types of
machines.
Best regards
Uwe
--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | http://www.pengutronix.de/ |
^ permalink raw reply [flat|nested] 7+ messages in thread
* Compile problem due to compressor changes, UART referenced in section .txt
2010-03-07 17:19 Compile problem due to compressor changes, UART referenced in section .txt J.I. Cameron
2010-03-07 20:13 ` Ryan Mallon
@ 2010-03-08 10:14 ` Russell King - ARM Linux
2010-03-09 7:27 ` Mike Rapoport
1 sibling, 1 reply; 7+ messages in thread
From: Russell King - ARM Linux @ 2010-03-08 10:14 UTC (permalink / raw)
To: linux-arm-kernel
On Sun, Mar 07, 2010 at 05:19:08PM +0000, J.I. Cameron wrote:
> Dear All,
>
> Ran into the following problem on a pxa stargate2 platform (I think it will
> effect a number of others).
>
> `UART' referenced in section `.text' of arch/arm/boot/compressed/misc.o:
> defined in discarded section `.data' of arch/arm/boot/compressed/misc.o
> `UART' referenced in section `.text' of arch/arm/boot/compressed/misc.o:
> defined in discarded section `.data' of arch/arm/boot/compressed/misc.o
>
> There is a hack in mach-pxa/include/mach/uncompress.h
> that changes the primary uart for some platforms:
>
> static inline void arch_decomp_setup(void)
> {
> if (machine_is_littleton() || machine_is_intelmote2()
> || machine_is_csb726() || machine_is_stargate2()
> || machine_is_cm_x300() || machine_is_balloon3())
> UART = STUART;
else
UART = FFUART;
and remove the initializer from UART.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Compile problem due to compressor changes, UART referenced in section .txt
2010-03-08 10:14 ` Russell King - ARM Linux
@ 2010-03-09 7:27 ` Mike Rapoport
2010-03-09 12:27 ` Jonathan Cameron
0 siblings, 1 reply; 7+ messages in thread
From: Mike Rapoport @ 2010-03-09 7:27 UTC (permalink / raw)
To: linux-arm-kernel
Russell King - ARM Linux wrote:
> On Sun, Mar 07, 2010 at 05:19:08PM +0000, J.I. Cameron wrote:
>> Dear All,
>>
>> Ran into the following problem on a pxa stargate2 platform (I think it will
>> effect a number of others).
>>
>> `UART' referenced in section `.text' of arch/arm/boot/compressed/misc.o:
>> defined in discarded section `.data' of arch/arm/boot/compressed/misc.o
>> `UART' referenced in section `.text' of arch/arm/boot/compressed/misc.o:
>> defined in discarded section `.data' of arch/arm/boot/compressed/misc.o
>>
>> There is a hack in mach-pxa/include/mach/uncompress.h
>> that changes the primary uart for some platforms:
>>
>> static inline void arch_decomp_setup(void)
>> {
>> if (machine_is_littleton() || machine_is_intelmote2()
>> || machine_is_csb726() || machine_is_stargate2()
>> || machine_is_cm_x300() || machine_is_balloon3())
>> UART = STUART;
>
> else
> UART = FFUART;
>
> and remove the initializer from UART.
Something like that:
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
---
arch/arm/mach-pxa/include/mach/uncompress.h | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/arch/arm/mach-pxa/include/mach/uncompress.h b/arch/arm/mach-pxa/include/mach/uncompress.h
index 237734b..b009299 100644
--- a/arch/arm/mach-pxa/include/mach/uncompress.h
+++ b/arch/arm/mach-pxa/include/mach/uncompress.h
@@ -15,7 +15,7 @@
#define __REG(x) ((volatile unsigned long *)x)
-static volatile unsigned long *UART = FFUART;
+static volatile unsigned long *UART;
static inline void putc(char c)
{
@@ -39,6 +39,8 @@ static inline void arch_decomp_setup(void)
|| machine_is_csb726() || machine_is_stargate2()
|| machine_is_cm_x300() || machine_is_balloon3())
UART = STUART;
+ else
+ UART = FFUART;
}
/*
--
1.6.4.4
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
--
Sincerely yours,
Mike.
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Compile problem due to compressor changes, UART referenced in section .txt
2010-03-09 7:27 ` Mike Rapoport
@ 2010-03-09 12:27 ` Jonathan Cameron
2010-03-09 13:00 ` Mike Rapoport
0 siblings, 1 reply; 7+ messages in thread
From: Jonathan Cameron @ 2010-03-09 12:27 UTC (permalink / raw)
To: linux-arm-kernel
On 03/09/10 07:27, Mike Rapoport wrote:
> Russell King - ARM Linux wrote:
>> On Sun, Mar 07, 2010 at 05:19:08PM +0000, J.I. Cameron wrote:
>>> Dear All,
>>>
>>> Ran into the following problem on a pxa stargate2 platform (I think
>>> it will
>>> effect a number of others).
>>>
>>> `UART' referenced in section `.text' of
>>> arch/arm/boot/compressed/misc.o: defined in discarded section
>>> `.data' of arch/arm/boot/compressed/misc.o `UART' referenced in
>>> section `.text' of arch/arm/boot/compressed/misc.o: defined in
>>> discarded section `.data' of arch/arm/boot/compressed/misc.o
>>>
>>> There is a hack in mach-pxa/include/mach/uncompress.h
>>> that changes the primary uart for some platforms:
>>>
>>> static inline void arch_decomp_setup(void)
>>> {
>>> if (machine_is_littleton() || machine_is_intelmote2()
>>> || machine_is_csb726() || machine_is_stargate2()
>>> || machine_is_cm_x300() || machine_is_balloon3())
>>> UART = STUART;
>>
>> else
>> UART = FFUART;
>>
>> and remove the initializer from UART.
>
> Something like that:
>
> Signed-off-by: Mike Rapoport <mike@compulab.co.il>
> ---
> arch/arm/mach-pxa/include/mach/uncompress.h | 4 +++-
> 1 files changed, 3 insertions(+), 1 deletions(-)
>
> diff --git a/arch/arm/mach-pxa/include/mach/uncompress.h
> b/arch/arm/mach-pxa/include/mach/uncompress.h
> index 237734b..b009299 100644
> --- a/arch/arm/mach-pxa/include/mach/uncompress.h
> +++ b/arch/arm/mach-pxa/include/mach/uncompress.h
> @@ -15,7 +15,7 @@
>
> #define __REG(x) ((volatile unsigned long *)x)
>
> -static volatile unsigned long *UART = FFUART;
> +static volatile unsigned long *UART;
>
> static inline void putc(char c)
> {
> @@ -39,6 +39,8 @@ static inline void arch_decomp_setup(void)
> || machine_is_csb726() || machine_is_stargate2()
> || machine_is_cm_x300() || machine_is_balloon3())
> UART = STUART;
> + else
> + UART = FFUART;
> }
Hi Mike,
Sorry my email client was messing about yesterday so I ended up
creating a new thread. As Eric pointed out there, this is a little
more complex due to some changes in the pxa devel tree. Patch that
effectively did the same thing (but adapted for the devel
tree was in the thread:
[PATCH] pxa: fix for UART reference in section text for a number of platforms.
http://lists.infradead.org/pipermail/linux-arm-kernel/2010-March/011010.html
Thanks and sorry again for wasting your time.
Jonathan
^ permalink raw reply [flat|nested] 7+ messages in thread
* Compile problem due to compressor changes, UART referenced in section .txt
2010-03-09 12:27 ` Jonathan Cameron
@ 2010-03-09 13:00 ` Mike Rapoport
0 siblings, 0 replies; 7+ messages in thread
From: Mike Rapoport @ 2010-03-09 13:00 UTC (permalink / raw)
To: linux-arm-kernel
Jonathan Cameron wrote:
> On 03/09/10 07:27, Mike Rapoport wrote:
>> Russell King - ARM Linux wrote:
>>> On Sun, Mar 07, 2010 at 05:19:08PM +0000, J.I. Cameron wrote:
>>>> Dear All,
>>>>
>>>> Ran into the following problem on a pxa stargate2 platform (I think
>>>> it will
>>>> effect a number of others).
>>>>
>>>> `UART' referenced in section `.text' of
>>>> arch/arm/boot/compressed/misc.o: defined in discarded section
>>>> `.data' of arch/arm/boot/compressed/misc.o `UART' referenced in
>>>> section `.text' of arch/arm/boot/compressed/misc.o: defined in
>>>> discarded section `.data' of arch/arm/boot/compressed/misc.o
>>>>
>>>> There is a hack in mach-pxa/include/mach/uncompress.h
>>>> that changes the primary uart for some platforms:
>>>>
>>>> static inline void arch_decomp_setup(void)
>>>> {
>>>> if (machine_is_littleton() || machine_is_intelmote2()
>>>> || machine_is_csb726() || machine_is_stargate2()
>>>> || machine_is_cm_x300() || machine_is_balloon3())
>>>> UART = STUART;
>>> else
>>> UART = FFUART;
>>>
>>> and remove the initializer from UART.
>> Something like that:
>>
>> Signed-off-by: Mike Rapoport <mike@compulab.co.il>
>> ---
>> arch/arm/mach-pxa/include/mach/uncompress.h | 4 +++-
>> 1 files changed, 3 insertions(+), 1 deletions(-)
>>
>> diff --git a/arch/arm/mach-pxa/include/mach/uncompress.h
>> b/arch/arm/mach-pxa/include/mach/uncompress.h
>> index 237734b..b009299 100644
>> --- a/arch/arm/mach-pxa/include/mach/uncompress.h
>> +++ b/arch/arm/mach-pxa/include/mach/uncompress.h
>> @@ -15,7 +15,7 @@
>>
>> #define __REG(x) ((volatile unsigned long *)x)
>>
>> -static volatile unsigned long *UART = FFUART;
>> +static volatile unsigned long *UART;
>>
>> static inline void putc(char c)
>> {
>> @@ -39,6 +39,8 @@ static inline void arch_decomp_setup(void)
>> || machine_is_csb726() || machine_is_stargate2()
>> || machine_is_cm_x300() || machine_is_balloon3())
>> UART = STUART;
>> + else
>> + UART = FFUART;
>> }
> Hi Mike,
>
> Sorry my email client was messing about yesterday so I ended up
> creating a new thread.
Yeah, I've missed that one...
>. As Eric pointed out there, this is a little
> more complex due to some changes in the pxa devel tree. Patch that
> effectively did the same thing (but adapted for the devel
> tree was in the thread:
>
> [PATCH] pxa: fix for UART reference in section text for a number of platforms.
>
> http://lists.infradead.org/pipermail/linux-arm-kernel/2010-March/011010.html
>
> Thanks and sorry again for wasting your time.
Welcome :)
> Jonathan
--
Sincerely yours,
Mike.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2010-03-09 13:00 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-03-07 17:19 Compile problem due to compressor changes, UART referenced in section .txt J.I. Cameron
2010-03-07 20:13 ` Ryan Mallon
2010-03-08 9:55 ` Uwe Kleine-König
2010-03-08 10:14 ` Russell King - ARM Linux
2010-03-09 7:27 ` Mike Rapoport
2010-03-09 12:27 ` Jonathan Cameron
2010-03-09 13:00 ` Mike Rapoport
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).