All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [PATCH 1/1] 68000 code integration
       [not found] ` <4FA37D01.2000107@snapgear.com>
@ 2012-05-04  9:48   ` Luis Alves
  2012-05-04 10:58     ` Geert Uytterhoeven
  2012-05-08  2:56     ` Greg Ungerer
  0 siblings, 2 replies; 5+ messages in thread
From: Luis Alves @ 2012-05-04  9:48 UTC (permalink / raw)
  To: uClinux development list, linux-m68k; +Cc: gerg

Hi Greg,

On Fri, May 4, 2012 at 7:53 AM, Greg Ungerer <gerg@snapgear.com> wrote:
> Hi Luis,
>
> On 01/05/12 06:42, Luis Alves wrote:
>>
>> Here is my second attempt for the 68000 code integration.
>>
>> What I have done:
>>  Merged all 68000 based cpu's in platform/68000 and deleted 68*328
>> subdirs.
>>  Modified respective Makefile's to correctly build each target.
>>  Added support for my board/cpu in Kconfig's
>>  Merged all head.S files into one.
>
>
> Overall this is starting to look really good. I like the common
> 68000 platform directory. That has worked out well.
>
> Did you send this to the m68k-linux list as well?
> I don't see it in the CC list.

Yes, but in two separated emails (I had some headache with google smtp server).

>
> This is a big patch on its own though. Do you think there is any
> way you can break it up, into logical but smaller pieces?
> Something like firstly a patch that reorgs the directories for
> current 68x328 targets. Then follow on patches that add your
> board support.
>
> Oh, and another suggestion :-)
> Did you use git to generate this?
> If you use git format-patch with the -B and -M options it will
> handle moves and renames a little better, producing much smaller
> patches for email list review. It will collapse those pesky
> bootlogo.h files in this patch for example. And it also makes it
> much easier to see any changes made to moved files that are
> otherwise no obvious.

Yes, I've used git with Linus kernel as base, but I've just started
using git and don't know all the available options and features.
I'll try out the referred options.

>
> Oh, sorry, another suggestion as well :-)
> If you run this patch through the kernels scripts/checkpatch.pl
> checker it will list out any formating issues. It would be good to
> fix those up as well.

Your suggestions are always welcome :)
I'll run that script.

>
> An observation from the patch, the 68000/entry-*.S files all look
> quite similar. Is there any way they can be merged into a single
> file?

I'm just noticed that accidentally I've added the 'entry-68000.S'!
This file should be removed.

About merging, yes I plan to do it later. The thing is that in my
first attempt of running this kernel in the 68000 the entry code from
the  68328 had a strange behavior (you should remember debugging this
with me - lots of softlocks).
Then I've used the entry.S from coldfire sources as base and it worked smooth.
Also, the existing trap exception code doesn't work with 68000 cpu's
since they don't provide the vector in the stack.


>
> Thanks for doing this, it is looking really nice.

The pleasure is all mine :)

Regards,
Luis


