Revision 1235a9cf
b/hw/spapr_hcall.c | ||
---|---|---|
100 | 100 |
target_ulong pte_index = args[1]; |
101 | 101 |
target_ulong pteh = args[2]; |
102 | 102 |
target_ulong ptel = args[3]; |
103 |
target_ulong porder; |
|
104 |
target_ulong i, pa; |
|
103 |
target_ulong i; |
|
105 | 104 |
uint8_t *hpte; |
106 | 105 |
|
107 | 106 |
/* only handle 4k and 16M pages for now */ |
108 |
porder = 12; |
|
109 | 107 |
if (pteh & HPTE_V_LARGE) { |
110 | 108 |
#if 0 /* We don't support 64k pages yet */ |
111 | 109 |
if ((ptel & 0xf000) == 0x1000) { |
112 | 110 |
/* 64k page */ |
113 |
porder = 16; |
|
114 | 111 |
} else |
115 | 112 |
#endif |
116 | 113 |
if ((ptel & 0xff000) == 0) { |
117 | 114 |
/* 16M page */ |
118 |
porder = 24; |
|
119 | 115 |
/* lowest AVA bit must be 0 for 16M pages */ |
120 | 116 |
if (pteh & 0x80) { |
121 | 117 |
return H_PARAMETER; |
... | ... | |
125 | 121 |
} |
126 | 122 |
} |
127 | 123 |
|
128 |
pa = ptel & HPTE_R_RPN; |
|
129 | 124 |
/* FIXME: bounds check the pa? */ |
130 | 125 |
|
131 | 126 |
/* Check WIMG */ |
b/hw/spapr_llan.c | ||
---|---|---|
185 | 185 |
static int spapr_vlan_init(VIOsPAPRDevice *sdev) |
186 | 186 |
{ |
187 | 187 |
VIOsPAPRVLANDevice *dev = (VIOsPAPRVLANDevice *)sdev; |
188 |
VIOsPAPRBus *bus; |
|
189 |
|
|
190 |
bus = DO_UPCAST(VIOsPAPRBus, bus, sdev->qdev.parent_bus); |
|
191 | 188 |
|
192 | 189 |
qemu_macaddr_default_if_unset(&dev->nicconf.macaddr); |
193 | 190 |
|
Also available in: Unified diff