162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright (C) 2015 Anshuman Khandual, IBM Corporation.
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci#define TAR_1   10
662306a36Sopenharmony_ci#define TAR_2   20
762306a36Sopenharmony_ci#define TAR_3   30
862306a36Sopenharmony_ci#define TAR_4   40
962306a36Sopenharmony_ci#define TAR_5   50
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci#define DSCR_1  100
1262306a36Sopenharmony_ci#define DSCR_2  200
1362306a36Sopenharmony_ci#define DSCR_3  300
1462306a36Sopenharmony_ci#define DSCR_4  400
1562306a36Sopenharmony_ci#define DSCR_5  500
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci#define PPR_1   0x4000000000000         /* or 31,31,31*/
1862306a36Sopenharmony_ci#define PPR_2   0x8000000000000         /* or 1,1,1 */
1962306a36Sopenharmony_ci#define PPR_3   0xc000000000000         /* or 6,6,6 */
2062306a36Sopenharmony_ci#define PPR_4   0x10000000000000        /* or 2,2,2 */
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_cichar *user_read = "[User Read (Running)]";
2362306a36Sopenharmony_cichar *user_write = "[User Write (Running)]";
2462306a36Sopenharmony_cichar *ptrace_read_running = "[Ptrace Read (Running)]";
2562306a36Sopenharmony_cichar *ptrace_write_running = "[Ptrace Write (Running)]";
2662306a36Sopenharmony_cichar *ptrace_read_ckpt = "[Ptrace Read (Checkpointed)]";
2762306a36Sopenharmony_cichar *ptrace_write_ckpt = "[Ptrace Write (Checkpointed)]";
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ciint validate_tar_registers(unsigned long *reg, unsigned long tar,
3062306a36Sopenharmony_ci				unsigned long ppr, unsigned long dscr)
3162306a36Sopenharmony_ci{
3262306a36Sopenharmony_ci	int match = 1;
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ci	if (reg[0] != tar)
3562306a36Sopenharmony_ci		match = 0;
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ci	if (reg[1] != ppr)
3862306a36Sopenharmony_ci		match = 0;
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ci	if (reg[2] != dscr)
4162306a36Sopenharmony_ci		match = 0;
4262306a36Sopenharmony_ci
4362306a36Sopenharmony_ci	if (!match)
4462306a36Sopenharmony_ci		return TEST_FAIL;
4562306a36Sopenharmony_ci	return TEST_PASS;
4662306a36Sopenharmony_ci}
47