About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / wimax / README.wimax


Based on kernel version 4.16.1. Page generated on 2018-04-09 11:53 EST.

1	
2	   Linux kernel WiMAX stack
3	
4	   (C) 2008 Intel Corporation < linux-wimax@intel.com >
5	
6	   This provides a basic Linux kernel WiMAX stack to provide a common
7	   control API for WiMAX devices, usable from kernel and user space.
8	
9	1. Design
10	
11	   The WiMAX stack is designed to provide for common WiMAX control
12	   services to current and future WiMAX devices from any vendor.
13	
14	   Because currently there is only one and we don't know what would be the
15	   common services, the APIs it currently provides are very minimal.
16	   However, it is done in such a way that it is easily extensible to
17	   accommodate future requirements.
18	
19	   The stack works by embedding a struct wimax_dev in your device's
20	   control structures. This provides a set of callbacks that the WiMAX
21	   stack will call in order to implement control operations requested by
22	   the user. As well, the stack provides API functions that the driver
23	   calls to notify about changes of state in the device.
24	
25	   The stack exports the API calls needed to control the device to user
26	   space using generic netlink as a marshalling mechanism. You can access
27	   them using your own code or use the wrappers provided for your
28	   convenience in libwimax (in the wimax-tools package).
29	
30	   For detailed information on the stack, please see
31	   include/linux/wimax.h.
32	
33	2. Usage
34	
35	   For usage in a driver (registration, API, etc) please refer to the
36	   instructions in the header file include/linux/wimax.h.
37	
38	   When a device is registered with the WiMAX stack, a set of debugfs
39	   files will appear in /sys/kernel/debug/wimax:wmxX can tweak for
40	   control.
41	
42	2.1. Obtaining debug information: debugfs entries
43	
44	   The WiMAX stack is compiled, by default, with debug messages that can
45	   be used to diagnose issues. By default, said messages are disabled.
46	
47	   The drivers will register debugfs entries that allow the user to tweak
48	   debug settings.
49	
50	   Each driver, when registering with the stack, will cause a debugfs
51	   directory named wimax:DEVICENAME to be created; optionally, it might
52	   create more subentries below it.
53	
54	2.1.1. Increasing debug output
55	
56	   The files named *dl_* indicate knobs for controlling the debug output
57	   of different submodules of the WiMAX stack:
58	     *
59	# find /sys/kernel/debug/wimax\:wmx0 -name \*dl_\*
60	/sys/kernel/debug/wimax:wmx0/wimax_dl_stack
61	/sys/kernel/debug/wimax:wmx0/wimax_dl_op_rfkill
62	/sys/kernel/debug/wimax:wmx0/wimax_dl_op_reset
63	/sys/kernel/debug/wimax:wmx0/wimax_dl_op_msg
64	/sys/kernel/debug/wimax:wmx0/wimax_dl_id_table
65	/sys/kernel/debug/wimax:wmx0/wimax_dl_debugfs
66	/sys/kernel/debug/wimax:wmx0/.... # other driver specific files
67	
68	       NOTE: Of course, if debugfs is mounted in a directory other than
69	       /sys/kernel/debug, those paths will change.
70	
71	   By reading the file you can obtain the current value of said debug
72	   level; by writing to it, you can set it.
73	
74	   To increase the debug level of, for example, the id-table submodule,
75	   just write:
76	
77	$ echo 3 > /sys/kernel/debug/wimax:wmx0/wimax_dl_id_table
78	
79	   Increasing numbers yield increasing debug information; for details of
80	   what is printed and the available levels, check the source. The code
81	   uses 0 for disabled and increasing values until 8.
Hide Line Numbers


About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog