Re: [PATCH v13 1/2] drivers/coresight: Add UltraSoc System Memory Buffer driver

From: Suzuki Kuruppassery Poulose
Date: Mon Nov 21 2022 - 05:48:15 EST


On 18/11/2022 12:45, hejunhao wrote:
Hi Suzuki ,


On 2022/11/15 19:06, Suzuki K Poulose wrote:
On 14/11/2022 09:03, Junhao He wrote:
From: Qi Liu <liuqi115@xxxxxxxxxx>


+static void smb_init_hw(struct smb_drv_data *drvdata)
+{
+    /* First disable SMB and clear the status of SMB buffer */
+    smb_reset_buffer_status(drvdata);
+    smb_disable_hw(drvdata);
+    smb_purge_data(drvdata);
+
+    writel(SMB_LB_CFG_LO_DEFAULT, drvdata->base + SMB_LB_CFG_LO_REG);
+    writel(SMB_LB_CFG_HI_DEFAULT, drvdata->base + SMB_LB_CFG_HI_REG);
+    writel(SMB_GLB_CFG_DEFAULT, drvdata->base + SMB_GLB_CFG_REG);
+    writel(SMB_GLB_INT_CFG, drvdata->base + SMB_GLB_INT_REG);
+    writel(SMB_LB_INT_CTRL_CFG, drvdata->base + SMB_LB_INT_CTRL_REG);

Does this come with interrupt on overflow ? Do we not use this ?

When the buffer overflow, no interrupt will come.
Interrupt will upgrade SMB_LB_INT_STS_REG register status if start trace.
Thanks.
Rest looks fine to me.

What is the purpose of the "Interrupt" on the SMB ? It is not clear to
me.

Suzuki