<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/sys/dev/bge, branch stable/7</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=stable%2F7</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=stable%2F7'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2012-10-28T13:21:35Z</updated>
<entry>
<title>Merge r240680 from head:</title>
<updated>2012-10-28T13:21:35Z</updated>
<author>
<name>Gavin Atkinson</name>
<email>gavin@FreeBSD.org</email>
</author>
<published>2012-10-28T13:21:35Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=8a605e84584bb76fcd9578434bedc36c155f6761'/>
<id>urn:sha1:8a605e84584bb76fcd9578434bedc36c155f6761</id>
<content type='text'>
  Align the PCI Express #defines with the style used for the PCI-X
  #defines.  This has the advantage that it makes the names more
  compact, and also allows us to correct the non-uniform naming of
  the PCIM_LINK_* defines, making them all consistent amongst themselves.

  This is a mostly mechanical rename:
    s/PCIR_EXPRESS_/PCIER_/g
    s/PCIM_EXP_/PCIEM_/g
    s/PCIM_LINK_/PCIEM_LINK_/g

  In this MFC, #defines have been added for the old names to assist
  merges and out-of-tree drivers.
</content>
</entry>
<entry>
<title>MFC: r236328</title>
<updated>2012-06-02T19:15:22Z</updated>
<author>
<name>Marius Strobl</name>
<email>marius@FreeBSD.org</email>
</author>
<published>2012-06-02T19:15:22Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=f8ec15eb3f36144886782e5108aedcd2e52c737b'/>
<id>urn:sha1:f8ec15eb3f36144886782e5108aedcd2e52c737b</id>
<content type='text'>
Try to finally get the point in time at which bge_add_sysctls() is called
right; it needs to be called before bge_can_use_msi() but in turn requires
bge_flags to be properly set.

Submitted by:	yongari
</content>
</entry>
<entry>
<title>MFC r232849-232850:</title>
<updated>2012-03-26T04:51:04Z</updated>
<author>
<name>Pyun YongHyeon</name>
<email>yongari@FreeBSD.org</email>
</author>
<published>2012-03-26T04:51:04Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=6d36dd7b01850990402497a23ced5cb1a6e2ae7f'/>
<id>urn:sha1:6d36dd7b01850990402497a23ced5cb1a6e2ae7f</id>
<content type='text'>
r232849:
  Show PCI bus speed and width as well as running mode of PCI-X
  device in device attach.  This would help to narrow down issue to a
  specific controller and operating mode of the controller.
  While I'm here rename BGE_MISCCFG_BOARD_ID with
  BGE_MISCCFG_BOARD_ID_MASK.

r232850:
  Make if_ierrors updated whenever any of the following counters are
  updated.
   o Number of times NIC ran out of RX buffer descriptors
   o Number of inbound packet errors
   o Number of inbound packets that were chosen to be discarded
  Previously only the discarded packet counter was used to update
  if_ierrors.  This change fixes wrong if_ierrors counter on
  BCM570[0-4] controllers.  For BCM5705 and later controllers bge(4)
  already correctly counted it.

  Reported by:	Eugene Grosbein &lt;egrosbein &lt;&gt; rdtc dot ru&gt;
</content>
</entry>
<entry>
<title>MFC r232848:</title>
<updated>2012-03-26T04:39:10Z</updated>
<author>
<name>Pyun YongHyeon</name>
<email>yongari@FreeBSD.org</email>
</author>
<published>2012-03-26T04:39:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=b1f26ed76cc8e0e599dc3ad7b100b44e3a2298b5'/>
<id>urn:sha1:b1f26ed76cc8e0e599dc3ad7b100b44e3a2298b5</id>
<content type='text'>
  Add workaround for PCI-X BCM5704 controller that live behind
  AMD-8131 PCI-X bridge.  The bridge seems to reorder write access to
  mailbox registers such that it caused watchdog timeouts by
  out-of-order TX completions.

  Tested by:	Michael L. Squires &lt;mikes &lt;&gt; siralan dot org &gt;
</content>
</entry>
<entry>
<title>MFC r230286,230337-230338,231159:</title>
<updated>2012-02-15T04:04:36Z</updated>
<author>
<name>Pyun YongHyeon</name>
<email>yongari@FreeBSD.org</email>
</author>
<published>2012-02-15T04:04:36Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=ff6d023789c3be8cca6e6ba4d888f5e271d25097'/>
<id>urn:sha1:ff6d023789c3be8cca6e6ba4d888f5e271d25097</id>
<content type='text'>
r230286:
  Introduce a tunable that disables use of MSI.
  Non-zero value will use INTx.