>
> Regards
> Greg
>
>
>
>
>> In future iterations, more code can/will be merged.
>>
>> For the 68000 (and my board) the code is working fine. I have a fast and
>> stable kernel running in the old 68000.
>> It would be nice if someone could test the 68[xx]328 target code and
>> eventually fix any bugs.
>>
>> The exception code for the 68000 is not yet completed (not having the
>> exception vector on the stack is boring).
>> I plan to send future updates for the 68000 (and the code for my board
>> drivers, not included in this patch)
>>
>>
>> Regards,
>> Luis Alves
>>
>>
>> ---
>>  arch/m68k/Kconfig.cpu                     |    2 +-
>>  arch/m68k/Kconfig.machine                 |    6 +
>>  arch/m68k/Makefile                        |    6 +-
>>  arch/m68k/include/asm/alce68k.h           |  136 ++
>>  arch/m68k/kernel/setup_no.c               |    3 +
>>  arch/m68k/platform/68000/Makefile         |   26 +
>>  arch/m68k/platform/68000/bootlogo-vz.h    | 3204
>> +++++++++++++++++++++++++++++
>>  arch/m68k/platform/68000/bootlogo.h       |  270 +++
>>  arch/m68k/platform/68000/config-alce68k.c |  179 ++
>>  arch/m68k/platform/68000/config-ez.c      |   76 +
>>  arch/m68k/platform/68000/config-vz.c      |  188 ++
>>  arch/m68k/platform/68000/config.c         |   55 +
>>  arch/m68k/platform/68000/entry-68000.S    |  463 +++++
>>  arch/m68k/platform/68000/entry-alce68k.S  |  453 ++++
>>  arch/m68k/platform/68000/entry.S          |  261 +++
>>  arch/m68k/platform/68000/head.S           |  310 +++
>>  arch/m68k/platform/68000/ints-alce68k.c   |  387 ++++
>>  arch/m68k/platform/68000/ints.c           |  186 ++
>>  arch/m68k/platform/68000/romvec.S         |   35 +
>>  arch/m68k/platform/68000/timers-alce68k.c |  112 +
>>  arch/m68k/platform/68000/timers.c         |  135 ++
>>  arch/m68k/platform/68328/Makefile         |   21 -
>>  arch/m68k/platform/68328/bootlogo.h       |  270 ---
>>  arch/m68k/platform/68328/config.c         |   55 -
>>  arch/m68k/platform/68328/entry.S          |  261 ---
>>  arch/m68k/platform/68328/head-de2.S       |  128 --
>>  arch/m68k/platform/68328/head-pilot.S     |  207 --
>>  arch/m68k/platform/68328/head-ram.S       |  141 --
>>  arch/m68k/platform/68328/head-rom.S       |  105 -
>>  arch/m68k/platform/68328/ints.c           |  186 --
>>  arch/m68k/platform/68328/romvec.S         |   35 -
>>  arch/m68k/platform/68328/timers.c         |  135 --
>>  arch/m68k/platform/68EZ328/Makefile       |    5 -
>>  arch/m68k/platform/68EZ328/config.c       |   76 -
>>  arch/m68k/platform/68VZ328/Makefile       |   11 -
>>  arch/m68k/platform/68VZ328/bootlogo.h     | 3204
>> -----------------------------
>>  arch/m68k/platform/68VZ328/config.c       |  188 --
>>  37 files changed, 6488 insertions(+), 5033 deletions(-)
>>  create mode 100644 arch/m68k/include/asm/alce68k.h
>>  create mode 100644 arch/m68k/platform/68000/Makefile
>>  create mode 100644 arch/m68k/platform/68000/bootlogo-vz.h
>>  create mode 100644 arch/m68k/platform/68000/bootlogo.h
>>  create mode 100644 arch/m68k/platform/68000/config-alce68k.c
>>  create mode 100644 arch/m68k/platform/68000/config-ez.c
>>  create mode 100644 arch/m68k/platform/68000/config-vz.c
>>  create mode 100644 arch/m68k/platform/68000/config.c
>>  create mode 100644 arch/m68k/platform/68000/entry-68000.S
>>  create mode 100644 arch/m68k/platform/68000/entry-alce68k.S
>>  create mode 100644 arch/m68k/platform/68000/entry.S
>>  create mode 100644 arch/m68k/platform/68000/head.S
>>  create mode 100644 arch/m68k/platform/68000/ints-alce68k.c
>>  create mode 100644 arch/m68k/platform/68000/ints.c
>>  create mode 100644 arch/m68k/platform/68000/romvec.S
>>  create mode 100644 arch/m68k/platform/68000/timers-alce68k.c
>>  create mode 100644 arch/m68k/platform/68000/timers.c
>>  delete mode 100644 arch/m68k/platform/68328/Makefile
>>  delete mode 100644 arch/m68k/platform/68328/bootlogo.h
>>  delete mode 100644 arch/m68k/platform/68328/config.c
>>  delete mode 100644 arch/m68k/platform/68328/entry.S
>>  delete mode 100644 arch/m68k/platform/68328/head-de2.S
>>  delete mode 100644 arch/m68k/platform/68328/head-pilot.S
>>  delete mode 100644 arch/m68k/platform/68328/head-ram.S
>>  delete mode 100644 arch/m68k/platform/68328/head-rom.S
>>  delete mode 100644 arch/m68k/platform/68328/ints.c
>>  delete mode 100644 arch/m68k/platform/68328/romvec.S
>>  delete mode 100644 arch/m68k/platform/68328/timers.c
>>  delete mode 100644 arch/m68k/platform/68EZ328/Makefile
>>  delete mode 100644 arch/m68k/platform/68EZ328/config.c
>>  delete mode 100644 arch/m68k/platform/68VZ328/Makefile
>>  delete mode 100644 arch/m68k/platform/68VZ328/bootlogo.h
>>  delete mode 100644 arch/m68k/platform/68VZ328/config.c
>
>
>
>
> --
> ------------------------------------------------------------------------
> Greg Ungerer  --  Principal Engineer        EMAIL:     gerg@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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/1] 68000 code integration
  2012-05-04  9:48   ` [PATCH 1/1] 68000 code integration Luis Alves
@ 2012-05-04 10:58     ` Geert Uytterhoeven
  2012-05-04 11:53       ` Luis Alves
  2012-05-08  2:56     ` Greg Ungerer
  1 sibling, 1 reply; 5+ messages in thread
From: Geert Uytterhoeven @ 2012-05-04 10:58 UTC (permalink / raw)
  To: Luis Alves; +Cc: uClinux development list, linux-m68k, gerg

On Fri, May 4, 2012 at 11:48 AM, Luis Alves <ljalvs@gmail.com> wrote:
> Also, the existing trap exception code doesn't work with 68000 cpu's
> since they don't provide the vector in the stack.

