summaryrefslogtreecommitdiff
path: root/libopie/odevice.cpp
Side-by-side diff
Diffstat (limited to 'libopie/odevice.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/odevice.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/libopie/odevice.cpp b/libopie/odevice.cpp
index 71ed9e4..9373ef9 100644
--- a/libopie/odevice.cpp
+++ b/libopie/odevice.cpp
@@ -1488,16 +1488,29 @@ int iPAQ::lightSensorResolution ( ) const
/**************************************************
*
* Zaurus
*
**************************************************/
// Check whether this device is the sharp zaurus..
+// FIXME This gets unnecessary complicated. We should think about splitting the Zaurus
+// class up into individual classes. We need three classes
+//
+// Zaurus-Collie (SA-model w/ 320x240 lcd, for SL5500 and SL5000)
+// Zaurus-Poodle (PXA-model w/ 320x240 lcd, for SL5600)
+// Zaurus-Corgi (PXA-model w/ 640x480 lcd, for C700, C750, C760, and C860)
+//
+// Only question right now is: Do we really need to do it? Because as soon
+// as the OpenZaurus kernel is ready, there will be a unified interface for all
+// Zaurus models (concerning apm, backlight, buttons, etc.)
+//
+// Comments? - mickeyl.
+
bool Zaurus::isZaurus()
{
// If the special devices by embedix exist, it is quite simple: it is a Zaurus !
if ( QFile::exists ( "/dev/sharp_buz" ) || QFile::exists ( "/dev/sharp_led" ) ){
return true;
}
@@ -1618,16 +1631,17 @@ void Zaurus::init ( )
case Model_Zaurus_SLA300:
d-> m_rotation = Rot0;
break;
case Model_Zaurus_SLC7x0:
// Note: need to 1) set flipstate based on physical screen orientation
// and 2) check to see if the user overrode the rotation direction
// using appearance, and if so, remove that item from the Config to
// ensure the rotate applet flips us back to the previous state.
+ // treke said he has patches for detecting the phys. so where are they, treke? -mickeyl.
if ( flipstate ) {
// 480x640
d-> m_rotation = Rot0;
d-> m_direction = CW;
} else {
// 640x480
d-> m_rotation = Rot270;
d-> m_direction = CCW;
@@ -1931,16 +1945,19 @@ bool Zaurus::setSoftSuspend ( bool soft )
perror ( "/dev/apm_bios or /dev/misc/apm_bios" );
return res;
}
bool Zaurus::setDisplayBrightness ( int bright )
{
+// FIXME The C7x0 have a proc-interface (/proc/drivers/corgi-bl) which
+// is nice to use. Currently it exposes 16+1 levels. Implement this!
+// (or wait for kergoth unifying the interfaces in the OpenZaurus kernel.)
bool res = false;
int fd;
if ( bright > 255 )
bright = 255;
if ( bright < 0 )
bright = 0;