xref: /kernel/linux/linux-6.6/arch/alpha/lib/srm_puts.c
  • Home
  • History
  • Annotate Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
  • only in /kernel/linux/linux-6.6/arch/alpha/lib/
162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci *	arch/alpha/lib/srm_puts.c
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci#include <linux/string.h>
762306a36Sopenharmony_ci#include <asm/console.h>
862306a36Sopenharmony_ci
962306a36Sopenharmony_cilong
1062306a36Sopenharmony_cisrm_puts(const char *str, long len)
1162306a36Sopenharmony_ci{
1262306a36Sopenharmony_ci	long remaining, written;
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_ci	if (!callback_init_done)
1562306a36Sopenharmony_ci		return len;
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci	for (remaining = len; remaining > 0; remaining -= written)
1862306a36Sopenharmony_ci	{
1962306a36Sopenharmony_ci		written = callback_puts(0, str, remaining);
2062306a36Sopenharmony_ci		written &= 0xffffffff;
2162306a36Sopenharmony_ci		str += written;
2262306a36Sopenharmony_ci	}
2362306a36Sopenharmony_ci	return len;
2462306a36Sopenharmony_ci}
25

Indexes created Thu Nov 07 10:32:03 CST 2024