1*4882a593Smuzhiyun // SPDX-License-Identifier: GPL-2.0-or-later 2*4882a593Smuzhiyun /* ----------------------------------------------------------------------- 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * Copyright 2009 Intel Corporation; author H. Peter Anvin 5*4882a593Smuzhiyun * 6*4882a593Smuzhiyun * ----------------------------------------------------------------------- */ 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun /* 9*4882a593Smuzhiyun * Simple helper function for initializing a register set. 10*4882a593Smuzhiyun * 11*4882a593Smuzhiyun * Note that this sets EFLAGS_CF in the input register set; this 12*4882a593Smuzhiyun * makes it easier to catch functions which do nothing but don't 13*4882a593Smuzhiyun * explicitly set CF. 14*4882a593Smuzhiyun */ 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun #include "boot.h" 17*4882a593Smuzhiyun #include "string.h" 18*4882a593Smuzhiyun initregs(struct biosregs * reg)19*4882a593Smuzhiyunvoid initregs(struct biosregs *reg) 20*4882a593Smuzhiyun { 21*4882a593Smuzhiyun memset(reg, 0, sizeof(*reg)); 22*4882a593Smuzhiyun reg->eflags |= X86_EFLAGS_CF; 23*4882a593Smuzhiyun reg->ds = ds(); 24*4882a593Smuzhiyun reg->es = ds(); 25*4882a593Smuzhiyun reg->fs = fs(); 26*4882a593Smuzhiyun reg->gs = gs(); 27*4882a593Smuzhiyun } 28