19
19
struct ucsi_acpi {
20
20
struct device * dev ;
21
21
struct ucsi * ucsi ;
22
- void __iomem * base ;
22
+ void * base ;
23
23
struct completion complete ;
24
24
unsigned long flags ;
25
25
guid_t guid ;
@@ -51,7 +51,7 @@ static int ucsi_acpi_read(struct ucsi *ucsi, unsigned int offset,
51
51
if (ret )
52
52
return ret ;
53
53
54
- memcpy (val , ( const void __force * )( ua -> base + offset ) , val_len );
54
+ memcpy (val , ua -> base + offset , val_len );
55
55
56
56
return 0 ;
57
57
}
@@ -61,7 +61,7 @@ static int ucsi_acpi_async_write(struct ucsi *ucsi, unsigned int offset,
61
61
{
62
62
struct ucsi_acpi * ua = ucsi_get_drvdata (ucsi );
63
63
64
- memcpy (( void __force * )( ua -> base + offset ) , val , val_len );
64
+ memcpy (ua -> base + offset , val , val_len );
65
65
66
66
return ucsi_acpi_dsm (ua , UCSI_DSM_FUNC_WRITE );
67
67
}
@@ -132,18 +132,7 @@ static int ucsi_acpi_probe(struct platform_device *pdev)
132
132
return - ENODEV ;
133
133
}
134
134
135
- /* This will make sure we can use ioremap() */
136
- status = acpi_release_memory (ACPI_HANDLE (& pdev -> dev ), res , 1 );
137
- if (ACPI_FAILURE (status ))
138
- return - ENOMEM ;
139
-
140
- /*
141
- * NOTE: The memory region for the data structures is used also in an
142
- * operation region, which means ACPI has already reserved it. Therefore
143
- * it can not be requested here, and we can not use
144
- * devm_ioremap_resource().
145
- */
146
- ua -> base = devm_ioremap (& pdev -> dev , res -> start , resource_size (res ));
135
+ ua -> base = devm_memremap (& pdev -> dev , res -> start , resource_size (res ), MEMREMAP_WB );
147
136
if (!ua -> base )
148
137
return - ENOMEM ;
149
138
0 commit comments