Re: [uClinux-dev] [PATCH] Add support for the Coldfire m5441x.
On 08/06/12 15:33, Greg Ungerer wrote: Hi Steven, On 07/06/12 07:28, Steven King wrote: Add support for the Coldfire 5441x (54410/54415/54416/54417/54418). Currently we only support noMMU mode. It requires the PIT patch posted previously as it uses the PIT instead of the dma timer as a clock source so we can get all that GENERIC_CLOCKEVENTS goodness. It also adds some simple clk definitions and very simple minded power management. The gpio code is tweeked and some additional devices are added to devices.c. The Makefile uses -mv4e as apparently, the only difference a v4m (m5441x) and a v4e is the later has a FPU, which I don't think should matter to us in the kernel. Signed-off-by: Steven King Looks pretty good. Moved onto the for-next branch of the m68knommu git tree. I spoke too soon :-( With this patch in place, building for a m5208evb config gives: CC arch/m68k/platform/coldfire/intc-simr.o arch/m68k/platform/coldfire/intc-simr.c: In function ‘intc_irq_mask’: arch/m68k/platform/coldfire/intc-simr.c:71:6: error: ‘MCFINTC2_SIMR’ undeclared (first use in this function) arch/m68k/platform/coldfire/intc-simr.c:71:6: note: each undeclared identifier is reported only once for each function it appears in arch/m68k/platform/coldfire/intc-simr.c: In function ‘intc_irq_unmask’: arch/m68k/platform/coldfire/intc-simr.c:83:6: error: ‘MCFINTC2_CIMR’ undeclared (first use in this function) arch/m68k/platform/coldfire/intc-simr.c: In function ‘intc_irq_startup’: arch/m68k/platform/coldfire/intc-simr.c:118:6: error: ‘MCFINTC2_ICR0’ undeclared (first use in this function) arch/m68k/platform/coldfire/intc-simr.c: In function ‘init_IRQ’: arch/m68k/platform/coldfire/intc-simr.c:185:6: error: ‘MCFINTC2_SIMR’ undeclared (first use in this function) arch/m68k/platform/coldfire/intc-simr.c:189:8: error: ‘MCFINTC2_ICR0’ undeclared (first use in this function) Regards Greg --- arch/m68k/Kconfig.cpu | 8 + arch/m68k/Makefile | 1 + arch/m68k/include/asm/gpio.h | 10 +- arch/m68k/include/asm/m5441xsim.h | 270 +++ arch/m68k/include/asm/m54xxacr.h | 4 + arch/m68k/include/asm/mcfclk.h | 43 + arch/m68k/include/asm/mcfgpio.h | 30 +++- arch/m68k/include/asm/mcfsim.h | 2 + arch/m68k/include/asm/mcftimer.h | 2 +- arch/m68k/platform/coldfire/Makefile | 1 + arch/m68k/platform/coldfire/clk.c | 107 +++- arch/m68k/platform/coldfire/device.c | 57 ++- arch/m68k/platform/coldfire/intc-simr.c | 26 ++- arch/m68k/platform/coldfire/m5441x.c | 224 + arch/m68k/platform/coldfire/timers.c | 2 +- 15 files changed, 763 insertions(+), 24 deletions(-) Greg Ungerer -- Principal Engineer EMAIL: g...@snapgear.com SnapGear Group, McAfee PHONE: +61 7 3435 2888 8 Gardner Close FAX: +61 7 3217 5323 Milton, QLD, 4064, Australia WEB: http://www.SnapGear.com -- Greg Ungerer -- Principal EngineerEMAIL: g...@snapgear.com SnapGear Group, McAfee PHONE: +61 7 3435 2888 8 Gardner Close FAX: +61 7 3217 5323 Milton, QLD, 4064, AustraliaWEB: http://www.SnapGear.com ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
[uClinux-dev] [PATCH] m68knommu: allow ColdFire CPUs to use unaligned accesses
From: Greg Ungerer All current ColdFire CPUs are able to support unaligned memory accesses. So remove the CONFIG_CPU_HAS_NO_UNALIGNED option selection for ColdFire. It seems that the current restriction was inherrited from the early non-MMU support for the basic 68000 proecssors - which do not support unaligned accesses. Signed-off-by: Greg Ungerer --- arch/m68k/Kconfig.cpu |1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/arch/m68k/Kconfig.cpu b/arch/m68k/Kconfig.cpu index d4f3a98..06fa0c3 100644 --- a/arch/m68k/Kconfig.cpu +++ b/arch/m68k/Kconfig.cpu @@ -27,7 +27,6 @@ config COLDFIRE select ARCH_HAVE_CUSTOM_GPIO_H select CPU_HAS_NO_BITFIELDS select CPU_HAS_NO_MULDIV64 - select CPU_HAS_NO_UNALIGNED select GENERIC_CSUM endchoice -- 1.7.0.4 ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
Re: [uClinux-dev] [PATCH] Add support for the Coldfire m5441x.
Hi Steven, On 07/06/12 07:28, Steven King wrote: Add support for the Coldfire 5441x (54410/54415/54416/54417/54418). Currently we only support noMMU mode. It requires the PIT patch posted previously as it uses the PIT instead of the dma timer as a clock source so we can get all that GENERIC_CLOCKEVENTS goodness. It also adds some simple clk definitions and very simple minded power management. The gpio code is tweeked and some additional devices are added to devices.c. The Makefile uses -mv4e as apparently, the only difference a v4m (m5441x) and a v4e is the later has a FPU, which I don't think should matter to us in the kernel. Signed-off-by: Steven King Looks pretty good. Moved onto the for-next branch of the m68knommu git tree. Thanks Greg --- arch/m68k/Kconfig.cpu |8 + arch/m68k/Makefile |1 + arch/m68k/include/asm/gpio.h| 10 +- arch/m68k/include/asm/m5441xsim.h | 270 +++ arch/m68k/include/asm/m54xxacr.h|4 + arch/m68k/include/asm/mcfclk.h | 43 + arch/m68k/include/asm/mcfgpio.h | 30 +++- arch/m68k/include/asm/mcfsim.h |2 + arch/m68k/include/asm/mcftimer.h|2 +- arch/m68k/platform/coldfire/Makefile|1 + arch/m68k/platform/coldfire/clk.c | 107 +++- arch/m68k/platform/coldfire/device.c| 57 ++- arch/m68k/platform/coldfire/intc-simr.c | 26 ++- arch/m68k/platform/coldfire/m5441x.c| 224 + arch/m68k/platform/coldfire/timers.c|2 +- 15 files changed, 763 insertions(+), 24 deletions(-) Greg Ungerer -- Principal EngineerEMAIL: g...@snapgear.com SnapGear Group, McAfee PHONE: +61 7 3435 2888 8 Gardner Close FAX: +61 7 3217 5323 Milton, QLD, 4064, AustraliaWEB: http://www.SnapGear.com ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
[uClinux-dev] [PATCH] m68knommu: fix 68360 local setting of timer interrupt handler
From: Greg Ungerer Compiling for 68360 based targets fails with: arch/m68k/platform/68360/config.c: In function ‘hw_tick’: arch/m68k/platform/68360/config.c:55:2: error: implicit declaration of function ‘arch_timer_interrupt’ arch/m68k/platform/68360/config.c: At top level: arch/m68k/platform/68360/config.c:64:6: error: conflicting types for ‘hw_timer_init’ arch/m68k/include/asm/machdep.h:36:13: note: previous declaration of ‘hw_timer_init’ was here Changes made to hw_timer_init() didn't get updated in the 68328 timer code. So process and call the "handler" arg that is now passed into that hw_timer_init() function. Signed-off-by: Greg Ungerer --- arch/m68k/platform/68360/config.c |7 +-- 1 files changed, 5 insertions(+), 2 deletions(-) diff --git a/arch/m68k/platform/68360/config.c b/arch/m68k/platform/68360/config.c index 255fc03..9877cef 100644 --- a/arch/m68k/platform/68360/config.c +++ b/arch/m68k/platform/68360/config.c @@ -35,6 +35,7 @@ extern void m360_cpm_reset(void); #define OSCILLATOR (unsigned long int)3300 #endif +static irq_handler_t timer_interrupt; unsigned long int system_clock; extern QUICC *pquicc; @@ -52,7 +53,7 @@ static irqreturn_t hw_tick(int irq, void *dummy) pquicc->timer_ter1 = 0x0002; /* clear timer event */ - return arch_timer_interrupt(irq, dummy); + return timer_interrupt(irq, dummy); } static struct irqaction m68360_timer_irq = { @@ -61,7 +62,7 @@ static struct irqaction m68360_timer_irq = { .handler = hw_tick, }; -void hw_timer_init(void) +void hw_timer_init(irq_handler_t handler) { unsigned char prescaler; unsigned short tgcr_save; @@ -94,6 +95,8 @@ void hw_timer_init(void) pquicc->timer_ter1 = 0x0003; /* clear timer events */ + timer_interrupt = handler; + /* enable timer 1 interrupt in CIMR */ setup_irq(CPMVEC_TIMER1, &m68360_timer_irq); -- 1.7.0.4 ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
[uClinux-dev] [PATCH] m68k: make syscall_trace_enter/leave exist for non-MMU classic m68k types
From: Greg Ungerer The assembler entry code calls directly to the syscall_trace_enter() and syscall_trace_leave() functions. But currently they are conditionaly compiled out for the non-MMU classic m68k CPU types (so 68328 for example), resulting in a link error: LD vmlinux arch/m68k/platform/68328/built-in.o: In function `do_trace': (.text+0x1c): undefined reference to `syscall_trace_enter' arch/m68k/platform/68328/built-in.o: In function `do_trace': (.text+0x4c): undefined reference to `syscall_trace_leave' Change the conditional check that includes these functions to be true for the !defined(CONFIG_MMU) case as well. Signed-off-by: Greg Ungerer --- arch/m68k/kernel/ptrace.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/arch/m68k/kernel/ptrace.c b/arch/m68k/kernel/ptrace.c index 8b4a222..1bc10e6 100644 --- a/arch/m68k/kernel/ptrace.c +++ b/arch/m68k/kernel/ptrace.c @@ -286,7 +286,7 @@ asmlinkage void syscall_trace(void) } } -#ifdef CONFIG_COLDFIRE +#if defined(CONFIG_COLDFIRE) || !defined(CONFIG_MMU) asmlinkage int syscall_trace_enter(void) { int ret = 0; -- 1.7.0.4 ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
[uClinux-dev] [PATCH] m68knommu: fix 68328 local setting of timer interrupt handler
From: Greg Ungerer Compiling for 68328 based targets fails with: arch/m68k/platform/68328/timers.c: In function ‘hw_tick’: arch/m68k/platform/68328/timers.c:65:2: error: implicit declaration of function ‘arch_timer_interrupt’ arch/m68k/platform/68328/timers.c: At top level: arch/m68k/platform/68328/timers.c:102:6: error: conflicting types for ‘hw_timer_init’ arch/m68k/include/asm/machdep.h:36:13: note: previous declaration of ‘hw_timer_init’ was here Changes made to hw_timer_init() didn't get updated in the 68328 timer code. So process and call the "handler" arg that is now passed into that hw_timer_init() function. Signed-off-by: Greg Ungerer --- arch/m68k/platform/68328/timers.c |6 -- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/arch/m68k/platform/68328/timers.c b/arch/m68k/platform/68328/timers.c index c801c17..f4dc9b2 100644 --- a/arch/m68k/platform/68328/timers.c +++ b/arch/m68k/platform/68328/timers.c @@ -53,6 +53,7 @@ #endif static u32 m68328_tick_cnt; +static irq_handler_t timer_interrupt; /***/ @@ -62,7 +63,7 @@ static irqreturn_t hw_tick(int irq, void *dummy) TSTAT &= 0; m68328_tick_cnt += TICKS_PER_JIFFY; - return arch_timer_interrupt(irq, dummy); + return timer_interrupt(irq, dummy); } /***/ @@ -99,7 +100,7 @@ static struct clocksource m68328_clk = { /***/ -void hw_timer_init(void) +void hw_timer_init(irq_handler_t handler) { /* disable timer 1 */ TCTL = 0; @@ -115,6 +116,7 @@ void hw_timer_init(void) /* Enable timer 1 */ TCTL |= TCTL_TEN; clocksource_register_hz(&m68328_clk, TICKS_PER_JIFFY*HZ); + timer_interrupt = handler; } /***/ -- 1.7.0.4 ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
[uClinux-dev] [PATCH] m68k: fix inclusion of arch_gettimeoffset for non-MMU 68k classic CPU types
From: Greg Ungerer When building for non-MMU based classic 68k CPU types (like the 68328 for example) you get a compilation error: CC arch/m68k/kernel/time.o arch/m68k/kernel/time.c:91:5: error: redefinition of ‘arch_gettimeoffset’ include/linux/time.h:145:19: note: previous definition of ‘arch_gettimeoffset’ was here The arch_gettimeoffset() code is included when building for these CPU types, but it shouldn't be. Those machine types do not have CONFIG_ARCH_USES_GETTIMEOFFSET set. The fix is simply to conditionally include the arch_gettimeoffset() code on that same config setting that specifies its use or not. Signed-off-by: Greg Ungerer --- arch/m68k/kernel/time.c |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/m68k/kernel/time.c b/arch/m68k/kernel/time.c index d7deb7f..707f057 100644 --- a/arch/m68k/kernel/time.c +++ b/arch/m68k/kernel/time.c @@ -85,7 +85,7 @@ void __init time_init(void) mach_sched_init(timer_interrupt); } -#ifdef CONFIG_M68KCLASSIC +#ifdef CONFIG_ARCH_USES_GETTIMEOFFSET u32 arch_gettimeoffset(void) { @@ -108,4 +108,4 @@ static int __init rtc_init(void) module_init(rtc_init); -#endif /* CONFIG_M68KCLASSIC */ +#endif /* CONFIG_ARCH_USES_GETTIMEOFFSET */ -- 1.7.0.4 ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
Re: [uClinux-dev] [PATCH] m68knommu: use MCF_IRQ_PIT1 instead of MCFINT_VECBASE + MCFINT_PIT1
On 08/06/12 10:05, Steven King wrote: On Wednesday 06 June 2012 8:57:34 pm Greg Ungerer wrote: On 07/06/12 07:02, Steven King wrote: use MCF_IRQ_PIT1 instead of MCFINT_VECBASE + MCFINT_PIT1 so we can support those parts that have the pit1 interrupt on other than the first interrupt controller. Signed-off-by: Steven King Looks good. Applied to for-next branch of m68knommu git tree. Did you push this to git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu.git? its not showing up when I pull. Or is there different tree I should be pulling from? No, I hadn't pushed it up to kernel.org yet. But it is there now. Regards Greg Greg Ungerer -- Principal EngineerEMAIL: g...@snapgear.com SnapGear Group, McAfee PHONE: +61 7 3435 2888 8 Gardner Close FAX: +61 7 3217 5323 Milton, QLD, 4064, AustraliaWEB: http://www.SnapGear.com ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
Re: [uClinux-dev] [PATCH] m68knommu: Add support for the Freescale m5253demo board.
On 08/06/12 10:03, Steven King wrote: On Thursday 07 June 2012 4:12:02 am Greg Ungerer wrote: On 06/07/2012 02:59 PM, Steven King wrote: On Wednesday 06 June 2012 9:04:09 pm Greg Ungerer wrote: Hi Steven, On 06/06/12 02:48, Steven King wrote: Add basic support for the m5253demo using the dm9000 ethernet controller. Is the m5253demo a real board? Or do you mean Freescale's M5253EVB board? If it is really the m5235evb then we should use that name for its files. And generally for a common denominator like the m5253evb I have just used the basic m5253.c as the base board support. A good portion of people use the same basic layout, you end up with a lot of boards that have the same (or similar) peripheral components hooked up in the same way. Those that are really different can have their own board files. No the m5253demo is a real board: http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=M5253DEMO distinct from the m5253evb: http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=M5253EVB like most of the freescale 'demo' boards, smaller, cheaper, and a different peripheral set; I dont think the evb has the wm8731 but does has a tft display connector and a keypad, the m5253demo has more ram?... really they are quite different. All the ones like this I have used in the past they had called "Lite". But of course they had to use a new and different name this time :-) It still seems like this should be a common base at least, so starting with a m5253.c. Okay, so now I confused, do you mean the m525x.c? or do you mean still have separate m525x.c and have a m5253.c? Sorry, that was a typo. Yes I meant to say m525x.c (no need for a separate m5253.c or m5253_demo.c). Regards Greg Greg Ungerer -- Principal EngineerEMAIL: g...@snapgear.com SnapGear Group, McAfee PHONE: +61 7 3435 2888 8 Gardner Close FAX: +61 7 3217 5323 Milton, QLD, 4064, AustraliaWEB: http://www.SnapGear.com ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
Re: [uClinux-dev] [PATCH] m68knommu: use MCF_IRQ_PIT1 instead of MCFINT_VECBASE + MCFINT_PIT1
On Wednesday 06 June 2012 8:57:34 pm Greg Ungerer wrote: > On 07/06/12 07:02, Steven King wrote: > > use MCF_IRQ_PIT1 instead of MCFINT_VECBASE + MCFINT_PIT1 so we can > > support those parts that have the pit1 interrupt on other than the first > > interrupt controller. > > > > Signed-off-by: Steven King > > Looks good. Applied to for-next branch of m68knommu git tree. > Did you push this to git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu.git? its not showing up when I pull. Or is there different tree I should be pulling from? ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
Re: [uClinux-dev] [PATCH] m68knommu: Add support for the Freescale m5253demo board.
On Thursday 07 June 2012 4:12:02 am Greg Ungerer wrote: > On 06/07/2012 02:59 PM, Steven King wrote: > > On Wednesday 06 June 2012 9:04:09 pm Greg Ungerer wrote: > >> Hi Steven, > >> > >> On 06/06/12 02:48, Steven King wrote: > >>> Add basic support for the m5253demo using the dm9000 ethernet > >>> controller. > >> > >> Is the m5253demo a real board? > >> Or do you mean Freescale's M5253EVB board? > >> > >> If it is really the m5235evb then we should use that name for its files. > >> > >> And generally for a common denominator like the m5253evb I have just > >> used the basic m5253.c as the base board support. A good portion of > >> people use the same basic layout, you end up with a lot of boards > >> that have the same (or similar) peripheral components hooked up in > >> the same way. Those that are really different can have their own board > >> files. > > > > No the m5253demo is a real board: > > http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=M5253DEMO > > distinct from the m5253evb: > > http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=M5253EVB > > > > like most of the freescale 'demo' boards, smaller, cheaper, and a > > different peripheral set; I dont think the evb has the wm8731 but does > > has a tft display connector and a keypad, the m5253demo has more ram?... > > really they are quite different. > > All the ones like this I have used in the past they had called "Lite". > But of course they had to use a new and different name this time :-) > > It still seems like this should be a common base at least, so starting > with a m5253.c. Okay, so now I confused, do you mean the m525x.c? or do you mean still have separate m525x.c and have a m5253.c? ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
Re: [uClinux-dev] [PATCH] m68knommu: Add support for the Freescale m5253demo board.
On 06/07/2012 02:59 PM, Steven King wrote: On Wednesday 06 June 2012 9:04:09 pm Greg Ungerer wrote: Hi Steven, On 06/06/12 02:48, Steven King wrote: Add basic support for the m5253demo using the dm9000 ethernet controller. Is the m5253demo a real board? Or do you mean Freescale's M5253EVB board? If it is really the m5235evb then we should use that name for its files. And generally for a common denominator like the m5253evb I have just used the basic m5253.c as the base board support. A good portion of people use the same basic layout, you end up with a lot of boards that have the same (or similar) peripheral components hooked up in the same way. Those that are really different can have their own board files. No the m5253demo is a real board: http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=M5253DEMO distinct from the m5253evb: http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=M5253EVB like most of the freescale 'demo' boards, smaller, cheaper, and a different peripheral set; I dont think the evb has the wm8731 but does has a tft display connector and a keypad, the m5253demo has more ram?... really they are quite different. All the ones like this I have used in the past they had called "Lite". But of course they had to use a new and different name this time :-) It still seems like this should be a common base at least, so starting with a m5253.c. Regards Greg Greg Ungerer -- Principal EngineerEMAIL: g...@snapgear.com SnapGear Group, McAfee PHONE: +61 7 3435 2888 8 Gardner Close,FAX: +61 7 3891 3630 Milton, QLD, 4064, AustraliaWEB: http://www.SnapGear.com ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev