diff options
| -rw-r--r-- | arch/s390/kernel/early.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/arch/s390/kernel/early.c b/arch/s390/kernel/early.c index 70a329450901..4427ab7ac23a 100644 --- a/arch/s390/kernel/early.c +++ b/arch/s390/kernel/early.c | |||
| @@ -393,17 +393,19 @@ static __init void detect_machine_facilities(void) | |||
| 393 | S390_lowcore.machine_flags |= MACHINE_FLAG_TLB_LC; | 393 | S390_lowcore.machine_flags |= MACHINE_FLAG_TLB_LC; |
| 394 | if (test_facility(129)) | 394 | if (test_facility(129)) |
| 395 | S390_lowcore.machine_flags |= MACHINE_FLAG_VX; | 395 | S390_lowcore.machine_flags |= MACHINE_FLAG_VX; |
| 396 | if (test_facility(128)) | ||
| 397 | S390_lowcore.machine_flags |= MACHINE_FLAG_CAD; | ||
| 398 | #endif | 396 | #endif |
| 399 | } | 397 | } |
| 400 | 398 | ||
| 401 | static int __init nocad_setup(char *str) | 399 | static int __init cad_setup(char *str) |
| 402 | { | 400 | { |
| 403 | S390_lowcore.machine_flags &= ~MACHINE_FLAG_CAD; | 401 | int val; |
| 402 | |||
| 403 | get_option(&str, &val); | ||
| 404 | if (val && test_facility(128)) | ||
| 405 | S390_lowcore.machine_flags |= MACHINE_FLAG_CAD; | ||
| 404 | return 0; | 406 | return 0; |
| 405 | } | 407 | } |
| 406 | early_param("nocad", nocad_setup); | 408 | early_param("cad", cad_setup); |
| 407 | 409 | ||
| 408 | static int __init cad_init(void) | 410 | static int __init cad_init(void) |
| 409 | { | 411 | { |