r230337-230338:
  Rename dev.bge.%d.msi_disable to dev.bge.%d.msi which matches
  enable/disable and default it to on.

r231159:
  Call bge_add_sysctls() early and especially before bge_can_use_msi() so
  r230337 actually has a chance of working and doesn't always unconditionally
  disable the use of MSIs.
</content>
</entry>
<entry>
<title>MFC r228479-228480:</title>
<updated>2012-01-09T19:23:29Z</updated>
<author>
<name>Pyun YongHyeon</name>
<email>yongari@FreeBSD.org</email>
</author>
<published>2012-01-09T19:23:29Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=05c82251c93013dde7b8adb2c22c7b5078fa8f6c'/>
<id>urn:sha1:05c82251c93013dde7b8adb2c22c7b5078fa8f6c</id>
<content type='text'>
r228479:
  BCM5720 performance tweak from Broadcom.
   o Allow multiple outstanding read requests from non-LSO read DMA engine.
   o Allow 4KB burst length reads for non-LSO frames.
   o Enable 512B burst length reads for buffer descriptors.

r228480:
  Destroy DMA tag for jumbo RX buffer in device detach.
</content>
</entry>
<entry>
<title>MFC r226871-226872:</title>
<updated>2012-01-03T01:07:02Z</updated>
<author>
<name>Pyun YongHyeon</name>
<email>yongari@FreeBSD.org</email>
</author>
<published>2012-01-03T01:07:02Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=4cd0f8c1e68c981c2a9412fcd878b5ef80e4af32'/>
<id>urn:sha1:4cd0f8c1e68c981c2a9412fcd878b5ef80e4af32</id>
<content type='text'>
r226871:
  Add initial BCM5720 support.
  Many thanks to Broadcom for continuing support of FreeBSD.

  Submitted by:		Geans Pin at Broadcom (initial version)
  H/W donated by:	Broadcom

r226872:
  Disable updating InputDiscards counter for BCM5717, BCM5718,
  BCM5719 A0 and BCM5720 A0 and add comment why driver does not try
  to read it.
</content>
</entry>
<entry>
<title>MFC r226814-226815,226820-226821,226864,226866-226867:</title>
<updated>2012-01-03T00:26:11Z</updated>
<author>
<name>Pyun YongHyeon</name>
<email>yongari@FreeBSD.org</email>
</author>
<published>2012-01-03T00:26:11Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=5f2e63aa936b5be50efbd6c43cb4ffa5259aaecf'/>
<id>urn:sha1:5f2e63aa936b5be50efbd6c43cb4ffa5259aaecf</id>
<content type='text'>
r226814:
  Rename definition of BGE_SOFTWARE_GENCOMM_* to more readable ones.
  The origin of GENCOMM seems to come from Alteon Tigon Host/NIC
  interface definition where it defines general communications region
  which is active when firmware is loaded and running.  This region
  was used in communication between the host and processor internal
  to the Tigon chip.
  Broadcom data sheet also defines the region as 'Software Gencomm'
  in NetXtreme memory map but lacks detailed description of its
  interface so it was hard to know which ones are used for which
  interface.
  This change shall slightly enhance readability.

  No functional changes.

r226815:
  Define MAC address mail box and use it instead of using
  hard-coded value.

r226820:
  Offset 0x6810 is RX-RISC event register. Rename BGE_CPU_EVENT with
  BGE_RX_CPU_EVENT for readability.
  Additionally define BGE_TX_CPU_EVENT for TX-RSIC event register(BCM570[0-4] only).

r226821:
  SRAM offset 0x0C04 is used by driver to inform the IPMI/ASF firmware
  about the various driver events like load, unload, reset, suspend,
  restart, and ioctl operations.
  Define driver's event rather than using hard-coded values.  We don't
  still send suspend/resume event to firmware.

  Previously bge(4) used BGE_SDI_STATUS to send events. Because driver
  has to access firmware mail box to inform current state, using
  BGE_SDI_STATUS register was wrong. The end result was the same as
  BGE_SDI_STATUS is 0x0C04.

  No functional changes.

r226864:
  Rename BGE_FW_DRV_ALIVE/BGE_FW_PAUSE to BGE_FW_CMD_DRV_ALIVE/BGE_FW_CMD_PAUSE.
  Also add more firmware commands(not used yet).
  No functional changes.

