2010/11/10 kapil neeralgi <[email protected]>:
> 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...@ss
                        option description.

        memmap=nn[k...@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
> regards
> kapil
>
> --
> To unsubscribe from this list: send an email with
> "unsubscribe kernelnewbies" to [email protected]
> Please read the FAQ at http://kernelnewbies.org/FAQ
>
>



-- 
Best Regards
Lin

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to [email protected]
Please read the FAQ at http://kernelnewbies.org/FAQ

Reply via email to