imamnurby/smpl_train_seed8 huggingface dataset:
--- initial
+++ final
@@ -1,30 +1,30 @@
 static void bdisp_dbg_dump_sty(struct seq_file *s, u32 val, u32 addr, char *name) {
   bool s1, s2, s3;
   seq_printf(s, "%s\t0x%08X\t", name, val);
   if (!addr || !name || (strlen(name) < 2)) goto done;
   s1 = name[strlen(name) - 1] == '1';
   s2 = name[strlen(name) - 1] == '2';
   s3 = name[strlen(name) - 1] == '3';
   seq_printf(s, "Pitch=%d - ", val & 0xFFFF);
   switch ((val & BLT_TTY_COL_MASK) >> BLT_TTY_COL_SHIFT) {
   case BDISP_RGB565: seq_puts(s, "RGB565 - "); break;
   case BDISP_RGB888: seq_puts(s, "RGB888 - "); break;
   case BDISP_XRGB8888: seq_puts(s, "xRGB888 - "); break;
   case BDISP_ARGB8888: seq_puts(s, "ARGB888 - "); break;
   case BDISP_NV12: seq_puts(s, "NV12 - "); break;
   case BDISP_YUV_3B: seq_puts(s, "YUV420P - "); break;
   default: seq_puts(s, "ColorFormat ??? - "); break;
   }
   if ((val & BLT_TTY_ALPHA_R) && !s3) seq_puts(s, "AlphaRange - ");
   if ((val & BLT_S1TY_A1_SUBSET) && !s3) seq_puts(s, "A1SubSet - ");
   if ((val & BLT_TTY_MB) && !s1) seq_puts(s, "MB - ");
   if (val & BLT_TTY_HSO) seq_puts(s, "HSO inverse - ");
   if (val & BLT_TTY_VSO) seq_puts(s, "VSO inverse - ");
   if ((val & BLT_S1TY_CHROMA_EXT) && (s1 || s2)) seq_puts(s, "ChromaExt - ");
   if ((val & BLT_S3TY_BLANK_ACC) && s3) seq_puts(s, "Blank Acc - ");
   if ((val & BTL_S1TY_SUBBYTE) && !s3) seq_puts(s, "SubByte - ");
   if ((val & BLT_S1TY_RGB_EXP) && !s3) seq_puts(s, "RGBExpand - ");
   if ((val & BLT_TTY_BIG_END) && !s3) seq_puts(s, "BigEndian - ");
 done:
-  seq_puts(s, "\n");
+  seq_putc(s, '\n');
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');
--- initial
+++ final
@@ -1,22 +1,22 @@
 static void bdisp_dbg_dump_tty(struct seq_file *s, u32 val) {
   seq_printf(s, "TTY\t0x%08X\t", val);
   seq_printf(s, "Pitch=%d - ", val & 0xFFFF);
   switch ((val & BLT_TTY_COL_MASK) >> BLT_TTY_COL_SHIFT) {
   case BDISP_RGB565: seq_puts(s, "RGB565 - "); break;
   case BDISP_RGB888: seq_puts(s, "RGB888 - "); break;
   case BDISP_XRGB8888: seq_puts(s, "xRGB888 - "); break;
   case BDISP_ARGB8888: seq_puts(s, "ARGB8888 - "); break;
   case BDISP_NV12: seq_puts(s, "NV12 - "); break;
   case BDISP_YUV_3B: seq_puts(s, "YUV420P - "); break;
   default: seq_puts(s, "ColorFormat ??? - "); break;
   }
   if (val & BLT_TTY_ALPHA_R) seq_puts(s, "AlphaRange - ");
   if (val & BLT_TTY_CR_NOT_CB) seq_puts(s, "CrNotCb - ");
   if (val & BLT_TTY_MB) seq_puts(s, "MB - ");
   if (val & BLT_TTY_HSO) seq_puts(s, "HSO inverse - ");
   if (val & BLT_TTY_VSO) seq_puts(s, "VSO inverse - ");
   if (val & BLT_TTY_DITHER) seq_puts(s, "Dither - ");
   if (val & BLT_TTY_CHROMA) seq_puts(s, "Write CHROMA - ");
   if (val & BLT_TTY_BIG_END) seq_puts(s, "BigEndian - ");
-  seq_puts(s, "\n");
+  seq_putc(s, '\n');
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');
--- initial
+++ final
@@ -1,19 +1,19 @@
 static int cursor_dbg_show(struct seq_file *s, void *data) {
   struct drm_info_node *node = s->private;
   struct sti_cursor *cursor = (struct sti_cursor *)node->info_ent->data;
   seq_printf(s, "%s: (vaddr = 0x%p)", sti_plane_to_str(&cursor->plane), cursor->regs);
   DBGFS_DUMP(CUR_CTL);
   DBGFS_DUMP(CUR_VPO);
   cursor_dbg_vpo(s, readl(cursor->regs + CUR_VPO));
   DBGFS_DUMP(CUR_PML);
   cursor_dbg_pml(s, cursor, readl(cursor->regs + CUR_PML));
   DBGFS_DUMP(CUR_PMP);
   DBGFS_DUMP(CUR_SIZE);
   cursor_dbg_size(s, readl(cursor->regs + CUR_SIZE));
   DBGFS_DUMP(CUR_CML);
   cursor_dbg_cml(s, cursor, readl(cursor->regs + CUR_CML));
   DBGFS_DUMP(CUR_AWS);
   DBGFS_DUMP(CUR_AWE);
-  seq_puts(s, "\n");
+  seq_putc(s, '\n');
   return 0;
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');
--- initial
+++ final
@@ -1,13 +1,13 @@
 static int dvo_dbg_show(struct seq_file *s, void *data) {
   struct drm_info_node *node = s->private;
   struct sti_dvo *dvo = (struct sti_dvo *)node->info_ent->data;
   seq_printf(s, "DVO: (vaddr = 0x%p)", dvo->regs);
   DBGFS_DUMP(DVO_AWG_DIGSYNC_CTRL);
   DBGFS_DUMP(DVO_DOF_CFG);
   DBGFS_DUMP(DVO_LUT_PROG_LOW);
   DBGFS_DUMP(DVO_LUT_PROG_MID);
   DBGFS_DUMP(DVO_LUT_PROG_HIGH);
   dvo_dbg_awg_microcode(s, dvo->regs + DVO_DIGSYNC_INSTR_I);
-  seq_puts(s, "\n");
+  seq_putc(s, '\n');
   return 0;
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');
--- initial
+++ final
@@ -1,17 +1,17 @@
 static int hda_dbg_show(struct seq_file *s, void *data) {
   struct drm_info_node *node = s->private;
   struct sti_hda *hda = (struct sti_hda *)node->info_ent->data;
   seq_printf(s, "HD Analog: (vaddr = 0x%p)", hda->regs);
   DBGFS_DUMP(HDA_ANA_CFG);
   hda_dbg_cfg(s, readl(hda->regs + HDA_ANA_CFG));
   DBGFS_DUMP(HDA_ANA_SCALE_CTRL_Y);
   DBGFS_DUMP(HDA_ANA_SCALE_CTRL_CB);
   DBGFS_DUMP(HDA_ANA_SCALE_CTRL_CR);
   DBGFS_DUMP(HDA_ANA_ANC_CTRL);
   DBGFS_DUMP(HDA_ANA_SRC_Y_CFG);
   DBGFS_DUMP(HDA_ANA_SRC_C_CFG);
   hda_dbg_awg_microcode(s, hda->regs + HDA_SYNC_AWGI);
   if (hda->video_dacs_ctrl) hda_dbg_video_dacs_ctrl(s, hda->video_dacs_ctrl);
-  seq_puts(s, "\n");
+  seq_putc(s, '\n');
   return 0;
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');
--- initial
+++ final
@@ -1,21 +1,21 @@
 static void hdmi_dbg_cfg(struct seq_file *s, int val) {
   int tmp;
-  seq_puts(s, "\t");
+  seq_putc(s, '\t');
   tmp = val & HDMI_CFG_HDMI_NOT_DVI;
   DBGFS_PRINT_STR("mode:", tmp ? "HDMI" : "DVI");
   seq_puts(s, "\t\t\t\t\t");
   tmp = val & HDMI_CFG_HDCP_EN;
   DBGFS_PRINT_STR("HDCP:", tmp ? "enable" : "disable");
   seq_puts(s, "\t\t\t\t\t");
   tmp = val & HDMI_CFG_ESS_NOT_OESS;
   DBGFS_PRINT_STR("HDCP mode:", tmp ? "ESS enable" : "OESS enable");
   seq_puts(s, "\t\t\t\t\t");
   tmp = val & HDMI_CFG_H_SYNC_POL_NEG;
   DBGFS_PRINT_STR("Hsync polarity:", tmp ? "inverted" : "normal");
   seq_puts(s, "\t\t\t\t\t");
   tmp = val & HDMI_CFG_V_SYNC_POL_NEG;
   DBGFS_PRINT_STR("Vsync polarity:", tmp ? "inverted" : "normal");
   seq_puts(s, "\t\t\t\t\t");
   tmp = val & HDMI_CFG_422_EN;
   DBGFS_PRINT_STR("YUV422 format:", tmp ? "enable" : "disable");
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\t");
+               seq_putc(s, '\t');
--- initial
+++ final
@@ -1,9 +1,9 @@
 static void hdmi_dbg_sta(struct seq_file *s, int val) {
   int tmp;
-  seq_puts(s, "\t");
+  seq_putc(s, '\t');
   tmp = (val & HDMI_STA_DLL_LCK);
   DBGFS_PRINT_STR("pll:", tmp ? "locked" : "not locked");
   seq_puts(s, "\t\t\t\t\t");
   tmp = (val & HDMI_STA_HOT_PLUG);
   DBGFS_PRINT_STR("hdmi cable:", tmp ? "connected" : "not connected");
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\t");
+               seq_putc(s, '\t');
--- initial
+++ final
@@ -1,22 +1,22 @@
 static void hdmi_dbg_sw_di_cfg(struct seq_file *s, int val) {
   int tmp;
   char *const en_di[] = {"no transmission", "single transmission", "once every field", "once every frame"};
-  seq_puts(s, "\t");
+  seq_putc(s, '\t');
   tmp = (val & HDMI_IFRAME_CFG_DI_N(HDMI_IFRAME_MASK, 1));
   DBGFS_PRINT_STR("Data island 1:", en_di[tmp]);
   seq_puts(s, "\t\t\t\t\t");
   tmp = (val & HDMI_IFRAME_CFG_DI_N(HDMI_IFRAME_MASK, 2)) >> 4;
   DBGFS_PRINT_STR("Data island 2:", en_di[tmp]);
   seq_puts(s, "\t\t\t\t\t");
   tmp = (val & HDMI_IFRAME_CFG_DI_N(HDMI_IFRAME_MASK, 3)) >> 8;
   DBGFS_PRINT_STR("Data island 3:", en_di[tmp]);
   seq_puts(s, "\t\t\t\t\t");
   tmp = (val & HDMI_IFRAME_CFG_DI_N(HDMI_IFRAME_MASK, 4)) >> 12;
   DBGFS_PRINT_STR("Data island 4:", en_di[tmp]);
   seq_puts(s, "\t\t\t\t\t");
   tmp = (val & HDMI_IFRAME_CFG_DI_N(HDMI_IFRAME_MASK, 5)) >> 16;
   DBGFS_PRINT_STR("Data island 5:", en_di[tmp]);
   seq_puts(s, "\t\t\t\t\t");
   tmp = (val & HDMI_IFRAME_CFG_DI_N(HDMI_IFRAME_MASK, 6)) >> 20;
   DBGFS_PRINT_STR("Data island 6:", en_di[tmp]);
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\t");
+               seq_putc(s, '\t');
--- initial
+++ final
@@ -1,62 +1,62 @@
 static int hqvdp_dbg_show(struct seq_file *s, void *data) {
   struct drm_info_node *node = s->private;
   struct sti_hqvdp *hqvdp = (struct sti_hqvdp *)node->info_ent->data;
   int cmd, cmd_offset, infoxp70;
   void *virt;
   seq_printf(s, "%s: (vaddr = 0x%p)", sti_plane_to_str(&hqvdp->plane), hqvdp->regs);
   DBGFS_DUMP(HQVDP_MBX_IRQ_TO_XP70);
   DBGFS_DUMP(HQVDP_MBX_INFO_HOST);
   DBGFS_DUMP(HQVDP_MBX_IRQ_TO_HOST);
   DBGFS_DUMP(HQVDP_MBX_INFO_XP70);
   infoxp70 = readl(hqvdp->regs + HQVDP_MBX_INFO_XP70);
   seq_puts(s, "\tFirmware state: ");
   if (infoxp70 & INFO_XP70_FW_READY)
     seq_puts(s, "idle and ready");
   else if (infoxp70 & INFO_XP70_FW_PROCESSING)
     seq_puts(s, "processing a picture");
   else if (infoxp70 & INFO_XP70_FW_INITQUEUES)
     seq_puts(s, "programming queues");
   else
     seq_puts(s, "NOT READY");
   DBGFS_DUMP(HQVDP_MBX_SW_RESET_CTRL);
   DBGFS_DUMP(HQVDP_MBX_STARTUP_CTRL1);
   if (readl(hqvdp->regs + HQVDP_MBX_STARTUP_CTRL1) & STARTUP_CTRL1_RST_DONE)
     seq_puts(s, "\tReset is done");
   else
     seq_puts(s, "\tReset is NOT done");
   DBGFS_DUMP(HQVDP_MBX_STARTUP_CTRL2);
   if (readl(hqvdp->regs + HQVDP_MBX_STARTUP_CTRL2) & STARTUP_CTRL2_FETCH_EN)
     seq_puts(s, "\tFetch is enabled");
   else
     seq_puts(s, "\tFetch is NOT enabled");
   DBGFS_DUMP(HQVDP_MBX_GP_STATUS);
   DBGFS_DUMP(HQVDP_MBX_NEXT_CMD);
   DBGFS_DUMP(HQVDP_MBX_CURRENT_CMD);
   DBGFS_DUMP(HQVDP_MBX_SOFT_VSYNC);
   if (!(readl(hqvdp->regs + HQVDP_MBX_SOFT_VSYNC) & 3))
     seq_puts(s, "\tHW Vsync");
   else
     seq_puts(s, "\tSW Vsync ?!?!");
   /* Last command */
   cmd = readl(hqvdp->regs + HQVDP_MBX_CURRENT_CMD);
   cmd_offset = sti_hqvdp_get_curr_cmd(hqvdp);
   if (cmd_offset == -1) {
     seq_puts(s, "\n\n  Last command: unknown");
   } else {
     virt = hqvdp->hqvdp_cmd + cmd_offset;
     seq_printf(s, "\n\n  Last command: address @ 0x%x (0x%p)", cmd, virt);
     hqvdp_dbg_dump_cmd(s, (struct sti_hqvdp_cmd *)virt);
   }
   /* Next command */
   cmd = readl(hqvdp->regs + HQVDP_MBX_NEXT_CMD);
   cmd_offset = sti_hqvdp_get_next_cmd(hqvdp);
   if (cmd_offset == -1) {
     seq_puts(s, "\n\n  Next command: unknown");
   } else {
     virt = hqvdp->hqvdp_cmd + cmd_offset;
     seq_printf(s, "\n\n  Next command address: @ 0x%x (0x%p)", cmd, virt);
     hqvdp_dbg_dump_cmd(s, (struct sti_hqvdp_cmd *)virt);
   }
-  seq_puts(s, "\n");
+  seq_putc(s, '\n');
   return 0;
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');
--- initial
+++ final
@@ -1,20 +1,20 @@
 static int mixer_dbg_show(struct seq_file *s, void *arg) {
   struct drm_info_node *node = s->private;
   struct sti_mixer *mixer = (struct sti_mixer *)node->info_ent->data;
   seq_printf(s, "%s: (vaddr = 0x%p)", sti_mixer_to_str(mixer), mixer->regs);
   DBGFS_DUMP(GAM_MIXER_CTL);
   mixer_dbg_ctl(s, sti_mixer_reg_read(mixer, GAM_MIXER_CTL));
   DBGFS_DUMP(GAM_MIXER_BKC);
   DBGFS_DUMP(GAM_MIXER_BCO);
   DBGFS_DUMP(GAM_MIXER_BCS);
   DBGFS_DUMP(GAM_MIXER_AVO);
   DBGFS_DUMP(GAM_MIXER_AVS);
   DBGFS_DUMP(GAM_MIXER_CRB);
   mixer_dbg_crb(s, sti_mixer_reg_read(mixer, GAM_MIXER_CRB));
   DBGFS_DUMP(GAM_MIXER_ACT);
   DBGFS_DUMP(GAM_MIXER_MBP);
   DBGFS_DUMP(GAM_MIXER_MX0);
   mixer_dbg_mxn(s, mixer->regs + GAM_MIXER_MX0);
-  seq_puts(s, "\n");
+  seq_putc(s, '\n');
   return 0;
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');
--- initial
+++ final
@@ -1,60 +1,60 @@
 static int tvout_dbg_show(struct seq_file *s, void *data) {
   struct drm_info_node *node = s->private;
   struct sti_tvout *tvout = (struct sti_tvout *)node->info_ent->data;
   struct drm_crtc *crtc;
   seq_printf(s, "TVOUT: (vaddr = 0x%p)", tvout->regs);
   seq_puts(s, "\n\n  HDMI encoder: ");
   crtc = tvout->hdmi->crtc;
   if (crtc) {
     seq_printf(s, "connected to %s path", sti_crtc_is_main(crtc) ? "main" : "aux");
     DBGFS_DUMP(TVO_HDMI_SYNC_SEL);
     DBGFS_DUMP(TVO_VIP_HDMI);
     tvout_dbg_vip(s, readl(tvout->regs + TVO_VIP_HDMI));
   } else {
     seq_puts(s, "disabled");
   }
   seq_puts(s, "\n\n  DVO encoder: ");
   crtc = tvout->dvo->crtc;
   if (crtc) {
     seq_printf(s, "connected to %s path", sti_crtc_is_main(crtc) ? "main" : "aux");
     DBGFS_DUMP(TVO_DVO_SYNC_SEL);
     DBGFS_DUMP(TVO_DVO_CONFIG);
     DBGFS_DUMP(TVO_VIP_DVO);
     tvout_dbg_vip(s, readl(tvout->regs + TVO_VIP_DVO));
   } else {
     seq_puts(s, "disabled");
   }
   seq_puts(s, "\n\n  HDA encoder: ");
   crtc = tvout->hda->crtc;
   if (crtc) {
     seq_printf(s, "connected to %s path", sti_crtc_is_main(crtc) ? "main" : "aux");
     DBGFS_DUMP(TVO_HD_SYNC_SEL);
     DBGFS_DUMP(TVO_HD_DAC_CFG_OFF);
     tvout_dbg_hd_dac_cfg(s, readl(tvout->regs + TVO_HD_DAC_CFG_OFF));
     DBGFS_DUMP(TVO_VIP_HDF);
     tvout_dbg_vip(s, readl(tvout->regs + TVO_VIP_HDF));
   } else {
     seq_puts(s, "disabled");
   }
   seq_puts(s, "\n\n  main path configuration");
   DBGFS_DUMP(TVO_CSC_MAIN_M0);
   DBGFS_DUMP(TVO_CSC_MAIN_M1);
   DBGFS_DUMP(TVO_CSC_MAIN_M2);
   DBGFS_DUMP(TVO_CSC_MAIN_M3);
   DBGFS_DUMP(TVO_CSC_MAIN_M4);
   DBGFS_DUMP(TVO_CSC_MAIN_M5);
   DBGFS_DUMP(TVO_CSC_MAIN_M6);
   DBGFS_DUMP(TVO_CSC_MAIN_M7);
   DBGFS_DUMP(TVO_MAIN_IN_VID_FORMAT);
   seq_puts(s, "\n\n  auxiliary path configuration");
   DBGFS_DUMP(TVO_CSC_AUX_M0);
   DBGFS_DUMP(TVO_CSC_AUX_M2);
   DBGFS_DUMP(TVO_CSC_AUX_M3);
   DBGFS_DUMP(TVO_CSC_AUX_M4);
   DBGFS_DUMP(TVO_CSC_AUX_M5);
   DBGFS_DUMP(TVO_CSC_AUX_M6);
   DBGFS_DUMP(TVO_CSC_AUX_M7);
   DBGFS_DUMP(TVO_AUX_IN_VID_FORMAT);
-  seq_puts(s, "\n");
+  seq_putc(s, '\n');
   return 0;
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');
--- initial
+++ final
@@ -1,26 +1,26 @@
 static void tvout_dbg_vip(struct seq_file *s, int val) {
   int r, g, b, tmp, mask;
   char *const reorder[] = {"Y_G", "Cb_B", "Cr_R"};
   char *const clipping[] = {"No", "EAV/SAV", "Limited range RGB/Y", "Limited range Cb/Cr", "decided by register"};
   char *const round[] = {"8-bit", "10-bit", "12-bit"};
   char *const input_sel[] = {"Main (color matrix enabled)", "Main (color matrix by-passed)", "", "", "", "", "", "", "Aux (color matrix enabled)", "Aux (color matrix by-passed)", "", "", "", "", "", "Force value"};
-  seq_puts(s, "\t");
+  seq_putc(s, '\t');
   mask = TVO_VIP_REORDER_MASK << TVO_VIP_REORDER_R_SHIFT;
   r = (val & mask) >> TVO_VIP_REORDER_R_SHIFT;
   mask = TVO_VIP_REORDER_MASK << TVO_VIP_REORDER_G_SHIFT;
   g = (val & mask) >> TVO_VIP_REORDER_G_SHIFT;
   mask = TVO_VIP_REORDER_MASK << TVO_VIP_REORDER_B_SHIFT;
   b = (val & mask) >> TVO_VIP_REORDER_B_SHIFT;
   seq_printf(s, "%-24s %s->%s %s->%s %s->%s\n", "Reorder:", reorder[r], reorder[TVO_VIP_REORDER_CR_R_SEL], reorder[g], reorder[TVO_VIP_REORDER_Y_G_SEL], reorder[b], reorder[TVO_VIP_REORDER_CB_B_SEL]);
   seq_puts(s, "\t\t\t\t\t");
   mask = TVO_VIP_CLIP_MASK << TVO_VIP_CLIP_SHIFT;
   tmp = (val & mask) >> TVO_VIP_CLIP_SHIFT;
   seq_printf(s, "%-24s %s\n", "Clipping:", clipping[tmp]);
   seq_puts(s, "\t\t\t\t\t");
   mask = TVO_VIP_RND_MASK << TVO_VIP_RND_SHIFT;
   tmp = (val & mask) >> TVO_VIP_RND_SHIFT;
   seq_printf(s, "%-24s input data rounded to %s per component\n", "Round:", round[tmp]);
   seq_puts(s, "\t\t\t\t\t");
   tmp = (val & TVO_VIP_SEL_INPUT_MASK);
   seq_printf(s, "%-24s %s", "Input selection:", input_sel[tmp]);
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\t");
+               seq_putc(s, '\t');
--- initial
+++ final
@@ -1,8 +1,8 @@
 static void vid_dbg_ctl(struct seq_file *s, int val) {
   val = val >> 30;
-  seq_puts(s, "\t");
+  seq_putc(s, '\t');
   if (!(val & 1)) seq_puts(s, "NOT ");
   seq_puts(s, "ignored on main mixer - ");
   if (!(val & 2)) seq_puts(s, "NOT ");
   seq_puts(s, "ignored on aux mixer");
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\t");
+               seq_putc(s, '\t');
--- initial
+++ final
@@ -1,26 +1,26 @@
 static int vid_dbg_show(struct seq_file *s, void *arg) {
   struct drm_info_node *node = s->private;
   struct sti_vid *vid = (struct sti_vid *)node->info_ent->data;
   seq_printf(s, "VID: (vaddr= 0x%p)", vid->regs);
   DBGFS_DUMP(VID_CTL);
   vid_dbg_ctl(s, readl(vid->regs + VID_CTL));
   DBGFS_DUMP(VID_ALP);
   DBGFS_DUMP(VID_CLF);
   DBGFS_DUMP(VID_VPO);
   vid_dbg_vpo(s, readl(vid->regs + VID_VPO));
   DBGFS_DUMP(VID_VPS);
   vid_dbg_vps(s, readl(vid->regs + VID_VPS));
   DBGFS_DUMP(VID_KEY1);
   DBGFS_DUMP(VID_KEY2);
   DBGFS_DUMP(VID_MPR0);
   DBGFS_DUMP(VID_MPR1);
   DBGFS_DUMP(VID_MPR2);
   DBGFS_DUMP(VID_MPR3);
   DBGFS_DUMP(VID_MST);
   vid_dbg_mst(s, readl(vid->regs + VID_MST));
   DBGFS_DUMP(VID_BC);
   DBGFS_DUMP(VID_TINT);
   DBGFS_DUMP(VID_CSAT);
-  seq_puts(s, "\n");
+  seq_putc(s, '\n');
   return 0;
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');
--- initial
+++ final
@@ -1,36 +1,36 @@
 static void batadv_iv_ogm_orig_print(struct batadv_priv *bat_priv, struct seq_file *seq, struct batadv_hard_iface *if_outgoing) {
   struct batadv_neigh_node *neigh_node;
   struct batadv_hashtable *hash = bat_priv->orig_hash;
   int last_seen_msecs, last_seen_secs;
   struct batadv_orig_node *orig_node;
   struct batadv_neigh_ifinfo *n_ifinfo;
   unsigned long last_seen_jiffies;
   struct hlist_head *head;
   int batman_count = 0;
   u32 i;
   seq_puts(seq, "  Originator      last-seen (#/255)           Nexthop [outgoingIF]:   Potential nexthops ...\n");
   for (i = 0; i < hash->size; i++) {
     head = &hash->table[i];
     rcu_read_lock();
     hlist_for_each_entry_rcu(orig_node, head, hash_entry) {
       neigh_node = batadv_orig_router_get(orig_node, if_outgoing);
       if (!neigh_node) continue;
       n_ifinfo = batadv_neigh_ifinfo_get(neigh_node, if_outgoing);
       if (!n_ifinfo) goto next;
       if (n_ifinfo->bat_iv.tq_avg == 0) goto next;
       last_seen_jiffies = jiffies - orig_node->last_seen;
       last_seen_msecs = jiffies_to_msecs(last_seen_jiffies);
       last_seen_secs = last_seen_msecs / 1000;
       last_seen_msecs = last_seen_msecs % 1000;
       seq_printf(seq, "%pM %4i.%03is   (%3i) %pM [%10s]:", orig_node->orig, last_seen_secs, last_seen_msecs, n_ifinfo->bat_iv.tq_avg, neigh_node->addr, neigh_node->if_incoming->net_dev->name);
       batadv_iv_ogm_orig_print_neigh(orig_node, if_outgoing, seq);
-      seq_puts(seq, "\n");
+      seq_putc(seq, '\n');
       batman_count++;
     next:
       batadv_neigh_node_put(neigh_node);
       if (n_ifinfo) batadv_neigh_ifinfo_put(n_ifinfo);
     }
     rcu_read_unlock();
   }
   if (batman_count == 0) seq_puts(seq, "No batman nodes in range ...\n");
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');
--- initial
+++ final
@@ -1,35 +1,35 @@
 static void batadv_v_orig_print(struct batadv_priv *bat_priv, struct seq_file *seq, struct batadv_hard_iface *if_outgoing) {
   struct batadv_neigh_node *neigh_node;
   struct batadv_hashtable *hash = bat_priv->orig_hash;
   int last_seen_msecs, last_seen_secs;
   struct batadv_orig_node *orig_node;
   struct batadv_neigh_ifinfo *n_ifinfo;
   unsigned long last_seen_jiffies;
   struct hlist_head *head;
   int batman_count = 0;
   u32 i;
   seq_puts(seq, "  Originator      last-seen ( throughput)           Nexthop [outgoingIF]:   Potential nexthops ...\n");
   for (i = 0; i < hash->size; i++) {
     head = &hash->table[i];
     rcu_read_lock();
     hlist_for_each_entry_rcu(orig_node, head, hash_entry) {
       neigh_node = batadv_orig_router_get(orig_node, if_outgoing);
       if (!neigh_node) continue;
       n_ifinfo = batadv_neigh_ifinfo_get(neigh_node, if_outgoing);
       if (!n_ifinfo) goto next;
       last_seen_jiffies = jiffies - orig_node->last_seen;
       last_seen_msecs = jiffies_to_msecs(last_seen_jiffies);
       last_seen_secs = last_seen_msecs / 1000;
       last_seen_msecs = last_seen_msecs % 1000;
       seq_printf(seq, "%pM %4i.%03is (%9u.%1u) %pM [%10s]:", orig_node->orig, last_seen_secs, last_seen_msecs, n_ifinfo->bat_v.throughput / 10, n_ifinfo->bat_v.throughput % 10, neigh_node->addr, neigh_node->if_incoming->net_dev->name);
       batadv_v_orig_print_neigh(orig_node, if_outgoing, seq);
-      seq_puts(seq, "\n");
+      seq_putc(seq, '\n');
       batman_count++;
     next:
       batadv_neigh_node_put(neigh_node);
       if (n_ifinfo) batadv_neigh_ifinfo_put(n_ifinfo);
     }
     rcu_read_unlock();
   }
   if (batman_count == 0) seq_puts(seq, "No batman nodes in range ...\n");
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');
--- initial
+++ final
@@ -1,12 +1,12 @@
 static int aa_fs_seq_hash_show(struct seq_file *seq, void *v) {
   struct aa_proxy *proxy = seq->private;
   struct aa_profile *profile = aa_get_profile_rcu(&proxy->profile);
   unsigned int i, size = aa_hash_size();
   if (profile->hash) {
     for (i = 0; i < size; i++)
       seq_printf(seq, "%.2x", profile->hash[i]);
-    seq_puts(seq, "\n");
+    seq_putc(seq, '\n');
   }
   aa_put_profile(profile);
   return 0;
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');
--- initial
+++ final
@@ -1,12 +1,12 @@
 static int aa_fs_seq_raw_hash_show(struct seq_file *seq, void *v) {
   struct aa_proxy *proxy = seq->private;
   struct aa_profile *profile = aa_get_profile_rcu(&proxy->profile);
   unsigned int i, size = aa_hash_size();
   if (profile->rawdata->hash) {
     for (i = 0; i < size; i++)
       seq_printf(seq, "%.2x", profile->rawdata->hash[i]);
-    seq_puts(seq, "\n");
+    seq_putc(seq, '\n');
   }
   aa_put_profile(profile);
   return 0;
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');
--- initial
+++ final
@@ -1,21 +1,21 @@
 static int sync_debugfs_show(struct seq_file *s, void *unused) {
   unsigned long flags;
   struct list_head *pos;
   seq_puts(s, "objs:\n--------------\n");
   spin_lock_irqsave(&sync_timeline_list_lock, flags);
   list_for_each(pos, &sync_timeline_list_head) {
     struct sync_timeline *obj = container_of(pos, struct sync_timeline, sync_timeline_list);
     sync_print_obj(s, obj);
-    seq_puts(s, "\n");
+    seq_putc(s, '\n');
   }
   spin_unlock_irqrestore(&sync_timeline_list_lock, flags);
   seq_puts(s, "fences:\n--------------\n");
   spin_lock_irqsave(&sync_file_list_lock, flags);
   list_for_each(pos, &sync_file_list_head) {
     struct sync_file *sync_file = container_of(pos, struct sync_file, sync_file_list);
     sync_print_sync_file(s, sync_file);
-    seq_puts(s, "\n");
+    seq_putc(s, '\n');
   }
   spin_unlock_irqrestore(&sync_file_list_lock, flags);
   return 0;
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');
--- initial
+++ final
@@ -1,22 +1,22 @@
 static void sync_print_fence(struct seq_file *s, struct dma_fence *fence, bool show) {
   struct sync_timeline *parent = dma_fence_parent(fence);
   int status;
   status = dma_fence_get_status_locked(fence);
   seq_printf(s, "  %s%sfence %s", show ? parent->name : "", show ? "_" : "", sync_status_str(status));
   if (status) {
     struct timespec64 ts64 = ktime_to_timespec64(fence->timestamp);
     seq_printf(s, "@%lld.%09ld", (s64)ts64.tv_sec, ts64.tv_nsec);
   }
   if (fence->ops->timeline_value_str && fence->ops->fence_value_str) {
     char value[64];
     bool success;
     fence->ops->fence_value_str(fence, value, sizeof(value));
     success = strlen(value);
     if (success) {
       seq_printf(s, ": %s", value);
       fence->ops->timeline_value_str(fence, value, sizeof(value));
       if (strlen(value)) seq_printf(s, " / %s", value);
     }
   }
-  seq_puts(s, "\n");
+  seq_putc(s, '\n');
 }<sep>@@
expression s;
@@
-               seq_puts(s, "\n");
+               seq_putc(s, '\n');