r226866:
  Rename hard-coded value 1 &lt;&lt; 14 with BGE_RX_CPU_DRV_EVENT.
  This bit(SW event 7 in publicly available data sheet) is used to
  make RX CPU handle a firmware command and the bit is automatically
  cleared after RX CPU completed the command.
  Generally firmware command takes the following steps.
   1. Write BGE_SRAM_FW_CMD_MB with a command.
   2. Write BGE_SRAM_FW_CMD_LEN_MB with the length of the command in bytes.
   3. Write BGE_SRAM_FW_CMD_DATA_MB with actual command data.
   4. Generate BGE_RX_CPU_EVENT and let firmware handle the command.
   5. Wait for the ACK of the firmware command.

  No functional changes.

r226867:
  Define BGE_FW_HB_TIMEOUT_SEC and remove one more magic value.
  bge(4) sends BGE_FW_CMD_DRV_ALIVE command to firmware every 2
  seconds.  BGE_FW_CMD_DRV_ALIVE command requires 4 bytes data.  This
  data contains timeout value in seconds until the next
  BGE_FW_CMD_DRV_ALIVE command.
  Broadcom recommends driver set the value 3 times longer than the
  interval that it sends BGE_FW_CMD_DRV_ALIVE.  Currently bge(4) uses
  3 seconds so probably we have to increase it in future and use
  different ALIVE command(e.g. BGE_FW_CMD_DRV_ALIVE3).

  No functional changes.
</content>
</entry>
<entry>
<title>MFC r226749,226770,226804-226807:</title>
<updated>2012-01-03T00:12:06Z</updated>
<author>
<name>Pyun YongHyeon</name>
<email>yongari@FreeBSD.org</email>
</author>
<published>2012-01-03T00:12:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=61f88a6d00f6b3dde3c2ec250c4915732cc35244'/>
<id>urn:sha1:61f88a6d00f6b3dde3c2ec250c4915732cc35244</id>
<content type='text'>
r226749:
  Whitespace nits.

r226770:
  Fix long standing bge_sysctl_debug_info() issues.
   o Protect bge(4) status block access and register dump with driver lock.
   o Add missing bus_dmamap_sync() before dumping status block.
   o Use minimum status block size, 32 bytes, for status block dump on most
     controllers except BCM5700 AX/BX.
  While I'm here, make the handler show 5717 Plus in hardware flags.

r226804:
  Make CPMU handle GPHY power down control on controllers that have
  CPMU capability.

r226805:
  It is known that all Broadcom controllers have 4GB boundary DMA
  bug.  Apply workaround to all controllers.

r226806:
  Broadcom says BCM5755 or higher and BCM5906 have short DMA bug.
  Apply workaround to these controllers.

r226807:
  BCM5719 cannot handle DMA requests for DMA segments that have
  larger than 4KB in size.  However the maximum DMA segment size
  created in DMA tag is 4KB, so we wouldn't encounter the issue here.
  Just record this issue such that let developers not to create a DMA
  segment that is larger than 4KB for BCM5719. It's possible to split
  a DMA segment into multiple smaller ones in run time but I believe
  it's not worth to implement that.
</content>
</entry>
<entry>
<title>MFC: r221407 (partial)</title>
<updated>2011-09-11T20:25:57Z</updated>
<author>
<name>Marius Strobl</name>
<email>marius@FreeBSD.org</email>
</author>
<published>2011-09-11T20:25:57Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=99e4ce3e7b07bcdeca71fdffa04401cb54e795aa'/>
<id>urn:sha1:99e4ce3e7b07bcdeca71fdffa04401cb54e795aa</id>
<content type='text'>
- Let mii_phy_add_media() also announce the support of IFM_NONE.
- Add a PHY-specific reset routine is for lxtphy(4) which disables MII
  interrupts.
- Remove redundant checks in NIC drivers for mii-&gt;mii_instance not being
  zero before calling the reset routines because as soon as one PHY driver
  attaches mii-&gt;mii_instance is incremented and we hardly can end up in
  their media change callbacks etc if no PHY driver has attached as
  mii_attach() would have failed in that case and not attach a miibus(4)
  instance.
- Convert the mebers of the MII data structure to unsigned where
  appropriate. This is partly inspired by NetBSD/OpenBSD.
- Add MIIF_NOMANPAUSE and mii_phy_flowstatus() calls to drivers that
  weren't explicitly converted to support flow control before. It's
  unclear whether flow control actually works with these but typically
  it should and their net behavior should be more correct with these
  changes in place than without if the MAC driver sets MIIF_DOPAUSE.

Obtained from:	NetBSD (partially)
</content>
</entry>
</feed>
