From owner-freebsd-acpi@FreeBSD.ORG Mon Jul 11 16:08:07 2011 Return-Path: Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6D1EF1065674; Mon, 11 Jul 2011 16:08:07 +0000 (UTC) (envelope-from vmagerya@gmail.com) Received: from mail-vw0-f54.google.com (mail-vw0-f54.google.com [209.85.212.54]) by mx1.freebsd.org (Postfix) with ESMTP id 1ADF88FC1D; Mon, 11 Jul 2011 16:08:06 +0000 (UTC) Received: by vws18 with SMTP id 18so3869405vws.13 for ; Mon, 11 Jul 2011 09:08:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:cc:content-type; bh=8z8rWBAS5ywTp5FxJBOSU3h5mUyFz0nMnqcirTBviMg=; b=QLBI5xI/qyHDjM2wvjs/lr8onRjUYhgaX4Uyb6ihFc5LKoSdFTG1jDDJuy69uMN+Zu Ruib+/MAPlWzVDpq/ibmsJipshCrbgFVojChJuKPBVRzersrusa8sg8RyZwsODejz9RM dfhipyJ3HfvEvXfVZw0QvUeaYXLKzcke63g7I= MIME-Version: 1.0 Received: by 10.52.94.46 with SMTP id cz14mr2337072vdb.501.1310400486191; Mon, 11 Jul 2011 09:08:06 -0700 (PDT) Received: by 10.52.188.193 with HTTP; Mon, 11 Jul 2011 09:08:06 -0700 (PDT) Date: Mon, 11 Jul 2011 19:08:06 +0300 Message-ID: From: Vitaly Magerya To: Andriy Gapon Content-Type: text/plain; charset=UTF-8 Cc: freebsd-acpi@freebsd.org Subject: (Missing) brightness controls of an Atom N455-based netbook X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Jul 2011 16:08:07 -0000 Andriy Gapon wrote: >> From what I heard this isn't a problem with FreeBSD ACPI code, it's >> a problem with Samsung firmware. AFAIK to get brightness controls >> working on Windows you need to setup Samsung software that uses >> undocument BIOS interface for it's function. >> >> Linux has what appears to be a reverse-engineered driver [1] that >> does the same. Someone (probably me) needs to port it. > > Maybe, maybe not... Can you please verify which driver Linux actually uses on > your system? Nothing but generic ACPI; samsung-laptop dirver is not used because it doesn't white-list my laptop model (and for some reason fails to attach when I load it with force=1, even though my BIOS definitely has the signatures it is looking for). At any rate, brightness controls don't work under Linux. > So I can see how this behavior can easily confuse our acpi_video driver. > I see that Linux acpi video driver has some quirks in it, but not sure if it is > able to handle this kind of issues. I would doubt that. > > Maybe you would feel adventurous enough to experiment with hacking your DSDT some > more. For a start I would just try to remove that level % 10 == 0 check. Sure. I removed those checks, but there isn't much difference. Here's a sample transcript: # sysctl hw.acpi.video hw.acpi.video.crt0.active: 0 hw.acpi.video.lcd0.active: 0 hw.acpi.video.lcd0.brightness: 5 hw.acpi.video.lcd0.fullpower: 100 hw.acpi.video.lcd0.ecoomy: 5 hw.acpi.video.lcd0.levels: 100 5 15 24 30 45 60 80 hw.acpi.video.ext0.active: 0 hw.acpi.video.out0.active: 0 # sysctl hw.acpi.video.lcd0.brightness=45 hw.acpi.video.lcd0.brightness: 5 -> 45 # sysctl hw.acpi.video.lcd0.brightness=100 hw.acpi.video.lcd0.brightness: 45 -> 100 No brightness changes actually occur during this.