Commit 2a5149e0 authored by Mike Rapoport's avatar Mike Rapoport Committed by Greg Kroah-Hartman

staging: sm750fb: use BIT macro for GPIO_MUX single-bit fields

Replace complex definition of GPIO_MUX register fields with BIT() macro
and use open-coded implementation for register manipulations.
Signed-off-by: default avatarMike Rapoport <mike.rapoport@gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 9a357143
...@@ -17,8 +17,7 @@ unsigned char bus_speed_mode ...@@ -17,8 +17,7 @@ unsigned char bus_speed_mode
/* Enable GPIO 30 & 31 as IIC clock & data */ /* Enable GPIO 30 & 31 as IIC clock & data */
value = PEEK32(GPIO_MUX); value = PEEK32(GPIO_MUX);
value = FIELD_SET(value, GPIO_MUX, 30, I2C) | value |= (GPIO_MUX_30 | GPIO_MUX_31);
FIELD_SET(0, GPIO_MUX, 31, I2C);
POKE32(GPIO_MUX, value); POKE32(GPIO_MUX, value);
/* Enable Hardware I2C power. /* Enable Hardware I2C power.
...@@ -52,8 +51,8 @@ void sm750_hw_i2c_close(void) ...@@ -52,8 +51,8 @@ void sm750_hw_i2c_close(void)
/* Set GPIO 30 & 31 back as GPIO pins */ /* Set GPIO 30 & 31 back as GPIO pins */
value = PEEK32(GPIO_MUX); value = PEEK32(GPIO_MUX);
value = FIELD_SET(value, GPIO_MUX, 30, GPIO); value &= ~GPIO_MUX_30;
value = FIELD_SET(value, GPIO_MUX, 31, GPIO); value &= ~GPIO_MUX_31;
POKE32(GPIO_MUX, value); POKE32(GPIO_MUX, value);
} }
......
...@@ -75,102 +75,38 @@ ...@@ -75,102 +75,38 @@
#define MISC_CTRL_EMBEDDED_LOCALMEM_OFF BIT(0) #define MISC_CTRL_EMBEDDED_LOCALMEM_OFF BIT(0)
#define GPIO_MUX 0x000008 #define GPIO_MUX 0x000008
#define GPIO_MUX_31 31:31 #define GPIO_MUX_31 BIT(31)
#define GPIO_MUX_31_GPIO 0 #define GPIO_MUX_30 BIT(30)
#define GPIO_MUX_31_I2C 1 #define GPIO_MUX_29 BIT(29)
#define GPIO_MUX_30 30:30 #define GPIO_MUX_28 BIT(28)
#define GPIO_MUX_30_GPIO 0 #define GPIO_MUX_27 BIT(27)
#define GPIO_MUX_30_I2C 1 #define GPIO_MUX_26 BIT(26)
#define GPIO_MUX_29 29:29 #define GPIO_MUX_25 BIT(25)
#define GPIO_MUX_29_GPIO 0 #define GPIO_MUX_24 BIT(24)
#define GPIO_MUX_29_SSP1 1 #define GPIO_MUX_23 BIT(23)
#define GPIO_MUX_28 28:28 #define GPIO_MUX_22 BIT(22)
#define GPIO_MUX_28_GPIO 0 #define GPIO_MUX_21 BIT(21)
#define GPIO_MUX_28_SSP1 1 #define GPIO_MUX_20 BIT(20)
#define GPIO_MUX_27 27:27 #define GPIO_MUX_19 BIT(19)
#define GPIO_MUX_27_GPIO 0 #define GPIO_MUX_18 BIT(18)
#define GPIO_MUX_27_SSP1 1 #define GPIO_MUX_17 BIT(17)
#define GPIO_MUX_26 26:26 #define GPIO_MUX_16 BIT(16)
#define GPIO_MUX_26_GPIO 0 #define GPIO_MUX_15 BIT(15)
#define GPIO_MUX_26_SSP1 1 #define GPIO_MUX_14 BIT(14)
#define GPIO_MUX_25 25:25 #define GPIO_MUX_13 BIT(13)
#define GPIO_MUX_25_GPIO 0 #define GPIO_MUX_12 BIT(12)
#define GPIO_MUX_25_SSP1 1 #define GPIO_MUX_11 BIT(11)
#define GPIO_MUX_24 24:24 #define GPIO_MUX_10 BIT(10)
#define GPIO_MUX_24_GPIO 0 #define GPIO_MUX_9 BIT(9)
#define GPIO_MUX_24_SSP0 1 #define GPIO_MUX_8 BIT(8)
#define GPIO_MUX_23 23:23 #define GPIO_MUX_7 BIT(7)
#define GPIO_MUX_23_GPIO 0 #define GPIO_MUX_6 BIT(6)
#define GPIO_MUX_23_SSP0 1 #define GPIO_MUX_5 BIT(5)
#define GPIO_MUX_22 22:22 #define GPIO_MUX_4 BIT(4)
#define GPIO_MUX_22_GPIO 0 #define GPIO_MUX_3 BIT(3)
#define GPIO_MUX_22_SSP0 1 #define GPIO_MUX_2 BIT(2)
#define GPIO_MUX_21 21:21 #define GPIO_MUX_1 BIT(1)
#define GPIO_MUX_21_GPIO 0 #define GPIO_MUX_0 BIT(0)
#define GPIO_MUX_21_SSP0 1
#define GPIO_MUX_20 20:20
#define GPIO_MUX_20_GPIO 0
#define GPIO_MUX_20_SSP0 1
#define GPIO_MUX_19 19:19
#define GPIO_MUX_19_GPIO 0
#define GPIO_MUX_19_PWM 1
#define GPIO_MUX_18 18:18
#define GPIO_MUX_18_GPIO 0
#define GPIO_MUX_18_PWM 1
#define GPIO_MUX_17 17:17
#define GPIO_MUX_17_GPIO 0
#define GPIO_MUX_17_PWM 1
#define GPIO_MUX_16 16:16
#define GPIO_MUX_16_GPIO_ZVPORT 0
#define GPIO_MUX_16_TEST_DATA 1
#define GPIO_MUX_15 15:15
#define GPIO_MUX_15_GPIO_ZVPORT 0
#define GPIO_MUX_15_TEST_DATA 1
#define GPIO_MUX_14 14:14
#define GPIO_MUX_14_GPIO_ZVPORT 0
#define GPIO_MUX_14_TEST_DATA 1
#define GPIO_MUX_13 13:13
#define GPIO_MUX_13_GPIO_ZVPORT 0
#define GPIO_MUX_13_TEST_DATA 1
#define GPIO_MUX_12 12:12
#define GPIO_MUX_12_GPIO_ZVPORT 0
#define GPIO_MUX_12_TEST_DATA 1
#define GPIO_MUX_11 11:11
#define GPIO_MUX_11_GPIO_ZVPORT 0
#define GPIO_MUX_11_TEST_DATA 1
#define GPIO_MUX_10 10:10
#define GPIO_MUX_10_GPIO_ZVPORT 0
#define GPIO_MUX_10_TEST_DATA 1
#define GPIO_MUX_9 9:9
#define GPIO_MUX_9_GPIO_ZVPORT 0
#define GPIO_MUX_9_TEST_DATA 1
#define GPIO_MUX_8 8:8
#define GPIO_MUX_8_GPIO_ZVPORT 0
#define GPIO_MUX_8_TEST_DATA 1
#define GPIO_MUX_7 7:7
#define GPIO_MUX_7_GPIO_ZVPORT 0
#define GPIO_MUX_7_TEST_DATA 1
#define GPIO_MUX_6 6:6
#define GPIO_MUX_6_GPIO_ZVPORT 0
#define GPIO_MUX_6_TEST_DATA 1
#define GPIO_MUX_5 5:5
#define GPIO_MUX_5_GPIO_ZVPORT 0
#define GPIO_MUX_5_TEST_DATA 1
#define GPIO_MUX_4 4:4
#define GPIO_MUX_4_GPIO_ZVPORT 0
#define GPIO_MUX_4_TEST_DATA 1
#define GPIO_MUX_3 3:3
#define GPIO_MUX_3_GPIO_ZVPORT 0
#define GPIO_MUX_3_TEST_DATA 1
#define GPIO_MUX_2 2:2
#define GPIO_MUX_2_GPIO_ZVPORT 0
#define GPIO_MUX_2_TEST_DATA 1
#define GPIO_MUX_1 1:1
#define GPIO_MUX_1_GPIO_ZVPORT 0
#define GPIO_MUX_1_TEST_DATA 1
#define GPIO_MUX_0 0:0
#define GPIO_MUX_0_GPIO_ZVPORT 0
#define GPIO_MUX_0_TEST_DATA 1
#define LOCALMEM_ARBITRATION 0x00000C #define LOCALMEM_ARBITRATION 0x00000C
#define LOCALMEM_ARBITRATION_ROTATE 28:28 #define LOCALMEM_ARBITRATION_ROTATE 28:28
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment