How to assess PMP register

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Is there any way to read PMP registers after hardreset/softreset?
SATA Controller is marvell 88SX7042 and driver is sata_mv.
I try to send 0xE4 and 0xE6 command to read/write PMP registers:

	struct sg_io_hdr io_hdr;
	unsigned char cdb[SG_ATA_16_LEN];
	unsigned char sb[32];
	unsigned char data[4096];

	memset(&io_hdr, 0, sizeof(io_hdr));
	memset(&cdb, 0, sizeof(cdb));
	memset(&sb, 0, sizeof(sb));
	memset(&data, 0, sizeof(data));

	cdb[0] = SG_ATA_16;
	cdb[1] = SG_ATA_PROTO_NON_DATA;

	cdb[2] = SG_CDB2_CHECK_COND;
	cdb[4] = (unsigned char)reg;
	cdb[13] = 0xF;
	cdb[14] = 0xe8;

	io_hdr.interface_id = 'S';
	io_hdr.mx_sb_len = sizeof(sb);
	io_hdr.dxfer_direction = SG_DXFER_NONE;
	io_hdr.dxfer_len = 0;
	io_hdr.dxferp = NULL;
	io_hdr.cmdp = cdb;
	io_hdr.cmd_len = SG_ATA_16_LEN;
	io_hdr.sbp = sb;

	io_hdr.pack_id = 0;
	io_hdr.timeout = 16000;
        if (ioctl(fd, SG_IO, &io_hdr) == -1) {
		perror("ioctl(fd, SG_IO)");
		return -1;
	}

But after 'ioctl', the SATA link fails to read SCR1 and start resetting:

ata1.00: failed to read SCR 1 (Emask=0x40)
ata1.01: failed to read SCR 1 (Emask=0x40)
ata1.02: failed to read SCR 1 (Emask=0x40)
ata1.03: failed to read SCR 1 (Emask=0x40)
ata1.00: exception Emask 0x100 SAct 0x0 SErr 0x0 action 0x6 frozen
ata1.01: exception Emask 0x100 SAct 0x0 SErr 0x0 action 0x6 frozen
ata1.01: cmd e8/00:00:00:00:00/00:00:00:00:00/0f tag 0
         res 58/00:00:00:00:00/00:00:00:00:00/0f Emask 0x2 (HSM violation)
ata1.01: status: { DRDY DRQ }
ata1.02: exception Emask 0x100 SAct 0x0 SErr 0x0 action 0x6 frozen
ata1.03: exception Emask 0x100 SAct 0x0 SErr 0x0 action 0x6 frozen
ata1.15: hard resetting link

Is there any suggestion?
--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux