/* diagnose code 0x210 - retrieve device information cc=0 normal completion, we have a real device cc=1 CP paging error cc=2 The virtual device exists, but is not associated with a real device cc=3 Invalid device address, or the virtual device does not exist  */
static int get_urd_class(struct urdev *urd)
/* diagnose code 0x210 - retrieve device information cc=0 normal completion, we have a real device cc=1 CP paging error cc=2 The virtual device exists, but is not associated with a real device cc=3 Invalid device address, or the virtual device does not exist  */
static int get_urd_class(struct urdev *urd)
{
	static struct diag210 ur_diag210;
	int cc;
	ur_diag210.vrdcdvno = urd->dev_id.devno;
	ur_diag210.vrdclen = sizeof(struct diag210);
	cc = diag210(&ur_diag210);
	switch (cc) {
	case 0:
		return -EOPNOTSUPP;
	case 2:
		return ur_diag210.vrdcvcla;
	case 3:
		return -ENODEV;
	default:
		return -EIO;
	}
}