All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Philippe Mathieu-Daudé" <f4bug@amsat.org>
To: Alistair Francis <alistair.francis@xilinx.com>
Cc: "Philippe Mathieu-Daudé" <f4bug@amsat.org>,
	qemu-devel@nongnu.org, "Fam Zheng" <famz@redhat.com>,
	"Edgar E . Iglesias" <edgar.iglesias@xilinx.com>,
	"Peter Maydell" <peter.maydell@linaro.org>,
	"Andrey Smirnov" <andrew.smirnov@gmail.com>,
	"Eduardo Habkost" <ehabkost@redhat.com>
Subject: [Qemu-devel] [PATCH v5 12/17] sdhci: use FIELD_DP32() macro for the WRITE_PROTECT flag
Date: Wed,  3 Jan 2018 15:08:00 -0300	[thread overview]
Message-ID: <20180103180805.18140-13-f4bug@amsat.org> (raw)
In-Reply-To: <20180103180805.18140-1-f4bug@amsat.org>

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 hw/sd/sdhci-internal.h | 6 ++++--
 hw/sd/sdhci.c          | 8 ++------
 2 files changed, 6 insertions(+), 8 deletions(-)

diff --git a/hw/sd/sdhci-internal.h b/hw/sd/sdhci-internal.h
index e941bc2386..df240ea046 100644
--- a/hw/sd/sdhci-internal.h
+++ b/hw/sd/sdhci-internal.h
@@ -24,6 +24,8 @@
 #ifndef SDHCI_INTERNAL_H
 #define SDHCI_INTERNAL_H
 
+#include "hw/registerfields.h"
+
 /* R/W SDMA System Address register 0x0 */
 #define SDHC_SYSAD                     0x00
 
@@ -77,8 +79,8 @@
 #define SDHC_SPACE_AVAILABLE           0x00000400
 #define SDHC_DATA_AVAILABLE            0x00000800
 #define SDHC_CARD_PRESENT              0x00010000
-#define SDHC_CARD_DETECT               0x00040000
-#define SDHC_WRITE_PROTECT             0x00080000
+FIELD(SDHC_PRNSTS, CARD_DETECT,        18, 1);
+FIELD(SDHC_PRNSTS, WRITE_PROTECT,      19, 1);
 #define TRANSFERRING_DATA(x)           \
     ((x) & (SDHC_DOING_READ | SDHC_DOING_WRITE))
 
diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c
index ede51d7e45..2c8dc66e7a 100644
--- a/hw/sd/sdhci.c
+++ b/hw/sd/sdhci.c
@@ -159,12 +159,8 @@ static void sdhci_set_readonly(DeviceState *dev, bool level)
 {
     SDHCIState *s = (SDHCIState *)dev;
 
-    if (level) {
-        s->prnsts &= ~SDHC_WRITE_PROTECT;
-    } else {
-        /* Write enabled */
-        s->prnsts |= SDHC_WRITE_PROTECT;
-    }
+    /* Write enabled */
+    s->prnsts = FIELD_DP32(s->prnsts, SDHC_PRNSTS, WRITE_PROTECT, level);
 }
 
 static void sdhci_reset(SDHCIState *s)
-- 
2.15.1

  parent reply	other threads:[~2018-01-03 18:08 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-03 18:07 [Qemu-devel] [PATCH v5 00/17] SDHCI: housekeeping Philippe Mathieu-Daudé
2018-01-03 18:07 ` [Qemu-devel] [PATCH v5 01/17] sdhci: clean up includes Philippe Mathieu-Daudé
2018-01-03 18:07 ` [Qemu-devel] [PATCH v5 02/17] sdhci: sort registers comments Philippe Mathieu-Daudé
2018-01-03 18:07 ` [Qemu-devel] [PATCH v5 03/17] sdhci: remove dead code Philippe Mathieu-Daudé
2018-01-03 18:07 ` [Qemu-devel] [PATCH v5 04/17] sdhci: refactor same sysbus/pci properties into a common one Philippe Mathieu-Daudé
2018-01-04 17:57   ` Alistair Francis
2018-01-03 18:07 ` [Qemu-devel] [PATCH v5 05/17] sdhci: refactor common sysbus/pci class_init() into sdhci_common_class_init() Philippe Mathieu-Daudé
2018-01-04 17:57   ` Alistair Francis
2018-01-03 18:07 ` [Qemu-devel] [PATCH v5 06/17] sdhci: refactor common sysbus/pci realize() into sdhci_common_realize() Philippe Mathieu-Daudé
2018-01-04 17:53   ` Alistair Francis
2018-01-03 18:07 ` [Qemu-devel] [PATCH v5 07/17] sdhci: refactor common sysbus/pci unrealize() into sdhci_common_unrealize() Philippe Mathieu-Daudé
2018-01-04 17:59   ` Alistair Francis
2018-01-03 18:07 ` [Qemu-devel] [PATCH v5 08/17] sdhci: use qemu_log_mask(UNIMP) instead of fprintf() Philippe Mathieu-Daudé
2018-01-03 18:07 ` [Qemu-devel] [PATCH v5 09/17] sdhci: convert the DPRINT() calls into trace events Philippe Mathieu-Daudé
2018-01-03 18:07 ` [Qemu-devel] [PATCH v5 10/17] sdhci: add a GPIO for the 'access control' LED Philippe Mathieu-Daudé
2018-01-03 18:07 ` [Qemu-devel] [PATCH v5 11/17] sdhci: move MASK_TRNMOD with other SDHC_TRN* defines in "sd-internal.h" Philippe Mathieu-Daudé
2018-01-03 18:08 ` Philippe Mathieu-Daudé [this message]
2018-01-04 17:54   ` [Qemu-devel] [PATCH v5 12/17] sdhci: use FIELD_DP32() macro for the WRITE_PROTECT flag Alistair Francis
2018-01-03 18:08 ` [Qemu-devel] [PATCH v5 13/17] sdhci: rename the SDHC_CAPAB register Philippe Mathieu-Daudé
2018-01-03 18:08 ` [Qemu-devel] [PATCH v5 14/17] sdhci: fix CAPAB/MAXCURR registers, both are 64bit and read-only Philippe Mathieu-Daudé
2018-01-03 18:08 ` [Qemu-devel] [PATCH v5 15/17] sdhci: Implement write method of ACMD12ERRSTS register Philippe Mathieu-Daudé
2018-01-03 18:08 ` [Qemu-devel] [PATCH v5 16/17] sdhci: use deposit64() on admasysaddr Philippe Mathieu-Daudé
2018-01-03 18:08 ` [Qemu-devel] [PATCH v5 17/17] sdhci: add a "dma-memory" property Philippe Mathieu-Daudé

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180103180805.18140-13-f4bug@amsat.org \
    --to=f4bug@amsat.org \
    --cc=alistair.francis@xilinx.com \
    --cc=andrew.smirnov@gmail.com \
    --cc=edgar.iglesias@xilinx.com \
    --cc=ehabkost@redhat.com \
    --cc=famz@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.