Browse Source

[PATCH] USB: yealink: fix htons usage, documentation updates

Signed-off-by: Henk Vergonet <henk.vergonet@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Henk 20 years ago
parent
commit
b71e318cdb
2 changed files with 28 additions and 12 deletions
  1. 25 9
      Documentation/input/yealink.txt
  2. 3 3
      drivers/usb/input/yealink.c

+ 25 - 9
Documentation/input/yealink.txt

@@ -1,16 +1,18 @@
-yealink - Linux driver for usb-p1k phones
+Driver documentation for yealink usb-p1k phones
 
 0. Status
 ~~~~~~~~~
 
 The p1k is a relatively cheap usb 1.1 phone with:
-  - keyboard		full support
-  - LCD			full support
-  - LED			full support
-  - dialtone		full support
-  - ringtone		full support
-  - audio playback   	via generic usb audio diver
-  - audio record     	via generic usb audio diver
+  - keyboard		full support, yealink.ko / input event API
+  - LCD			full support, yealink.ko / sysfs API
+  - LED			full support, yealink.ko / sysfs API
+  - dialtone		full support, yealink.ko / sysfs API
+  - ringtone		full support, yealink.ko / sysfs API
+  - audio playback   	full support, snd_usb_audio.ko / alsa API
+  - audio record     	full support, snd_usb_audio.ko / alsa API
+
+For vendor documentation see http://www.yealink.com
 
 
 1. Compilation (stand alone version)
@@ -178,7 +180,21 @@ updated with the first letter of the icon.
   echo -n RINGTONE > /sys/..../hide_icon
 
 
-5. Credits & Acknowledgments
+5. Sound features
+~~~~~~~~~~~~~~~~~
+Sound is supported by the ALSA driver: snd_usb_audio
+
+One 16-bit channel with sample and playback rates of 8000 Hz is the practical
+limit of the device.
+
+  Example - recording test:
+  arecord -v -d 10 -r 8000 -f S16_LE -t wav  foobar.wav
+
+  Example - playback test:
+  aplay foobar.wav
+
+
+6. Credits & Acknowledgments
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   - Olivier Vandorpe, for starting the usbb2k-api project doing much of
 	the reverse engineering.

+ 3 - 3
drivers/usb/input/yealink.c

@@ -318,7 +318,7 @@ static int yealink_set_ringtone(struct yealink_dev *yld, u8 *buf, size_t size)
 		if (len > sizeof(p->data))
 			len = sizeof(p->data);
 		p->size	  = len;
-		p->offset = htons(ix);
+		p->offset = cpu_to_be16(ix);
 		memcpy(p->data, &buf[ix], len);
 		yealink_cmd(yld, p);
 		ix += len;
@@ -383,7 +383,7 @@ send_update:
 		val--;
 		val &= 0x1f;
 		yld->ctl_data->cmd	= CMD_SCANCODE;
-		yld->ctl_data->offset	= htons(val);
+		yld->ctl_data->offset	= cpu_to_be16(val);
 		yld->ctl_data->data[0]	= 0;
 		yld->ctl_data->sum	= -1 - CMD_SCANCODE - val;
 		break;
@@ -395,7 +395,7 @@ send_update:
 		/* Combine up to <len> consecutive LCD bytes in a singe request
 		 */
 		yld->ctl_data->cmd	= CMD_LCD;
-		yld->ctl_data->offset	= htons(ix);
+		yld->ctl_data->offset	= cpu_to_be16(ix);
 		yld->ctl_data->size	= len;
 		yld->ctl_data->sum	= -CMD_LCD - ix - val - len;
 		for(i=1; i<len; i++) {