Re: proposed change to pci_pci.c
On Wed, Sep 05, 2001 at 06:37:28PM -0700, Mike Smith wrote: I'd be OK with this being done as a hack for now. I think the bridge code needs to be a bit kinder about allowing stupid things to be done if they're set up by the BIOS. I'd like to propose committing the following change which adds a new undocumented option in the spirit of PCI_ENABLE_IO_MODES. The new option (PCI_ALLOW_UNSUPPORTED_IO_RANGE) allows me to boot my old HP Omnibook 4150 while docked. Since I've seen a couple other people need this fix, I figure it would be more useful if they just had to add a line to their kernel config instead of editing the source files. Any objections? The pci_pci code actually needs some other changes done. Note the comment at line 267, If this is a 'default' allocation against this rid, we can't work out where it's coming from (we should actually never see these) so we just have to punt. The we should actually never see these part is not quite correct, since NEWCARD uses default allocation to automagically get an unused range from the pci bus. Then we have to tweak the window for the pcipci bridge to forward the new addresses if the window wasn't big enough. Not to mention, we still need to implement a way to request bus numbers properly... Bleah, hardware sucks. Give me a virtual machine. -Jon To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message
proposed change to pci_pci.c
I'd like to propose committing the following change which adds a new undocumented option in the spirit of PCI_ENABLE_IO_MODES. The new option (PCI_ALLOW_UNSUPPORTED_IO_RANGE) allows me to boot my old HP Omnibook 4150 while docked. Since I've seen a couple other people need this fix, I figure it would be more useful if they just had to add a line to their kernel config instead of editing the source files. Any objections? -- Brooks Index: pci_pci.c === RCS file: /home/ncvs/src/sys/dev/pci/pci_pci.c,v retrieving revision 1.3 diff -u -r1.3 pci_pci.c --- pci_pci.c 13 Dec 2000 01:25:11 - 1.3 +++ pci_pci.c 7 Jun 2001 17:31:50 - @@ -286,7 +286,9 @@ (decoding 0x%x-0x%x)\n, device_get_name(child), device_get_unit(child), start, end, sc-iobase, sc-iolimit); +#ifndef PCI_ALLOW_UNSUPPORTED_IO_RANGE return(NULL); +#endif } if (bootverbose) device_printf(sc-dev, device %s%d requested decoded I/O range 0x%lx-0x%lx\n, @@ -306,7 +308,9 @@ (decoding 0x%x-0x%x, 0x%x-0x%x)\n, device_get_name(child), device_get_unit(child), start, end, sc-membase, sc-memlimit, sc-pmembase, sc-pmemlimit); +#ifndef PCI_ALLOW_UNSUPPORTED_IO_RANGE return(NULL); +#endif } if (bootverbose) device_printf(sc-dev, device %s%d requested decoded memory range 0x%lx-0x%lx\n, -- Any statement of the form X is the one, true Y is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 PGP signature
Re: proposed change to pci_pci.c
I'd be OK with this being done as a hack for now. I think the bridge code needs to be a bit kinder about allowing stupid things to be done if they're set up by the BIOS. I'd like to propose committing the following change which adds a new undocumented option in the spirit of PCI_ENABLE_IO_MODES. The new option (PCI_ALLOW_UNSUPPORTED_IO_RANGE) allows me to boot my old HP Omnibook 4150 while docked. Since I've seen a couple other people need this fix, I figure it would be more useful if they just had to add a line to their kernel config instead of editing the source files. Any objections? -- Brooks Index: pci_pci.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /home/ncvs/src/sys/dev/pci/pci_pci.c,v retrieving revision 1.3 diff -u -r1.3 pci_pci.c --- pci_pci.c 13 Dec 2000 01:25:11 - 1.3 +++ pci_pci.c 7 Jun 2001 17:31:50 - @@ -286,7 +286,9 @@ (decoding 0x%x-0x%x)\n, device_get_name(child), device_get_unit(child), start, end, sc-iobase, sc-iolimit); +#ifndef PCI_ALLOW_UNSUPPORTED_IO_RANGE return(NULL); +#endif } if (bootverbose) device_printf(sc-dev, device %s%d requested decoded I/O range 0x%lx-0x= %lx\n, @@ -306,7 +308,9 @@ (decoding 0x%x-0x%x, 0x%x-0x%x)\n, device_get_name(child), device_get_unit(child), start, end, sc-membase, sc-memlimit, sc-pmembase, sc-pmemlimit); +#ifndef PCI_ALLOW_UNSUPPORTED_IO_RANGE return(NULL); +#endif } if (bootverbose) device_printf(sc-dev, device %s%d requested decoded memory range 0x%lx= -0x%lx\n, --=20 Any statement of the form X is the one, true Y is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 --ZGiS0Q5IWpPtfppv Content-Type: application/pgp-signature Content-Disposition: inline -BEGIN PGP SIGNATURE- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE7lsauXY6L6fI4GtQRAlYkAJ9BS8yO/HeRrVEmbp0HRZLy0VX/zQCfcwqI 1TsAzTG5bFfK4NHTz7Kk+O8= =Nu3h -END PGP SIGNATURE- --ZGiS0Q5IWpPtfppv-- To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-hackers in the body of the message