Date: Thu, 23 Aug 2001 01:55:30 -0600 From: Warner Losh <imp@harmony.village.org> To: non@ever.sanda.gr.jp, stable@FreeBSD.ORG Subject: Re: PC Card memory window Message-ID: <200108230755.f7N7tUW82259@harmony.village.org> In-Reply-To: Your message of "Wed, 22 Aug 2001 20:13:10 MDT." <200108230213.f7N2DAW80334@harmony.village.org> References: <200108230213.f7N2DAW80334@harmony.village.org> <20010822231852Q.non@ever.sanda.gr.jp>
next in thread | previous in thread | raw e-mail | index | archive | help
In message <200108230213.f7N2DAW80334@harmony.village.org> Warner Losh writes: : In message <20010822231852Q.non@ever.sanda.gr.jp> non@ever.sanda.gr.jp writes: : : I did not read all the cvs logs, but something have been changed : : around assignment of PC Card memory window ? : : : : I tested 4.4-RC with ISA PCIC machine and got message, : : : : nsp0 at port 0x240-0x24f iomem 0xc8800-0xc97ff irq 5 slot 0 on pccard0 : : ^^^^^^^^^^^^^^^ : : above iomem window address is pretty different from 4.3-RELASE. I : : donot know what will happen with latest -current or PCI PCIC machine. : : Nothing should have changed in the memory allocation scheme. The : above address looks wrong to me. Maybe it was with the addition of : the orm device and that 0xc8000 was taken. Maybe we're not aligning : things properly (since the memory needs to be 4k aligned, iirc, at the : bridge level). : : Do you have a orm device? If so, what does it say? Maybe this patch will help? Index: pcic.c =================================================================== RCS file: /cache/ncvs/src/sys/pccard/pcic.c,v retrieving revision 1.89.2.19 diff -u -r1.89.2.19 pcic.c --- pcic.c 2001/08/14 23:48:29 1.89.2.19 +++ pcic.c 2001/08/23 07:52:09 @@ -423,10 +423,12 @@ /* * Make sure we grok this type. */ + flags = rman_make_alignment_flags(pr->size); switch(pr->type) { default: return (EINVAL); case SYS_RES_MEMORY: + flags = rman_make_alignment_flags(4096); case SYS_RES_IRQ: case SYS_RES_IOPORT: break; @@ -437,7 +439,6 @@ * size. If we get it, then tell userland what we actually got * in the range they requested. */ - flags = rman_make_alignment_flags(pr->size); r = bus_alloc_resource(bridgedev, pr->type, &rid, pr->min, pr->max, pr->size, flags); if (r != NULL) { To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200108230755.f7N7tUW82259>