* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef __PRINTK_HH__
-#define __PRINTK_HH__
+#ifndef __KERN_LINUX_PRINTK_HH__
+#define __KERN_LINUX_PRINTK_HH__
-#include <sstream>
+#include <string>
-class Arguments;
+#include "base/types.hh"
+#include "sim/guest_abi.hh"
-void Printk(std::stringstream &out, Arguments args);
+namespace Linux
+{
-#endif // __PRINTK_HH__
+using PrintkVarArgs =
+ GuestABI::VarArgs<Addr, int32_t, uint32_t, int64_t, uint64_t>;
+int printk(std::string &out, ThreadContext *tc, Addr format_ptr,
+ PrintkVarArgs args);
+
+} // namespace Linux
+
+#endif // __KERN_LINUX_PRINTK_HH__