A counting subset sum problem with fixed subset size and bounded weights
Even if $s$ is not constant, a dynamic programming algorithm similar to that for the knapsack problem would work.  For this to be polynomial time, we need each $w_i$ to be polynomial in $n$ (implying that $k \leq \sum w_i$ is polynomial in n).

The idea is that $T(j,i)$ is the number of subsets of weight $j$ and cardinality $i$.  Start with all $T(j,i) = 0$ except $T(0,0) = 1$

Then:

For i = 1 to $n$
For j = 0 to $k$
For h = 1 to $s$
T(w_i + j,h+1) += T(j,h)


Then your answer is $\sum_{j \leq k} T(j,s)$

$s$, $n$, and $w_i$ (and therefore $k$) are all polynomial so all of this is polynomial.  Specifically this is at worst $O(n^2k)$ time.