release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Search | Go
Wiki > Main > TargetStatus > SamsungR1Port (r9)

Samsung YP-R1 Port Page

This port is intended to make rockbox work as an "hybrid" application, that runs on linux, but must control lot's of HW parameters by itself
Do NOT think as this port being something like an application for Android. It's the only application running on the device at a time...
Basically I will resume my port to YP-R0 to R1, since basic hardware is the same (CPU; linux environment...)

Hardware

  • CPU: IMX37 532 MHz
  • 3 RTC (why the hell): S-35392A - MX37 integrated - Bluetooth
  • Power management: MAX8819 & MAX17040
  • Audio codec: WM1808
  • Radio SI4709
  • LCD: 400x240 16 bit [Two possible LCD types: /* 0=> casio, 1=> SMD */]
  • TV output! [needs a switch with a gpio, uses imx37 tv out capability]
  • Bluetooth / Other stuff: BCM2070CB0KUFBXG?
  • Input: 3 buttons (VolUP?/VolDown/PowerOn) + touch screen (capacitive) + reset button
  • Touchscreen controller: Melpas MCS5000
  • Traces of USB otg (indeed CPU has full support, but on R0 some tests by VanniX failed. Needs care)

Recovery

To enter recovery mode hold RESET button, insert USB cable and then hold power button while releasing reset hole. You will see the IMX37 Blank SE Marley device. I will provide a lsusb of it.

lsusb - http://pastebin.com/Zpn5iEUh

Pins and I/O

TODO

Port status

  • Backlight - LCD
  • Charger detection
  • Hardware buttons
  • Headphone detection
  • Battery voltage reading
  • WM1808 driver -> volume control
  • Audio playback

driver status comments
LCD 100% Standard Linux framebuffer device. XXXX FPS fullscreen
Backlight 100% Works fine so far.
Buttons 80% Keymap needs some love, but is largely OK. Multiple keypresses through GPIO module are working fine.
Touchpad 20% Basic polling works, some events too. But need to filter out garbage and make it work decently
Audio 95% Playback seems to work rather flawlessy audio-driver wise (using standard alsalib). Volume handling is seperately implemented since alsalib doesnt offer this. For this we directly communicate with the wm1808 audio codec. Take care of frequencies (check)
FM Radio 50% FM Radio is supported using a custom kernel module. RDS works too. R0's module needs to be slightly modified -> PIN to enable chip has been changed
Recording 0% It is possible to record. Need to write down the ALSA recording wrapper.
Power Management 90% Charging, voltage readout and charger status are working. We save power by using the ondemand cpu governor the Linux kernel provides. Runtime is about XX hrs. Space for improvements?
USB 50% We provide a early/safe USB mode in the patched firmware so the OF isn't needed. However there's no USB cable detection in Rockbox yet. Also, doing USB from within Rockbox is desirable to avoid reboots. Special care is needed to close open files before we make a connection, since the USB device cannot be exposed with open handles.
Storage 50% Storage handled by Linux. However, we need to mount the sdcard ourself (TODO)
Plugins 0% Disabled for the moment, need to map keys and so on

Compile Official Kernel

It seems that they forgot to make a decent .tar archive, i.e. symbolik links are broken. What to do?
Simply get the YP-R0 official package, extract it correctly and then do a recursive copy of the /include directory from R0's tree to R1's one. That's it!

-- LorenzoMiori? - 16 Jan 2013
Edit | Attach | Print version | History: r13 | r10 < r9 < r8 < r7 | Backlinks | View wiki text | More topic actions...
r9 - 01 Feb 2013 - 21:28:47 - LorenzoMiori?

Parents: TargetStatus
Copyright © by the contributing authors.