All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: oe-kbuild@lists.linux.dev
Cc: lkp@intel.com, Dan Carpenter <error27@gmail.com>
Subject: [linux-next:master 5127/9308] drivers/gpu/drm/tiny/st7571-i2c.c:214 st7571_send_command_list() error: uninitialized symbol 'ret'.
Date: Wed, 7 May 2025 21:58:17 +0800	[thread overview]
Message-ID: <202505072151.8hpMcKVq-lkp@intel.com> (raw)

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
TO: Marcus Folkesson <marcus.folkesson@gmail.com>
CC: Javier Martinez Canillas <javierm@redhat.com>
CC: Thomas Zimmermann <tzimmrmann@suse.de>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   08710e696081d58163c8078e0e096be6d35c5fad
commit: 4b35f0f41ee295059c46a6f4ae97e4b5b8f10d9e [5127/9308] drm/st7571-i2c: add support for Sitronix ST7571 LCD controller
:::::: branch date: 6 hours ago
:::::: commit date: 2 weeks ago
config: loongarch-randconfig-r071-20250502 (https://download.01.org/0day-ci/archive/20250507/202505072151.8hpMcKVq-lkp@intel.com/config)
compiler: loongarch64-linux-gcc (GCC) 14.2.0

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202505072151.8hpMcKVq-lkp@intel.com/

smatch warnings:
drivers/gpu/drm/tiny/st7571-i2c.c:214 st7571_send_command_list() error: uninitialized symbol 'ret'.
drivers/gpu/drm/tiny/st7571-i2c.c:371 st7571_fb_update_rect_grayscale() error: uninitialized symbol 'x1'.
drivers/gpu/drm/tiny/st7571-i2c.c:371 st7571_fb_update_rect_grayscale() error: uninitialized symbol 'x2'.

vim +/ret +214 drivers/gpu/drm/tiny/st7571-i2c.c

4b35f0f41ee295 Marcus Folkesson 2025-04-23  202  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  203  static int st7571_send_command_list(struct st7571_device *st7571,
4b35f0f41ee295 Marcus Folkesson 2025-04-23  204  				    const u8 *cmd_list, size_t len)
4b35f0f41ee295 Marcus Folkesson 2025-04-23  205  {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  206  	int ret;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  207  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  208  	for (int i = 0; i < len; i++) {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  209  		ret = regmap_write(st7571->regmap, ST7571_COMMAND_MODE, cmd_list[i]);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  210  		if (ret < 0)
4b35f0f41ee295 Marcus Folkesson 2025-04-23  211  			return ret;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  212  	}
4b35f0f41ee295 Marcus Folkesson 2025-04-23  213  
4b35f0f41ee295 Marcus Folkesson 2025-04-23 @214  	return ret;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  215  }
4b35f0f41ee295 Marcus Folkesson 2025-04-23  216  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  217  static inline u8 st7571_transform_xy(const char *p, int x, int y)
4b35f0f41ee295 Marcus Folkesson 2025-04-23  218  {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  219  	int xrest = x % 8;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  220  	u8 result = 0;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  221  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  222  	/*
4b35f0f41ee295 Marcus Folkesson 2025-04-23  223  	 * Transforms an (x, y) pixel coordinate into a vertical 8-bit
4b35f0f41ee295 Marcus Folkesson 2025-04-23  224  	 * column from the framebuffer. It calculates the corresponding byte in the
4b35f0f41ee295 Marcus Folkesson 2025-04-23  225  	 * framebuffer, extracts the bit at the given x position across 8 consecutive
4b35f0f41ee295 Marcus Folkesson 2025-04-23  226  	 * rows, and packs those bits into a single byte.
4b35f0f41ee295 Marcus Folkesson 2025-04-23  227  	 *
4b35f0f41ee295 Marcus Folkesson 2025-04-23  228  	 * Return an 8-bit value representing a vertical column of pixels.
4b35f0f41ee295 Marcus Folkesson 2025-04-23  229  	 */
4b35f0f41ee295 Marcus Folkesson 2025-04-23  230  	x = x / 8;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  231  	y = (y / 8) * 8;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  232  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  233  	for (int i = 0; i < 8; i++) {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  234  		int row_idx = y + i;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  235  		u8 byte = p[row_idx * 16 + x];
4b35f0f41ee295 Marcus Folkesson 2025-04-23  236  		u8 bit = (byte >> xrest) & 1;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  237  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  238  		result |= (bit << i);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  239  	}
4b35f0f41ee295 Marcus Folkesson 2025-04-23  240  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  241  	return result;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  242  }
4b35f0f41ee295 Marcus Folkesson 2025-04-23  243  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  244  static int st7571_set_position(struct st7571_device *st7571, int x, int y)
4b35f0f41ee295 Marcus Folkesson 2025-04-23  245  {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  246  	u8 cmd_list[] = {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  247  		ST7571_SET_COLUMN_LSB(x),
4b35f0f41ee295 Marcus Folkesson 2025-04-23  248  		ST7571_SET_COLUMN_MSB(x),
4b35f0f41ee295 Marcus Folkesson 2025-04-23  249  		ST7571_SET_PAGE(y / ST7571_PAGE_HEIGHT),
4b35f0f41ee295 Marcus Folkesson 2025-04-23  250  	};
4b35f0f41ee295 Marcus Folkesson 2025-04-23  251  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  252  	return st7571_send_command_list(st7571, cmd_list, ARRAY_SIZE(cmd_list));
4b35f0f41ee295 Marcus Folkesson 2025-04-23  253  }
4b35f0f41ee295 Marcus Folkesson 2025-04-23  254  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  255  static int st7571_fb_clear_screen(struct st7571_device *st7571)
4b35f0f41ee295 Marcus Folkesson 2025-04-23  256  {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  257  	u32 npixels = st7571->ncols * round_up(st7571->nlines, ST7571_PAGE_HEIGHT) * st7571->bpp;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  258  	char pixelvalue = 0x00;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  259  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  260  	for (int i = 0; i < npixels; i++)
4b35f0f41ee295 Marcus Folkesson 2025-04-23  261  		regmap_bulk_write(st7571->regmap, ST7571_DATA_MODE, &pixelvalue, 1);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  262  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  263  	return 0;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  264  }
4b35f0f41ee295 Marcus Folkesson 2025-04-23  265  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  266  static void st7571_prepare_buffer_monochrome(struct st7571_device *st7571,
4b35f0f41ee295 Marcus Folkesson 2025-04-23  267  					     const struct iosys_map *vmap,
4b35f0f41ee295 Marcus Folkesson 2025-04-23  268  					     struct drm_framebuffer *fb,
4b35f0f41ee295 Marcus Folkesson 2025-04-23  269  					     struct drm_rect *rect,
4b35f0f41ee295 Marcus Folkesson 2025-04-23  270  					     struct drm_format_conv_state *fmtcnv_state)
4b35f0f41ee295 Marcus Folkesson 2025-04-23  271  {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  272  	unsigned int dst_pitch;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  273  	struct iosys_map dst;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  274  	u32 size;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  275  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  276  	switch (fb->format->format) {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  277  	case DRM_FORMAT_XRGB8888:
4b35f0f41ee295 Marcus Folkesson 2025-04-23  278  		dst_pitch = DIV_ROUND_UP(drm_rect_width(rect), 8);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  279  		iosys_map_set_vaddr(&dst, st7571->hwbuf);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  280  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  281  		drm_fb_xrgb8888_to_mono(&dst, &dst_pitch, vmap, fb, rect, fmtcnv_state);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  282  		break;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  283  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  284  	case DRM_FORMAT_R1:
4b35f0f41ee295 Marcus Folkesson 2025-04-23  285  		size = (rect->x2 - rect->x1) * (rect->y2 - rect->y1) / 8;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  286  		memcpy(st7571->hwbuf, vmap->vaddr, size);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  287  		break;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  288  	}
4b35f0f41ee295 Marcus Folkesson 2025-04-23  289  }
4b35f0f41ee295 Marcus Folkesson 2025-04-23  290  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  291  static void st7571_prepare_buffer_grayscale(struct st7571_device *st7571,
4b35f0f41ee295 Marcus Folkesson 2025-04-23  292  					    const struct iosys_map *vmap,
4b35f0f41ee295 Marcus Folkesson 2025-04-23  293  					    struct drm_framebuffer *fb,
4b35f0f41ee295 Marcus Folkesson 2025-04-23  294  					    struct drm_rect *rect,
4b35f0f41ee295 Marcus Folkesson 2025-04-23  295  					    struct drm_format_conv_state *fmtcnv_state)
4b35f0f41ee295 Marcus Folkesson 2025-04-23  296  {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  297  	u32 size = (rect->x2 - rect->x1) * (rect->y2 - rect->y1) / 8;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  298  	unsigned int dst_pitch;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  299  	struct iosys_map dst;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  300  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  301  	switch (fb->format->format) {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  302  	case DRM_FORMAT_XRGB8888: /* Only support XRGB8888 in monochrome mode */
4b35f0f41ee295 Marcus Folkesson 2025-04-23  303  		dst_pitch = DIV_ROUND_UP(drm_rect_width(rect), 8);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  304  		iosys_map_set_vaddr(&dst, st7571->hwbuf);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  305  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  306  		drm_fb_xrgb8888_to_mono(&dst, &dst_pitch, vmap, fb, rect, fmtcnv_state);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  307  		break;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  308  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  309  	case DRM_FORMAT_R1:
4b35f0f41ee295 Marcus Folkesson 2025-04-23  310  		size = (rect->x2 - rect->x1) * (rect->y2 - rect->y1) / 8;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  311  		memcpy(st7571->hwbuf, vmap->vaddr, size);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  312  		break;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  313  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  314  	case DRM_FORMAT_R2:
4b35f0f41ee295 Marcus Folkesson 2025-04-23  315  		size = (rect->x2 - rect->x1) * (rect->y2 - rect->y1) / 4;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  316  		memcpy(st7571->hwbuf, vmap->vaddr, size);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  317  		break;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  318  	};
4b35f0f41ee295 Marcus Folkesson 2025-04-23  319  }
4b35f0f41ee295 Marcus Folkesson 2025-04-23  320  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  321  static int st7571_fb_update_rect_monochrome(struct drm_framebuffer *fb, struct drm_rect *rect)
4b35f0f41ee295 Marcus Folkesson 2025-04-23  322  {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  323  	struct st7571_device *st7571 = drm_to_st7571(fb->dev);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  324  	char *row = st7571->row;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  325  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  326  	/* Align y to display page boundaries */
4b35f0f41ee295 Marcus Folkesson 2025-04-23  327  	rect->y1 = round_down(rect->y1, ST7571_PAGE_HEIGHT);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  328  	rect->y2 = min_t(unsigned int, round_up(rect->y2, ST7571_PAGE_HEIGHT), st7571->nlines);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  329  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  330  	for (int y = rect->y1; y < rect->y2; y += ST7571_PAGE_HEIGHT) {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  331  		for (int x = rect->x1; x < rect->x2; x++)
4b35f0f41ee295 Marcus Folkesson 2025-04-23  332  			row[x] = st7571_transform_xy(st7571->hwbuf, x, y);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  333  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  334  		st7571_set_position(st7571, rect->x1, y);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  335  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  336  		/* TODO: Investige why we can't write multiple bytes at once */
4b35f0f41ee295 Marcus Folkesson 2025-04-23  337  		for (int x = rect->x1; x < rect->x2; x++)
4b35f0f41ee295 Marcus Folkesson 2025-04-23  338  			regmap_bulk_write(st7571->regmap, ST7571_DATA_MODE, row + x, 1);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  339  	}
4b35f0f41ee295 Marcus Folkesson 2025-04-23  340  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  341  	return 0;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  342  }
4b35f0f41ee295 Marcus Folkesson 2025-04-23  343  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  344  static int st7571_fb_update_rect_grayscale(struct drm_framebuffer *fb, struct drm_rect *rect)
4b35f0f41ee295 Marcus Folkesson 2025-04-23  345  {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  346  	struct st7571_device *st7571 = drm_to_st7571(fb->dev);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  347  	u32 format = fb->format->format;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  348  	char *row = st7571->row;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  349  	int x1;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  350  	int x2;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  351  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  352  	/* Align y to display page boundaries */
4b35f0f41ee295 Marcus Folkesson 2025-04-23  353  	rect->y1 = round_down(rect->y1, ST7571_PAGE_HEIGHT);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  354  	rect->y2 = min_t(unsigned int, round_up(rect->y2, ST7571_PAGE_HEIGHT), st7571->nlines);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  355  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  356  	switch (format) {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  357  	case DRM_FORMAT_XRGB8888:
4b35f0f41ee295 Marcus Folkesson 2025-04-23  358  		/* Threated as monochrome (R1) */
4b35f0f41ee295 Marcus Folkesson 2025-04-23  359  		fallthrough;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  360  	case DRM_FORMAT_R1:
4b35f0f41ee295 Marcus Folkesson 2025-04-23  361  		x1 = rect->x1;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  362  		x2 = rect->x2;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  363  		break;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  364  	case DRM_FORMAT_R2:
4b35f0f41ee295 Marcus Folkesson 2025-04-23  365  		x1 = rect->x1 * 2;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  366  		x2 = rect->x2 * 2;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  367  		break;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  368  	}
4b35f0f41ee295 Marcus Folkesson 2025-04-23  369  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  370  	for (int y = rect->y1; y < rect->y2; y += ST7571_PAGE_HEIGHT) {
4b35f0f41ee295 Marcus Folkesson 2025-04-23 @371  		for (int x = x1; x < x2; x++)
4b35f0f41ee295 Marcus Folkesson 2025-04-23  372  			row[x] = st7571_transform_xy(st7571->hwbuf, x, y);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  373  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  374  		st7571_set_position(st7571, rect->x1, y);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  375  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  376  		/* TODO: Investige why we can't write multiple bytes at once */
4b35f0f41ee295 Marcus Folkesson 2025-04-23  377  		for (int x = x1; x < x2; x++) {
4b35f0f41ee295 Marcus Folkesson 2025-04-23  378  			regmap_bulk_write(st7571->regmap, ST7571_DATA_MODE, row + x, 1);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  379  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  380  			/*
4b35f0f41ee295 Marcus Folkesson 2025-04-23  381  			 * As the display supports grayscale, all pixels must be written as two bits
4b35f0f41ee295 Marcus Folkesson 2025-04-23  382  			 * even if the format is monochrome.
4b35f0f41ee295 Marcus Folkesson 2025-04-23  383  			 *
4b35f0f41ee295 Marcus Folkesson 2025-04-23  384  			 * The bit values maps to the following grayscale:
4b35f0f41ee295 Marcus Folkesson 2025-04-23  385  			 * 0 0 = White
4b35f0f41ee295 Marcus Folkesson 2025-04-23  386  			 * 0 1 = Light gray
4b35f0f41ee295 Marcus Folkesson 2025-04-23  387  			 * 1 0 = Dark gray
4b35f0f41ee295 Marcus Folkesson 2025-04-23  388  			 * 1 1 = Black
4b35f0f41ee295 Marcus Folkesson 2025-04-23  389  			 *
4b35f0f41ee295 Marcus Folkesson 2025-04-23  390  			 * For monochrome formats, write the same value twice to get
4b35f0f41ee295 Marcus Folkesson 2025-04-23  391  			 * either a black or white pixel.
4b35f0f41ee295 Marcus Folkesson 2025-04-23  392  			 */
4b35f0f41ee295 Marcus Folkesson 2025-04-23  393  			if (format == DRM_FORMAT_R1 || format == DRM_FORMAT_XRGB8888)
4b35f0f41ee295 Marcus Folkesson 2025-04-23  394  				regmap_bulk_write(st7571->regmap, ST7571_DATA_MODE, row + x, 1);
4b35f0f41ee295 Marcus Folkesson 2025-04-23  395  		}
4b35f0f41ee295 Marcus Folkesson 2025-04-23  396  	}
4b35f0f41ee295 Marcus Folkesson 2025-04-23  397  
4b35f0f41ee295 Marcus Folkesson 2025-04-23  398  	return 0;
4b35f0f41ee295 Marcus Folkesson 2025-04-23  399  }
4b35f0f41ee295 Marcus Folkesson 2025-04-23  400  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

                 reply	other threads:[~2025-05-07 13:59 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202505072151.8hpMcKVq-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=error27@gmail.com \
    --cc=oe-kbuild@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.