[U-Boot] [PATCH 09/11] mmc: sdhci: use the bitops APIs in sdhci.h

Jaehoon Chung jh80.chung at samsung.com
Fri Dec 30 07:30:19 CET 2016


The using the bitops is too easy controlling than now.

Signed-off-by: Jaehoon Chung <jh80.chung at samsung.com>
---
 include/sdhci.h | 112 ++++++++++++++++++++++++++++----------------------------
 1 file changed, 56 insertions(+), 56 deletions(-)

diff --git a/include/sdhci.h b/include/sdhci.h
index abe4846..9f6bbc8 100644
--- a/include/sdhci.h
+++ b/include/sdhci.h
@@ -28,11 +28,11 @@
 #define SDHCI_ARGUMENT		0x08
 
 #define SDHCI_TRANSFER_MODE	0x0C
-#define  SDHCI_TRNS_DMA		0x01
-#define  SDHCI_TRNS_BLK_CNT_EN	0x02
-#define  SDHCI_TRNS_ACMD12	0x04
-#define  SDHCI_TRNS_READ	0x10
-#define  SDHCI_TRNS_MULTI	0x20
+#define  SDHCI_TRNS_DMA		BIT(0)
+#define  SDHCI_TRNS_BLK_CNT_EN	BIT(1)
+#define  SDHCI_TRNS_ACMD12	BIT(2)
+#define  SDHCI_TRNS_READ	BIT(4)
+#define  SDHCI_TRNS_MULTI	BIT(5)
 
 #define SDHCI_COMMAND		0x0E
 #define  SDHCI_CMD_RESP_MASK	0x03
@@ -54,29 +54,29 @@
 #define SDHCI_BUFFER		0x20
 
 #define SDHCI_PRESENT_STATE	0x24
-#define  SDHCI_CMD_INHIBIT	0x00000001
-#define  SDHCI_DATA_INHIBIT	0x00000002
-#define  SDHCI_DOING_WRITE	0x00000100
-#define  SDHCI_DOING_READ	0x00000200
-#define  SDHCI_SPACE_AVAILABLE	0x00000400
-#define  SDHCI_DATA_AVAILABLE	0x00000800
-#define  SDHCI_CARD_PRESENT	0x00010000
-#define  SDHCI_CARD_STATE_STABLE	0x00020000
-#define  SDHCI_CARD_DETECT_PIN_LEVEL	0x00040000
-#define  SDHCI_WRITE_PROTECT	0x00080000
+#define  SDHCI_CMD_INHIBIT	BIT(0)
+#define  SDHCI_DATA_INHIBIT	BIT(1)
+#define  SDHCI_DOING_WRITE	BIT(8)
+#define  SDHCI_DOING_READ	BIT(9)
+#define  SDHCI_SPACE_AVAILABLE	BIT(10)
+#define  SDHCI_DATA_AVAILABLE	BIT(11)
+#define  SDHCI_CARD_PRESENT	BIT(16)
+#define  SDHCI_CARD_STATE_STABLE	BIT(17)
+#define  SDHCI_CARD_DETECT_PIN_LEVEL	BIT(18)
+#define  SDHCI_WRITE_PROTECT	BIT(19)
 
 #define SDHCI_HOST_CONTROL	0x28
-#define  SDHCI_CTRL_LED		0x01
-#define  SDHCI_CTRL_4BITBUS	0x02
-#define  SDHCI_CTRL_HISPD	0x04
+#define  SDHCI_CTRL_LED		BIT(0)
+#define  SDHCI_CTRL_4BITBUS	BIT(1)
+#define  SDHCI_CTRL_HISPD	BIT(2)
 #define  SDHCI_CTRL_DMA_MASK	0x18
 #define   SDHCI_CTRL_SDMA	0x00
 #define   SDHCI_CTRL_ADMA1	0x08
 #define   SDHCI_CTRL_ADMA32	0x10
 #define   SDHCI_CTRL_ADMA64	0x18
-#define  SDHCI_CTRL_8BITBUS	0x20
-#define  SDHCI_CTRL_CD_TEST_INS	0x40
-#define  SDHCI_CTRL_CD_TEST	0x80
+#define  SDHCI_CTRL_8BITBUS	BIT(5)
+#define  SDHCI_CTRL_CD_TEST_INS	BIT(6)
+#define  SDHCI_CTRL_CD_TEST	BIT(7)
 
 #define SDHCI_POWER_CONTROL	0x29
 #define  SDHCI_POWER_ON		0x01
@@ -87,9 +87,9 @@
 #define SDHCI_BLOCK_GAP_CONTROL	0x2A
 
 #define SDHCI_WAKE_UP_CONTROL	0x2B
-#define  SDHCI_WAKE_ON_INT	0x01
-#define  SDHCI_WAKE_ON_INSERT	0x02
-#define  SDHCI_WAKE_ON_REMOVE	0x04
+#define  SDHCI_WAKE_ON_INT	BIT(0)
+#define  SDHCI_WAKE_ON_INSERT	BIT(1)
+#define  SDHCI_WAKE_ON_REMOVE	BIT(2)
 
 #define SDHCI_CLOCK_CONTROL	0x2C
 #define  SDHCI_DIVIDER_SHIFT	8
@@ -97,10 +97,10 @@
 #define  SDHCI_DIV_MASK	0xFF
 #define  SDHCI_DIV_MASK_LEN	8
 #define  SDHCI_DIV_HI_MASK	0x300
