X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fbaseband%2Ffpga_lte_fec%2Ffpga_lte_fec.c;h=6be9131e72d547f60eb2d04ed8f0884398db7335;hb=8bccf4774c3007726b45b73318732ea29dc435ce;hp=7e05b94cfeac5f566f6f7dc5624c0b2326566db2;hpb=b443f318c608e97ae4acdc71e2648ab7db3ab940;p=dpdk.git diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c index 7e05b94cfe..6be9131e72 100644 --- a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c +++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c @@ -22,8 +22,11 @@ #include "fpga_lte_fec.h" -/* Turbo SW PMD logging ID */ -static int fpga_lte_fec_logtype; +#ifdef RTE_LIBRTE_BBDEV_DEBUG +RTE_LOG_REGISTER(fpga_lte_fec_logtype, pmd.bb.fpga_lte_fec, DEBUG); +#else +RTE_LOG_REGISTER(fpga_lte_fec_logtype, pmd.bb.fpga_lte_fec, NOTICE); +#endif /* Helper macro for logging */ #define rte_bbdev_log(level, fmt, ...) \ @@ -114,7 +117,7 @@ enum { }; /* FPGA LTE FEC DMA Encoding Request Descriptor */ -struct __attribute__((__packed__)) fpga_dma_enc_desc { +struct __rte_packed fpga_dma_enc_desc { uint32_t done:1, rsrvd0:11, error:4, @@ -151,7 +154,7 @@ struct __attribute__((__packed__)) fpga_dma_enc_desc { }; /* FPGA LTE FEC DMA Decoding Request Descriptor */ -struct __attribute__((__packed__)) fpga_dma_dec_desc { +struct __rte_packed fpga_dma_dec_desc { uint32_t done:1, iter:5, rsrvd0:2, @@ -197,7 +200,7 @@ union fpga_dma_desc { }; /* FPGA LTE FEC Ring Control Register */ -struct __attribute__((__packed__)) fpga_ring_ctrl_reg { +struct __rte_packed fpga_ring_ctrl_reg { uint64_t ring_base_addr; uint64_t ring_head_addr; uint16_t ring_size:11; @@ -889,7 +892,7 @@ fpga_queue_stop(struct rte_bbdev *dev, uint16_t queue_id) * completed. If completion flag is not updated within 1ms it is * considered as a failure. */ - while (!(*((uint8_t *)d->flush_queue_status + q->q_idx) & payload)) { + while (!(*((volatile uint8_t *)d->flush_queue_status + q->q_idx) & payload)) { if (counter > timeout) { rte_bbdev_log(ERR, "FPGA Queue Flush failed for queue %d", queue_id); @@ -2307,7 +2310,7 @@ fpga_dequeue_dec(struct rte_bbdev_queue_data *q_data, /* Initialization Function */ static void -fpga_lte_fec_init(struct rte_bbdev *dev) +fpga_lte_fec_init(struct rte_bbdev *dev, struct rte_pci_driver *drv) { struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(dev->device); @@ -2318,7 +2321,7 @@ fpga_lte_fec_init(struct rte_bbdev *dev) dev->dequeue_dec_ops = fpga_dequeue_dec; ((struct fpga_lte_fec_device *) dev->data->dev_private)->pf_device = - !strcmp(dev->device->driver->name, + !strcmp(drv->driver.name, RTE_STR(FPGA_LTE_FEC_PF_DRIVER_NAME)); ((struct fpga_lte_fec_device *) dev->data->dev_private)->mmio_base = pci_dev->mem_resource[0].addr; @@ -2331,7 +2334,7 @@ fpga_lte_fec_init(struct rte_bbdev *dev) } static int -fpga_lte_fec_probe(struct rte_pci_driver *pci_drv __rte_unused, +fpga_lte_fec_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev) { struct rte_bbdev *bbdev = NULL; @@ -2368,7 +2371,7 @@ fpga_lte_fec_probe(struct rte_pci_driver *pci_drv __rte_unused, bbdev->data->socket_id = pci_dev->device.numa_node; /* Invoke FEC FPGA device initialization function */ - fpga_lte_fec_init(bbdev); + fpga_lte_fec_init(bbdev, pci_drv); rte_bbdev_log_debug("bbdev id = %u [%s]", bbdev->data->dev_id, dev_name); @@ -2662,14 +2665,3 @@ RTE_PMD_REGISTER_PCI_TABLE(FPGA_LTE_FEC_PF_DRIVER_NAME, RTE_PMD_REGISTER_PCI(FPGA_LTE_FEC_VF_DRIVER_NAME, fpga_lte_fec_pci_vf_driver); RTE_PMD_REGISTER_PCI_TABLE(FPGA_LTE_FEC_VF_DRIVER_NAME, pci_id_fpga_lte_fec_vf_map); - -RTE_INIT(fpga_lte_fec_init_log) -{ - fpga_lte_fec_logtype = rte_log_register("pmd.bb.fpga_lte_fec"); - if (fpga_lte_fec_logtype >= 0) -#ifdef RTE_LIBRTE_BBDEV_DEBUG - rte_log_set_level(fpga_lte_fec_logtype, RTE_LOG_DEBUG); -#else - rte_log_set_level(fpga_lte_fec_logtype, RTE_LOG_NOTICE); -#endif -}