]> CyberLeo.Net >> Repos - FreeBSD/stable/8.git/commit
MFC r204541:
authoryongari <yongari@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Wed, 24 Mar 2010 17:11:01 +0000 (17:11 +0000)
committeryongari <yongari@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Wed, 24 Mar 2010 17:11:01 +0000 (17:11 +0000)
commitc871ed28a7e85b11afefef4f8bf465fc0235aadf
treec0c8d900d3786ddf8c2a27a0bab76dfbd382fa4d
parentee2dcf5bd5f5f3c82a245afc2b3d1b45b102fb1c
MFC r204541:
  Implement rudimentary interrupt moderation with programmable
  countdown timer register. The timer resolution may vary among
  controllers but the value would be represented by core clock
  cycles. msk(4) will automatically computes number of required clock
  cycles from given micro-seconds unit.
  The default interrupt holdoff timer value is 100us which will
  ensure less than 10k interrupts under load. The timer value can be
  changed with dev.mskc.0.int_holdoff sysctl node.

  Note, the interrupt moderation is shared resource on dual-port
  controllers so you can't use separate interrupt moderation value
  for each port. This means we can't stop interrupt moderation in
  driver stop routine. Also have msk_tick() reclaim transmitted Tx
  buffers as safety belt. With this change there is no need to check
  missing Tx completion interrupt in watchdog handler, so remove it.

git-svn-id: svn://svn.freebsd.org/base/stable/8@205609 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
sys/dev/msk/if_msk.c
sys/dev/msk/if_mskreg.h