OESF Portables Forum
Everything Else => Sharp Zaurus => Model Specific Forums => Distros, Development, and Model Specific Forums => Archived Forums => 6000 - Tosa => Topic started by: cwaig on December 03, 2004, 04:52:41 am
-
I've been looking at the kernel source for the SL6000's framebuffer driver, and I can see an API provided to access the hardware acceleration - but it's documentation is pretty much zero
The only example of it being actually used in the driver itself is the tc6393_clear_screen() function, that uses the hardware rectangle fill to clear the screen. There's a very interesting looking command set provided in the tc6393fb.h file, and an ioctl provided to pass lists of commands to the graphics hardware for processing - but the actual commands (although defined) aren't actually documented
The clear screen example in the driver is
static u32 cmd[6];
cmd[0] = PXAIO_COMDI_DSADR|PXAIO_COMDD_DSADR(((int)remapped_fbuf));
cmd[1] = PXAIO_COMDI_DHPIX|PXAIO_COMDD_DHPIX(xres - 1);
cmd[2] = PXAIO_COMDI_DVPIX|PXAIO_COMDD_DVPIX(yres - 1);
cmd[3] = PXAIO_COMDI_FILL|PXAIO_COMDD_FILL(0xffff);
cmd[4] = PXAIO_COMDI_FLGO;
Using the ioctl interface to the framebuffer, this would be:
static u32 cmd[6];
cmd[0] = 5;
cmd[1] = PXAIO_COMDI_DSADR|PXAIO_COMDD_DSADR(((int)remapped_fbuf));
cmd[2] = PXAIO_COMDI_DHPIX|PXAIO_COMDD_DHPIX(xres - 1);
cmd[3] = PXAIO_COMDI_DVPIX|PXAIO_COMDD_DVPIX(yres - 1);
cmd[4] = PXAIO_COMDI_FILL|PXAIO_COMDD_FILL(0xffff);
cmd[5] = PXAIO_COMDI_FLGO;
ioctl(fbHandle,TC6393FB_ACC_CMD_WRITE,cmd);
and then I'm guessing that if you want to make sure it's completed before carrying on, you can use:
ioctl(fbHandle,TC6393FB_ACC_SYNC,0);
But the tc6393 looks like it can do blitting as well....I've no idea what the rest of the command API def's actually do though?
And glory be - Toshiba haven't released a datasheet for the chip
When I eventually get my hands on my SL6000 (my wife's hidden it 'til Christmas) I'll start trying some of the commands, see if I can work it out through trial & error.....unless someone else beats me to it of course
SDL would go much quicker with a bit of the ol' hardware accel...
-
Is this the same device?
http://www.mnementh.co.uk/eseries/docs/hwnotes/tc6393/ (http://www.mnementh.co.uk/eseries/docs/hwnotes/tc6393/)
I don't have the programming skills required to write a driver, but I work for a semiconductor company (not Toshiba, by the way...)
If you have the exact part number of the chip(s) used in the graphic section of the SL-6000L I can try to find some documentation.
-
I believe the part number is TC6393XB - there's a tiny bit of information on Toshiba's website
here (http://www.semicon.toshiba.co.jp/eng/solution/pda/pda_intro3.html) about it.
-
That would be a sweet addon to libsdl
-
cwaig,
the information you can find at the link I posted previously are for the TC6393XB, although it seems they deal mostly with the memory controller section.
I'll keep digging.....
-
asny news about TC6393XB video chip ?
-
Not yet... I only found this guy who wrote a driver for the NAND controller part of it:
http://lists.infradead.org/pipermail/linux...6/nand_tmio.obj (http://lists.infradead.org/pipermail/linux-mtd/attachments/20040824/c8dae4e6/nand_tmio.obj)
Il keep digging, I'll find a way to get a datasheet of this little monster....
-
yeap, i send a email to this guy, he will send a partial document to me. lets see
someone can try, contact Toshiba ?
and some news, Wince .NET have a tc6393xb.dll, can use this for reverse engenier ?
-
i get with ion, one documentation about the chip.
not complet at all but have some details, with some need it to make some hardware drivers (SDL etc..) tell me and i will send the document
-
Has anyone made any progress with this (or seen the docs Psycoman mentioned)?
I gave it a bit of a bosh today (tried out the tests I was pondering back in december before I got my 6000), and the hardware rectangle fill stuff is straightforward (sample code available, if anyones interested). Looks like there's a line drawing mode as well (although I've not figured out how to make it do anything apart from 45degree lines). The raster op and blit stuff is still mostly a mystery (but I'm hoping to decipher some of it over the next few weeks).
I have to say, I'm surprised no-one else has tried messing with it (after all, the op-codes for the graphics hardware are given in the SL6000 kernel source)....
-
any new about the TC6393XB video chip ? do someone work on a hardware accelarated display ?
do someone know about video performace of the sl6000l compare to the c1000 or c3000 (TC6393XB video chip vs W100)
-
do someone know about video performace of the sl6000l compare to the c1000 or c3000 (TC6393XB video chip vs W100)
[div align=\"right\"][a href=\"index.php?act=findpost&pid=75536\"][{POST_SNAPBACK}][/a][/div]
video performance seems to be worse than than those with hardware accl.
-
do someone know about video performace of the sl6000l compare to the c1000 or c3000 (TC6393XB video chip vs W100)
[div align=\"right\"][a href=\"index.php?act=findpost&pid=75536\"][{POST_SNAPBACK}][/a][/div]
video performance seems to be worse than than those with hardware accl.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=75563\"][{POST_SNAPBACK}][/a][/div]
..... i dont clearly understand
performance of the sl6000l are worse than c1000??
-
do someone know about video performace of the sl6000l compare to the c1000 or c3000 (TC6393XB video chip vs W100)
[div align=\"right\"][a href=\"index.php?act=findpost&pid=75536\"][{POST_SNAPBACK}][/a][/div]
video performance seems to be worse than than those with hardware accl.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=75563\"][{POST_SNAPBACK}][/a][/div]
..... i dont clearly understand
performance of the sl6000l are worse than c1000??
[div align=\"right\"][a href=\"index.php?act=findpost&pid=75575\"][{POST_SNAPBACK}][/a][/div]
not sure about c1k and c3k. but worse than c860 with w100 hard accl driver.
-
cwaig, did you got the docs I sent ?
Any progress ?
-
[/quote]
not sure about c1k and c3k. but worse than c860 with w100 hard accl driver.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=75654\"][{POST_SNAPBACK}][/a][/div]
[/quote]
the performance are worse cuz the lcd (wich is bigger) or it it simply a ploblem of dirver supporting video acceleration ?
does the c1000 use the same ship than the c860?
in a purely hardware point of view wich one of those ship is the best
??
-
any new about this
-
Any new developments in video hardware acceleration for sl6000?
-
bump!
-
without the chip technical manual, no hope.
-
Sharp's tc6393fb.h has enough information to experiment. First, I'd try modifying the fill command to draw colored boxes on the screen. This is very useful for accelerating window managers, as they tend to draw the backing color, then the objects on top. The source copy would be great for moving windows, scrolling windows, scrolling the console, and drawing console characters.
The TC6393 has 1MB of video memory. The default 640x480x16bit mode only uses 600kB, leaving 424kB for console fonts, bitmaps, etc, for source copy. Also, 424kB is enough for one large 528x400 buffer. With a custom mplayer plugin, mplayer can render to that off-screen buffer, then StretchBLT the buffer to the 640x480 screen. It looks like StretchBLT has vertical reverse and horizontal reverse options, too, so you can flip horizontal, or flip vertical, or rotate the video 180 degrees in hardware.
I'm working on the 2.6 kernel at the moment, and I'll work on video acceleration at some point (it's a low priority, so it could be a while). If someone wants to experiment and help out, that'd be even better. =)
The TC6393's LCD controller has five accelration commands:
PXAIO_COMDI_CMGO - Cursor Move?
PXAIO_COMDI_FLGO - Fill
PXAIO_COMDI_SCGO - Source Copy
PXAIO_COMDI_SBGO - StretchBLT
PXAIO_COMDI_LDGO - Line Draw
Out of the set commands, we can group by ones that take a pixel color as a paremeter:
PXAIO_COMDI_FILL - fill color
PXAIO_COMDI_TCLOR - transparent color for Source Copy
ones that take a memory address as a parameter:
PXAIO_COMDI_CSADR - cursor screen address?
PXAIO_COMDI_PSADR - physical screen address?
PXAIO_COMDI_POADR - physical offset address?
PXAIO_COMDI_DSADR - destination screen address?
PXAIO_COMDI_SSADR - source screen address?
and ones that take a x or y offset or pixel count as a parameter:
PXAIO_COMDI_CHPIX - cursor horizontal pixels?
PXAIO_COMDI_CVPIX - cursor vertical pixels?
PXAIO_COMDI_PHPIX - physical horizontal pixels?
PXAIO_COMDI_PVPIX - physical vertical pixels?
PXAIO_COMDI_PHOFS - physical horizontal offset?
PXAIO_COMDI_PVOFS - physical vertical offset?
PXAIO_COMDI_DHPIX - destination horizontal pixels
PXAIO_COMDI_DVPIX - destination vertical pixels
PXAIO_COMDI_SHPIX - source horizontal pixels?
PXAIO_COMDI_SVPIX - source vertical pixels?
-
Sharp's tc6393.h has enough information to experiment. First, I'd try modifying the fill command [div align=\"right\"][a href=\"index.php?act=findpost&pid=105197\"][{POST_SNAPBACK}][/a][/div]
this sounds very promising. Perhaps with the re-release of the 6000 as a windows mobile device more information will come out too.
Whilst I'd love to help, I'm only running kernel 2.4 on the Guylhem ROM, sorry :-(
I've also no experience at actually writing kernel modules. But, I'd be willing to give back-porting the driver to 2.4.x a shot, or even being a guinea pig if I can.
If nothing else, be encouraged that there are lots of eager people waiting for faster video drivers for their 6000!
Paul
-
p.s. and I'll gladly contribute to a beer fund!
-
this sounds very promising. Perhaps with the re-release of the 6000 as a windows mobile device more information will come out too.
I could reverse-engineer those drivers if they implement a feature we like.Whilst I'd love to help, I'm only running kernel 2.4 on the Guylhem ROM, sorry :-(
The Sharp kernel exports an ioctl for video acceleration. I doubt any Sharp-based ROM removed this ioctl, so you can test from userspace. You just need a cross-compiler to compile tosaacc.c (http://oz.drigon.com/src/tosaacc.c). It's a simple program that uses the Fill command to clear the screen to a color specified on the command line.
Usage: tosaacc <color in hex>
Example: tosaacc 48c0
If there's enough demand from people without cross-compilers, I can modify this program to read accelerator commands from stdin so I can distribute a binary version. It's not as nice, though, as you can't use Sharp's #defines and would have to write all commands in hex.
-
Hello
By any chance, would you have the chip tech ref with details explaining the hardware acceleration? It would be great to have that working. Experimenting could take a while, but it would be great to have accel working...
Video Accel is IMHO the most important thing the 6000 miss (imagine playing divx from a microdrive at 640X480 24fps on that beautiful screen !) - it could be shared between 2.4 and 2.6 kernels
Email me guylhem at googlemail dot com if you want the information I have about the chip, the device, etc.
Guylhem
-
Sharp's tc6393fb.h has enough information to experiment. First, I'd try modifying the fill command to draw colored boxes on the screen. This is very useful for accelerating window managers, as they tend to draw the backing color, then the objects on top. The source copy would be great for moving windows, scrolling windows, scrolling the console, and drawing console characters.
I found what a screen copy command (PXAIO_COMDI_SCGO) takes four arguments:
PXAIO_COMDI_DSADR - an addres of a destination region (left upper corner)
PXAIO_COMDI_DHPIX - a width of a region to copy
PXAIO_COMDI_DVPIX - a height of a region to copy
PXAIO_COMDI_SSADR - an address of a source region (upper left corner)
Formula to calculate address from coordinates is
Addr = 2*X+Y*960 - for VGA mode (2bytes per pixel)
Has somebody else any luck with Tosa video accelerator?
-
yeap, i send a email to this guy, he will send a partial document to me. lets see
someone can try, contact Toshiba ?
and some news, Wince .NET have a tc6393xb.dll, can use this for reverse engenier ?
[div align=\"right\"][a href=\"index.php?act=findpost&pid=60499\"][{POST_SNAPBACK}][/a][/div]
I contacted Toshiba's TAEC U.S. headquarters today to request Datasheets for the TC6393XB. I've had luck with Hitachi in the past doing this, so I'm keeping my fingers crossed.
-
My first response from Toshiba is displayed below.
Looks like a possible dead end. I've sent the engineer another e-mail asking him to forward my request to someone who might be able to provide more information. Hopefully I'll hear back from him soon.
Hi John,
This is a Secured Digital Host Controller (SDHC) device which we don't sell
anymore. I also don't have any datasheet of that part to share with you.
Best Regards,
Noman
--------------------------------------------------------------------
Noman Waseq
System Engineering Manager
ASSP System LSI Group
Toshiba America Electronic Components, Inc
Office: (408) 526-2895 Cell: (408) 464-9660
http://www.toshiba.com/taec/ (http://www.toshiba.com/taec/)
Rakesh
Sethi/TOSHIBA_TAE
C To
Noman
01/04/2006 05:07 Waseq/TOSHIBA_TAEC@TOSHIBA_TAEC
PM cc
Subject
Fw: Honda R&D Americas, Inc -
TC6393xb - CA
www.socworld.toshiba.com
Rakesh Sethi
System Level IC's Biz. Development
----- Forwarded by Rakesh Sethi/TOSHIBA_TAEC on 01/04/2006 05:09 PM -----
Tech
Questions/TOSHIBA
_TAEC To
Rakesh
01/04/2006 04:44 Sethi/TOSHIBA_TAEC@TOSHIBA_TAEC
PM cc
Subject
Honda R&D Americas, Inc - TC6393xb
- CA
Hello, Rakesh!
Can you please help us with this inquiry from Honda? Thanks
Regards,
Tech Questions
jcabrer@hra.com
01/04/2006 04:17 To
PM tech.questions@taec.toshiba.com
cc
Please respond to Subject
jcabrer@hra.com Technical Questions
---------------------------------------------------------------------------
Name: John Cabrer
Email: jcabrer@hra.com
Telephone: 310-781-6073
Organization: Honda R&D Americas, Inc.
City: Torrance
State: CA
Country: USA
Title: Systems Integration Consultant
Product Interest: ASIC/Soc
Product Interest Other:
Application Interest: Automotive
Application Interest Other:
Product Information: Yes
Question: I'm having a great deal of difficulty locating a datasheet for
the TC6393xb SoC. From what I understand, this component is used in several
ARM-based embedded products. Can you provide documentation for this device?
Thank you.
---------------------------------------------------------------------------
-
Just to note that the MSDN site has a comment about the SD/SDIO driver for this chip at
http://msdn.microsoft.com/embedded/usewine...rs/default.aspx (http://msdn.microsoft.com/embedded/usewinemb/ce/drivers/supdrivers/default.aspx)
which would be a nice addition!
-
Just to note that the MSDN site has a comment about the SD/SDIO driver for this chip at
http://msdn.microsoft.com/embedded/usewine...rs/default.aspx (http://msdn.microsoft.com/embedded/usewinemb/ce/drivers/supdrivers/default.aspx)
which would be a nice addition!
[div align=\"right\"][a href=\"index.php?act=findpost&pid=109699\"][{POST_SNAPBACK}][/a][/div]
I chased this down a couple of days ago with no luck in finding the mentioned DLL. It would be usefull to have a look inside.
-
Well, it's not the TC6393XB, but it is VERY CLOSE. I hope someone finds this useful. Unlike the TC6387XB, the 6391 has TFT LCD capabilities like the 6393.
-
looks quite useful, albeit it's a hardware reference and doesn't have much in the way of a programming reference.
-
Well, it's not the TC6393XB, but it is VERY CLOSE. I hope someone finds this useful. Unlike the TC6387XB, the 6391 has TFT LCD capabilities like the 6393.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=109715\"][{POST_SNAPBACK}][/a][/div]
There is a group of people playing with Toshiba PDAs and Linux, and some of them have the TC6393XB chip. They have some technical information in their webpage (http://www.mnementh.co.uk/eseries/).
Maybe this will help.
Jose
-
Just to note that the MSDN site has a comment about the SD/SDIO driver for this chip at
http://msdn.microsoft.com/embedded/usewine...rs/default.aspx (http://msdn.microsoft.com/embedded/usewinemb/ce/drivers/supdrivers/default.aspx)
which would be a nice addition!
[div align=\"right\"][a href=\"index.php?act=findpost&pid=109699\"][{POST_SNAPBACK}][/a][/div]
I chased this down a couple of days ago with no luck in finding the mentioned DLL. It would be usefull to have a look inside.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=109710\"][{POST_SNAPBACK}][/a][/div]
I guess we'd need to find someone with a Toshiba e800 and get a rom download or something.
-
group of people playing with Toshiba PDAs and Linux, and some of them have the TC6393XB chip. They have some technical information in their webpage (http://www.mnementh.co.uk/eseries/).
Maybe this will help.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=109720\"][{POST_SNAPBACK}][/a][/div]
I came across this, and it seems their driver made it into the kernel, but nothing about accelerated video... but I must admit, I didn't delve really deeply.
-
group of people playing with Toshiba PDAs and Linux, and some of them have the TC6393XB chip. They have some technical information in their webpage (http://www.mnementh.co.uk/eseries/).
Maybe this will help.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=109720\"][{POST_SNAPBACK}][/a][/div]
I came across this, and it seems their driver made it into the kernel, but nothing about accelerated video... but I must admit, I didn't delve really deeply.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=109724\"][{POST_SNAPBACK}][/a][/div]
Now I know why. This PDAs are using ATI video chips...
-
Well, it's not the TC6393XB, but it is VERY CLOSE. I hope someone finds this useful. Unlike the TC6387XB, the 6391 has TFT LCD capabilities like the 6393.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=109715\"][{POST_SNAPBACK}][/a][/div]
Sorry, the TC6391XB doesn't include a video accelerator.
Now I know why. This PDAs are using ATI video chips...
[div align=\"right\"][a href=\"index.php?act=findpost&pid=109727\"][{POST_SNAPBACK}][/a][/div]
Some toshiba PDA's are using the TC6393XB, but their driver is in an early stage and doesn't support video acceleration yet.
Dirk
-
Ok. I don't think Toshiba is going to give me any more information. I contacted Sharp engineering support this morning asking for assistance. Let's see what they come back with.
Am I the only one who thinks this is strange that so many companies use this component, and the datasheets are nowhere to be found?
-
Looks like I spoke too soon.
Hi John,
We'll ask our counterparts in Japan to see if they have any info on that
part.
Best Regards,
Noman
JCabrer@hra.com
01/04/2006 05:32 To
PM Noman.Waseq@taec.toshiba.com
cc
Subject
Re: Fw: Honda R&D Americas, Inc -
TC6393xb - CA
-
And here is the final nail in the coffin. The technology in the TC6393XB is not available to groups outside of Japan, and not available to non-SD Consortium Members.
The person who contacted me, stated that Toshiba Japan could not provide the info to any party in the U.S.A. specifically.
What does this mean? Stop looking for Datasheets. It's a dead end. Start learning how to reverse engineer the TC6393XB.
Before he hung up, he said I might try Sharp Japan directly. I won't
-
I'm quite confident that, given some time, everything we need to know can be figured out with the information we have, and also poking the I/O ports with a stick and seeing what happens.
For movies and GUIs, blit, scale, and rectangles are the most important things, and there's already been some info posted about those functions.
-
progress seems quite slow on this... I am really really hoping that someone has been stimulated by a definite bounty!
-
I had achieve some more progress in graphics acceleration with TC6393.
Here is code snippets for:
1 Draw solid rectangular area with top left corner in point (x,y) and dimensions (width,height) and color(color).
static uint32_t cmd [11];
int len = 0;
int ret;
cmd[++len] = PXAIO_COMDI_DSADR | PXAIO_COMDD_DSADR ((x*2+((long)960L*y)));
cmd[++len] = PXAIO_COMDI_DHPIX | PXAIO_COMDD_DHPIX (width);
cmd[++len] = PXAIO_COMDI_DVPIX | PXAIO_COMDD_DVPIX (height);
cmd[++len] = PXAIO_COMDI_FILL | PXAIO_COMDD_FILL (color);
cmd[++len] = PXAIO_COMDI_FLGO;
cmd[0] = len;
if ((ret = ioctl (fd, TC6393FB_ACC_CMD_WRITE, cmd)) < 0)
perror ("ioctl");
printf ("TC6393FB_ACC_CMD_WRITE returned %d\n", ret);
if ((ret = ioctl (fd, TC6393FB_ACC_SYNC, 0)) < 0)
perror("ioctl");
printf ("TC6393FB_ACC_SYNC returned %d\n", ret);
2 Setup pattern for ROP3 filling and copying. Pattern is at patAddr in TC6393 video memory, and pattern dimension is patWidth,patHeight
static uint32_t cmd [11];
int len = 0;
int ret;
/* Pattern setup */
cmd[++len] = PXAIO_COMDI_PSADR | PXAIO_COMDD_PSADR (patAddr);
cmd[++len] = PXAIO_COMDI_POADR | PXAIO_COMDD_POADR (patAddr);
cmd[++len] = PXAIO_COMDI_PHPIX | PXAIO_COMDD_PHPIX (patWidth);
cmd[++len] = PXAIO_COMDI_PVPIX | PXAIO_COMDD_PVPIX (patHeight);
cmd[++len] = PXAIO_COMDI_PHOFS | PXAIO_COMDD_PHOFS (0);
cmd[++len] = PXAIO_COMDI_PVOFS | PXAIO_COMDD_PVOFS (0);
cmd[0] = len;
if ((ret = ioctl (fd, TC6393FB_ACC_CMD_WRITE, cmd)) < 0)
perror ("ioctl");
3 Filling area with pattern- area is (x,y,width,height), code of ROP3 operation is ropCode
(area copying with rop3 is similar)
len=0;
/* Destination setup and run command*/
cmd[++len] = PXAIO_COMDI_DSADR | PXAIO_COMDD_DSADR ((2*x+960*(y)));
cmd[++len] = PXAIO_COMDI_DHPIX | PXAIO_COMDD_DHPIX (width);
cmd[++len] = PXAIO_COMDI_DVPIX | PXAIO_COMDD_DVPIX (height);
cmd[++len] = PXAIO_COMDI_RSTR | PXAIO_COMDD_RSTR (ropCode);
cmd[++len] = PXAIO_COMDI_FLGO | PXAIO_COMDD_FLGO_ROP3;
cmd[0] = len;
if ((ret = ioctl (fd, TC6393FB_ACC_CMD_WRITE, cmd)) < 0)
perror ("ioctl");
if ((ret = ioctl (fd, TC6393FB_ACC_SYNC, 0)) < 0)
perror("ioctl");
4 Draw line from point (x1,y1) to point (x2,y2) with color (color)
int dx = 0;
int dy = 0;
int flag = 0;
int bk2 = 0;
int ini = 0;
if ( x1 < x2 )
{
dx = x2-x1;
}
else
{
dx = x1-x2;
flag = flag | PXAIO_COMDD_LDGO_LHRV;
}
if ( y1 < y2 )
{
dy = y2-y1;
}
else
{
dy = y1-y2;
flag = flag | PXAIO_COMDD_LDGO_LVRV;
}
if ( dy == 0 ) //special case for horizontal line
{
ini = 0x8000;
}
else if ( dy <= dx )
{
bk2 = (dy-dx)<<1;
}
else if ( dx == 0 ) //special case for vertical line
{
ini = 0x8000;
flag = flag | PXAIO_COMDD_LDGO_LDMOD;
}
else
{
bk2 = (dx-dy)<<1;
flag = flag | PXAIO_COMDD_LDGO_LDMOD;
}
static uint32_t cmd [11];
int len = 0;
int ret;
cmd[++len] = PXAIO_COMDI_DSADR | PXAIO_COMDD_DSADR ((x1*2+((long)960L*y1)));
cmd[++len] = PXAIO_COMDI_DVPIX | PXAIO_COMDD_DVPIX (dy);
cmd[++len] = PXAIO_COMDI_DHPIX | PXAIO_COMDD_DHPIX (dx);
cmd[++len] = PXAIO_COMDI_LBINI | PXAIO_COMDD_LBINI (ini);
cmd[++len] = PXAIO_COMDI_LBK2 | PXAIO_COMDD_LBK2 (bk2);
cmd[++len] = PXAIO_COMDI_FILL | PXAIO_COMDD_FILL (color);
cmd[++len] = PXAIO_COMDI_LDGO | flag;
cmd[0] = len;
if ((ret = ioctl (fd, TC6393FB_ACC_CMD_WRITE, cmd)) < 0)
perror ("ioctl");
// printf ("TC6393FB_ACC_CMD_WRITE returned %d\n", ret);
if ((ret = ioctl (fd, TC6393FB_ACC_SYNC, 0)) < 0)
perror("ioctl");
There are two unresolved issues: cursor movement and area stretching.
Last one is very hard to resolve because TC6393 hangs in case of wrong scaling parameters.
--
Happy hacking,
Eugene.
-
One more thing about Tosa acceleration.
If you take a look on qte shared library on your Tosa (/opt/Qtopia/lib/libqte.so), you can find some very insteresting things. It has code for QScreenT6393 and QGfxT6393 classes. So if you have some skills in reverse engineering of ARM code, then you can try to figure out how-to move cursor and scale with TC6393.
--
Happy hacking,
Eugene.
-
yeap, i send a email to this guy, he will send a partial document to me. lets see
someone can try, contact Toshiba ?
and some news, Wince .NET have a tc6393xb.dll, can use this for reverse engenier ?
[div align=\"right\"][a href=\"index.php?act=findpost&pid=60499\"][{POST_SNAPBACK}][/a][/div]
I have a friend who works in cellphone development and asked him if he could help come up with information... we couldn't help, but instead googled and sent me a link to this discussion.
Sigh.
-
any news at all on this.. even a slightly improved driver would be better than nothing!
-
I now work in the science park in Cambridge, and there's a Toshiba Europe lab nearby, and yet I am still unable to get introduced to someone at Tosh who can help!
-
Hi guys,
I'm afraid it might only be about the memory controller, but what about this:
http://mmc.drzeus.cx/wiki/Controllers/Toshiba/TC6393XB (http://mmc.drzeus.cx/wiki/Controllers/Toshiba/TC6393XB)
I now work in the science park in Cambridge, and there's a Toshiba Europe lab nearby, and yet I am still unable to get introduced to someone at Tosh who can help!
[div align=\"right\"][a href=\"index.php?act=findpost&pid=129941\"][{POST_SNAPBACK}][/a][/div]
-
Hi guys,
I'm afraid it might only be about the memory controller, but what about this:
sorry, dude, whilst that's useful for sd slot, no information about graphics acceleration programming
-
I have found the Tosa ROM 1.12 to be extremely slow in changing between applications compared to my theoretically slow sl5500's ROM 2.38. I hope this is the right thread!
I take notes and transfer information between various apps and was amazed at how long it has always taken to switch between already apps. Does this have to do with Accelerated display? I'm talking between browser, editor, email, even before installed any ipks to the bare bones 1.12.
thanks,
sdjf
-
I have found the Tosa ROM 1.12 to be extremely slow in changing between applications
sorry but no, this thread is about the ability to render graphics (whether moving windows around or playing movies).
your problem sounds like you've enabled swap and you've simply run out of ram... or that you're running off SD card and its very slow.
-
Uh, have done neither AFAIK but I'll go off and study those issues. Brand new unit, no one else modified orig. ROM, one friend suggested maybe it's an app with a memory leak. So, more homework to do on this.
thanks,
sdjf
-
Mine has never been slow switching between already open apps. I turned off "Fast Load" on all apps that I don't routinely use. I kept it on Address Book only. This frees RAM to make other apps faster. (Click and hold the icon for an app, then uncheck "Fast Load" box.)
-
yeah, did that first thing I'm afraid of getting too OT with this so will try to find or start an appropriate thread when I can.
thanks,
sdjf