Port-arm archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Porting NetBSD to the Nintendo 3DS



Hi,

I want to start porting NetBSD to the Nintendo 3DS line of handhelds. I need guidance on how to implement the drivers for this port.

There are many unique features of the 3DS that need new drivers.

The system has three CPUs: an arm11mpcore (has either 2 or 4 cores, depending on the model), an arm946e-s (security co-processor), and an arm7tdmi (used for DS and GBA games).

The main CPU does not have direct access to storage. This means that a baremetal program needs to be made for the security co-processor to allow access to such hardware.

The 3DS has direct access to the I2C and SPI controllers along with a Corelink DMA-330 co-processor. The state of the gamepad is available via IO registers. https://www.3dbrew.org/wiki/IO_Registers

The I2C controller needs a driver so the kernel can access the MCU for power management. https://www.3dbrew.org/wiki/I2C_Registers

I'm going to start by writing firmware to load a NetBSD kernel.

---
Paul W.


Home | Main Index | Thread Index | Old Index