Solenoids really operate by current, and have large inductance.
You do not need to enforce a fixed output voltage and so you
don't really need another filter between the chopper and the
solenoid.
It seems like you have a ripple current defined (8.2-7.8=0.4A).
Maybe this is more than just Iripple. But you can figure Iripple
from V=LdI/dt, letting V be your max raw supply, L be the
solenoid inductance and dt being roughly 1/2*(1/fSW). The
allowed current ripple sets your minimum desired switching
frequency.
A peak-mode current control will do as well as an average,
in this kind of application. That can be a simple SRFF kicked
by oscillator for "on" and a current limit comparator for "off".
You can achieve some efficiency by setting a peak/hold
bilevel if it is an actuating solenoid; a positioning solenoid
would need closed loop based on some position feedback.