diff --git a/driver/vidc/inc/msm_vidc_debug.h b/driver/vidc/inc/msm_vidc_debug.h index c7261465d6..fdefa84dda 100644 --- a/driver/vidc/inc/msm_vidc_debug.h +++ b/driver/vidc/inc/msm_vidc_debug.h @@ -42,7 +42,7 @@ enum vidc_msg_prio { VIDC_PRINTK = 0x00001000, VIDC_FTRACE = 0x00002000, FW_LOW = 0x00010000, - FW_MEDIUM = 0x00020000, + FW_MED = 0x00020000, FW_HIGH = 0x00040000, FW_ERROR = 0x00080000, FW_FATAL = 0x00100000, diff --git a/driver/vidc/src/msm_vidc_debug.c b/driver/vidc/src/msm_vidc_debug.c index 74f920e385..fa81fbb2f7 100644 --- a/driver/vidc/src/msm_vidc_debug.c +++ b/driver/vidc/src/msm_vidc_debug.c @@ -6,7 +6,7 @@ #include "msm_vidc_debug.h" int msm_vidc_debug = VIDC_HIGH | VIDC_LOW | VIDC_PKT | VIDC_ERR | VIDC_PRINTK | - FW_ERROR | FW_FATAL | FW_FTRACE | FW_LOW | FW_MEDIUM | FW_HIGH | + FW_ERROR | FW_FATAL | FW_FTRACE | FW_LOW | FW_MED | FW_HIGH | FW_PERF | FW_PRINTK; EXPORT_SYMBOL(msm_vidc_debug); diff --git a/driver/vidc/src/msm_vidc_driver.c b/driver/vidc/src/msm_vidc_driver.c index e873c6ad92..60b7d520c2 100644 --- a/driver/vidc/src/msm_vidc_driver.c +++ b/driver/vidc/src/msm_vidc_driver.c @@ -16,12 +16,12 @@ #include "venus_hfi.h" #include "msm_vidc.h" -#define COUNT_BITS(a, out) ({ \ +#define COUNT_BITS(a, out) { \ while ((a) >= 1) { \ (out) += (a) & (1); \ (a) >>= (1); \ } \ -}) +} void print_vidc_buffer(u32 tag, const char *str, struct msm_vidc_inst *inst, struct msm_vidc_buffer *vbuf) diff --git a/driver/vidc/src/msm_vidc_dt.c b/driver/vidc/src/msm_vidc_dt.c index 82c966618b..8b1b6eb316 100644 --- a/driver/vidc/src/msm_vidc_dt.c +++ b/driver/vidc/src/msm_vidc_dt.c @@ -696,9 +696,12 @@ static int msm_vidc_read_resources_from_dt(struct platform_device *pdev) kres = platform_get_resource(pdev, IORESOURCE_MEM, 0); dt->register_base = kres ? kres->start : -1; dt->register_size = kres ? (kres->end + 1 - kres->start) : -1; + d_vpr_h("%s: register base %pa, size %#x\n", + __func__, &dt->register_base, dt->register_size); kres = platform_get_resource(pdev, IORESOURCE_IRQ, 0); dt->irq = kres ? kres->start : -1; + d_vpr_h("%s: irq %d\n", __func__, dt->irq); rc = msm_vidc_load_fw_name(core); if (rc) diff --git a/driver/vidc/src/msm_vidc_probe.c b/driver/vidc/src/msm_vidc_probe.c index b70d596669..6b4a763999 100644 --- a/driver/vidc/src/msm_vidc_probe.c +++ b/driver/vidc/src/msm_vidc_probe.c @@ -72,7 +72,6 @@ static struct attribute_group msm_vidc_core_attr_group = { static const struct of_device_id msm_vidc_dt_match[] = { {.compatible = "qcom,msm-vidc"}, {.compatible = "qcom,msm-vidc,context-bank"}, - {} }; MODULE_DEVICE_TABLE(of, msm_vidc_dt_match); @@ -319,7 +318,7 @@ static int msm_vidc_remove(struct platform_device *pdev) return rc; } -static struct platform_driver msm_vidc_driver = { +struct platform_driver msm_vidc_driver = { .probe = msm_vidc_probe, .remove = msm_vidc_remove, .driver = { diff --git a/driver/vidc/src/venus_hfi.c b/driver/vidc/src/venus_hfi.c index ba6ceeeb86..1e92255685 100644 --- a/driver/vidc/src/venus_hfi.c +++ b/driver/vidc/src/venus_hfi.c @@ -957,7 +957,7 @@ static void __flush_debug_queue(struct msm_vidc_core *core, u8 *packet) log_level |= FW_PRINTK; } -#define SKIP_INVALID_PKT(pkt_size, payload_size, pkt_hdr_size) ({ \ +#define SKIP_INVALID_PKT(pkt_size, payload_size, pkt_hdr_size) { \ if (pkt_size < pkt_hdr_size || \ payload_size < MIN_PAYLOAD_SIZE || \ payload_size > \ @@ -966,7 +966,7 @@ static void __flush_debug_queue(struct msm_vidc_core *core, u8 *packet) __func__, payload_size); \ continue; \ } \ - }) + } while (!__iface_dbgq_read(core, packet)) { struct hfi_packet_header *pkt = @@ -2168,7 +2168,7 @@ static int __interface_queues_init(struct msm_vidc_core *core) for (i = 0; i < VIDC_IFACEQ_NUMQ; i++) { iface_q = &core->iface_queues[i]; iface_q->q_array.align_device_addr = map.device_addr + offset; - iface_q->q_array.align_virtual_addr = alloc.kvaddr + offset; + iface_q->q_array.align_virtual_addr = (void*)((char*)alloc.kvaddr + offset); iface_q->q_array.mem_size = VIDC_IFACEQ_QUEUE_SIZE; offset += iface_q->q_array.mem_size; iface_q->q_hdr = VIDC_IFACEQ_GET_QHDR_START_ADDR(