NetBSD support for the Mini2440
The FriendlyArm Mini2440 is a Single Board Computer based on the Samsung S3C2440 ARM9 CPU. It comes with either 64 MB of RAM and either 64MB or 128MB NAND Flash, and features 2MB NOR flash. For the full specs see the Mini2440 webpage at FriendlyArm.
Linux supports all features of the Mini2440, however, as far as I have found, no BSD systems have good support for the Mini2440. This project is an attempt to remedy this and learning some low-level programming at the same time. For this reason all code is written from scratch or based on existing NetBSD code, rather than trying to port the Linux code.
The basic support for the Samsung S3C2440 is based on the current S3C2410 in NetBSD, while the Mini2440 board support is based on the SMDK2410 board support code.
The code has been integrated in the NetBSD CVS repository. For information on how to run NetBSD on the Mini2440-board, and various tips and tricks see Mini2440 NetBSD Howto.
Supported Features
The table reflects that status of netbsd-current.
| Feature | Status |
| Basic support for S3C2440 |
Done, boots both QEMU and real hardware. |
| S3C2440 UART |
Done |
| DM9000 (MAC+PHY) |
Done. Driver is "dme". |
| S3C2440 SD Controller |
Done:
|
| S3C2440 DMA Controller |
Done: Supported well enough to use for transfers to/from the SD cards and the I2S bus:
|
| S3C2440 IIS Bus |
Simple interface which supports playback and recording in Master mode only. |
| S3C2440 NAND Flash Controller | Not Supported. Work in Progress |
| S3C2440 NOR Flash | Not Supported. Work in Progress |
| S3C2440 LCD Controller |
The S3C24x0 driver in netbsd-5 drives the LCD controller of the S3C2440 as well. The driver does, however, need some work. |
| FriendlyArm 7" LCD |
Not Supported |
| FriendlyArm 3,5" LCD |
Supported, but timings are not completely correct. |
| LCD Backlight Control | Not supported |
| PWM Buzzer | Not supported |
| S3C2440 USB Host Controller |
OHCI, works out-of the box with NetBSD OHCI drivers. |
| S3C2440 USB Device Controller |
Not Supported |
| S3C2440 Touchscreen |
Basic driver that provides a wscons mouse device and uses tpcalib for calibration. A simple averaging filter is used to improve readings, which is a bit primitive. |
| UDA1341TS (audio codec) |
Supports playback, recording and most of the mixer controls. |
| S3C2440 RTC |
Done |
| IIC | Not supported |
| 256byte EEPROM store | Not supported |
| 6 position push buttons | Not supported |
| 4 LEDs | Not supported |
Old Patches
All code is integrated in NetBSD's CVS repository. These patches are obsolete, they are still listed here for completeness only.
| mini2440-20091028.patch |
|
| mini2440-20091125.patch |
|
| mini2440-20091228.patch |
|
| mini2440-20100108.patch |
|
Modified: Tue 14-Feb-12 03:54:15 PST