-rw-r--r-- | libopie2/opiecore/device/odevice.h | 1 | ||||
-rw-r--r-- | libopie2/opiecore/device/odevice_jornada.cpp | 28 |
2 files changed, 22 insertions, 7 deletions
diff --git a/libopie2/opiecore/device/odevice.h b/libopie2/opiecore/device/odevice.h index 96a41fc..c434216 100644 --- a/libopie2/opiecore/device/odevice.h +++ b/libopie2/opiecore/device/odevice.h @@ -71,6 +71,7 @@ enum OModel { Model_Jornada = ( 6 << 24 ), Model_Jornada_56x = ( Model_Jornada | 0x000001 ), + Model_Jornada_720 = ( Model_Jornada | 0x000002 ), Model_Zaurus = ( 2 << 24 ), diff --git a/libopie2/opiecore/device/odevice_jornada.cpp b/libopie2/opiecore/device/odevice_jornada.cpp index 7d080ba..c7ed4bc 100644 --- a/libopie2/opiecore/device/odevice_jornada.cpp +++ b/libopie2/opiecore/device/odevice_jornada.cpp @@ -108,13 +108,27 @@ struct j_button jornada56x_buttons [] = { "sound", "raise()" }, }; -void Jornada::init(const QString&) +void Jornada::init(const QString& cpu_info) { d->m_vendorstr = "HP"; d->m_vendor = Vendor_HP; - d->m_modelstr = "Jornada 56x"; - d->m_model = Model_Jornada_56x; - d->m_rotation = Rot0; + + QString model; + int loc = cpu_info.find( ":" ); + if ( loc != -1 ) + model = cpu_info.mid( loc+2 ).simplifyWhiteSpace(); + else + model = cpu_info; + + if ( model == "HP Jornada 56x" ) { + d->m_modelstr = "Jornada 56x"; + d->m_model = Model_Jornada_56x; + } else if ( model == "HP Jornada 720" ) { + d->m_modelstr = "Jornada 720"; + d->m_model = Model_Jornada_720; + } + + d->m_rotation = Rot0; //all Jornadas need this rotation //Distribution detecting code is now in base class } @@ -160,9 +174,9 @@ bool Jornada::setDisplayBrightness( int bright ) QString cmdline; if ( !bright ) - cmdline = QString::fromLatin1( "echo 4 > /sys/class/backlight/sa1100fb/power"); + cmdline = QString::fromLatin1( "echo 4 > /sys/class/backlight/*/power"); else - cmdline = QString::fromLatin1( "echo 0 > /sys/class/backlight/sa1100fb/power; echo %1 > /sys/class/backlight/sa1100fb/brightness" ).arg( bright ); + cmdline = QString::fromLatin1( "echo 0 > /sys/class/backlight/*/power; echo %1 > /sys/class/backlight/*/brightness" ).arg( bright ); // No Global::shellQuote as we gurantee it to be sane res = ( ::system( QFile::encodeName(cmdline) ) == 0 ); @@ -175,7 +189,7 @@ bool Jornada::setDisplayStatus ( bool on ) { bool res = false; - QString cmdline = QString::fromLatin1( "echo %1 > /sys/class/lcd/sa1100fb/power; echo %2 > /sys/class/backlight/sa1100fb/power").arg( on ? "0" : "4" ).arg( on ? "0" : "4" ); + QString cmdline = QString::fromLatin1( "echo %1 > /sys/class/lcd/*/power; echo %2 > /sys/class/backlight/*/power").arg( on ? "0" : "4" ).arg( on ? "0" : "4" ); res = ( ::system( QFile::encodeName(cmdline) ) == 0 ); |