162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * hvconsole.h 462306a36Sopenharmony_ci * Copyright (C) 2004 Ryan S Arnold, IBM Corporation 562306a36Sopenharmony_ci * 662306a36Sopenharmony_ci * LPAR console support. 762306a36Sopenharmony_ci */ 862306a36Sopenharmony_ci 962306a36Sopenharmony_ci#ifndef _PPC64_HVCONSOLE_H 1062306a36Sopenharmony_ci#define _PPC64_HVCONSOLE_H 1162306a36Sopenharmony_ci#ifdef __KERNEL__ 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci/* 1462306a36Sopenharmony_ci * PSeries firmware will only send/recv up to 16 bytes of character data per 1562306a36Sopenharmony_ci * hcall. 1662306a36Sopenharmony_ci */ 1762306a36Sopenharmony_ci#define MAX_VIO_PUT_CHARS 16 1862306a36Sopenharmony_ci#define SIZE_VIO_GET_CHARS 16 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ci/* 2162306a36Sopenharmony_ci * Vio firmware always attempts to fetch MAX_VIO_GET_CHARS chars. The 'count' 2262306a36Sopenharmony_ci * parm is included to conform to put_chars() function pointer template 2362306a36Sopenharmony_ci */ 2462306a36Sopenharmony_ciextern int hvc_get_chars(uint32_t vtermno, char *buf, int count); 2562306a36Sopenharmony_ciextern int hvc_put_chars(uint32_t vtermno, const char *buf, int count); 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci/* Provided by HVC VIO */ 2862306a36Sopenharmony_civoid hvc_vio_init_early(void); 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ci#endif /* __KERNEL__ */ 3162306a36Sopenharmony_ci#endif /* _PPC64_HVCONSOLE_H */ 32