return 0;
/* Device list creation is only done once */
- if (!process_once)
+ if (!process_once) {
rte_dpaa_bus_dev_build();
+ if (rte_eal_process_type() == RTE_PROC_PRIMARY) {
+ /* One time load of Qman/Bman drivers */
+ ret = qman_global_init();
+ if (ret) {
+ DPAA_PMD_ERR("QMAN initialization failed: %d",
+ ret);
+ return ret;
+ }
+ ret = bman_global_init();
+ if (ret) {
+ DPAA_PMD_ERR("BMAN initialization failed: %d",
+ ret);
+ return ret;
+ }
+ }
+ }
process_once = 1;
/* If no device present on DPAA bus nothing needs to be done */
RTE_DEV_WHITELISTED)) {
ret = drv->probe(drv, dev);
if (ret) {
- DPAA_BUS_ERR("Unable to probe.\n");
+ DPAA_BUS_ERR("unable to probe:%s",
+ dev->name);
} else {
dev->driver = drv;
dev->device.driver = &drv->driver;
}
}
+ if (unlikely(!RTE_PER_LCORE(dpaa_io))) {
+ retval = rte_dpaa_portal_init((void *)1);
+ if (retval) {
+ DPAA_SEC_ERR("Unable to initialize portal");
+ return retval;
+ }
+ }
+
/* Invoke PMD device initialization function */
retval = dpaa_sec_dev_init(cryptodev);
if (retval == 0)
}
if (!is_global_init && (rte_eal_process_type() == RTE_PROC_PRIMARY)) {
- /* One time load of Qman/Bman drivers */
- ret = qman_global_init();
- if (ret) {
- DPAA_PMD_ERR("QMAN initialization failed: %d",
- ret);
- return ret;
- }
- ret = bman_global_init();
- if (ret) {
- DPAA_PMD_ERR("BMAN initialization failed: %d",
- ret);
- return ret;
- }
-
if (access("/tmp/fmc.bin", F_OK) == -1) {
RTE_LOG(INFO, PMD,
"* FMC not configured.Enabling default mode\n");