Date: Wed, 3 Sep 2014 23:08:21 +0000 (UTC) From: Gavin Atkinson <gavin@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r271060 - stable/10/sys/dev/pccbb Message-ID: <201409032308.s83N8LGv022731@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: gavin Date: Wed Sep 3 23:08:21 2014 New Revision: 271060 URL: http://svnweb.freebsd.org/changeset/base/271060 Log: Merge r269488 from head: For reasons which are not clear, r254263 broke some PCMCIA and CardBus bridges in strange ways, either rendering them unable to detect insertion and removal events, or possibly unable to read from the device behind the bridge. This fixes at least one laptop, a Toshiba Tecra M5 with a Texas Instruments PCxx12 (d=0x8039 v=0c104c) bridge. The very similar Tecra M9 has the same bridge, but worked fine without this change. The bridge chip has no I/O port BAR, and there is nothing in the spec to suggest I/O decoding should be enabled; however enabling it fixes the issue. Add an XXX comment to this effect. Discussed with: jhb, imp Modified: stable/10/sys/dev/pccbb/pccbb_pci.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/pccbb/pccbb_pci.c ============================================================================== --- stable/10/sys/dev/pccbb/pccbb_pci.c Wed Sep 3 23:06:22 2014 (r271059) +++ stable/10/sys/dev/pccbb/pccbb_pci.c Wed Sep 3 23:08:21 2014 (r271060) @@ -472,6 +472,8 @@ cbb_chipinit(struct cbb_softc *sc) /* Enable memory access */ pci_enable_busmaster(sc->dev); + /* XXX: This should not be necessary, but some chipsets require it */ + PCI_MASK_CONFIG(sc->dev, PCIR_COMMAND, | PCIM_CMD_PORTEN, 2); /* disable Legacy IO */ switch (sc->chipset) {
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201409032308.s83N8LGv022731>