diff options
| -rw-r--r-- | arch/x86/kernel/geode_32.c | 5 | ||||
| -rw-r--r-- | include/asm-x86/geode.h | 4 |
2 files changed, 6 insertions, 3 deletions
diff --git a/arch/x86/kernel/geode_32.c b/arch/x86/kernel/geode_32.c index e8edd63ab000..9b08e852fd1a 100644 --- a/arch/x86/kernel/geode_32.c +++ b/arch/x86/kernel/geode_32.c | |||
| @@ -166,6 +166,8 @@ int geode_has_vsa2(void) | |||
| 166 | static int has_vsa2 = -1; | 166 | static int has_vsa2 = -1; |
| 167 | 167 | ||
| 168 | if (has_vsa2 == -1) { | 168 | if (has_vsa2 == -1) { |
| 169 | u16 val; | ||
| 170 | |||
| 169 | /* | 171 | /* |
| 170 | * The VSA has virtual registers that we can query for a | 172 | * The VSA has virtual registers that we can query for a |
| 171 | * signature. | 173 | * signature. |
| @@ -173,7 +175,8 @@ int geode_has_vsa2(void) | |||
| 173 | outw(VSA_VR_UNLOCK, VSA_VRC_INDEX); | 175 | outw(VSA_VR_UNLOCK, VSA_VRC_INDEX); |
| 174 | outw(VSA_VR_SIGNATURE, VSA_VRC_INDEX); | 176 | outw(VSA_VR_SIGNATURE, VSA_VRC_INDEX); |
| 175 | 177 | ||
| 176 | has_vsa2 = (inw(VSA_VRC_DATA) == VSA_SIG); | 178 | val = inw(VSA_VRC_DATA); |
| 179 | has_vsa2 = (val == AMD_VSA_SIG || val == GSW_VSA_SIG); | ||
| 177 | } | 180 | } |
| 178 | 181 | ||
| 179 | return has_vsa2; | 182 | return has_vsa2; |
diff --git a/include/asm-x86/geode.h b/include/asm-x86/geode.h index 6e6458853a36..bb06027fc83e 100644 --- a/include/asm-x86/geode.h +++ b/include/asm-x86/geode.h | |||
| @@ -112,8 +112,8 @@ extern int geode_get_dev_base(unsigned int dev); | |||
| 112 | #define VSA_VR_UNLOCK 0xFC53 /* unlock virtual register */ | 112 | #define VSA_VR_UNLOCK 0xFC53 /* unlock virtual register */ |
| 113 | #define VSA_VR_SIGNATURE 0x0003 | 113 | #define VSA_VR_SIGNATURE 0x0003 |
| 114 | #define VSA_VR_MEM_SIZE 0x0200 | 114 | #define VSA_VR_MEM_SIZE 0x0200 |
| 115 | #define VSA_SIG 0x4132 /* signature is ascii 'VSA2' */ | 115 | #define AMD_VSA_SIG 0x4132 /* signature is ascii 'VSA2' */ |
| 116 | 116 | #define GSW_VSA_SIG 0x534d /* General Software signature */ | |
| 117 | /* GPIO */ | 117 | /* GPIO */ |
| 118 | 118 | ||
| 119 | #define GPIO_OUTPUT_VAL 0x00 | 119 | #define GPIO_OUTPUT_VAL 0x00 |
