1
0
Fork 0
forked from len0rd/rockbox

M:Robe 500: RTC is now working, Added some SPI flexibility per end device and modified the interrupt handler for the tsc2100 which should make it more reliable.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21483 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Karl Kurbjun 2009-06-24 04:17:15 +00:00
parent 1910d026b1
commit 19cb444691
6 changed files with 44 additions and 27 deletions

View file

@ -44,7 +44,7 @@ void tsc2100_read_data(void)
adc_last_read=current_tick;
spi_block_transfer(SPI_target_TSC2100, false,
spi_block_transfer(SPI_target_TSC2100,
out, sizeof(out), (char *)adc_data, sizeof(adc_data));
for(i=0; i<sizeof(adc_data); i+=2)
@ -128,8 +128,7 @@ short tsc2100_readreg(int page, int address)
unsigned short command = 0x8000|(page << 11)|(address << 5);
unsigned char out[] = {command >> 8, command & 0xff};
unsigned char in[2];
spi_block_transfer(SPI_target_TSC2100, false,
out, sizeof(out), in, sizeof(in));
spi_block_transfer(SPI_target_TSC2100, out, sizeof(out), in, sizeof(in));
return (in[0]<<8)|in[1];
}
@ -139,8 +138,7 @@ void tsc2100_writereg(int page, int address, short value)
unsigned short command = (page << 11)|(address << 5);
unsigned char out[4] = {command >> 8, command & 0xff,
value >> 8, value & 0xff};
spi_block_transfer(SPI_target_TSC2100, false,
out, sizeof(out), NULL, 0);
spi_block_transfer(SPI_target_TSC2100, out, sizeof(out), NULL, 0);
}
void tsc2100_keyclick(void)