|
47 | 47 |
|
48 | 48 | struct cppc_pcc_data {
|
49 | 49 | struct pcc_mbox_chan *pcc_channel;
|
50 |
| - void __iomem *pcc_comm_addr; |
51 | 50 | bool pcc_channel_acquired;
|
52 | 51 | unsigned int deadline_us;
|
53 | 52 | unsigned int pcc_mpar, pcc_mrtt, pcc_nominal;
|
@@ -95,7 +94,7 @@ static DEFINE_PER_CPU(int, cpu_pcc_subspace_idx);
|
95 | 94 | static DEFINE_PER_CPU(struct cpc_desc *, cpc_desc_ptr);
|
96 | 95 |
|
97 | 96 | /* pcc mapped address + header size + offset within PCC subspace */
|
98 |
| -#define GET_PCC_VADDR(offs, pcc_ss_id) (pcc_data[pcc_ss_id]->pcc_comm_addr + \ |
| 97 | +#define GET_PCC_VADDR(offs, pcc_ss_id) (pcc_data[pcc_ss_id]->pcc_channel->shmem + \ |
99 | 98 | 0x8 + (offs))
|
100 | 99 |
|
101 | 100 | /* Check if a CPC register is in PCC */
|
@@ -223,7 +222,7 @@ static int check_pcc_chan(int pcc_ss_id, bool chk_err_bit)
|
223 | 222 | int ret, status;
|
224 | 223 | struct cppc_pcc_data *pcc_ss_data = pcc_data[pcc_ss_id];
|
225 | 224 | struct acpi_pcct_shared_memory __iomem *generic_comm_base =
|
226 |
| - pcc_ss_data->pcc_comm_addr; |
| 225 | + pcc_ss_data->pcc_channel->shmem; |
227 | 226 |
|
228 | 227 | if (!pcc_ss_data->platform_owns_pcc)
|
229 | 228 | return 0;
|
@@ -258,7 +257,7 @@ static int send_pcc_cmd(int pcc_ss_id, u16 cmd)
|
258 | 257 | int ret = -EIO, i;
|
259 | 258 | struct cppc_pcc_data *pcc_ss_data = pcc_data[pcc_ss_id];
|
260 | 259 | struct acpi_pcct_shared_memory __iomem *generic_comm_base =
|
261 |
| - pcc_ss_data->pcc_comm_addr; |
| 260 | + pcc_ss_data->pcc_channel->shmem; |
262 | 261 | unsigned int time_delta;
|
263 | 262 |
|
264 | 263 | /*
|
@@ -571,15 +570,6 @@ static int register_pcc_channel(int pcc_ss_idx)
|
571 | 570 | pcc_data[pcc_ss_idx]->pcc_mpar = pcc_chan->max_access_rate;
|
572 | 571 | pcc_data[pcc_ss_idx]->pcc_nominal = pcc_chan->latency;
|
573 | 572 |
|
574 |
| - pcc_data[pcc_ss_idx]->pcc_comm_addr = |
575 |
| - acpi_os_ioremap(pcc_chan->shmem_base_addr, |
576 |
| - pcc_chan->shmem_size); |
577 |
| - if (!pcc_data[pcc_ss_idx]->pcc_comm_addr) { |
578 |
| - pr_err("Failed to ioremap PCC comm region mem for %d\n", |
579 |
| - pcc_ss_idx); |
580 |
| - return -ENOMEM; |
581 |
| - } |
582 |
| - |
583 | 573 | /* Set flag so that we don't come here for each CPU. */
|
584 | 574 | pcc_data[pcc_ss_idx]->pcc_channel_acquired = true;
|
585 | 575 | }
|
|
0 commit comments