/* Return value: 1 on Success / 0 on Failure  */
static int recover_from_platform_error(slidx_table_t *slidx, peidx_table_t *peidx, pal_bus_check_info_t *pbci, struct ia64_sal_os_state *sos)
/* Return value: 1 on Success / 0 on Failure  */
static int recover_from_platform_error(slidx_table_t *slidx, peidx_table_t *peidx, pal_bus_check_info_t *pbci, struct ia64_sal_os_state *sos)
{
	int status = 0;
	pal_processor_state_info_t *psp =
		(pal_processor_state_info_t*)peidx_psp(peidx);
	if (psp->bc && pbci->eb && pbci->bsi == 0) {
		switch(pbci->type) {
		case 1:
		case 3:
		case 9:
			status = recover_from_read_error(slidx, peidx, pbci,
							 sos);
			break;
		case 0:
		case 2:
		case 4:
		case 5:
		case 6:
		case 7:
		case 8:
		case 10:
		case 11:
		case 12:
		default:
			break;
		}
	} else if (psp->cc && !psp->bc) {
		status = recover_from_read_error(slidx, peidx, pbci, sos);
	}
	return status;
}