diff options
author | qctecmdr <qctecmdr@localhost> | 2019-11-08 02:41:07 -0800 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2019-11-08 02:41:07 -0800 |
commit | 1ac73c7449b812e80b95a381ed71ab714a1d4b33 (patch) | |
tree | e2bb0a692aa24e6763271ac62531dd69cffe0087 /drivers/emac-dwc-eqos | |
parent | e0b46f605c3c2014cd5764ded7d27c78cfc86705 (diff) | |
parent | 71df524a4630e9c57c7417ab58b887c5407de4be (diff) | |
download | data-kernel-1ac73c7449b812e80b95a381ed71ab714a1d4b33.tar.gz |
Merge "data-kernel : EMAC: Fixing KW errors"
Diffstat (limited to 'drivers/emac-dwc-eqos')
-rw-r--r-- | drivers/emac-dwc-eqos/DWC_ETH_QOS_desc.c | 4 | ||||
-rw-r--r-- | drivers/emac-dwc-eqos/DWC_ETH_QOS_poll_support.c | 5 |
2 files changed, 5 insertions, 4 deletions
diff --git a/drivers/emac-dwc-eqos/DWC_ETH_QOS_desc.c b/drivers/emac-dwc-eqos/DWC_ETH_QOS_desc.c index ac56b19..ab9b06f 100644 --- a/drivers/emac-dwc-eqos/DWC_ETH_QOS_desc.c +++ b/drivers/emac-dwc-eqos/DWC_ETH_QOS_desc.c @@ -1440,7 +1440,7 @@ static int DWC_ETH_QOS_map_page_buffs(struct DWC_ETH_QOS_prv_data *pdata, DBGPR("-->DWC_ETH_QOS_map_page_buffs\n"); if (size > DWC_ETH_QOS_MAX_DATA_PER_TX_BUF) { - if (!prev_buffer->dma2) { + if (prev_buffer && !prev_buffer->dma2) { DBGPR("prev_buffer->dma2 is empty\n"); /* fill the first buffer pointer in pre_buffer->dma2 */ prev_buffer->dma2 = @@ -1505,7 +1505,7 @@ static int DWC_ETH_QOS_map_page_buffs(struct DWC_ETH_QOS_prv_data *pdata, buffer->buf2_mapped_as_page = Y_TRUE; } } else { - if (!prev_buffer->dma2) { + if (prev_buffer && !prev_buffer->dma2) { DBGPR("prev_buffer->dma2 is empty\n"); /* fill the first buffer pointer in pre_buffer->dma2 */ prev_buffer->dma2 = dma_map_page(GET_MEM_PDEV_DEV, diff --git a/drivers/emac-dwc-eqos/DWC_ETH_QOS_poll_support.c b/drivers/emac-dwc-eqos/DWC_ETH_QOS_poll_support.c index 5962c15..1e2c998 100644 --- a/drivers/emac-dwc-eqos/DWC_ETH_QOS_poll_support.c +++ b/drivers/emac-dwc-eqos/DWC_ETH_QOS_poll_support.c @@ -36,7 +36,7 @@ static ssize_t pps_fops_read(struct file *filp, char __user *buf, unsigned int len = 0, buf_len = 5000; char* temp_buf; - ssize_t ret_cnt; + ssize_t ret_cnt = 0; struct pps_info *info; info = filp->private_data; @@ -54,7 +54,8 @@ static ssize_t pps_fops_read(struct file *filp, char __user *buf, ret_cnt = simple_read_from_buffer(buf, count, f_pos, temp_buf, len); kfree(temp_buf); - EMACERR("poll pps2intr info=%d sent by kernel\n", gDWC_ETH_QOS_prv_data->avb_class_a_intr_cnt); + if (gDWC_ETH_QOS_prv_data) + EMACERR("poll pps2intr info=%d sent by kernel\n", gDWC_ETH_QOS_prv_data->avb_class_a_intr_cnt); } else if (info->channel_no == AVB_CLASS_B_CHANNEL_NUM ) { temp_buf = kzalloc(buf_len, GFP_KERNEL); if (!temp_buf) |