get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/65721/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 65721,
    "url": "https://patches.dpdk.org/api/patches/65721/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/20200211081939.17793-1-cnamburu@amd.com/",
    "project": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<20200211081939.17793-1-cnamburu@amd.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20200211081939.17793-1-cnamburu@amd.com",
    "date": "2020-02-11T08:19:39",
    "name": "[v1] net/axgbe: add debug logs",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "beb36f86009430ccef76a9419eddbb0c27a0e467",
    "submitter": {
        "id": 1544,
        "url": "https://patches.dpdk.org/api/people/1544/?format=api",
        "name": "Chandu Babu Namburu",
        "email": "cnamburu@amd.com"
    },
    "delegate": {
        "id": 319,
        "url": "https://patches.dpdk.org/api/users/319/?format=api",
        "username": "fyigit",
        "first_name": "Ferruh",
        "last_name": "Yigit",
        "email": "ferruh.yigit@amd.com"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/20200211081939.17793-1-cnamburu@amd.com/mbox/",
    "series": [
        {
            "id": 8492,
            "url": "https://patches.dpdk.org/api/series/8492/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=8492",
            "date": "2020-02-11T08:19:39",
            "name": "[v1] net/axgbe: add debug logs",
            "version": 1,
            "mbox": "https://patches.dpdk.org/series/8492/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/65721/comments/",
    "check": "success",
    "checks": "https://patches.dpdk.org/api/patches/65721/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 9DC3AA051C;\n\tTue, 11 Feb 2020 09:20:04 +0100 (CET)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id B5E722BE9;\n\tTue, 11 Feb 2020 09:20:03 +0100 (CET)",
            "from NAM12-DM6-obe.outbound.protection.outlook.com\n (mail-dm6nam12on2054.outbound.protection.outlook.com [40.107.243.54])\n by dpdk.org (Postfix) with ESMTP id 579BB2BD8\n for <dev@dpdk.org>; Tue, 11 Feb 2020 09:20:02 +0100 (CET)",
            "from MN2PR12MB3021.namprd12.prod.outlook.com (20.178.240.158) by\n MN2PR12MB4109.namprd12.prod.outlook.com (52.135.50.13) with Microsoft SMTP\n Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.20.2707.23; Tue, 11 Feb 2020 08:20:00 +0000",
            "from MN2PR12MB3021.namprd12.prod.outlook.com\n ([fe80::9d79:4bf9:c31d:a53b]) by MN2PR12MB3021.namprd12.prod.outlook.com\n ([fe80::9d79:4bf9:c31d:a53b%3]) with mapi id 15.20.2707.030; Tue, 11 Feb 2020\n 08:20:00 +0000",
            "from cae-Wallaby.amd.com (165.204.156.251) by\n MA1PR01CA0110.INDPRD01.PROD.OUTLOOK.COM (2603:1096:a00:1::26) with Microsoft\n SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.20.2707.24 via Frontend Transport; Tue, 11 Feb 2020 08:19:59 +0000"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=I9rfOst5PpmI6HNlZlAnu1zQZ+FvCz0tIMgKlOe8SfmbvMI4fLYIJQDFVSRXA+sv+aK2pwQlboY7cJDGPXQvr8iiXajehVCasY9Qwqd/5MH62g75iYSD3aSsgRLMBUxNNJoYjQdSBt8C3vdMhC5SXQPRjDN4ryVdTnojytviL1oGvRSIxhUPAxVMltuoC2WTIQzL3KnPZ/JI7wVa2ZY12KEqpSmN7vfRp5+FqCIDnpOgLG8MnOVxU3DTqX9yKdjoQ9WAQIY/6EVOLLI8DorSQFU1XpjHgzqaV04VE3bvbrnIeVW8crRa4ltMS/JUgYIWMLU2ZrKk+D+WEIhqSgwSKQ==",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=Z983bg4K+WcRA9ZTK/DNlnkZLl3qhaUjgrkX+82NGi4=;\n b=bh6zwlD/iMwFAu/zcdTB9PkW/t3wUKoBtPkpDj8fYxBkvscRofrt6K4lO1Yyh9buc47a74NieiTAbpcIV3RvrofP/BwKdv8L7d42B81lDlLggwpW1HutEr85AxGQ3H9+L+gkTqTQlZtkQ0CC9YqvBJhkVKIgXuDY56DP+VajBl8TcuLZedS3SlfLIuW3UyoMAZkPcsxEGwhgHTHPfm0dHbw5nzS6fgSLNAZGnJOM64rADZE1kqGXkBYdczSXy8o760jL/uKrzIDgdorE0aV6PplXewdHVtTsaN2TLOQDo1MxifV4bmA4SVj3rPEQgAZVm9E0NuTFOD3sGKWmV0yzYg==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass\n header.d=amd.com; arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=amdcloud.onmicrosoft.com; s=selector2-amdcloud-onmicrosoft-com;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=Z983bg4K+WcRA9ZTK/DNlnkZLl3qhaUjgrkX+82NGi4=;\n b=J3AIH6q7wnMyhVtGClOKdpnWlkEpxrn77GeFli1Tj71/hA3uxLH+MDlcCgW0tLOZBuHn27zsd7FpcNPoYEMtvreVfO2teJBT/nR0ZPVleh0YSCi9/JmrtWpZAqyiwMh1MppVGVLIhLLO2R0aogmd/5P1kFxKtej7B7G089xdfo8=",
        "Authentication-Results": "spf=none (sender IP is ) smtp.mailfrom=chandu@amd.com; ",
        "From": "cnamburu@amd.com",
        "To": "dev@dpdk.org",
        "Cc": "Ravi1.Kumar@amd.com,\n\tAmaranath.Somalapuram@amd.com",
        "Date": "Tue, 11 Feb 2020 13:49:39 +0530",
        "Message-Id": "<20200211081939.17793-1-cnamburu@amd.com>",
        "X-Mailer": [
            "git-send-email 2.17.1",
            "git-send-email 2.17.1"
        ],
        "Content-Type": "text/plain",
        "X-ClientProxiedBy": "MA1PR01CA0110.INDPRD01.PROD.OUTLOOK.COM\n (2603:1096:a00:1::26) To MN2PR12MB3021.namprd12.prod.outlook.com\n (2603:10b6:208:c2::30)",
        "MIME-Version": "1.0",
        "X-Originating-IP": "[165.204.156.251]",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-HT": "Tenant",
        "X-MS-Office365-Filtering-Correlation-Id": "374903b3-1bc1-4f01-a9a3-08d7aecb300d",
        "X-MS-TrafficTypeDiagnostic": "MN2PR12MB4109:|MN2PR12MB4109:",
        "X-MS-Exchange-Transport-Forked": "True",
        "X-Microsoft-Antispam-PRVS": "\n <MN2PR12MB41098700B9A0DB7DCD376FF2C8180@MN2PR12MB4109.namprd12.prod.outlook.com>",
        "X-MS-Oob-TLC-OOBClassifiers": "OLM:206;",
        "X-Forefront-PRVS": "0310C78181",
        "X-Forefront-Antispam-Report": "SFV:NSPM;\n SFS:(10009020)(4636009)(376002)(39860400002)(396003)(136003)(366004)(346002)(199004)(189003)(66556008)(16526019)(186003)(2906002)(66476007)(4326008)(2616005)(956004)(66946007)(316002)(5660300002)(81166006)(81156014)(478600001)(6666004)(8676002)(6486002)(9686003)(8936002)(1076003)(30864003)(52116002)(7696005)(6916009)(36756003)(26005);\n DIR:OUT; SFP:1101; SCL:1; SRVR:MN2PR12MB4109;\n H:MN2PR12MB3021.namprd12.prod.outlook.com; FPR:; SPF:None; LANG:en;\n PTR:InfoNoRecords; A:1; MX:1;",
        "Received-SPF": "None (protection.outlook.com: amd.com does not designate\n permitted sender hosts)",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n FMoQtbXGiYclInu0BT9PLTWIFjXNEl/8grX6L+wl9R2kL8EZ07l6EgutX/sLNcXeWWNsIMGBmKb8TVvTt1ZLb0Wn2yBnoq3tDgd/eMB8Oc0Hw8l3g2bllKPNcDDP6kcQx+l1WMLpMJTSO2url9Or8pJiSuXbkT0zERI2qnQVIuumb6lhMa4Uo94B5HOmGbc6C5Ei7a+MqFHHKNrbC2ejUWuqQdE19S8HITdM9T58PzkLZ+lJBJ4CMwW9B84tcJmMkV0hG2QHZwwqoZJ86CUrY6zf46NucYgsovdULzvPnY16iWXRh3dM9QTHCuswaP5Z51fS3ZhSV2MuSBqSvyFYnb7GLXLvEYS+CyUWXK7DBcRaEwumcKLX+UhI7oczyf0uERS7UJQs1MQ1ZDyGnO9dUE4w+yLIZQ5Rhux4YtCcj0svpZLD+WjcadIyB1WqT/Qj",
        "X-MS-Exchange-AntiSpam-MessageData": "\n 9kwOucgTkZ/by6reo8HXe9QuNPdc4z4eIvVBmUl+zOVdHoorNbn8ivqSmeTCdzV5l/ij1pcEiZKBdD3g+6WyBREpp7MRaEj7tLF+bFCuQliRspV6+azoegyem1TmGJKtnWXJeV7gaBD6zOON+lw+Sw==",
        "X-OriginatorOrg": "amd.com",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 374903b3-1bc1-4f01-a9a3-08d7aecb300d",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "11 Feb 2020 08:20:00.7478 (UTC)",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-CrossTenant-Id": "3dd8961f-e488-4e60-8e11-a82d994e183d",
        "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED",
        "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n DytV4vdGNZm8F2cSbhbRQ0Oay1pd74S/rivroMO1q0htMPnTEJrMmLfQiAFqEOO9XszbqMZNq/weY1iyCp1sRQ==",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "MN2PR12MB4109",
        "Subject": "[dpdk-dev] [PATCH v1] net/axgbe: add debug logs",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "From: Chandu Babu N <chandu@amd.com>\n\nAdd debug logs in various modules in axgbe\n\nSigned-off-by: Chandu Babu N <chandu@amd.com>\n---\n drivers/net/axgbe/axgbe_dev.c      | 17 ++++++++--\n drivers/net/axgbe/axgbe_ethdev.c   |  2 ++\n drivers/net/axgbe/axgbe_i2c.c      | 10 ++++++\n drivers/net/axgbe/axgbe_mdio.c     | 51 +++++++++++++++++++++++++++++-\n drivers/net/axgbe/axgbe_phy_impl.c | 43 ++++++++++++++++++++++++-\n 5 files changed, 119 insertions(+), 4 deletions(-)",
    "diff": "diff --git a/drivers/net/axgbe/axgbe_dev.c b/drivers/net/axgbe/axgbe_dev.c\nindex 83089f20d..2e796c0b3 100644\n--- a/drivers/net/axgbe/axgbe_dev.c\n+++ b/drivers/net/axgbe/axgbe_dev.c\n@@ -260,6 +260,9 @@ static int axgbe_enable_tx_flow_control(struct axgbe_port *pdata)\n \t\t\tehfc = 1;\n \n \t\tAXGMAC_MTL_IOWRITE_BITS(pdata, i, MTL_Q_RQOMR, EHFC, ehfc);\n+\n+\t\tPMD_DRV_LOG(DEBUG, \"flow control %s for RXq%u\\n\",\n+\t\t\t    ehfc ? \"enabled\" : \"disabled\", i);\n \t}\n \n \t/* Set MAC flow control */\n@@ -915,6 +918,9 @@ static void axgbe_config_rx_fifo_size(struct axgbe_port *pdata)\n \t/*Calculate and config Flow control threshold*/\n \taxgbe_calculate_flow_control_threshold(pdata);\n \taxgbe_config_flow_control_threshold(pdata);\n+\n+\tPMD_DRV_LOG(DEBUG, \"%d Rx hardware queues, %d byte fifo per queue\\n\",\n+\t\t    pdata->rx_q_count, q_fifo_size);\n }\n \n static void axgbe_config_tx_fifo_size(struct axgbe_port *pdata)\n@@ -938,6 +944,9 @@ static void axgbe_config_tx_fifo_size(struct axgbe_port *pdata)\n \n \tfor (i = 0; i < pdata->tx_q_count; i++)\n \t\tAXGMAC_MTL_IOWRITE_BITS(pdata, i, MTL_Q_TQOMR, TQS, p_fifo);\n+\n+\tPMD_DRV_LOG(DEBUG, \"%d Tx hardware queues, %d byte fifo per queue\\n\",\n+\t\t    pdata->tx_q_count, q_fifo_size);\n }\n \n static void axgbe_config_queue_mapping(struct axgbe_port *pdata)\n@@ -952,12 +961,16 @@ static void axgbe_config_queue_mapping(struct axgbe_port *pdata)\n \tqptc_extra = pdata->tx_q_count % pdata->hw_feat.tc_cnt;\n \n \tfor (i = 0, queue = 0; i < pdata->hw_feat.tc_cnt; i++) {\n-\t\tfor (j = 0; j < qptc; j++)\n+\t\tfor (j = 0; j < qptc; j++) {\n+\t\t\tPMD_DRV_LOG(DEBUG, \"TXq%u mapped to TC%u\\n\", queue, i);\n \t\t\tAXGMAC_MTL_IOWRITE_BITS(pdata, queue, MTL_Q_TQOMR,\n \t\t\t\t\t\tQ2TCMAP, i);\n-\t\tif (i < qptc_extra)\n+\t\t}\n+\t\tif (i < qptc_extra) {\n+\t\t\tPMD_DRV_LOG(DEBUG, \"TXq%u mapped to TC%u\\n\", queue, i);\n \t\t\tAXGMAC_MTL_IOWRITE_BITS(pdata, queue, MTL_Q_TQOMR,\n \t\t\t\t\t\tQ2TCMAP, i);\n+\t\t}\n \t}\n \n \tif (pdata->rss_enable) {\ndiff --git a/drivers/net/axgbe/axgbe_ethdev.c b/drivers/net/axgbe/axgbe_ethdev.c\nindex d0b6f091f..7445c544d 100644\n--- a/drivers/net/axgbe/axgbe_ethdev.c\n+++ b/drivers/net/axgbe/axgbe_ethdev.c\n@@ -201,12 +201,14 @@ axgbe_dev_interrupt_handler(void *param)\n \tpdata->phy_if.an_isr(pdata);\n \t/*DMA related interrupts*/\n \tdma_isr = AXGMAC_IOREAD(pdata, DMA_ISR);\n+\tPMD_DRV_LOG(DEBUG, \"DMA_ISR=%#010x\\n\", dma_isr);\n \tif (dma_isr) {\n \t\tif (dma_isr & 1) {\n \t\t\tdma_ch_isr =\n \t\t\t\tAXGMAC_DMA_IOREAD((struct axgbe_rx_queue *)\n \t\t\t\t\t\t  pdata->rx_queues[0],\n \t\t\t\t\t\t  DMA_CH_SR);\n+\t\t\tPMD_DRV_LOG(DEBUG, \"DMA_CH0_ISR=%#010x\\n\", dma_ch_isr);\n \t\t\tAXGMAC_DMA_IOWRITE((struct axgbe_rx_queue *)\n \t\t\t\t\t   pdata->rx_queues[0],\n \t\t\t\t\t   DMA_CH_SR, dma_ch_isr);\ndiff --git a/drivers/net/axgbe/axgbe_i2c.c b/drivers/net/axgbe/axgbe_i2c.c\nindex 204ec3679..ab3738a12 100644\n--- a/drivers/net/axgbe/axgbe_i2c.c\n+++ b/drivers/net/axgbe/axgbe_i2c.c\n@@ -162,9 +162,15 @@ static int axgbe_i2c_isr(struct axgbe_port *pdata)\n \n \tisr = XI2C_IOREAD(pdata, IC_RAW_INTR_STAT);\n \n+\tPMD_DRV_LOG(DEBUG, \"I2C interrupt received: status=%#010x\\n\", isr);\n+\n \taxgbe_i2c_clear_isr_interrupts(pdata, isr);\n \n \tif (isr & AXGBE_INTR_TX_ABRT) {\n+\t\tPMD_DRV_LOG(DEBUG,\n+\t\t\t    \"I2C TX_ABRT received (%#010x) for target %#04x\\n\",\n+\t\t\t    state->tx_abort_source, state->op->target);\n+\n \t\taxgbe_i2c_disable_interrupts(pdata);\n \n \t\tstate->ret = -EIO;\n@@ -285,6 +291,8 @@ static void axgbe_i2c_stop(struct axgbe_port *pdata)\n \tif (!pdata->i2c.started)\n \t\treturn;\n \n+\tPMD_DRV_LOG(DEBUG, \"stopping I2C\\n\");\n+\n \tpdata->i2c.started = 0;\n \taxgbe_i2c_disable_interrupts(pdata);\n \taxgbe_i2c_disable(pdata);\n@@ -296,6 +304,8 @@ static int axgbe_i2c_start(struct axgbe_port *pdata)\n \tif (pdata->i2c.started)\n \t\treturn 0;\n \n+\tPMD_DRV_LOG(DEBUG, \"starting I2C\\n\");\n+\n \tpdata->i2c.started = 1;\n \n \treturn 0;\ndiff --git a/drivers/net/axgbe/axgbe_mdio.c b/drivers/net/axgbe/axgbe_mdio.c\nindex 4b280b72d..0f226c3f2 100644\n--- a/drivers/net/axgbe/axgbe_mdio.c\n+++ b/drivers/net/axgbe/axgbe_mdio.c\n@@ -300,6 +300,8 @@ static void axgbe_an73_restart(struct axgbe_port *pdata)\n {\n \taxgbe_an73_enable_interrupts(pdata);\n \taxgbe_an73_set(pdata, true, true);\n+\n+\tPMD_DRV_LOG(DEBUG, \"CL73 AN enabled/restarted\\n\");\n }\n \n static void axgbe_an73_disable(struct axgbe_port *pdata)\n@@ -307,6 +309,8 @@ static void axgbe_an73_disable(struct axgbe_port *pdata)\n \taxgbe_an73_set(pdata, false, false);\n \taxgbe_an73_disable_interrupts(pdata);\n \tpdata->an_start = 0;\n+\n+\tPMD_DRV_LOG(DEBUG, \"CL73 AN disabled\\n\");\n }\n \n static void axgbe_an_restart(struct axgbe_port *pdata)\n@@ -384,6 +388,8 @@ static enum axgbe_an axgbe_an73_tx_training(struct axgbe_port *pdata,\n \t\tXMDIO_WRITE(pdata, MDIO_MMD_PMAPMD, MDIO_PMA_10GBR_PMD_CTRL,\n \t\t\t    reg);\n \n+\t\tPMD_DRV_LOG(DEBUG, \"KR training initiated\\n\");\n+\n \t\tif (pdata->phy_if.phy_impl.kr_training_post)\n \t\t\tpdata->phy_if.phy_impl.kr_training_post(pdata);\n \t}\n@@ -466,6 +472,9 @@ static enum axgbe_an axgbe_an73_page_received(struct axgbe_port *pdata)\n \t\t\tpdata->kx_state = AXGBE_RX_BPA;\n \n \t\t\tpdata->an_start = rte_get_timer_cycles();\n+\n+\t\t\tPMD_DRV_LOG(NOTICE,\n+\t\t\t\t    \"CL73 AN timed out, resetting state\\n\");\n \t\t}\n \t}\n \n@@ -515,6 +524,26 @@ static enum axgbe_an axgbe_an73_incompat_link(struct axgbe_port *pdata)\n \treturn AXGBE_AN_INCOMPAT_LINK;\n }\n \n+static const char *axgbe_state_as_string(enum axgbe_an state)\n+{\n+\tswitch (state) {\n+\tcase AXGBE_AN_READY:\n+\t\treturn \"Ready\";\n+\tcase AXGBE_AN_PAGE_RECEIVED:\n+\t\treturn \"Page-Received\";\n+\tcase AXGBE_AN_INCOMPAT_LINK:\n+\t\treturn \"Incompatible-Link\";\n+\tcase AXGBE_AN_COMPLETE:\n+\t\treturn \"Complete\";\n+\tcase AXGBE_AN_NO_LINK:\n+\t\treturn \"No-Link\";\n+\tcase AXGBE_AN_ERROR:\n+\t\treturn \"Error\";\n+\tdefault:\n+\t\treturn \"Undefined\";\n+\t}\n+}\n+\n static void axgbe_an73_state_machine(struct axgbe_port *pdata)\n {\n \tenum axgbe_an cur_state = pdata->an_state;\n@@ -536,6 +565,9 @@ static void axgbe_an73_state_machine(struct axgbe_port *pdata)\n \t\tpdata->an_state = AXGBE_AN_ERROR;\n \t}\n \n+\tPMD_DRV_LOG(DEBUG, \"CL73 AN : %s\\n\",\n+\t\t    axgbe_state_as_string(pdata->an_state));\n+\n again:\n \tcur_state = pdata->an_state;\n \n@@ -581,6 +613,9 @@ static void axgbe_an73_state_machine(struct axgbe_port *pdata)\n \t\tpdata->an_start = 0;\n \t\tif (pdata->phy_if.phy_impl.an_post)\n \t\t\tpdata->phy_if.phy_impl.an_post(pdata);\n+\n+\t\tPMD_DRV_LOG(DEBUG, \"CL73 AN result: %s\\n\",\n+\t\t\t    axgbe_state_as_string(pdata->an_result));\n \t}\n \n \tif (cur_state != pdata->an_state)\n@@ -685,6 +720,8 @@ static void axgbe_an37_isr(struct axgbe_port *pdata)\n \n static void axgbe_an_isr(struct axgbe_port *pdata)\n {\n+\tPMD_DRV_LOG(DEBUG, \"AN interrupt received\\n\");\n+\n \tswitch (pdata->an_mode) {\n \tcase AXGBE_AN_MODE_CL73:\n \tcase AXGBE_AN_MODE_CL73_REDRV:\n@@ -792,6 +829,8 @@ static void axgbe_an73_init(struct axgbe_port *pdata)\n \treg &= ~AXGBE_XNP_NP_EXCHANGE;\n \n \tXMDIO_WRITE(pdata, MDIO_MMD_AN, MDIO_AN_ADVERTISE, reg);\n+\n+\tPMD_DRV_LOG(DEBUG, \"CL73 AN initialized\\n\");\n }\n \n static void axgbe_an_init(struct axgbe_port *pdata)\n@@ -843,6 +882,8 @@ static int axgbe_phy_config_fixed(struct axgbe_port *pdata)\n {\n \tenum axgbe_mode mode;\n \n+\tPMD_DRV_LOG(DEBUG, \"fixed PHY configuration\\n\");\n+\n \t/* Disable auto-negotiation */\n \taxgbe_an_disable(pdata);\n \n@@ -886,6 +927,9 @@ static int __axgbe_phy_config_aneg(struct axgbe_port *pdata)\n \t\tret = axgbe_phy_config_fixed(pdata);\n \t\tif (ret || !pdata->kr_redrv)\n \t\t\treturn ret;\n+\t\tPMD_DRV_LOG(DEBUG, \"AN redriver support\\n\");\n+\t} else {\n+\t\tPMD_DRV_LOG(DEBUG, \"AN PHY configuration\\n\");\n \t}\n \n \t/* Disable auto-negotiation interrupt */\n@@ -959,8 +1003,10 @@ static void axgbe_check_link_timeout(struct axgbe_port *pdata)\n \tlink_timeout = pdata->link_check + (AXGBE_LINK_TIMEOUT *\n \t\t\t\t\t    2 *  rte_get_timer_hz());\n \tticks = rte_get_timer_cycles();\n-\tif (time_after(ticks, link_timeout))\n+\tif (time_after(ticks, link_timeout)) {\n+\t\tPMD_DRV_LOG(NOTICE, \"AN link timeout\\n\");\n \t\taxgbe_phy_config_aneg(pdata);\n+\t}\n }\n \n static enum axgbe_mode axgbe_phy_status_aneg(struct axgbe_port *pdata)\n@@ -1088,6 +1134,7 @@ static void axgbe_phy_status(struct axgbe_port *pdata)\n \n static void axgbe_phy_stop(struct axgbe_port *pdata)\n {\n+\tPMD_DRV_LOG(DEBUG, \"stopping PHY\\n\");\n \tif (!pdata->phy_started)\n \t\treturn;\n \t/* Indicate the PHY is down */\n@@ -1103,6 +1150,8 @@ static int axgbe_phy_start(struct axgbe_port *pdata)\n {\n \tint ret;\n \n+\tPMD_DRV_LOG(DEBUG, \"starting PHY\\n\");\n+\n \tret = pdata->phy_if.phy_impl.start(pdata);\n \tif (ret)\n \t\treturn ret;\ndiff --git a/drivers/net/axgbe/axgbe_phy_impl.c b/drivers/net/axgbe/axgbe_phy_impl.c\nindex a324a2bc9..02236ec19 100644\n--- a/drivers/net/axgbe/axgbe_phy_impl.c\n+++ b/drivers/net/axgbe/axgbe_phy_impl.c\n@@ -790,6 +790,32 @@ static void axgbe_phy_sfp_reset(struct axgbe_phy_data *phy_data)\n \tphy_data->sfp_speed = AXGBE_SFP_SPEED_UNKNOWN;\n }\n \n+static const char *axgbe_base_as_string(enum axgbe_sfp_base sfp_base)\n+{\n+\tswitch (sfp_base) {\n+\tcase AXGBE_SFP_BASE_1000_T:\n+\t\treturn \"1G_T\";\n+\tcase AXGBE_SFP_BASE_1000_SX:\n+\t\treturn \"1G_SX\";\n+\tcase AXGBE_SFP_BASE_1000_LX:\n+\t\treturn \"1G_LX\";\n+\tcase AXGBE_SFP_BASE_1000_CX:\n+\t\treturn \"1G_CX\";\n+\tcase AXGBE_SFP_BASE_10000_SR:\n+\t\treturn \"10G_SR\";\n+\tcase AXGBE_SFP_BASE_10000_LR:\n+\t\treturn \"10G_LR\";\n+\tcase AXGBE_SFP_BASE_10000_LRM:\n+\t\treturn \"10G_LRM\";\n+\tcase AXGBE_SFP_BASE_10000_ER:\n+\t\treturn \"10G_ER\";\n+\tcase AXGBE_SFP_BASE_10000_CR:\n+\t\treturn \"10G_CR\";\n+\tdefault:\n+\t\treturn \"Unknown\";\n+\t}\n+}\n+\n static void axgbe_phy_sfp_detect(struct axgbe_port *pdata)\n {\n \tstruct axgbe_phy_data *phy_data = pdata->phy_data;\n@@ -820,6 +846,9 @@ static void axgbe_phy_sfp_detect(struct axgbe_port *pdata)\n \taxgbe_phy_sfp_parse_eeprom(pdata);\n \taxgbe_phy_sfp_external_phy(pdata);\n \n+\tPMD_DRV_LOG(DEBUG, \"SFP Base: %s\\n\",\n+\t\t    axgbe_base_as_string(phy_data->sfp_base));\n+\n put:\n \taxgbe_phy_sfp_phy_settings(pdata);\n \taxgbe_phy_put_comm_ownership(pdata);\n@@ -1169,7 +1198,10 @@ static void axgbe_phy_set_redrv_mode(struct axgbe_port *pdata)\n \n static void axgbe_phy_start_ratechange(struct axgbe_port *pdata)\n {\n-\tif (!XP_IOREAD_BITS(pdata, XP_DRIVER_INT_RO, STATUS))\n+\t/* Log if a previous command did not complete */\n+\tif (XP_IOREAD_BITS(pdata, XP_DRIVER_INT_RO, STATUS))\n+\t\tPMD_DRV_LOG(NOTICE, \"firmware mailbox not ready for command\\n\");\n+\telse\n \t\treturn;\n }\n \n@@ -1185,6 +1217,7 @@ static void axgbe_phy_complete_ratechange(struct axgbe_port *pdata)\n \n \t\trte_delay_us(1500);\n \t}\n+\tPMD_DRV_LOG(NOTICE, \"firmware mailbox command did not complete\\n\");\n }\n \n static void axgbe_phy_rrc(struct axgbe_port *pdata)\n@@ -1204,6 +1237,8 @@ static void axgbe_phy_rrc(struct axgbe_port *pdata)\n \tXP_IOWRITE_BITS(pdata, XP_DRIVER_INT_REQ, REQUEST, 1);\n \n \taxgbe_phy_complete_ratechange(pdata);\n+\n+\tPMD_DRV_LOG(DEBUG, \"receiver reset complete\\n\");\n }\n \n static void axgbe_phy_power_off(struct axgbe_port *pdata)\n@@ -1218,6 +1253,8 @@ static void axgbe_phy_power_off(struct axgbe_port *pdata)\n \tXP_IOWRITE_BITS(pdata, XP_DRIVER_INT_REQ, REQUEST, 1);\n \taxgbe_phy_complete_ratechange(pdata);\n \tphy_data->cur_mode = AXGBE_MODE_UNKNOWN;\n+\n+\tPMD_DRV_LOG(DEBUG, \"phy powered off\\n\");\n }\n \n static void axgbe_phy_sfi_mode(struct axgbe_port *pdata)\n@@ -1249,6 +1286,8 @@ static void axgbe_phy_sfi_mode(struct axgbe_port *pdata)\n \tXP_IOWRITE_BITS(pdata, XP_DRIVER_INT_REQ, REQUEST, 1);\n \taxgbe_phy_complete_ratechange(pdata);\n \tphy_data->cur_mode = AXGBE_MODE_SFI;\n+\n+\tPMD_DRV_LOG(DEBUG, \"10GbE SFI mode set\\n\");\n }\n \n static void axgbe_phy_kr_mode(struct axgbe_port *pdata)\n@@ -1271,6 +1310,8 @@ static void axgbe_phy_kr_mode(struct axgbe_port *pdata)\n \tXP_IOWRITE_BITS(pdata, XP_DRIVER_INT_REQ, REQUEST, 1);\n \taxgbe_phy_complete_ratechange(pdata);\n \tphy_data->cur_mode = AXGBE_MODE_KR;\n+\n+\tPMD_DRV_LOG(DEBUG, \"10GbE KR mode set\\n\");\n }\n \n static void axgbe_phy_kx_2500_mode(struct axgbe_port *pdata)\n",
    "prefixes": [
        "v1"
    ]
}