From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <40C6F3C0.8010208@fh-landshut.de> Date: Wed, 09 Jun 2004 13:25:52 +0200 From: Oliver Korpilla MIME-Version: 1.0 To: "Heater, Daniel (GE Infrastructure)" Cc: linuxppc-embedded@lists.linuxppc.org Subject: Re: VME driver patch for PowerPC References: <40C48A1C.30602@fh-landshut.de> In-Reply-To: <40C48A1C.30602@fh-landshut.de> Content-Type: text/plain; charset=us-ascii; format=flowed Sender: owner-linuxppc-embedded@lists.linuxppc.org List-Id: Hello! I tried dereferencing the pointer in kernel space like this: unsigned long int *virtaddr = 0; // [...] // After the Universe register were written in // __create_master_window() virtaddr = ioremap_nocache(window->phys_base, window->size); printk(KERN_INFO "Dereferenced pointer 0x%08X.\n", *virtaddr); Guess what that produced: A single-beat transaction producing the date within the expected time constraints without a cache burst or any other "bad stuff". So kernel space pages are fine, correctly set to cache-inhibited and guarded (no reordering of accesses). The culprit could be the vme_mmap_phys() function, because it introduces another mapping of pages, and with mmap you cannot control caching behaviour. With kind regards, Oliver Korpilla ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/