OSDN Git Service

input: Documentation: corrections for gameport-programming.rst
authorRandy Dunlap <rdunlap@infradead.org>
Tue, 2 Mar 2021 22:35:19 +0000 (14:35 -0800)
committerJonathan Corbet <corbet@lwn.net>
Tue, 9 Mar 2021 00:15:36 +0000 (17:15 -0700)
Use "E.g." instead of "Eg.".
Use correct index for buttons[] array.
Update all of struct gameport's descriptions.

Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: linux-input@vger.kernel.org
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: linux-doc@vger.kernel.org
Link: https://lore.kernel.org/r/20210302223523.20130-5-rdunlap@infradead.org
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Documentation/input/gameport-programming.rst

index c96911d..7d7063a 100644 (file)
@@ -21,7 +21,7 @@ choose which one to program the hardware to, starting from the more exotic
 addresses is preferred, because the likelihood of clashing with the standard
 0x201 address is smaller.
 
-Eg. if your driver supports addresses 0x200, 0x208, 0x210 and 0x218, then
+E.g. if your driver supports addresses 0x200, 0x208, 0x210 and 0x218, then
 0x218 would be the address of first choice.
 
 If your hardware supports a gameport address that is not mapped to ISA io
@@ -78,7 +78,7 @@ the gameport. To register a cooked gameport::
 
                for (i = 0; i < 4; i++)
                        axes[i] = my_mmio[i];
-               buttons[i] = my_mmio[4];
+               buttons[0] = my_mmio[4];
        }
 
        int my_open(struct gameport *gameport, int mode)
@@ -117,25 +117,28 @@ Simple::
 The gameport structure
 ~~~~~~~~~~~~~~~~~~~~~~
 
-.. note::
-
-    This section is outdated. There are several fields here that don't
-    match what's there at include/linux/gameport.h.
-
 ::
 
     struct gameport {
 
-       void *private;
+       void *port_data;
 
 A private pointer for free use in the gameport driver. (Not the joystick
 driver!)
 
 ::
 
-       int number;
+       char name[32];
+
+Driver's name as set by driver calling gameport_set_name(). Informational
+purpose only.
+
+::
+
+       char phys[32];
 
-Number assigned to the gameport when registered. Informational purpose only.
+gameport's physical name/description as set by driver calling gameport_set_phys().
+Informational purpose only.
 
 ::
 
@@ -210,8 +213,16 @@ gameport.
 
 ::
 
-       struct gameport_dev *dev;
-       struct gameport *next;
+       struct timer_list poll_timer;
+       unsigned int poll_interval;     /* in msecs */
+       spinlock_t timer_lock;
+       unsigned int poll_cnt;
+       void (*poll_handler)(struct gameport *);
+       struct gameport *parent, *child;
+       struct gameport_driver *drv;
+       struct mutex drv_mutex;         /* protects serio->drv so attributes can pin driver */
+       struct device dev;
+       struct list_head node;
 
 For internal use by the gameport layer.