Re: doesn't ioremap() retrun contigious addressess...?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Yes, ioremap() maps the given physical address to contiguous Kernel virtual address above high_memory and returns the first address of the mapped kernel virtual address.

Regards,
Prabhu



On Thu, Feb 28, 2013 at 4:06 PM, sandeep kumar <coolsandyforyou@xxxxxxxxx> wrote:

Hi All
Please find a piece of code that i wrote in my driver,
 
void __iomem *tcpm_base = ioremap_nocache(0x03900000, SZ_16KB);
            printk("Virtual addresss %x\n",tcpm_base);
            if(tcpm_base!=NULL)
            {
            printk("Jiffies %x %ld\n\n\n\n", jiffies, jiffies);
            for(i=0;i<(SZ_16KB-1);i++)
            src = "">
            printk("%d\n",src);
            printk("Jiffies %x %ld\n\n\n\n", jiffies, jiffies);
            }
            else
                printk("unable to map \n");


When i execute this code, i am seeing a kernel panic telling
----- LOG --------
"Virtual addresss ea880000"
"Unable to handle kernel paging request at virtual address ea890000"
-----LOG-----

If you observe,
virtual address of  tcpm_base is ea880000.
if ioremap() returns all contigious memory, There should be no dereferencing of "ea890000"(the max address should be ea88fffe)

But in kernel logs show, it is dereferencing that address.

My question now is...
doesn't ioremap() returns contigious address space?


With regards,
Sandeep Kumar Anantapalli,

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux