Port-arm archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Marvell if_mvgbe
On 13/10/2012, at 1:42 AM, Robert Swindells <rjs%fdy2.co.uk@localhost> wrote:
> I have been using the following patch for a while now on the
> SheevaPlug, it should reduce the number of receive interrupts
> generated by the ethernet controllers.
Great. The interrupt load on some of my older gear was so bad that I had to
retire that gear, so I approve of fewer interrupts.
> +static uint32_t
> +mvgbe_ipg_rx(struct mvgbec_softc *csc, struct mvgbe_softc *sc)
> +{
> +
> + if (csc->sc_flags & FLAGS_IPG2)
> + return (((sc->sc_ipg_rx & 0x8000) << 10) |
> + ((sc->sc_ipg_rx & 0x7fff) << 7));
> + else if (csc->sc_flags & FLAGS_IPG1)
> + return ((sc->sc_ipg_rx & 0x3fff) << 8);
> + else
> + return 0;
> +}
...
> + if ((csc->sc_flags & FLAGS_IPG1) || (csc->sc_flags & FLAGS_IPG2))
> + sc->sc_ipg_rx = 768;
You need to replace all the numeric constants with #defines though. I can read
and write network device drivers (that aren't too complicated), but I don't
know what this code does without referring to the Marvell data sheets.
Cheers,
Lloyd
Home |
Main Index |
Thread Index |
Old Index