Bug 545135 - [Broadcom 5.5 feat] Add support for 57765 asic revs
Summary: [Broadcom 5.5 feat] Add support for 57765 asic revs
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel
Version: 5.5
Hardware: All
OS: Linux
medium
medium
Target Milestone: rc
: 5.5
Assignee: John Feeney
QA Contact: Red Hat Kernel QE team
URL:
Whiteboard:
Depends On:
Blocks: 522045 533941
TreeView+ depends on / blocked
 
Reported: 2009-12-07 18:00 UTC by Matt Carlson
Modified: 2023-09-14 01:18 UTC (History)
15 users (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-03-30 07:33:24 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
tg3: ipv6, memtest, and loopback patches (1.23 KB, application/gzip)
2010-01-26 21:43 UTC, Matt Carlson
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2010:0178 0 normal SHIPPED_LIVE Important: Red Hat Enterprise Linux 5.5 kernel security and bug fix update 2010-03-29 12:18:21 UTC

Description Matt Carlson 2009-12-07 18:00:28 UTC
Please add asic rev 57765 support.  Support can be added by integrating the first two patches of my latest patch submission, plus a third patch that covers a few more odds and ends.  Here are the required upstream patches :

tg3: Make TSS enable independent of MSI-X enable
commit 19cfaecc094781da273b5cd1411ee46589898d0e

tg3: Add 57765 asic rev
commit b703df6f628ab63eaa875232551b1f2f0503b9af

I'll supply the third patch should this feature be accepted.

Comment 1 Andrius Benokraitis 2009-12-07 20:10:53 UTC
Adding new hardware support post-Beta is a no-no, especially with little business justification (and a severity of medium).

Comment 2 Andy Gospodarek 2009-12-07 20:45:16 UTC
Matt, did you intentionally not add lines like these:

     {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57781)},
     {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57785)},
     {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57761)},
     {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57765)},
     {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57791)},
     {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57785)},

It doesn't appear this will actually add support for new hardware.

Comment 4 Matt Carlson 2009-12-07 21:20:27 UTC
Right, the patches submitted to the upstream kernel added everything but the device IDs and the phy IDs.