-#define  SDHCI_PROG_CLOCK_MODE  0x0020
-#define  SDHCI_CLOCK_CARD_EN	0x0004
-#define  SDHCI_CLOCK_INT_STABLE	0x0002
-#define  SDHCI_CLOCK_INT_EN	0x0001
+#define  SDHCI_PROG_CLOCK_MODE  BIT(5)
+#define  SDHCI_CLOCK_CARD_EN	BIT(2)
+#define  SDHCI_CLOCK_INT_STABLE	BIT(1)
+#define  SDHCI_CLOCK_INT_EN	BIT(0)
 
 #define SDHCI_TIMEOUT_CONTROL	0x2E
 
@@ -112,25 +112,25 @@
 #define SDHCI_INT_STATUS	0x30
 #define SDHCI_INT_ENABLE	0x34
 #define SDHCI_SIGNAL_ENABLE	0x38
-#define  SDHCI_INT_RESPONSE	0x00000001
-#define  SDHCI_INT_DATA_END	0x00000002
-#define  SDHCI_INT_DMA_END	0x00000008
-#define  SDHCI_INT_SPACE_AVAIL	0x00000010
-#define  SDHCI_INT_DATA_AVAIL	0x00000020
-#define  SDHCI_INT_CARD_INSERT	0x00000040
-#define  SDHCI_INT_CARD_REMOVE	0x00000080
-#define  SDHCI_INT_CARD_INT	0x00000100
-#define  SDHCI_INT_ERROR	0x00008000
-#define  SDHCI_INT_TIMEOUT	0x00010000
-#define  SDHCI_INT_CRC		0x00020000
-#define  SDHCI_INT_END_BIT	0x00040000
-#define  SDHCI_INT_INDEX	0x00080000
-#define  SDHCI_INT_DATA_TIMEOUT	0x00100000
-#define  SDHCI_INT_DATA_CRC	0x00200000
-#define  SDHCI_INT_DATA_END_BIT	0x00400000
-#define  SDHCI_INT_BUS_POWER	0x00800000
-#define  SDHCI_INT_ACMD12ERR	0x01000000
-#define  SDHCI_INT_ADMA_ERROR	0x02000000
+#define  SDHCI_INT_RESPONSE	BIT(0)
+#define  SDHCI_INT_DATA_END	BIT(1)
+#define  SDHCI_INT_DMA_END	BIT(3)
+#define  SDHCI_INT_SPACE_AVAIL	BIT(4)
+#define  SDHCI_INT_DATA_AVAIL	BIT(5)
+#define  SDHCI_INT_CARD_INSERT	BIT(6)
+#define  SDHCI_INT_CARD_REMOVE	BIT(7)
+#define  SDHCI_INT_CARD_INT	BIT(8)
+#define  SDHCI_INT_ERROR	BIT(15)
+#define  SDHCI_INT_TIMEOUT	BIT(16)
+#define  SDHCI_INT_CRC		BIT(17)
+#define  SDHCI_INT_END_BIT	BIT(18)
+#define  SDHCI_INT_INDEX	BIT(19)
+#define  SDHCI_INT_DATA_TIMEOUT	BIT(20)
+#define  SDHCI_INT_DATA_CRC	BIT(21)
+#define  SDHCI_INT_DATA_END_BIT	BIT(22)
+#define  SDHCI_INT_BUS_POWER	BIT(23)
+#define  SDHCI_INT_ACMD12ERR	BIT(24)
+#define  SDHCI_INT_ADMA_ERROR	BIT(25)
 
 #define  SDHCI_INT_NORMAL_MASK	0x00007FFF
 #define  SDHCI_INT_ERROR_MASK	0xFFFF8000
@@ -156,15 +156,15 @@
 #define  SDHCI_CLOCK_BASE_SHIFT	8
 #define  SDHCI_MAX_BLOCK_MASK	0x00030000
 #define  SDHCI_MAX_BLOCK_SHIFT  16
-#define  SDHCI_CAN_DO_8BIT	0x00040000
-#define  SDHCI_CAN_DO_ADMA2	0x00080000
-#define  SDHCI_CAN_DO_ADMA1	0x00100000
-#define  SDHCI_CAN_DO_HISPD	0x00200000
-#define  SDHCI_CAN_DO_SDMA	0x00400000
-#define  SDHCI_CAN_VDD_330	0x01000000
-#define  SDHCI_CAN_VDD_300	0x02000000
-#define  SDHCI_CAN_VDD_180	0x04000000
-#define  SDHCI_CAN_64BIT	0x10000000
+#define  SDHCI_CAN_DO_8BIT	BIT(18)
+#define  SDHCI_CAN_DO_ADMA2	BIT(19)
+#define  SDHCI_CAN_DO_ADMA1	BIT(20)
+#define  SDHCI_CAN_DO_HISPD	BIT(21)
+#define  SDHCI_CAN_DO_SDMA	BIT(22)
+#define  SDHCI_CAN_VDD_330	BIT(24)
+#define  SDHCI_CAN_VDD_300	BIT(25)
+#define  SDHCI_CAN_VDD_180	BIT(26)
+#define  SDHCI_CAN_64BIT	BIT(28)
 
 #define SDHCI_CAPABILITIES_1	0x44
 #define  SDHCI_CLOCK_MUL_MASK	0x00FF0000
-- 
2.10.2



More information about the U-Boot mailing list