mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 00:03:54 -06:00
spapr_iommu: Introduce page_shift in sPAPRTCETable
At the moment only 4K pages are supported by sPAPRTCETable. Since sPAPR spec allows other page sizes and we are going to implement them, we need page size to be configrable. This adds @page_shift into sPAPRTCETable and replaces SPAPR_TCE_PAGE_SHIFT with it where it is possible. Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Signed-off-by: Alexander Graf <agraf@suse.de>
This commit is contained in:
parent
523e7b8ab8
commit
650f33adbd
4 changed files with 49 additions and 26 deletions
|
@ -398,6 +398,7 @@ struct sPAPRTCETable {
|
|||
DeviceState parent;
|
||||
uint32_t liobn;
|
||||
uint32_t nb_table;
|
||||
uint32_t page_shift;
|
||||
uint64_t *table;
|
||||
bool bypass;
|
||||
int fd;
|
||||
|
@ -409,6 +410,7 @@ void spapr_events_init(sPAPREnvironment *spapr);
|
|||
void spapr_events_fdt_skel(void *fdt, uint32_t epow_irq);
|
||||
int spapr_h_cas_compose_response(target_ulong addr, target_ulong size);
|
||||
sPAPRTCETable *spapr_tce_new_table(DeviceState *owner, uint32_t liobn,
|
||||
uint32_t page_shift,
|
||||
uint32_t nb_table);
|
||||
MemoryRegion *spapr_tce_get_iommu(sPAPRTCETable *tcet);
|
||||
void spapr_tce_set_bypass(sPAPRTCETable *tcet, bool bypass);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue