From 9a4b3a90fdd4ac0288034657d4818e3d10ed0193 Mon Sep 17 00:00:00 2001 From: mickeyl Date: Thu, 09 Jun 2005 09:14:22 +0000 Subject: add support for the linux 2.6 backlight interface on tosa, poodle, and collie --- (limited to 'libopie2') diff --git a/libopie2/opiecore/device/odevice_zaurus.cpp b/libopie2/opiecore/device/odevice_zaurus.cpp index 1742100..21d2342 100644 --- a/libopie2/opiecore/device/odevice_zaurus.cpp +++ b/libopie2/opiecore/device/odevice_zaurus.cpp @@ -1,28 +1,27 @@ /* -                 This file is part of the Opie Project - - Copyright (C)2002-2005 The Opie Team +                 This file is part of the Opie Project +              Copyright (C) 2002-2005 The Opie Team =. .=l. -           .>+-= - _;:,     .>    :=|. This program is free software; you can -.> <`_,   >  .   <= redistribute it and/or modify it under -:`=1 )Y*s>-.--   : the terms of the GNU Library General Public -.="- .-=="i,     .._ License as published by the Free Software - - .   .-<_>     .<> Foundation; either version 2 of the License, -     ._= =}       : or (at your option) any later version. -    .%`+i>       _;_. -    .i_,=:_.      -`: PARTICULAR PURPOSE. See the GNU -..}^=.=       =       ; Library General Public License for more -++=   -.     .`     .: details. -:     =  ...= . :.=- - -.   .:....=;==+<; You should have received a copy of the GNU -  -_. . .   )=.  = Library General Public License along with -    --        :-=` this library; see the file COPYING.LIB. +           .>+-= + _;:,     .>    :=|. This program is free software; you can +.> <`_,   >  .   <= redistribute it and/or modify it under +:`=1 )Y*s>-.--   : the terms of the GNU Library General Public +.="- .-=="i,     .._ License as published by the Free Software + - .   .-<_>     .<> Foundation; version 2 of the License. +     ._= =}       : +    .%`+i>       _;_. +    .i_,=:_.      -`: PARTICULAR PURPOSE. See the GNU +..}^=.=       =       ; Library General Public License for more +++=   -.     .`     .: details. + :     =  ...= . :.=- + -.   .:....=;==+<; You should have received a copy of the GNU +  -_. . .   )=.  = Library General Public License along with +    --        :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. @@ -120,7 +119,7 @@ struct z_button z_buttons_c700 [] = { // // 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, C860, C3000, C1000) +// Zaurus-Corgi (PXA-model w/ 640x480 lcd, for C700, C750, C760, C860, C3000, C1000, C3100) // Zaurus-Tosa (PXA-model w/ 480x640 lcd, for SL6000) void Zaurus::init(const QString& cpu_info) @@ -199,6 +198,20 @@ void Zaurus::init(const QString& cpu_info) d->m_modelstr = "Unknown Zaurus"; } + // set path to backlight device in kernel 2.6 + switch ( d->m_model ) { + case Model_Zaurus_SLB600: // fallthrough + case Model_Zaurus_SL5500: + m_backlightdev = "/sys/class/backlight/locomo-backlight/"; + break; + case Model_Zaurus_SL6000: + m_backlightdev = "/sys/class/backlight/tosa-bl/"; + break; + default: + m_backlightdev = "/sys/class/backlight/corgi-bl/"; + break; + } + // set initial rotation switch( d->m_model ) { case Model_Zaurus_SL6000: // fallthrough @@ -411,7 +424,7 @@ int Zaurus::displayBrightnessResolution() const } else { - int fd = ::open( "/sys/class/backlight/corgi-bl/max_brightness", O_RDONLY|O_NONBLOCK ); + int fd = ::open( m_backlightdev + "max_brightness", O_RDONLY|O_NONBLOCK ); if ( fd ) { char buf[100]; @@ -444,7 +457,7 @@ bool Zaurus::setDisplayBrightness( int bright ) } else { - int fd = ::open( "/sys/class/backlight/corgi-bl/brightness", O_WRONLY|O_NONBLOCK ); + int fd = ::open( m_backlightdev + "brightness", O_WRONLY|O_NONBLOCK ); if ( fd ) { char buf[100]; @@ -471,7 +484,7 @@ bool Zaurus::setDisplayStatus( bool on ) } else { - int fd = ::open( "/sys/class/backlight/corgi-bl/power", O_WRONLY|O_NONBLOCK ); + int fd = ::open( m_backlightdev + "power", O_WRONLY|O_NONBLOCK ); if ( fd ) { char buf[10]; diff --git a/libopie2/opiecore/device/odevice_zaurus.h b/libopie2/opiecore/device/odevice_zaurus.h index 4250356..4314aff 100644 --- a/libopie2/opiecore/device/odevice_zaurus.h +++ b/libopie2/opiecore/device/odevice_zaurus.h @@ -8,8 +8,8 @@ .> <`_,   >  .   <= redistribute it and/or modify it under :`=1 )Y*s>-.--   : the terms of the GNU Library General Public .="- .-=="i,     .._ License as published by the Free Software - - .   .-<_>     .<> Foundation; either version 2 of the License, -     ._= =}       : or (at your option) any later version. + - .   .-<_>     .<> Foundation; version 2 of the License. +     ._= =}       :     .%`+i>       _;_.     .i_,=:_.      -