Rockbox

This is the bug/patch tracker for Rockbox. Click here for more information.

Quick links: Bugs · Patches · Rockbox frontpage

Tasklist

FS#10627 - Introduce bootloader and target files for new target Lyre Proto2

Attached to Project: Rockbox
Opened by Bob Cousins (BobC) - Wednesday, 30 September 2009, 16:43 GMT+2
Last edited by Dominik Wenger (Domonoky) - Monday, 19 October 2009, 20:15 GMT+2
Task Type Patches
Category Operating System/Drivers
Status Closed
Assigned To No-one
Player Type Another
Severity Low
Priority Normal
Reported Version Release 3.4
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Private No

Details

This patch introduces a port for the Lyre prototype2 hardware. The patch includes a minimal bootloader which just displays the logo on the LCD and flashes LEDs.

This patch changes crt0.s which is shared with the Gigabeat F/X ports; otherwise no other ports should be affected. I don't have access to Gigabeat players so a regression test needs performing on these players.
   lyre_proto2_part1b.patch (60.4 KiB)
 bootloader/lyre_proto2.c                                     |   83 +
 bootloader/SOURCES                                           |    3 
 firmware/SOURCES                                             |   12 
 firmware/export/config-lyre_proto2.h                         |  140 ++
 firmware/export/config.h                                     |   10 
 firmware/target/arm/s3c2440/crt0.S                           |  302 +++--
 firmware/target/arm/s3c2440/lyre_proto2/adc-target.h         |   39 
 firmware/target/arm/s3c2440/lyre_proto2/backlight-target.h   |   54 +
 firmware/target/arm/s3c2440/lyre_proto2/button-target.h      |  100 +
 firmware/target/arm/s3c2440/lyre_proto2/kernel-lyre_proto2.c |   79 +
 firmware/target/arm/s3c2440/lyre_proto2/lcd-lyre_proto2.c    |  570 +++++++++++
 firmware/target/arm/s3c2440/lyre_proto2/lcd-target.h         |   32 
 firmware/target/arm/s3c2440/lyre_proto2/system-lyre_proto2.c |  243 ++++
 firmware/target/arm/s3c2440/lyre_proto2/system-target.h      |   44 
 tools/configure                                              |   83 +
 15 files changed, 1686 insertions(+), 108 deletions(-)

This task depends upon

Closed by  Dominik Wenger (Domonoky)
Monday, 19 October 2009, 20:15 GMT+2
Reason for closing:  Accepted
Comment by Thomas Martitz (kugel.) - Wednesday, 30 September 2009, 18:02 GMT+2
What happened to renaming to mini2440? I'm strongly in favor of that.
Comment by Dominik Wenger (Domonoky) - Wednesday, 30 September 2009, 19:04 GMT+2
Also this patch could need some clean-up.
Many of the copied files still contain gigabeat string.

Also if there are files which are very similar to gigabeat (like the lcd) we should reuse the code, and not make a copy of it.
At moment your lcd driver contains ifdefs for gigabeat but is a copy.
(To reuse the gigabeat lcd code you may have to move the gigabeat lcd driver one level up, and maybe rename it).

And why does this target need its own kernel target file ? are there many differences in this to the gigabeat ?
Comment by Bob Cousins (BobC) - Friday, 02 October 2009, 00:53 GMT+2
All good points, I will address the issues raised and submit a new patch in a few days.
Comment by Bob Cousins (BobC) - Sunday, 04 October 2009, 19:24 GMT+2
Here is a summary of the changes for modified patch:

1) Model renamed from "lyre_proto2" to "mini2440". All references renamed
accordingly.

2) Move code common to S3C2440 SoC from "s3c2440/gigabeat-fx" to
"arm/s3c2440" dir.

Moved files are :
kernel-meg-fx.c -> ../kernel-s3c2440.c
lcd-meg-fx.c -> ../lcd-s3c2440.c
system-meg-fx.c -> ../system-s3c2440.c
system-target.h -> ../system-target.h

