Re: gianfar (Ethernet driver)

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

 



2010/11/16 Pei Lin <telent997@xxxxxxxxx>:
> 2010/11/10 kapil neeralgi <kapil.neeralgi@xxxxxxxxx>:
>> Hi All,
>>
>>  1.          I am looking into ethernet driver (/driver/net/gianfar) .
>> Can you tell me which part is top half and bottom half.
>>
> See the Codes. Codes always show the truth.
>
>>  2.          I want to  Place the DMA ring buffers in some seperate IO memory.
>>              and map that IO memory on to the user space.
>>               Here the buffers are created using kmalloc , i want to
>> create this buffer in my specified memory and map it to user space .
>>               how and where the change has to be made.
>>
> One way i could remember is boot kernel with the parameter "memmap",
> split your memory for two parts, one for OS used, another for your
> driver, so you can specified your memory layout for your driver used.
>
> http://www.kernel.org/doc/Documentation/kernel-parameters.txt
> mem=nn[KMG]     [KNL,BOOT] Force usage of a specific amount of memory
>                        Amount of memory to be used when the kernel is not able
>                        to see the whole system memory or for test.
>                        [X86-32] Use together with memmap= to avoid physical
>                        address space collisions. Without memmap= PCI devices
>                        could be placed at addresses belonging to unused RAM.
>
>        mem=nopentium   [BUGS=X86-32] Disable usage of 4MB pages for kernel
>                        memory.
>
>        memchunk=nn[KMG]
>                        [KNL,SH] Allow user to override the default size for
>                        per-device physically contiguous DMA buffers.
>
>        memmap=exactmap [KNL,X86] Enable setting of an exact
>                        E820 memory map, as specified by the user.
>                        Such memmap=exactmap lines can be constructed based on
>                        BIOS output or other requirements. See the memmap=nn@ss
>                        option description.
>
>        memmap=nn[KMG]@ss[KMG]
>                        [KNL] Force usage of a specific region of memory
>                        Region of memory to be used, from ss to ss+nn.
>
>        memmap=nn[KMG]#ss[KMG]
>                        [KNL,ACPI] Mark specific memory as ACPI data.
>                        Region of memory to be used, from ss to ss+nn.
>
>        memmap=nn[KMG]$ss[KMG]
>                        [KNL,ACPI] Mark specific memory as reserved.
>                        Region of memory to be used, from ss to ss+nn.
>                        Example: Exclude memory from 0x18690000-0x1869ffff
>                                 memmap=64K$0x18690000
>                                 or
>                                 memmap=0x10000$0x18690000

More elaboration is Greg KH's LDD 3. Recommend you to read it firstly.
Chapter 15: Memory Mapping and DMA
http://lwn.net/Kernel/LDD3/

>> regards
>> kapil
>>
>> --
>> To unsubscribe from this list: send an email with
>> "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
>> Please read the FAQ at http://kernelnewbies.org/FAQ
>>
>>
>
>
>
> --
> Best Regards
> Lin
>



-- 
Best Regards
Lin

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ




[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