summaryrefslogtreecommitdiff
path: root/include/net/red.h
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-12-12 12:51:05 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-12-12 12:51:05 +0100
commitc1ed47355467d03639b750570b4324f7c1eed68c (patch)
treead1994abec3acf822ccd4b74b1121599e5b1c148 /include/net/red.h
parent72b663a99c074a8d073e7ecdae446cfb024ef551 (diff)
parent9dbe416b656bb015fc49fc17961000ffa418838a (diff)
downloadlinux-c1ed47355467d03639b750570b4324f7c1eed68c.tar.gz
linux-c1ed47355467d03639b750570b4324f7c1eed68c.tar.xz
Merge tag 'fixes-for-v4.15-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-linus
Felipe writes: usb: fixes for v4.15-rc4 We have a few fixes on dwc3: - one fix which only happens with some implementations where we need to wait longer for some commands to finish. - Another fix for high-bandwidth isochronous endpoint programming making sure that we send the correct DATA tokens in the correct sequence - A couple PM fixes on dwc3-of-simple The other synopsys controller driver (dwc2) got a fix for FIFO size programming. Other than these, we have a couple Kconfig fixes making sure that dependencies are properly setup.
Diffstat (limited to 'include/net/red.h')
-rw-r--r--include/net/red.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/include/net/red.h b/include/net/red.h
index 9a9347710701..9665582c4687 100644
--- a/include/net/red.h
+++ b/include/net/red.h
@@ -168,6 +168,17 @@ static inline void red_set_vars(struct red_vars *v)
v->qcount = -1;
}
+static inline bool red_check_params(u32 qth_min, u32 qth_max, u8 Wlog)
+{
+ if (fls(qth_min) + Wlog > 32)
+ return false;
+ if (fls(qth_max) + Wlog > 32)
+ return false;
+ if (qth_max < qth_min)
+ return false;
+ return true;
+}
+
static inline void red_set_parms(struct red_parms *p,
u32 qth_min, u32 qth_max, u8 Wlog, u8 Plog,
u8 Scell_log, u8 *stab, u32 max_P)
@@ -179,7 +190,7 @@ static inline void red_set_parms(struct red_parms *p,
p->qth_max = qth_max << Wlog;
p->Wlog = Wlog;
p->Plog = Plog;
- if (delta < 0)
+ if (delta <= 0)
delta = 1;
p->qth_delta = delta;
if (!max_P) {