mptable: Get rid of fixup_virtual_wire
As stated in some code files, fixup_virtual_wire was established to avoid touching 200 invocations of the mptable code. Let Coccinelle do it: @@ type T; identifier v; @@ -void fixup_virtual_wire(T v) -{ ... } @@ expression A; identifier v; @@ -v = smp_write_floating_table(A); +v = smp_write_floating_table(A, 0); @@ expression A; identifier v; @@ -v = smp_write_floating_table(A, 0); -fixup_virtual_wire(v); +v = smp_write_floating_table(A, 1); Change-Id: Icad8a063380bf4726be7cebb414d13b574112b14 Signed-off-by: Patrick Georgi <patrick@georgi-clan.de> Reviewed-on: http://review.coreboot.org/245 Tested-by: build bot (Jenkins) Reviewed-by: Marc Jones <marcj303@gmail.com>
This commit is contained in:
parent
6eb7a53169
commit
c75c79bd02
|
@ -53,14 +53,7 @@ unsigned char smp_compute_checksum(void *v, int len)
|
||||||
return checksum;
|
return checksum;
|
||||||
}
|
}
|
||||||
|
|
||||||
void *smp_write_floating_table(unsigned long addr)
|
static void *smp_write_floating_table_physaddr(unsigned long addr, unsigned long mpf_physptr, unsigned int virtualwire)
|
||||||
{
|
|
||||||
/* 16 byte align the table address */
|
|
||||||
addr = (addr + 0xf) & (~0xf);
|
|
||||||
return smp_write_floating_table_physaddr(addr, addr + SMP_FLOATING_TABLE_LEN);
|
|
||||||
}
|
|
||||||
|
|
||||||
void *smp_write_floating_table_physaddr(unsigned long addr, unsigned long mpf_physptr)
|
|
||||||
{
|
{
|
||||||
struct intel_mp_floating *mf;
|
struct intel_mp_floating *mf;
|
||||||
void *v;
|
void *v;
|
||||||
|
@ -76,7 +69,7 @@ void *smp_write_floating_table_physaddr(unsigned long addr, unsigned long mpf_ph
|
||||||
mf->mpf_specification = 4;
|
mf->mpf_specification = 4;
|
||||||
mf->mpf_checksum = 0;
|
mf->mpf_checksum = 0;
|
||||||
mf->mpf_feature1 = 0;
|
mf->mpf_feature1 = 0;
|
||||||
mf->mpf_feature2 = 0;
|
mf->mpf_feature2 = virtualwire?MP_FEATURE_VIRTUALWIRE:0;
|
||||||
mf->mpf_feature3 = 0;
|
mf->mpf_feature3 = 0;
|
||||||
mf->mpf_feature4 = 0;
|
mf->mpf_feature4 = 0;
|
||||||
mf->mpf_feature5 = 0;
|
mf->mpf_feature5 = 0;
|
||||||
|
@ -84,6 +77,13 @@ void *smp_write_floating_table_physaddr(unsigned long addr, unsigned long mpf_ph
|
||||||
return v;
|
return v;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void *smp_write_floating_table(unsigned long addr, unsigned int virtualwire)
|
||||||
|
{
|
||||||
|
/* 16 byte align the table address */
|
||||||
|
addr = (addr + 0xf) & (~0xf);
|
||||||
|
return smp_write_floating_table_physaddr(addr, addr + SMP_FLOATING_TABLE_LEN, virtualwire);
|
||||||
|
}
|
||||||
|
|
||||||
void *smp_next_mpc_entry(struct mp_config_table *mc)
|
void *smp_next_mpc_entry(struct mp_config_table *mc)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
|
|
|
@ -268,9 +268,7 @@ void smp_write_compatibility_address_space(struct mp_config_table *mc,
|
||||||
unsigned char busid, unsigned char address_modifier,
|
unsigned char busid, unsigned char address_modifier,
|
||||||
unsigned int range_list);
|
unsigned int range_list);
|
||||||
unsigned char smp_compute_checksum(void *v, int len);
|
unsigned char smp_compute_checksum(void *v, int len);
|
||||||
void *smp_write_floating_table(unsigned long addr);
|
void *smp_write_floating_table(unsigned long addr, unsigned int virtualwire);
|
||||||
void *smp_write_floating_table_physaddr(unsigned long addr,
|
|
||||||
unsigned long mpf_physptr);
|
|
||||||
unsigned long write_smp_table(unsigned long addr);
|
unsigned long write_smp_table(unsigned long addr);
|
||||||
|
|
||||||
void mptable_lintsrc(struct mp_config_table *mc, unsigned long bus_isa);
|
void mptable_lintsrc(struct mp_config_table *mc, unsigned long bus_isa);
|
||||||
|
|
|
@ -151,6 +151,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -155,6 +155,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -165,6 +165,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -240,6 +240,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -172,6 +172,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -171,6 +171,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -158,6 +158,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -165,6 +165,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -169,6 +169,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -193,6 +193,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -171,6 +171,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -247,6 +247,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -309,7 +309,7 @@ unsigned long write_smp_table(unsigned long addr)
|
||||||
void *v;
|
void *v;
|
||||||
reboot_if_hotswap();
|
reboot_if_hotswap();
|
||||||
|
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -170,6 +170,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -158,6 +158,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -123,6 +123,6 @@ static void *smp_write_config_table(void *v)
|
||||||
|
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v = smp_write_floating_table(addr);
|
void *v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -115,6 +115,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -115,6 +115,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -105,6 +105,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -146,6 +146,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -171,6 +171,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -171,6 +171,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,6 +63,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -64,6 +64,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -153,6 +153,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -144,6 +144,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -159,7 +159,7 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -85,6 +85,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -118,6 +118,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -124,6 +124,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -171,6 +171,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -171,6 +171,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -97,6 +97,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -189,6 +189,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -167,6 +167,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -130,26 +130,9 @@ static void *smp_write_config_table(void *v)
|
||||||
return smp_next_mpe_entry(mc);
|
return smp_next_mpe_entry(mc);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* MP table generation in coreboot is not very well designed;
|
|
||||||
* One of the issues is that it knows nothing about Virtual
|
|
||||||
* Wire mode, which everyone uses since a decade or so. This
|
|
||||||
* function fixes up our floating table. This spares us doing
|
|
||||||
* a half-baked fix of adding a new parameter to 200+ calls
|
|
||||||
* to smp_write_floating_table()
|
|
||||||
*/
|
|
||||||
static void fixup_virtual_wire(void *v)
|
|
||||||
{
|
|
||||||
struct intel_mp_floating *mf = v;
|
|
||||||
|
|
||||||
mf->mpf_checksum = 0;
|
|
||||||
mf->mpf_feature2 = MP_FEATURE_VIRTUALWIRE;
|
|
||||||
mf->mpf_checksum = smp_compute_checksum(mf, mf->mpf_length*16);
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 1);
|
||||||
fixup_virtual_wire(v);
|
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -130,7 +130,7 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -129,7 +129,7 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -171,6 +171,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -90,6 +90,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -229,6 +229,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -238,7 +238,7 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -111,7 +111,7 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -139,7 +139,7 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -141,6 +141,6 @@ static void *smp_write_config_table(void* v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -104,6 +104,6 @@ void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -181,6 +181,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -163,7 +163,7 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -163,7 +163,7 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -172,6 +172,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -113,26 +113,9 @@ static void *smp_write_config_table(void *v)
|
||||||
return smp_next_mpe_entry(mc);
|
return smp_next_mpe_entry(mc);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* MP table generation in coreboot is not very well designed;
|
|
||||||
* One of the issues is that it knows nothing about Virtual
|
|
||||||
* Wire mode, which everyone uses since a decade or so. This
|
|
||||||
* function fixes up our floating table. This spares us doing
|
|
||||||
* a half-baked fix of adding a new parameter to 200+ calls
|
|
||||||
* to smp_write_floating_table()
|
|
||||||
*/
|
|
||||||
static void fixup_virtual_wire(void *v)
|
|
||||||
{
|
|
||||||
struct intel_mp_floating *mf = v;
|
|
||||||
|
|
||||||
mf->mpf_checksum = 0;
|
|
||||||
mf->mpf_feature2 = MP_FEATURE_VIRTUALWIRE;
|
|
||||||
mf->mpf_checksum = smp_compute_checksum(mf, mf->mpf_length*16);
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 1);
|
||||||
fixup_virtual_wire(v);
|
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -164,6 +164,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -78,6 +78,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -80,6 +80,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -160,6 +160,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -110,6 +110,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -160,6 +160,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -129,6 +129,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -118,6 +118,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -164,7 +164,7 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -175,6 +175,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -85,6 +85,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -76,19 +76,9 @@ static void *smp_write_config_table(void *v)
|
||||||
return smp_next_mpe_entry(mc);
|
return smp_next_mpe_entry(mc);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void fixup_virtual_wire(void *v)
|
|
||||||
{
|
|
||||||
struct intel_mp_floating *mf = v;
|
|
||||||
|
|
||||||
mf->mpf_checksum = 0;
|
|
||||||
mf->mpf_feature2 = MP_FEATURE_VIRTUALWIRE;
|
|
||||||
mf->mpf_checksum = smp_compute_checksum(mf, mf->mpf_length*16);
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 1);
|
||||||
fixup_virtual_wire(v);
|
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -196,6 +196,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -131,6 +131,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -132,6 +132,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -118,6 +118,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -195,6 +195,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -116,6 +116,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -185,6 +185,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -88,7 +88,7 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -132,7 +132,7 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -133,7 +133,7 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -180,7 +180,7 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -168,7 +168,7 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -164,6 +164,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -164,6 +164,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -129,6 +129,6 @@ Compatibility Bus Address
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -162,6 +162,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -179,6 +179,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -205,6 +205,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -108,6 +108,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -217,6 +217,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -120,6 +120,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -145,6 +145,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -167,6 +167,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -195,6 +195,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -116,6 +116,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -116,6 +116,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -211,6 +211,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -210,6 +210,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,6 +49,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -99,6 +99,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
|
@ -67,6 +67,6 @@ static void *smp_write_config_table(void *v)
|
||||||
unsigned long write_smp_table(unsigned long addr)
|
unsigned long write_smp_table(unsigned long addr)
|
||||||
{
|
{
|
||||||
void *v;
|
void *v;
|
||||||
v = smp_write_floating_table(addr);
|
v = smp_write_floating_table(addr, 0);
|
||||||
return (unsigned long)smp_write_config_table(v);
|
return (unsigned long)smp_write_config_table(v);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue