upload tizen1.0 source
[kernel/linux-2.6.36.git] / drivers / staging / memrar / TODO
1 RAR Handler (memrar) Driver TODO Items
2 ======================================
3
4 Maintainer: Eugene Epshteyn <eugene.epshteyn@intel.com>
5
6 memrar.h
7 --------
8 1. This header exposes the driver's user space and kernel space
9    interfaces.  It should be moved to <linux/rar/memrar.h>, or
10    something along those lines, when this memrar driver is moved out
11    of `staging'.
12      a. It would be ideal if staging/rar_register/rar_register.h was
13         moved to the same directory.
14
15 memrar_allocator.[ch]
16 ---------------------
17 1. Address potential fragmentation issues with the memrar_allocator.
18
19 2. Hide struct memrar_allocator details/fields.  They need not be
20    exposed to the user.
21      a. Forward declare struct memrar_allocator.
22      b. Move all three struct definitions to `memrar_allocator.c'
23         source file.
24      c. Add a memrar_allocator_largest_free_area() function, or
25         something like that to get access to the value of the struct
26         memrar_allocator "largest_free_area" field.  This allows the
27         struct memrar_allocator fields to be completely hidden from
28         the user.  The memrar_handler code really only needs this for
29         statistic gathering on-demand.
30      d. Do the same for the "capacity" field as the
31         "largest_free_area" field.
32
33 3. Move memrar_allocator.* to kernel `lib' directory since it is HW
34    neutral.
35      a. Alternatively, use lib/genalloc.c instead.
36      b. A kernel port of Doug Lea's malloc() implementation may also
37         be an option.
38
39 memrar_handler.c
40 ----------------
41 1. Split user space interface (ioctl code) from core/kernel code,
42    e.g.:
43      memrar_handler.c -> memrar_core.c, memrar_user.c