| Summary: | [isa] [patch] pnp problem in 4.3, 4.4, 4.5 | ||
|---|---|---|---|
| Product: | Base System | Reporter: | Alexander Zagrebin <alexz> |
| Component: | kern | Assignee: | freebsd-bugs (Nobody) <bugs> |
| Status: | Closed FIXED | ||
| Severity: | Affects Only Me | ||
| Priority: | Normal | ||
| Version: | 1.0-RELEASE | ||
| Hardware: | Any | ||
| OS: | Any | ||
Responsible Changed From-To: gnats-admin->freebsd-bugs misfiled State Changed From-To: open->closed mdodd re-wrote the pnp code for the 3c509 and believes it works correctly now. |
We have the box running FreeBSD 4.5-PRERELEASE. The box has Asus P5A-B motherboard (bios revision is 1010) with AMD K6-2 CPU, Creative Vibra16C PnP (ISA) and 3Com 3C509B-Combo in _PnP_mode_ (ISA). If both isa cards installed, then kernel refuses to detect 3C509B and detects Vibra16C only. After booting /usr/bin/pnpinfo shows information about both cards. The bios setting "PNP OS Installed" doesn't solves the problem. After removing the sound card, the kernel detects the network one and it working. The same problem existed in 4.3-xxx, 4.4-xxx. I know, that setting 3C509 to _non_PNP_ mode solves the problem, but there are reasons to use it in PNP mode. At present i use such patch: --- pnp.c.orig Fri Oct 15 01:03:01 1999 +++ pnp.c Mon Apr 16 23:00:39 2001 @@ -743,7 +743,7 @@ for (pnp_rd_port = 0x80; (pnp_rd_port < 0xff); pnp_rd_port += 0x10) { if (bootverbose) printf("Trying Read_Port at %x\n", (pnp_rd_port << 2) | 0x3); - + pnp_write(PNP_CONFIG_CONTROL, PNP_CONFIG_CONTROL_WAIT_FOR_KEY); num_pnp_devs = pnp_isolation_protocol(parent); if (num_pnp_devs) break; After this patch kernel detects both isa cards. Alexander Zagrebin JSC "Navigator" Vologda, Russia --