Comment 5 Andy Gospodarek 2009-12-07 21:26:21 UTC
(In reply to comment #4)
> Right, the patches submitted to the upstream kernel added everything but the
> device IDs and the phy IDs.

So, what is reallt gained by adding b703df6f628ab63eaa875232551b1f2f0503b9af?

Comment 6 Matt Carlson 2009-12-07 21:56:13 UTC
Is the question "what is the point of adding 57765 asic rev support if it isn't enabled?".  As part of the initial description, I promised a 3rd patch which would add the device IDs, the phy IDs and any bugfixes found since that patch's submission.

I was rather conservative with the upstream submission because they make it progressively difficult to change the code as time goes on.  Rather than risk a bad user experience, I opted to just submit the code and keep it disabled.  I believe we have time to hammer out any bugs we find between us though.

Comment 7 Andy Gospodarek 2009-12-07 22:14:20 UTC
(In reply to comment #6)
> Is the question "what is the point of adding 57765 asic rev support if it isn't
> enabled?".  As part of the initial description, I promised a 3rd patch which
> would add the device IDs, the phy IDs and any bugfixes found since that patch's
> submission.
> 
> I was rather conservative with the upstream submission because they make it
> progressively difficult to change the code as time goes on.  Rather than risk a
> bad user experience, I opted to just submit the code and keep it disabled.  I
> believe we have time to hammer out any bugs we find between us though.  

Sounds good, Matt.  I was hoping that was what you were implying when you indicated that the third patch would contain some "odds and ends," but I just wanted to be sure!

Comment 13 John Feeney 2010-01-22 15:41:30 UTC
RPMs with the proposed patch to provide this functionality can be found on my people page. See http://people.redhat.com/jfeeney/.rhel5-tg3. I would appreciate testing feedback.

Comment 14 Andrius Benokraitis 2010-01-26 15:24:27 UTC
Broadcom: can you provide feedback on these patches ASAP?

Comment 15 Ben 2010-01-26 16:03:52 UTC
By now, we found 5718 failed to run netperf with IPv6 when CO enabled and can pass when CO disabled.
Also, test status as below:
  1. WOL ==> Pass
  2. UDP Performance Test Using Netperf ==> Pass
  3. Load/unload on single port ==> Pass
  4. IPv6 Checksum Offload Test ==> Fail

We will continue testing on 57765 and 5717/5718, and update test status ASAP.

Comment 16 Matt Carlson 2010-01-26 21:43:11 UTC
Created attachment 386924 [details]
tg3: ipv6, memtest, and loopback patches

This archive contains three patches, generated against the tg3 driver in the 2.6.18-183.el5.test kernel.  We will continue to look for more bugs.

Comment 17 Andrius Benokraitis 2010-01-26 22:03:30 UTC
John - do you want the attachment in Comment #16 in a new BZ?

Comment 18 John Feeney 2010-01-26 22:23:52 UTC
No, Matt. Thanks for asking (and fixing).

Comment 19 John Feeney 2010-01-26 23:03:43 UTC
Matt,
I found the first new patch (comment #17) was from a patch that I skipped because some of the functionality was not in tg3.c as of RHEL5.4 (IPV6 fix) but I don't find the second or third patches upstream as of 3.106 (the mem_tbl_5717 and loopback). Am I just not seeing this code? If so, which upstream patch provided this code?

Comment 20 Matt Carlson 2010-01-26 23:38:18 UTC
Hmmm.  The loopback fix doesn't seem to be upstream.  Looks like I need to diff Broadcom's driver to the upstream driver.  The fix is needed though.

The memory test fix is in the net-next-2.6 tree.  Commit 8b5a6c42e1f2277433aeefa9ee5a0c1a2473b7d8.

Comment 21 John Feeney 2010-01-27 20:16:52 UTC
Please find another set of rpms on my people page. These rpms contain the three patches provided in comment 16. See http://people.redhat.com/jfeeney/.rhel5-tg3.

I stored the previous set of rpms under the "save" directory.

Comment 22 Ben 2010-01-29 17:37:01 UTC
Ethtool selftest now can pass. But a new issue found, connection re-establish when running copy/compare stress on 5785.
BY now, we finish test on 5785 and continue testing on 5717/5718 and 57765.
  Test Status as below
                                         5785    5717/5718   57765
   Speed/Duplex                          OK      OK          OK
   Flow Control                          Ok      OK          OK
   Load/Unload stress                    OK
   IPv6 Checksum Offload                 OK
   UDP Performance Test Using Netperf    OK                  OK
   Ethtool Selftest                      OK      OK
   Jumbo Frame                                   OK          OK
   Copy/Compare Stress                   Fail
   WOL                                   OK                  OK

Comment 23 Ben 2010-01-30 13:17:19 UTC
S1/S3/S4 WoL failed under 5785 but S5 WoL is OK.

Comment 24 Andrius Benokraitis 2010-02-01 21:10:57 UTC
John - although the 5785 issue may be an issue, this isn't blocking the current patchset. Broadcom has stated to go ahead and POST what you have so far.

Comment 25 Jeff Leu 2010-02-02 10:20:58 UTC
I tested with kernel 2.6.18-183.el5.test HP7600 and Dell T7500 encounter the system unable to sleep mode. The system non install NIC 57765. 
Below is the test steps:
1. Boot to os.
2. echo "disk" > /sys/power/state
3. Idle a few minutes, the system will be come back, and display "bash: echo: write error: Device or resource busy" 
4. Repeat above step to verify S3 and S1, the system display "bash: echo: write error: Resource temporarily unavailable"

Comment 26 John Feeney 2010-02-04 00:20:45 UTC
Changing state to posted.

Included the following upstream patches.
1. Carlson - Delay mdio bus init until fw finishes
    0a9140cff22e405fce1747a2e02d41851c36c55a (8/29/09)
2. Carlson - Add new 5785 10/100 only device ID
    2befdcea96fcd9a13e94373c66ea1dd7365d2a74 (8/29/09)
3. Carlson - Reformat NVRAM case statements
    8590a603e5e20ccf49d6cf0ea71ecf5388d1f9da (8/29/09)
4. Carlson - Break out mini producer ring handling
    fdb72b38c94c0ead1f78ecc8db64b832feda22c3 (8/29/09)
5. Carlson - Move the JUMBO_CAPABLE and SUPPORT_MSI flags
    8f666b07ac53eeedd6c035adf6d4299f9ed0df2d (8/29/09)
6. Carlson - Clarify rx buffer relationship
    287be12e1774d842bff21ea0c1809c2387d7b310 (8/29/09)
7. Carlson - Create rx producer ring setup routines
    cf7a7298c4f47ab7546b933bb54ad3ea03a1daf6 (8/29/09)
8. Carlson - Create a new prodring_set structure
    21f581a5366d48d86b9ae86043fc61d44e992c0c (8/29/09)
9. Carlson - Use ext rx bds
     79ed5ac7ddd5f8d6463f5a17b3575772e9896481 (8/29/09)
10. Carlson - Cleanup interrupt setup
      07b0173cb5d6a9d77646cd855066ebe90b9203f2 (8/29/09)
11. Carlson - Move napi to per-int struct
     added dummy_netdev changes plus tg3.h (struct tg3_napi)
     8ef0442f98850333196bc56415192e52a6267878
12. Carlson - Convert ISR parameter to tnapi
     followed gospo's suggestions for multi-queue
     09943a1819a240ff4a72f924d0038818fcdd0a90 (8/29/09)
13. Carlson - Convert napi handlers
     17375d25d3dcd3d4caf9456fa94f60e29d6b1146 (8/29/09)
14. Carlson - Move general int members to a per-int struct
     898a56f8d8170c188e47ae3acb90d2ea9a585ebe (8/29/09)
15. Carlson - Move per-int rx members to per-int struct
     723344820aa405ac2663ab9e36fd27833d06129b (8/29/09)
16. Carlson - Move per-int tx members to a per-int struct
      f3f3f27e5b4e27737f824535e6f145a3c88b976c (8/29/09)
17. Carlson - Version 3.101 August 28, 2009
      fc57e515a2c02599b00d252545521288dfc0158a (8/29/09)
18. Carlson - in line tg3_cond_int()
      f19af9c2cc015e42dfe4bd5c383e32066ec2801c (9/2/09)
19. Carlson- add per-int coalesce now member napi
      fd2ce37f8e4a570ce90b141a2e7c476c5b399836 (9/2/09)
20. Carlson- Create tg3_rings_reset()
      2d31ecaf10c4ae03d49aed516481b2839b0220f6 (9/2/09)
21. Carlson- Add support code around kernel interrupt API
      4f125f42dd55390016e21f8b3960f99d02d1001f (9/2/09)
22. Carlson- Add MSI-X support
      679563f47cd2547a0e091b5bd3ddf30027af6b08  (9/2/09)
23. Carlson - Add mailbox assignment
      646c9eddcffd202bb0f3d906cecf94eaf10cad31 (9/2/09)
24. Carlson - Add tx and rx ring resource tracking
      f77a6a8e6cee17b21a43bdf6b853cc2fc0e2c4df (9/2/09)
25. Carlson - Update intmbox and coal_now for msix
      89aeb3bceaa1a02651206a76a7b9dcb8f3884702 (9/2/09)
26. Carlson - Enable NAPI instances for other int vectors*
      fed9781081aa9600765346c108ff22751e003715
27. Carlson - Add coalesce parameters for msix vectors
      b6080e126012047d42e53154189fdca286d0600e (9/2/09)
28. Carlson - Add RSS
      baf8a94a572928710e9e60967d153a7bf3aebd9c (9/2/09)
29. Carlson - Adjust RSS ring allocation strategies
      0c1d0e2b05e92ad847b3ebe1c75b7974086bc8fa (9/2/09)
30. Carlson - Assign rx net producer indexes by vector
      8d9d7cfc0ec2fe37ff9afd74326d03f38f96ad1b (9/2/09)
31. Carlson - Add 5717 asic rev
      f6eb9b1fc1411d22c073f5264e5630a541d0f7df (9/2/09)
32. Carlson - Add 5717 NVRAM detection routines
      a1b950d56de3c72bea3343f54de24c43fb7dc74e  (9/2/09)
33. Carlson - Add MDIO bus address assignments
      882e9793faa9425dff581c33b1af45ed10145626 (9/2/09)
34. Carlson - 3.102 September 1
      daf09de817353f18bb81a23a023d429cfd258e62 (9/2/09)
35. Hutchings - Remove redundant checks
      7ab0f2736bfe137a82a7084bbfb5f809da95cabd (9/4/09)
36. Carlson - Fix return ring size breakage (9/11/09)
      5ea1c50662d447de344812054175d7151783ea25
37. Carlson - Assign flags to fixes in start_xmit_dma_bug()
       0e1406dd404ce55dbe8d68b4b5e2aed7e5c75fdb (11/2/09)
38. Carlson - Fix 5906 transmit hangs
       92c6b8d16a36df3f28b2537bed2a56491fb08f11 (11/2/2009)
39. Carlson - Fix disappearing 57780 devices okay
      f40386c8452f9eead9c5906bfffaaf59f3dc748f (11/2/2009)
40. Carlson - Prevent a PCIe tx glich
      52cdf8526fe24f11d300b75458ddee017f3f4c88 (11/2/2009)
41. Carlson - Improve 5785 PCIe performance
      788a035e6061a66c6c77059c417fdc6234e140ff (11/2/2009)
42. Carlson - Add AC131 power down support
       0e5f784c77197edf29d2770b518dc78777d5a480 (11/2/2009)
43. Carlson - Extend loopback test timeout
      303fc9218246a748304c005e629d658927cf12d0 (11/2/2009)
44. Carlson - 3.103 November 2, 2009
      123b43e9716115302a0095e14f2c545811712715 (11/2/2009)
45. Carlson - Add 5717 phy ID - replaced by new patch 09
      c2060fe1f36565e60e622662a4519babd3b72f68 (11/13/2009)
46. Carlson - Don't touch RCB nic addresses
      87668d352aa8d135bd695a050f18bbfc7b50b506 (11/13/2009)
47. Carlson - Move TG3_FLG2_PROTECTED_NVRAM to tg3_flg3
      f66a29b03a2637ff052f2b8a81a5417fa44e228b (11/13/2009)
48. Carlson - Use tg3_start_xmit_dma_bug for 5717 AO*
      615774fe598f8ee971a8dfeb1f2ec4211241c433 (11/13/2009)
49. Carlson - Allow DMAs to cross cacheline boundaries
      cbf9ca6cf8304beb640a948709c4672bc1d5a55f (11/13/2009)
50. Carlson - Move napi_add calls below tg3_get_invariants
      78f90dcf184b8225a24217605c4289f1986451a3 (11/13/2009)
51. Carlson - Add prodring parameter to tg3_alloc_rx_rsb()
      a3896167160ce9ad1eadeb88fd2f3971888444ae (11/13/2009)
52. Carlson - tg3_alloc_rx_skb(tnapi => tp)
      86b21e59c9a65c8e46d35ac6c4220f63639828c6 (11/13/2009)
53. Carlson - rename rx_[std|jmb]_ptr to rx_[std|jmb]_prod_idx
      411da6407e778bf946911df08bb5afc505422f31 (11/13/2009)
54. Carlson - Consider rx_std_prod_idx a hw mailbox
      4361935afe3abc3e5a93006b99197fac1fabbd50 (11/13/2009)
55. Carlson - Lay proucer ring handling groundwork
      2b2cdb65bec42d38268b2ac115876b066afa7f95 (11/13/2009)
56. Create aliases for rx producer mailbox regs
      66711e66639776685aeaad774488be1857abce26 (11/13/2009)
57. Carlson - Add rx prod ring consolidation *
      b196c7e45f30cbcd38c83386bc8a04a21477f8d3 (11/13/2009)
58. Carlson - Fix DIDs, Enable 5717 support
      5001e2f638011859c1351f9fe57ca4e545a15c47(11/13/2009)
59. Carlson - 3.104 Nov 13, 2009
      c5d5d1721763842a516529e553433d13b11c3f31 (11/13/2009)
60. Perches - Move && and || to end of previous line
      8e95a2026f3b43f7c3d676adaccd2de9532e8dcc (12/3/09)
61. Carlson - Make TSS enable independent of MSI-X enable *
      19cfaecc094781da273b5cd1411ee46589898d0e (12/3/09)
62. Carlson: Add 57765 asic rev* 02
      b703df6f628ab63eaa875232551b1f2f0503b9af (12/3/09)
63. Carlson: Update to version 3.105
      cceea982ef78cf358b70f3412a6799f153211e14 (12/3/09)
64: Carlson: Fix std prod ring nicaddr for 5787 and 57765
      13fa95b0398d65885a79c6e95a09976ee9f8c009
65. Carlson: Fix std rx prod ring handling
      86cfe4ff02a51294cb2c974a8bedc7f648491df9 (1/14/10)
66. Carlson: Add rellable serdes detection for 5717 A0
      d1ec96af77df611d1728f3bb70289f83a02df1ea (1/14/10)
67. Carlson: Disable 5717 serdes and B0 support
      55dffe79b34e2af98bd1315f1e00c2fc6a7a7078 (1/14/10)
68. Carlson: Update copyright and driver version
      ba5b0bfa06b6fbee03c6889046e9adcefa5d2c20 (1/14/10)

Comment 30 Chris Ward 2010-02-11 10:24:36 UTC
~~ Attention Customers and Partners - RHEL 5.5 Beta is now available on RHN ~~

RHEL 5.5 Beta has been released! There should be a fix present in this 
release that addresses your request. Please test and report back results 
here, by March 3rd 2010 (2010-03-03) or sooner.

Upon successful verification of this request, post your results and update 
the Verified field in Bugzilla with the appropriate value.

If you encounter any issues while testing, please describe them and set 
this bug into NEED_INFO. If you encounter new defects or have additional 
patch(es) to request for inclusion, please clone this bug per each request
and escalate through your support representative.

Comment 31 Andrius Benokraitis 2010-02-12 17:56:39 UTC
Note to Broadcom - the latest patchset was committed to 2.6.18-187.el5, which is Snapshot 1. Please disregard Comment #30.

Comment 32 Chris Ward 2010-02-15 09:08:42 UTC
Yes, my apologies. This items is scheduled for inclusion in Snapshot 1.

Comment 34 Chris Ward 2010-03-05 12:53:03 UTC
@Broadcom

Any test status updates for this request. RHEL QE would greatly appreciate an update as soon as possible.

Comment 35 Ben 2010-03-05 13:13:14 UTC
Update the test status for Snapshot 3.
                          57765    5785
   LED                    Pass     Pass
   Load/unload stress     Pass     Pass
   Link Speed/Duplex      Pass     Pass
   Flow Control           Pass     Pass
   IPv6 Checksum offload           Pass
   UDP Performance                 Pass

Will continuous testing and updating.

Comment 36 Ben 2010-03-05 13:15:31 UTC
Update comment#35, we use x86_64 of snapshot 3.

Comment 38 errata-xmlrpc 2010-03-30 07:33:24 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2010-0178.html

Comment 39 Red Hat Bugzilla 2023-09-14 01:18:59 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 1000 days


Note You need to log in before you can comment on or make changes to this bug.