forums.ps2dev.org Forum Index forums.ps2dev.org
Homebrew PS2, PSP & PS3 Development Discussions
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

How to keep the PSP LCD screen power on?

 
Post new topic   Reply to topic    forums.ps2dev.org Forum Index -> PSP Development
View previous topic :: View next topic  
Author Message
M.Jackson



Joined: 10 Sep 2007
Posts: 85

PostPosted: Mon Oct 22, 2007 5:02 pm    Post subject: How to keep the PSP LCD screen power on? Reply with quote

Hi everyone. I am writing some IPL code without Sony's kernel/firmware functioning in the background. The problem is, the LCD screen would automatically turn off just after a few minutes since my program started. Despite the black screen, everything else (including the sio console) still worked fine suggesting the machine was not in a sleep mode (at least the cpu and uart3 is still functioning).

Here is some more details. The LCD screen is initialized by Sony's kernel and my code just take over the cpu and replace the kernel in RAM to keep on running (thus the kernel is no longer there to look after the LCD). Since none of the code I wrote has the ability to control the LCD screen, i suspect the screen blackout could be the result of some sort of power-saving feature pre-activated by Sony's kernel. However, even if I turned off all the power-saving measures from the kernel before launching my own code, the black screen still persists.

Actually having the black screen when idling is good (which means i can still save some power when running my own program). But how to turn it back on? I have tried the following lines picked up from the IPL SDK (though i have absolutely no idea what they actually do), but none of them seemed working:

a) pspSysconCtrlPower(SYSCON_DEV_LCD|SYSCON_DEV_ON);

b) // GPIO.0 (LCD ON)
REG32(0xbe240000) |= 0x00000001;
REG32(0xbe240008) = 0x00000001;

Does anyone has any idea how to do this?

Thanks!
Back to top
View user's profile Send private message Send e-mail Visit poster's website
danzel



Joined: 04 Nov 2005
Posts: 182

PostPosted: Mon Oct 22, 2007 6:35 pm    Post subject: Reply with quote

In the SDK there is:
Code:
/**
 * Generate a power tick, preventing unit from
 * powering off and turning off display.
 *
 * @param unknown - pass 0
 */
int scePowerTick(int unknown);

You could check out what that does and do the same probably.
Back to top
View user's profile Send private message
Jim



Joined: 02 Jul 2005
Posts: 487
Location: Sydney

PostPosted: Mon Oct 22, 2007 11:38 pm    Post subject: Reply with quote

Perhaps there's some kind of LCD screen watchdog you need to strobe?

Jim
_________________
http://www.dbfinteractive.com
Back to top
View user's profile Send private message Visit poster's website
M.Jackson



Joined: 10 Sep 2007
Posts: 85

PostPosted: Wed Oct 31, 2007 6:04 pm    Post subject: Reply with quote

HAHAHA, finally, after numerous of tests I eventually found out that it was not the power of lcd that got turned off after 10 minutes at all, it was merely the Linux kernel that tried to blank out the screen when the blank timer expired and swithed the framebuffer driver to some strange mode making it looked like a screen black out due to power saving, an idea so misleading and pushing me way off the course of investigation.

It now seems to me that the lcd device will just stay the way it was once initialized unless deliberate attempts are made later to force it to act differently (like changing graphic modes, or turning into a real power saving state, something that the Sony firmware is all capable of), so i won't bother to look into the firmware to figure out how it plays tricks with the lcd. But still thanks everyone who offered me help here :)
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    forums.ps2dev.org Forum Index -> PSP Development All times are GMT + 10 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group