From nobody Tue Jan 25 07:48:35 2022 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 56426197A711; Tue, 25 Jan 2022 07:48:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Jjf9b54fzz3hJ6; Tue, 25 Jan 2022 07:48:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1643096915; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yGTJSb9/jRIX9jJknqeYGfS3XChP/Z1Lc29vhiyjyDg=; b=GLvjkCjbYPiNhyVSdEKLEcTmqEMc99q17t9fKFzUZqAAstgyT1hFnF662JHqaTiV0zvM3R e4LsYAa7mBLSp5WKkMy+az87KCk2uF0u6GyhzMQzeY5CsuDiIR62OAbbJFYRO9Mhy0A7zB cO+SnfLlC0Qn5N8QQekqbus3MLfeT18Dua8WYAERJf5PI7DNjfohxJ127v44pHJlPYU+oW 9MzZh0HIlC24L6ncy4E3U6lwzZ/r/f8xFxQN0OG3Z6hgmA3eEySZ6P/ECHKiCBbHEtbqfN J2ufFKRDTdpuNL57HkfPD3eTGq1GD6x1Cz3m6EkaY5mJ8dRZG2PggknENxt4kw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 345C125C2F; Tue, 25 Jan 2022 07:48:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 20P7mZvk037818; Tue, 25 Jan 2022 07:48:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 20P7mZFK037817; Tue, 25 Jan 2022 07:48:35 GMT (envelope-from git) Date: Tue, 25 Jan 2022 07:48:35 GMT Message-Id: <202201250748.20P7mZFK037817@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andriy Gapon Subject: git: 9f8b984392f2 - stable/12 - add and use defintions for ATA power modes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: avg X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 9f8b984392f2ed055703013fd46089bd516c620c Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1643096915; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yGTJSb9/jRIX9jJknqeYGfS3XChP/Z1Lc29vhiyjyDg=; b=HrMaq/l493i8Vdm3wYK+zEaJgngzvUv2LfZxInmm5BGW7AskpUCtoTTHM6GGP1oKWIG94B YX0BN2I6Fljk4RU7+Rk4XX5pTr4o6vz1g17bXTrclO+HAn/rPNVkE28rMPWpcecDE/cTnJ 9auxgEzFuBu5hn8xcr5CcgO1XZcZIfNErVB+NfLpQWhpBnPLIlWbzbfRNSxKNKGjFXKz22 u46mRLxpViaM0gt0bQF/Akw5Ka/yEUvPetgw6evE1tS70pkwolPETbRHd1NbxYge9RWVB7 DutgNRDk28q0Xro1KUR8vdpT9QjJhyMxLiAu8oPzqzjUTEp66EisBJuN71m6Rg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1643096915; a=rsa-sha256; cv=none; b=lWEfqM9sgiJxTxWQiJmAWpFM+CN17VDeWBm0UCKArkoHiq4/yaQvOLeyKZH5QnxjfXLLgf VFBWSzGGzox17bOLV1eosT52Hw29iMnDtEwlGp9E7mAInAHmaduBL3Z3mJPYqCixi5KUOq U2F30ns2npDEn7nhMbdrx8EM3SrmlT2h/6aPJgNHkILFFXFMw8FhuU5DWJJEThYipmpEfd +Lws+40LYwYx9nHGcVy4/vL/xP9n8UokgR6FURjrojLPiDjZ32VPascMuHJEpOPjQHfei0 2L1sFihvhvhikaasTYJA1V1N9X+57hUWkxAUu+SHHxmP/dq+8sSbb7j2TY0oww== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by avg: URL: https://cgit.FreeBSD.org/src/commit/?id=9f8b984392f2ed055703013fd46089bd516c620c commit 9f8b984392f2ed055703013fd46089bd516c620c Author: Andriy Gapon AuthorDate: 2022-01-11 13:41:38 +0000 Commit: Andriy Gapon CommitDate: 2022-01-25 07:48:08 +0000 add and use defintions for ATA power modes Those can be returned by CHECK POWER MODE command (0xe5). Note that some of the definitions duplicate definitions for Extended Power Conditions. (cherry picked from commit 75bc7150f4b87e14da13e2e96da9cdf59a5723cf) --- sbin/camcontrol/camcontrol.c | 18 +++++++++--------- sbin/camcontrol/epc.c | 8 ++++---- sys/cam/ata/ata_da.c | 4 ++-- sys/sys/ata.h | 7 +++++++ 4 files changed, 22 insertions(+), 15 deletions(-) diff --git a/sbin/camcontrol/camcontrol.c b/sbin/camcontrol/camcontrol.c index a6cadfd20978..a91aa4779822 100644 --- a/sbin/camcontrol/camcontrol.c +++ b/sbin/camcontrol/camcontrol.c @@ -9190,31 +9190,31 @@ atapm_proc_resp(struct cam_device *device, union ccb *ccb) printf("%s%d: ", device->device_name, device->dev_unit_num); switch (count) { - case 0x00: + case ATA_PM_STANDBY: printf("Standby mode\n"); break; - case 0x01: + case ATA_PM_STANDBY_Y: printf("Standby_y mode\n"); break; - case 0x40: + case 0x40: /* obsolete since ACS-3 */ printf("NV Cache Power Mode and the spindle is spun down or spinning down\n"); break; - case 0x41: + case 0x41: /* obsolete since ACS-3 */ printf("NV Cache Power Mode and the spindle is spun up or spinning up\n"); break; - case 0x80: + case ATA_PM_IDLE: printf("Idle mode\n"); break; - case 0x81: + case ATA_PM_IDLE_A: printf("Idle_a mode\n"); break; - case 0x82: + case ATA_PM_IDLE_B: printf("Idle_b mode\n"); break; - case 0x83: + case ATA_PM_IDLE_C: printf("Idle_c mode\n"); break; - case 0xff: + case ATA_PM_ACTIVE_IDLE: printf("Active or Idle mode\n"); break; default: diff --git a/sbin/camcontrol/epc.c b/sbin/camcontrol/epc.c index 8b42f63c7523..5da3bbbc35d3 100644 --- a/sbin/camcontrol/epc.c +++ b/sbin/camcontrol/epc.c @@ -475,18 +475,18 @@ check_power_mode: || (ident->enabled2 & ATA_ENABLED_EPC)) { if (mode_name != NULL) printf("%s", mode_name); - else if (count == 0xff) { + else if (count == ATA_PM_ACTIVE_IDLE) { printf("PM0:Active or PM1:Idle"); } } else { switch (count) { - case 0x00: + case ATA_PM_STANDBY: printf("PM2:Standby"); break; - case 0x80: + case ATA_PM_IDLE: printf("PM1:Idle"); break; - case 0xff: + case ATA_PM_ACTIVE_IDLE: printf("PM0:Active or PM1:Idle"); break; } diff --git a/sys/cam/ata/ata_da.c b/sys/cam/ata/ata_da.c index 6d01c332c056..5780a69855f9 100644 --- a/sys/cam/ata/ata_da.c +++ b/sys/cam/ata/ata_da.c @@ -3537,8 +3537,8 @@ adaspindown(uint8_t cmd, int flags) } #endif switch (mode) { - case 0x00: - case 0x01: + case ATA_PM_STANDBY: + case ATA_PM_STANDBY_Y: if (bootverbose) { xpt_print(periph->path, "already spun down\n"); diff --git a/sys/sys/ata.h b/sys/sys/ata.h index 3419a818984c..6aa1695e564f 100644 --- a/sys/sys/ata.h +++ b/sys/sys/ata.h @@ -478,6 +478,13 @@ struct ata_params { #define ATA_READ_BUFFER 0xe4 /* read buffer */ #define ATA_READ_PM 0xe4 /* read portmultiplier */ #define ATA_CHECK_POWER_MODE 0xe5 /* device power mode */ +#define ATA_PM_STANDBY 0x00 /* standby, also ATA_EPC_STANDBY_Z */ +#define ATA_PM_STANDBY_Y 0x01 /* standby, also ATA_EPC_STANDBY_Y */ +#define ATA_PM_IDLE 0x80 /* idle */ +#define ATA_PM_IDLE_A 0x81 /* idle, also ATA_EPC_IDLE_A */ +#define ATA_PM_IDLE_B 0x82 /* idle, also ATA_EPC_IDLE_B */ +#define ATA_PM_IDLE_C 0x83 /* idle, also ATA_EPC_IDLE_C */ +#define ATA_PM_ACTIVE_IDLE 0xff /* active or idle */ #define ATA_SLEEP 0xe6 /* sleep */ #define ATA_FLUSHCACHE 0xe7 /* flush cache to disk */ #define ATA_WRITE_BUFFER 0xe8 /* write buffer */