Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 354275
b: refs/heads/master
c: 06b8f14
h: refs/heads/master
i:
  354273: 4d35dca
  354271: e52b6ec
v: v3
  • Loading branch information
Peter Hurley authored and Greg Kroah-Hartman committed Jan 30, 2013
1 parent 08e32df commit 80c2891
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 13 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: b360cb9726ce04480840e279150a907c21837334
refs/heads/master: 06b8f14dc2649ee12ff5194fc562d74353c8b4ba
3 changes: 0 additions & 3 deletions trunk/drivers/staging/fwserial/fwserial.c
Original file line number Diff line number Diff line change
Expand Up @@ -40,12 +40,10 @@ static int num_ttys = 4; /* # of std ttys to create per fw_card */
/* - doubles as loopback port index */
static bool auto_connect = true; /* try to VIRT_CABLE to every peer */
static bool create_loop_dev = true; /* create a loopback device for each card */
bool limit_bw; /* limit async bandwidth to 20% of max */

module_param_named(ttys, num_ttys, int, S_IRUGO | S_IWUSR);
module_param_named(auto, auto_connect, bool, S_IRUGO | S_IWUSR);
module_param_named(loop, create_loop_dev, bool, S_IRUGO | S_IWUSR);
module_param(limit_bw, bool, S_IRUGO | S_IWUSR);

/*
* Threshold below which the tty is woken for writing
Expand Down Expand Up @@ -2940,4 +2938,3 @@ MODULE_DEVICE_TABLE(ieee1394, fwserial_id_table);
MODULE_PARM_DESC(ttys, "Number of ttys to create for each local firewire node");
MODULE_PARM_DESC(auto, "Auto-connect a tty to each firewire node discovered");
MODULE_PARM_DESC(loop, "Create a loopback device, fwloop<n>, with ttys");
MODULE_PARM_DESC(limit_bw, "Limit bandwidth utilization to 20%.");
15 changes: 6 additions & 9 deletions trunk/drivers/staging/fwserial/fwserial.h
Original file line number Diff line number Diff line change
Expand Up @@ -351,7 +351,6 @@ struct fw_serial {
#define TTY_DEV_NAME "fwtty" /* ttyFW was taken */
static const char tty_dev_name[] = TTY_DEV_NAME;
static const char loop_dev_name[] = "fwloop";
extern bool limit_bw;

struct tty_driver *fwtty_driver;

Expand All @@ -370,18 +369,16 @@ static inline void fwtty_bind_console(struct fwtty_port *port,

/*
* Returns the max send async payload size in bytes based on the unit device
* link speed - if set to limit bandwidth to max 20%, use lookup table
* link speed. Self-limiting asynchronous bandwidth (via reducing the payload)
* is not necessary and does not work, because
* 1) asynchronous traffic will absorb all available bandwidth (less that
* being used for isochronous traffic)
* 2) isochronous arbitration always wins.
*/
static inline int link_speed_to_max_payload(unsigned speed)
{
static const int max_async[] = { 307, 614, 1229, 2458, };
BUILD_BUG_ON(ARRAY_SIZE(max_async) - 1 != SCODE_800);

speed = clamp(speed, (unsigned) SCODE_100, (unsigned) SCODE_800);
if (limit_bw)
return max_async[speed];
else
return 1 << (speed + 9);
return 1 << (speed + 9);
}

#endif /* _FIREWIRE_FWSERIAL_H */

0 comments on commit 80c2891

Please sign in to comment.