Date: Fri, 4 Dec 2009 13:56:37 -0300 From: Leonardo Santagostini <lsantagostini@gmail.com> To: Jung-uk Kim <jkim@freebsd.org> Cc: freebsd-current@freebsd.org, freebsd-stable@freebsd.org, Giorgos Keramidas <keramida@freebsd.org> Subject: Re: Could you please fix this ? Message-ID: <9ab7eeeb0912040856q2fcaf491g69d17de2193bfcb4@mail.gmail.com> In-Reply-To: <200912041137.42917.jkim@FreeBSD.org> References: <9ab7eeeb0912021757g5f60a7edw3256e60e745c0c35@mail.gmail.com> <87tyw8o5xk.fsf@kobe.laptop> <9ab7eeeb0912031827vd32544fk996a65e871322091@mail.gmail.com> <200912041137.42917.jkim@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Ok, anyway thanks for your time. Best Regards Leonardo Santagostini 2009/12/4 Jung-uk Kim <jkim@freebsd.org>: > On Thursday 03 December 2009 09:27 pm, Leonardo Santagostini wrote: >> Sorry, but ive not backed up this file, instead of this, i will >> copy the entire function (in fact its very short) >> >> cpi_pcib_pci_attach(device_t dev) >> { >> =C2=A0 =C2=A0 struct acpi_pcib_softc *sc; >> =C2=A0 =C2=A0 ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__); >> >> =C2=A0 =C2=A0 if (device_get_unit(dev)=3D=3D2){ >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_COMMAND, PCIM_CMD= _MEMEN | >> PCIM_CMD_PORTEN, 1); >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_enable_busmaster(dev); >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_IOBASEL_1, 0xf0, = 1); >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_MEMBASE_1, 0xf020= , 2); >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_MEMLIMIT_1, 0xf02= 0, 2); >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_PMBASEL_1, 0xfff1= , 2); >> =C2=A0 =C2=A0 } >> =C2=A0 =C2=A0 if (device_get_unit(dev)=3D=3D3){ >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_COMMAND, PCIM_CMD= _MEMEN | >> PCIM_CMD_PORTEN, 1); >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_enable_busmaster(dev); >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_IOBASEL_1, 0xf0, = 1); >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_MEMBASE_1, 0xf030= , 2); >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_MEMLIMIT_1, 0xf03= 0, 2); >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_PMBASEL_1, 0xfff1= , 2); >> =C2=A0 =C2=A0 } >> >> =C2=A0 =C2=A0 pcib_attach_common(dev); >> =C2=A0 =C2=A0 sc =3D device_get_softc(dev); >> =C2=A0 =C2=A0 sc->ap_handle =3D acpi_get_handle(dev); >> =C2=A0 return (acpi_pcib_attach(dev, &sc->ap_prt, >> sc->ap_pcibsc.secbus)); } > > As mav@ pointed out yesterday, this hack is very specific to this > hardware. =C2=A0As jhb@ pointed out some time ago, this problem will be > properly addressed by his "multipass" device probing mechanism. > > Sorry, there's nothing we can commit ATM. > > Jung-uk Kim > >> Kind Regards >> Leonardo Santagostini >> >> 2009/12/3 Giorgos Keramidas <keramida@freebsd.org>: >> > On Thu, 3 Dec 2009 01:57:50 +0000, Leonardo Santagostini > <lsantagostini@gmail.com> wrote: >> >> Hello everybody, >> >> >> >> I was facing one big problem, i have a notebook, which is an >> >> Acer Aspire 5920. =C2=A0If you like i can send to you my messages >> >> file. >> >> >> >> Which is: >> >> >> >> Intel(R) Core(TM)2 Duo CPU =C2=A0 =C2=A0 T5550 =C2=A0@ 1.83GHz (1833.= 48-MHz >> >> 686-class CPU) Intel(R) PRO/Wireless 3945ABG >> >> Broadcom NetLink Gigabit Ethernet Controller >> >> 2 Gigs RAM >> >> 160 Gigs SATA >> >> >> >> The point was: >> >> With ACPI disabled, i managed to boot but without WIFI; and with >> >> ACPI enabled, the boot process hanged up all times. >> >> >> >> I fixed this adding >> >> >> >> =C2=A0 =C2=A0 if (device_get_unit(dev)=3D=3D2){ >> >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_COMMAND, PCIM_= CMD_MEMEN | >> >> PCIM_CMD_PORTEN, 1); pci_enable_busmaster(dev); >> >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_IOBASEL_1, 0xf= 0, 1); >> >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_MEMBASE_1, 0xf= 020, 2); >> >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_MEMLIMIT_1, 0x= f020, 2); >> >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_PMBASEL_1, 0xf= ff1, 2); >> >> =C2=A0 =C2=A0 } >> >> =C2=A0 =C2=A0 if (device_get_unit(dev)=3D=3D3){ >> >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_COMMAND, PCIM_= CMD_MEMEN | >> >> PCIM_CMD_PORTEN, 1); pci_enable_busmaster(dev); >> >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_IOBASEL_1, 0xf= 0, 1); >> >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_MEMBASE_1, 0xf= 030, 2); >> >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_MEMLIMIT_1, 0x= f030, 2); >> >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 pci_write_config(dev, PCIR_PMBASEL_1, 0xf= ff1, 2); >> >> =C2=A0 =C2=A0 } >> >> >> >> to /usr/src/sys/dev/acpica/acpi_pcib_pci.c running on a >> >> 8.0-RELEASE >> >> >> >> I was able to fix it by my way but many people cant do it, so, i >> >> would really appreciate if you can add this piece of code. >> > >> > Hi Leonardo. >> > >> > Jung-uk Kim has done a lot of ACPI-related work, so he will >> > probably know if the change is ok to commit to stable/8. =C2=A0I've >> > added him to the thread, so he can let us know what he thinks of >> > the change. =C2=A0Can you please post a diff that also shows _where_ >> > the changes have to be installed in our current version of >> > src/sys/dev/acpica/acpi_pcib_pci.c for 8.0-RELEASE? >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9ab7eeeb0912040856q2fcaf491g69d17de2193bfcb4>