Camera registers

The cameras are controlled and initialized with I2C. The below registers are accessed by the ARM9.

ADDRESS

WIDTH

NAME

0x04004200

2

REG_CAMRST

0x04004202

2

REG_CAMCNT

0x04004204

4

REG_CAMDATA

REG_CAMRST

BIT

DESCRIPTION

15-0

?

Used for resetting cameras. Once cameras are reset by poking this register, all three 0x0400420X camera registers are set to zero.

REG_CAMCNT

BIT

DESCRIPTION

0-3

?

4

IRQ error flag

5

Resets cameras when set?

7-6

?

9-8

Set to 2(bit9 set) during init, cleared to zero on shutdown

10

Set to 1 during init, 0 on cameras shutdown

11

Set to 1 during init, 0 on cameras shutdown

12

?

13

Set during initialization?

14

Cleared during initialization?

15

Enable

When the IRQ error flag is set when the cameras IRQ handler is executing, the cameras are shut off. The cameras I2C devices are powered off until cameras are initialized via this register.

REG_CAMDATA

BIT

DESCRIPTION

31-0

RGB555 video data converted by internal-cameras DSP

For retrieving camera video data, NDMA with arm9 startup mode 11(camera) is used with this src register. The NDMA frame transfer is started when the cameras IRQ was thrown. Supported internal-cameras DSP final resolutions are 256x192 and 640x480, the corresponding frame transfer lengths are 0x18000 and 0x96000.(The 256x192 final resolution is converted by the internal-cameras DSP from the camera resolution)