arch/m68k/kernel/entry_mm.S (yes, _mm, as Amiga platform code is based
on the m68k "mm" framework) from
http://git.kernel.org/?p=linux/kernel/git/geert/linux-m68k.git;a=shortlog;h=refs/heads/uamiga-untested
should have trap support for 68000.
Never tested on real hardware, though.

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/1] 68000 code integration
  2012-05-04 10:58     ` Geert Uytterhoeven
@ 2012-05-04 11:53       ` Luis Alves
  2012-05-06 20:46         ` Geert Uytterhoeven
  0 siblings, 1 reply; 5+ messages in thread
From: Luis Alves @ 2012-05-04 11:53 UTC (permalink / raw)
  To: uClinux development list, linux-m68k; +Cc: Geert Uytterhoeven, gerg

Hi Geert,

Thanks for that info, I didn't know about that Amiga port.
I've looked into that implementation and it's similar to what I've done.
But as far as I can tell the code is also incomplete (the trap_c
function doesn't distinguish who caused the trap because
pt_regs->format and pt_regs->vector are pointing to some random
values).

Is the Amiga development active? I can see that the last commit was
about 1 year ago.

Thanks and regards,
Luis Alves


On Fri, May 4, 2012 at 11:58 AM, Geert Uytterhoeven
<geert@linux-m68k.org> wrote:
> On Fri, May 4, 2012 at 11:48 AM, Luis Alves <ljalvs@gmail.com> wrote:
>> Also, the existing trap exception code doesn't work with 68000 cpu's
>> since they don't provide the vector in the stack.
>
> arch/m68k/kernel/entry_mm.S (yes, _mm, as Amiga platform code is based
> on the m68k "mm" framework) from
> http://git.kernel.org/?p=linux/kernel/git/geert/linux-m68k.git;a=shortlog;h=refs/heads/uamiga-untested
> should have trap support for 68000.
> Never tested on real hardware, though.
>
> Gr{oetje,eeting}s,
>
>                         Geert
>
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
>
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
>                                 -- Linus Torvalds

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/1] 68000 code integration
  2012-05-04 11:53       ` Luis Alves
@ 2012-05-06 20:46         ` Geert Uytterhoeven
  0 siblings, 0 replies; 5+ messages in thread
From: Geert Uytterhoeven @ 2012-05-06 20:46 UTC (permalink / raw)
  To: Luis Alves; +Cc: uClinux development list, linux-m68k, gerg

Hi Luis,

On Fri, May 4, 2012 at 1:53 PM, Luis Alves <ljalvs@gmail.com> wrote:
> Is the Amiga development active? I can see that the last commit was
> about 1 year ago.

Not really. From time to time (starting at 2.6.8.1 IIRC), I spent some time on
it when I feel a bit bored ;-)

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/1] 68000 code integration
  2012-05-04  9:48   ` [PATCH 1/1] 68000 code integration Luis Alves
  2012-05-04 10:58     ` Geert Uytterhoeven
@ 2012-05-08  2:56     ` Greg Ungerer
  1 sibling, 0 replies; 5+ messages in thread
From: Greg Ungerer @ 2012-05-08  2:56 UTC (permalink / raw)
  To: Luis Alves; +Cc: uClinux development list, linux-m68k, gerg

Hi Luis,

On 04/05/12 19:48, Luis Alves wrote:
> On Fri, May 4, 2012 at 7:53 AM, Greg Ungerer<gerg@snapgear.com>  wrote:
[snip]
>> An observation from the patch, the 68000/entry-*.S files all look
>> quite similar. Is there any way they can be merged into a single
>> file?
>
> I'm just noticed that accidentally I've added the 'entry-68000.S'!
> This file should be removed.
>
> About merging, yes I plan to do it later. The thing is that in my
> first attempt of running this kernel in the 68000 the entry code from
> the  68328 had a strange behavior (you should remember debugging this
> with me - lots of softlocks).
> Then I've used the entry.S from coldfire sources as base and it worked smooth.

I suspect the existing 68x328 code is broken, and we probably want
to use your fixed and working version of this entry.S for all.

I don't have any real 68328 based hardware, but many years ago
people used the xcopilot simulator for 68328 testing. I don't know
what the state of it these days, but it may still be useful.

Regards
Greg


------------------------------------------------------------------------
Greg Ungerer  --  Principal Engineer        EMAIL:     gerg@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

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2012-05-08  3:00 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <1335818553-14402-1-git-send-email-ljalvs@gmail.com>
     [not found] ` <4FA37D01.2000107@snapgear.com>
2012-05-04  9:48   ` [PATCH 1/1] 68000 code integration Luis Alves
2012-05-04 10:58     ` Geert Uytterhoeven
2012-05-04 11:53       ` Luis Alves
2012-05-06 20:46         ` Geert Uytterhoeven
2012-05-08  2:56     ` Greg Ungerer

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.