nds/arm7/serial.h File Reference

#include <nds/bios.h>

Defines

#define REG_RCNT   (*(vuint16*)0x04000134)
#define REG_KEYXY   (*(vuint16*)0x04000136)
#define RTC_CR   (*(vuint16*)0x04000138)
#define RTC_CR8   (*( vuint8*)0x04000138)
#define REG_SIOCNT   (*(vuint16*)0x04000128)
#define SIO_DATA8   (*(vuint8*)0x0400012A)
#define SIO_DATA32   (*(vuint32*)0x04000120)
#define SIO_MULTI_0   (*(vuint16*)0x04000120)
#define SIO_MULTI_1   (*(vuint16*)0x04000122)
#define SIO_MULTI_2   (*(vuint16*)0x04000124)
#define SIO_MULTI_3   (*(vuint16*)0x04000126)
#define SIO_MULTI_SEND   (*(vuint16*)0x0400012A)
#define REG_SPICNT   (*(vuint16*)0x040001C0)
#define REG_SPIDATA   (*(vuint16*)0x040001C2)
#define SPI_ENABLE   BIT(15)
#define SPI_IRQ   BIT(14)
#define SPI_BUSY   BIT(7)
#define SPI_BAUD_4MHZ   0
#define SPI_BAUD_2MHZ   1
#define SPI_BAUD_1MHZ   2
#define SPI_BAUD_512KHZ   3
#define SPI_BAUD_4MHz   0
#define SPI_BAUD_2MHz   1
#define SPI_BAUD_1MHz   2
#define SPI_BAUD_512KHz   3
#define SPI_BYTE_MODE   (0<<10)
#define SPI_HWORD_MODE   (1<<10)
#define SPI_DEVICE_POWER   (0 << 8)
#define SPI_DEVICE_FIRMWARE   (1 << 8)
#define SPI_DEVICE_NVRAM   (1 << 8)
#define SPI_DEVICE_TOUCH   (2 << 8)
#define SPI_DEVICE_MICROPHONE   (2 << 8)
#define SPI_CONTINUOUS   BIT(11)
#define PM_CONTROL_REG   0
#define PM_BATTERY_REG   1
#define PM_AMPLIFIER_REG   2
#define PM_READ_REGISTER   (1<<7)
#define PM_SOUND_AMP   BIT(0)
#define PM_SOUND_MUTE   BIT(1)
#define PM_BACKLIGHT_BOTTOM   BIT(2)
#define PM_BACKLIGHT_TOP   BIT(3)
#define PM_SYSTEM_PWR   BIT(6)
#define PM_POWER_DOWN   BIT(6)
#define PM_LED_CONTROL(m)   ((m)<<4)
#define PM_LED_ON   (0<<4)
#define PM_LED_SLEEP   (1<<4)
#define PM_LED_BLINK   (3<<4)
#define PM_AMP_OFFSET   2
#define PM_AMP_ON   1
#define PM_AMP_OFF   0
#define FIRMWARE_WREN   0x06
#define FIRMWARE_WRDI   0x04
#define FIRMWARE_RDID   0x9F
#define FIRMWARE_RDSR   0x05
#define FIRMWARE_READ   0x03
#define FIRMWARE_PW   0x0A
#define FIRMWARE_PP   0x02
#define FIRMWARE_FAST   0x0B
#define FIRMWARE_PE   0xDB
#define FIRMWARE_SE   0xD8
#define FIRMWARE_DP   0xB9
#define FIRMWARE_RDP   0xAB

Functions

static void SerialWaitBusy ()
int writePowerManagement (int reg, int command)
static int readPowerManagement (int reg)
void readFirmware (uint32 address, void *destination, uint32 size)

Define Documentation

#define FIRMWARE_DP   0xB9

#define FIRMWARE_FAST   0x0B

#define FIRMWARE_PE   0xDB

#define FIRMWARE_PP   0x02

#define FIRMWARE_PW   0x0A

#define FIRMWARE_RDID   0x9F

#define FIRMWARE_RDP   0xAB

#define FIRMWARE_RDSR   0x05

#define FIRMWARE_READ   0x03

#define FIRMWARE_SE   0xD8

#define FIRMWARE_WRDI   0x04

#define FIRMWARE_WREN   0x06

#define PM_AMP_OFF   0

#define PM_AMP_OFFSET   2

#define PM_AMP_ON   1

#define PM_AMPLIFIER_REG   2

#define PM_BACKLIGHT_BOTTOM   BIT(2)

#define PM_BACKLIGHT_TOP   BIT(3)

#define PM_BATTERY_REG   1

#define PM_CONTROL_REG   0

#define PM_LED_BLINK   (3<<4)

#define PM_LED_CONTROL (  )     ((m)<<4)

#define PM_LED_ON   (0<<4)

#define PM_LED_SLEEP   (1<<4)

#define PM_POWER_DOWN   BIT(6)

#define PM_READ_REGISTER   (1<<7)

#define PM_SOUND_AMP   BIT(0)

#define PM_SOUND_MUTE   BIT(1)

#define PM_SYSTEM_PWR   BIT(6)

#define REG_KEYXY   (*(vuint16*)0x04000136)

#define REG_RCNT   (*(vuint16*)0x04000134)

#define REG_SIOCNT   (*(vuint16*)0x04000128)

#define REG_SPICNT   (*(vuint16*)0x040001C0)

#define REG_SPIDATA   (*(vuint16*)0x040001C2)

#define RTC_CR   (*(vuint16*)0x04000138)

#define RTC_CR8   (*( vuint8*)0x04000138)

#define SIO_DATA32   (*(vuint32*)0x04000120)

#define SIO_DATA8   (*(vuint8*)0x0400012A)

#define SIO_MULTI_0   (*(vuint16*)0x04000120)

#define SIO_MULTI_1   (*(vuint16*)0x04000122)

#define SIO_MULTI_2   (*(vuint16*)0x04000124)

#define SIO_MULTI_3   (*(vuint16*)0x04000126)

#define SIO_MULTI_SEND   (*(vuint16*)0x0400012A)

#define SPI_BAUD_1MHz   2

#define SPI_BAUD_1MHZ   2

#define SPI_BAUD_2MHz   1

#define SPI_BAUD_2MHZ   1

#define SPI_BAUD_4MHz   0

#define SPI_BAUD_4MHZ   0

#define SPI_BAUD_512KHz   3

#define SPI_BAUD_512KHZ   3

#define SPI_BUSY   BIT(7)

#define SPI_BYTE_MODE   (0<<10)

#define SPI_CONTINUOUS   BIT(11)

#define SPI_DEVICE_FIRMWARE   (1 << 8)

#define SPI_DEVICE_MICROPHONE   (2 << 8)

#define SPI_DEVICE_NVRAM   (1 << 8)

#define SPI_DEVICE_POWER   (0 << 8)

#define SPI_DEVICE_TOUCH   (2 << 8)

#define SPI_ENABLE   BIT(15)

#define SPI_HWORD_MODE   (1<<10)

#define SPI_IRQ   BIT(14)


Function Documentation

void readFirmware ( uint32  address,
void *  destination,
uint32  size 
)

static int readPowerManagement ( int  reg  )  [inline, static]

00158                                  {
00159         return writePowerManagement((reg)|PM_READ_REGISTER, 0);
00160 }

static void SerialWaitBusy (  )  [inline, static]

00144                       {
00145         while (REG_SPICNT & SPI_BUSY)
00146                 swiDelay(1);
00147 }

int writePowerManagement ( int  reg,
int  command 
)


Generated on Tue Jan 22 15:40:33 2008 for libnds(ARM7) by  doxygen 1.5.4