Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 25 Apr 2010 09:51:19 +0200
From:      Hans Petter Selasky <hselasky@c2i.net>
To:        freebsd-usb@freebsd.org
Cc:        rpaulo@freebsd.org, Peter =?iso-8859-1?q?Ankerst=E5l?= <peter@pean.org>
Subject:   Re: Keyboard problem with new MacBook Pro.
Message-ID:  <201004250951.19561.hselasky@c2i.net>
In-Reply-To: <B783F7E2-A1AC-4896-9F51-4B36E2837D75@pean.org>
References:  <B783F7E2-A1AC-4896-9F51-4B36E2837D75@pean.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sunday 25 April 2010 09:30:12 Peter Ankerst=E5l wrote:
> Hi,
>=20
> I have the newly released macbook pro 13" (7,1). (swedish keyboard) And it
>  seems that I have some problem with the USB-keyboard driver. The keyboard
>  seems to work more or less in the boot meny, I can type and so on. But
>  when the system is booted the keyboard dosent work. It seems like ctrl is
>  constantly pressed or something like that. Nothing that I've done gives =
me
>  normal characters on screen. Its the FreeBSD 7.3 amd64 version i have
>  installed btw. (8.0 or 9.0 freeezes during boot due to some acpi-problem
>  http://wiki.freebsd.org/AppleMacbook#head-083ebc072fcd20e07a74a11565fc41=
af
> b2ca099b)
>=20
> I have got the keyboard to partially work when using the fixit cd. If I
>  choose US UNIX keymap first and then switch to some other keymap, say US
>  ISO och Swedish ISO it works to type but shift, ctrl and so on doesnt
>  work.

Hi,

In 8-stable and 9-current, we have made several patches in the USB keyboard=
=20
area for Apple Keyboards, like supporting the eject key, swapping keys, etc.

Regaring the boot issue with Mac, I think it can be solved by adding a quir=
k=20
in the kernel:

amd64/machdep.c:                if (strncmp(sysenv, "MacBook1,1", 10) =3D=
=3D 0 ||
amd64/machdep.c:                    strncmp(sysenv, "MacBook3,1", 10) =3D=
=3D 0 ||
amd64/machdep.c:                    strncmp(sysenv, "MacBookPro1,1", 13) =
=3D=3D 0=20
||
amd64/machdep.c:                    strncmp(sysenv, "MacBookPro1,2", 13) =
=3D=3D 0=20
||
amd64/machdep.c:                    strncmp(sysenv, "MacBookPro3,1", 13) =
=3D=3D 0=20
||
amd64/pmap.c:                   if (strncmp(sysenv, "MacBook5,1", 10) =3D=
=3D 0 ||
amd64/pmap.c:                       strncmp(sysenv, "MacBookPro5,5", 13) =
=3D=3D 0=20
||

Similar for i386.

Could you print out your sysenv during boot and try adding your MacBook to =
the=20
quirk list?

=2D-HPS



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