root/samples/kdb/kdb_hello.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. kdb_hello_cmd
  2. kdb_hello_cmd_init
  3. kdb_hello_cmd_exit

   1 /*
   2  * Created by: Jason Wessel <jason.wessel@windriver.com>
   3  *
   4  * Copyright (c) 2010 Wind River Systems, Inc.  All Rights Reserved.
   5  *
   6  * This file is licensed under the terms of the GNU General Public
   7  * License version 2. This program is licensed "as is" without any
   8  * warranty of any kind, whether express or implied.
   9  */
  10 
  11 #include <linux/module.h>
  12 #include <linux/kdb.h>
  13 
  14 /*
  15  * All kdb shell command call backs receive argc and argv, where
  16  * argv[0] is the command the end user typed
  17  */
  18 static int kdb_hello_cmd(int argc, const char **argv)
  19 {
  20         if (argc > 1)
  21                 return KDB_ARGCOUNT;
  22 
  23         if (argc)
  24                 kdb_printf("Hello %s.\n", argv[1]);
  25         else
  26                 kdb_printf("Hello world!\n");
  27 
  28         return 0;
  29 }
  30 
  31 
  32 static int __init kdb_hello_cmd_init(void)
  33 {
  34         /*
  35          * Registration of a dynamically added kdb command is done with
  36          * kdb_register() with the arguments being:
  37          *   1: The name of the shell command
  38          *   2: The function that processes the command
  39          *   3: Description of the usage of any arguments
  40          *   4: Descriptive text when you run help
  41          *   5: Number of characters to complete the command
  42          *      0 == type the whole command
  43          *      1 == match both "g" and "go" for example
  44          */
  45         kdb_register("hello", kdb_hello_cmd, "[string]",
  46                      "Say Hello World or Hello [string]", 0);
  47         return 0;
  48 }
  49 
  50 static void __exit kdb_hello_cmd_exit(void)
  51 {
  52         kdb_unregister("hello");
  53 }
  54 
  55 module_init(kdb_hello_cmd_init);
  56 module_exit(kdb_hello_cmd_exit);
  57 
  58 MODULE_AUTHOR("WindRiver");
  59 MODULE_DESCRIPTION("KDB example to add a hello command");
  60 MODULE_LICENSE("GPL");

/* [<][>][^][v][top][bottom][index][help] */