Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 31 May 2005 19:35:47 +0200
From:      Markus Brueffer <markus@FreeBSD.org>
To:        freebsd-acpi@freebsd.org
Cc:        freebsd-mobile@FreeBSD.org
Subject:   Re: Call for testers: New acpi_ibm driver
Message-ID:  <200505311935.57158.markus@FreeBSD.org>
In-Reply-To: <429C9DB9.4070107@root.org>
References:  <200505310155.KAA00994@axe-inc.co.jp> <200505311225.40954.markus@FreeBSD.org> <429C9DB9.4070107@root.org>

next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart2077939.AlkrTepLxI
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

On Tuesday 31 May 2005 19:24, Nate Lawson wrote:
> Markus Brueffer wrote:
> > On Tuesday 31 May 2005 03:55, takawata@jp.freebsd.org wrote:
> >>In message <200505301857.20346.markus@FreeBSD.org>, Markus Brueffer=20
wrote:

[...]

> >>>Support for more hotkeys by the hotkey sysctl (see manpage)
> >>>Improved support of ACPI events, disabled by default. You can enable
> >>> it by setting the events sysctl to 1 (on my T41p there are now 24
> >>> different keypress events that get reported)
> >>>write support for: volume, mute, brightness and thinklight
> >>
> >>Is it ok to  touch EC? I know the two way of impliment it.
> >>One is modifying RTC register, another is using SMI interface
> >>via ACPI control method.
> >
> > Writing to the EC directly is nothing more that accessing the locations
> > via acpi_SetInteger. While I would highly prefer the latter method, the
> > problem is, that several places of the EC in the DSDT aren't even named
> > or only named on some models.
>
> Please do not read/write directly from EC space.  A better way is to use
> the EC device methods I added recently.  This uses proper locking for
> requests and will work concurrently with other EC users (say, cmbat):
>
>      device_t dev;
>
>      dev =3D devclass_get_device(devclass_find("acpi_ec"), 0);
>      if (dev =3D=3D NULL)
>          error, EC not present -- check this during probe and fail
>          if error
>
>      error =3D ACPI_EC_WRITE(dev, address, buffer, len);
>
> or ACPI_EC_READ().  "address" is from 0-255 (8 bit addresses in EC
> space) and buffer is a pointer to data to write or read.

That's what I meant by "directly". The driver uses exactly that way.

Markus

=2D-=20
Markus Brueffer =A0 =A0| GPG-Key: http://people.FreeBSD.org/~markus/markus.=
asc
markus@brueffer.de | FP: 3F9B EBE8 F290 E5CC 1447 8760 D48D 1072 78F8 A8D4
markus@FreeBSD.org | FreeBSD: The Power to Serve!

--nextPart2077939.AlkrTepLxI
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (FreeBSD)

iD8DBQBCnKB91I0Qcnj4qNQRAlBFAJ43YD6iNXpE/XqWrEwqQJw5Uru7mACfdTC9
AF9WdHkfLdlojhl/yIF1V7o=
=Rlef
-----END PGP SIGNATURE-----

--nextPart2077939.AlkrTepLxI--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200505311935.57158.markus>