On Sun, 19 Dec 2004 Marc Aurele La France wrote :
>On Sat, 18 Dec 2004, ASIF IQBAL wrote:
>>Marc later I identified it and confirmed that ther was no issue with write of 0x7c. In the meantime I was going through the PCI code of XFree86 file "sparcPci.c" in function sparcPciInit (). I came across the following _expression_ for mapping the PCI aperture memory. There seems to be some type mismatch for the fourth parameter.
>
>>        domain.pci = (char *)sparcMapAperture(-1, VIDMEM_MMIO,
>>    pci_addr + PCI_MAKE_TAG(domain.bus_min, 0, 0),
>>    PCI_MAKE_TAG(domain.bus_max - domain.bus_min + 1, 0, 0)) -
>>    PCI_MAKE_TAG(domain.bus_min, 0, 0);
>

Marc I have collected some datas regarding aperture memory problem. Please do confirm my understanding.
Aperture mapping starts at the page (0x0ff00800) and ends at the page (0x0ff0080f). This Page address I have got by enabling the APERTURE_DEBUG withing the mmap function.  And totally we have
mapped 15 pages which results in 0x1E000 bytes of mapped memory. But we require a total of 128 KB. ie 128 * 1024  = 0x20000.

Start Page (0x0ff00800) - End Page (0x0ff0080f) = 15 Pages are mapped
              Page Size  = 8192 Bytes (In Sparc)
              8192 * 15  = 0x1E000 (Bytes) are total bytes mapped

ie 0x20000 - 0x1E000 = 0x2000 ie exactly 1 Page less. I think we are mapping a page less. ie why exactly its hanging when the address crosses 0x1fe01000000. This address seems to be last mmaped address based on the output.

Please refr the output I got using the dmesg:
Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe01000000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff00800

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe01002000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff00801

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe01004000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff00802

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe01006000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff00803

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe01008000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff00804

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe0100a000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff00805

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe0100c000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff00806

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe0100e000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff00807

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe01010000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff00808

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe01012000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff00809

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe01014000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff0080a

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe01016000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff0080b

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe01018000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff0080c

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe0101a000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff0080d

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe0101c000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff0080e

Dec 23 19:12:38 test-sparc aperture: [ID 838818 kern.notice] aperture:  entering mmap(0x000001fe0101e000)
Dec 23 19:12:38 test-sparc aperture: [ID 773605 kern.notice] aperture:  leaving mmap() = 0x0ff0080f

Please confirm my uderstanding!.
Merry Christmas and colorful New-Year
Regards
ASIF IQBAL



Reply via email to