From owner-freebsd-current@FreeBSD.ORG Wed Jun 10 11:33:30 2009 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 27ED91065672 for ; Wed, 10 Jun 2009 11:33:30 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from cmail.optima.ua (cmail.optima.ua [195.248.191.121]) by mx1.freebsd.org (Postfix) with ESMTP id 799888FC1E for ; Wed, 10 Jun 2009 11:33:29 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from [217.73.199.113] (account mav@alkar.net HELO mavbook.mavhome.dp.ua) by cmail.optima.ua (CommuniGate Pro SMTP 5.2.9) with ESMTPSA id 245357408; Wed, 10 Jun 2009 14:33:23 +0300 Message-ID: <4A2FA809.5050303@FreeBSD.org> Date: Wed, 10 Jun 2009 15:33:13 +0300 From: Alexander Motin User-Agent: Thunderbird 2.0.0.21 (X11/20090405) MIME-Version: 1.0 To: Seri Geri References: <4A2F5F73.7010809@gmail.com> In-Reply-To: <4A2F5F73.7010809@gmail.com> Content-Type: multipart/mixed; boundary="------------010602090500040706080305" Cc: freebsd-current@freebsd.org Subject: Re: Acer TM6292 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Jun 2009 11:33:30 -0000 This is a multi-part message in MIME format. --------------010602090500040706080305 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Hi. Seri Geri wrote: > - I have an Acer TM6292 (2 GHz CPU, 4 GB RAM, 200 GB HDD) with dock > station and two 17" TFT monitor to work. > - I have installed FreeBSD, PC-BSD and DesktopBSD, i386 and x64, release > and snapsot too on it. Everything is working fine, except the network > adapters (not even the Broadcom Gbit, but the WiFi too). > > Would you mind please, where can I find something to make them to work ? At this moment I am using such set of patches/hacks against 8-CURRENT to fix some found hardware and FreeBSD issues on this system. They are extremely specific for this system, so never hit the tree, but I am using them daily and quite happy. -- Alexander Motin --------------010602090500040706080305 Content-Type: text/plain; name="tm6292_ahci.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="tm6292_ahci.patch" --- sys/dev/ata/chipsets/ata-ahci.c.prev 2009-03-26 22:21:57.000000000 +0200 +++ sys/dev/ata/chipsets/ata-ahci.c 2009-03-26 22:30:34.000000000 +0200 @@ -153,6 +153,10 @@ ata_ahci_ctlr_reset(device_t dev) struct ata_pci_controller *ctlr = device_get_softc(dev); int timeout; + if (pci_read_config(dev, 0x00, 4) == 0x28298086 && + (pci_read_config(dev, 0x92, 1) & 0xfe) == 0x04) + pci_write_config(dev, 0x92, 0x01, 1); + /* enable AHCI mode */ ATA_OUTL(ctlr->r_res2, ATA_AHCI_GHC, ATA_AHCI_GHC_AE); --------------010602090500040706080305 Content-Type: text/plain; name="tm6292_batt.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="tm6292_batt.patch" --- sys/dev/acpica/acpi_cmbat.c.prev 2007-03-22 20:16:40.000000000 +0200 +++ sys/dev/acpica/acpi_cmbat.c 2009-04-30 19:44:27.000000000 +0300 @@ -411,6 +411,8 @@ acpi_cmbat_bst(device_t dev, struct acpi acpi_cmbat_get_bst(dev); bstp->state = sc->bst.state; bstp->rate = sc->bst.rate; + if (bstp->rate & 0x8000) + bstp->rate ^= 0xffff; bstp->cap = sc->bst.cap; bstp->volt = sc->bst.volt; } else --------------010602090500040706080305 Content-Type: text/plain; name="tm6292_pcie.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="tm6292_pcie.patch" --- sys/dev/acpica/acpi_pcib_pci.c.prev 2008-12-01 03:46:59.000000000 +0200 +++ sys/dev/acpica/acpi_pcib_pci.c 2008-12-01 03:46:43.000000000 +0200 @@ -133,6 +133,22 @@ acpi_pcib_pci_attach(device_t dev) ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__); + if (device_get_unit(dev)==2 && pci_read_config(dev, PCIR_COMMAND, 1) == 0){ + pci_write_config(dev, PCIR_COMMAND, PCIM_CMD_MEMEN | PCIM_CMD_PORTEN, 1); + pci_enable_busmaster(dev); + pci_write_config(dev, PCIR_IOBASEL_1, 0xf0, 1); + pci_write_config(dev, PCIR_MEMBASE_1, 0xf020, 2); + pci_write_config(dev, PCIR_MEMLIMIT_1, 0xf020, 2); + pci_write_config(dev, PCIR_PMBASEL_1, 0xfff1, 2); + } + if (device_get_unit(dev)==3 && pci_read_config(dev, PCIR_COMMAND, 1) == 0){ + pci_write_config(dev, PCIR_COMMAND, PCIM_CMD_MEMEN | PCIM_CMD_PORTEN, 1); + pci_enable_busmaster(dev); + pci_write_config(dev, PCIR_IOBASEL_1, 0xf0, 1); + pci_write_config(dev, PCIR_MEMBASE_1, 0xf030, 2); + pci_write_config(dev, PCIR_MEMLIMIT_1, 0xf030, 2); + pci_write_config(dev, PCIR_PMBASEL_1, 0xfff1, 2); + } pcib_attach_common(dev); sc = device_get_softc(dev); sc->ap_handle = acpi_get_handle(dev); @@ -143,6 +159,22 @@ static int acpi_pcib_pci_resume(device_t dev) { + if (device_get_unit(dev)==2 && pci_read_config(dev, PCIR_COMMAND, 1) == 0){ + pci_write_config(dev, PCIR_COMMAND, PCIM_CMD_MEMEN | PCIM_CMD_PORTEN, 1); + pci_enable_busmaster(dev); + pci_write_config(dev, PCIR_IOBASEL_1, 0xf0, 1); + pci_write_config(dev, PCIR_MEMBASE_1, 0xf020, 2); + pci_write_config(dev, PCIR_MEMLIMIT_1, 0xf020, 2); + pci_write_config(dev, PCIR_PMBASEL_1, 0xfff1, 2); + } + if (device_get_unit(dev)==3 && pci_read_config(dev, PCIR_COMMAND, 1) == 0){ + pci_write_config(dev, PCIR_COMMAND, PCIM_CMD_MEMEN | PCIM_CMD_PORTEN, 1); + pci_enable_busmaster(dev); + pci_write_config(dev, PCIR_IOBASEL_1, 0xf0, 1); + pci_write_config(dev, PCIR_MEMBASE_1, 0xf030, 2); + pci_write_config(dev, PCIR_MEMLIMIT_1, 0xf030, 2); + pci_write_config(dev, PCIR_PMBASEL_1, 0xfff1, 2); + } return (acpi_pcib_resume(dev)); } --------------010602090500040706080305--