3) Improved porting of modules for Mini2440 -
mini2440/adc-target.h
mini2440/backlight-mini2440.c
mini2440/backlight-target.h
mini2440/button-mini2440.c
mini2440/button-target.h
mini2440/lcd-target.h
mini2440/led-mini2440.c
mini2440/led-mini2440.h
mini2440/power-mini2440.c
   ver2.patch (101.4 KiB)
 rockbox-lyre_proto_2/bootloader/mini2440.c                                     |  118 +
 rockbox-lyre_proto_2/bootloader/SOURCES                                        |    3 
 rockbox-lyre_proto_2/firmware/export/config.h                                  |   10 
 rockbox-lyre_proto_2/firmware/export/config-mini2440.h                         |  139 ++
 rockbox-lyre_proto_2/firmware/export/s3c2440.h                                 |   13 
 rockbox-lyre_proto_2/firmware/SOURCES                                          |   23 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/crt0.S                        |  290 +++-
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/debug-s3c2440.c               |    7 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/gigabeat-fx/kernel-meg-fx.c   |   79 -
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/gigabeat-fx/lcd-meg-fx.c      |  558 ---------
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/gigabeat-fx/lcd-target.h      |   22 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/gigabeat-fx/system-meg-fx.c   |  243 ----
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/gigabeat-fx/system-target.h   |   44 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/kernel-s3c2440.c              |   79 +
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/lcd-s3c2440.c                 |  592 ++++++++++
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/adc-target.h         |   42 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/backlight-mini2440.c |  151 ++
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/backlight-target.h   |   31 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/button-mini2440.c    |   72 +
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/button-target.h      |   50 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/lcd-target.h         |   43 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/led-mini2440.c       |   66 +
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/led-mini2440.h       |   46 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/power-mini2440.c     |   57 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/system-s3c2440.c              |  249 ++++
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/system-target.h               |   52 
 rockbox-lyre_proto_2/tools/configure                                           |   24 
 27 files changed, 2063 insertions(+), 1040 deletions(-)

Comment by Jonathan Gordon (jdgordon) - Wednesday, 14 October 2009, 02:58 GMT+2
good news..... mine came today so ill aim to get this commited some time this week (tonight even maybe).

thanks for moving it to mini2440/ instead of lyre...
Comment by Jonathan Gordon (jdgordon) - Wednesday, 14 October 2009, 07:15 GMT+2
looks good.... the button defines look a bit odd, but if those values mean anything then so be it...
also, the actual BUTTON_* names are bad... they should be BUTTON_ONE through to BUTTON_SIX, and then do #define BUTTON_LEFT BUTTON_ONE (or whatever) and do the same for RIGHT, (I tihnk they are the only ones actually required, the rest are used to map to ACTION_ values


someone with a beat f/x needs to double check those drivers before it can be checked in...
Comment by Bob Cousins (BobC) - Monday, 19 October 2009, 13:00 GMT+2
Updated patch - rebased to Rockbox latest, fix errors in lcd-target.h, update debug-target.h
   ver3c.patch (105.8 KiB)
 rockbox-lyre_proto_2/bootloader/mini2440.c                                     |  145 ++
 rockbox-lyre_proto_2/bootloader/SOURCES                                        |    3 
 rockbox-lyre_proto_2/firmware/export/config.h                                  |   10 
 rockbox-lyre_proto_2/firmware/export/config-mini2440.h                         |  150 ++
 rockbox-lyre_proto_2/firmware/export/s3c2440.h                                 |   57 
 rockbox-lyre_proto_2/firmware/SOURCES                                          |   35 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/crt0.S                        |  291 +++-
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/debug-target.h                |    5 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/gigabeat-fx/kernel-meg-fx.c   |   79 -
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/gigabeat-fx/lcd-meg-fx.c      |  558 ---------
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/gigabeat-fx/lcd-target.h      |   22 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/gigabeat-fx/system-meg-fx.c   |  243 ----
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/gigabeat-fx/system-target.h   |   44 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/kernel-s3c2440.c              |   79 +
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/lcd-s3c2440.c                 |  592 ++++++++++
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/adc-target.h         |   42 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/backlight-mini2440.c |  151 ++
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/backlight-target.h   |   31 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/button-mini2440.c    |   80 +
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/button-target.h      |   70 +
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/lcd-target.h         |   43 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/led-mini2440.c       |   66 +
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/led-mini2440.h       |   46 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/mini2440/power-mini2440.c     |   55 
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/system-s3c2440.c              |  249 ++++
 rockbox-lyre_proto_2/firmware/target/arm/s3c2440/system-target.h               |   70 +
 rockbox-lyre_proto_2/tools/configure                                           |   24 
 27 files changed, 2204 insertions(+), 1036 deletions(-)

Loading...