diff options
Diffstat (limited to 'drivers/acpi/sleep.c')
| -rw-r--r-- | drivers/acpi/sleep.c | 16 | 
1 files changed, 11 insertions, 5 deletions
diff --git a/drivers/acpi/sleep.c b/drivers/acpi/sleep.c index 6d3a06a629a..24213033fba 100644 --- a/drivers/acpi/sleep.c +++ b/drivers/acpi/sleep.c @@ -599,7 +599,6 @@ static void acpi_sleep_suspend_setup(void)  		status = acpi_get_sleep_type_data(i, &type_a, &type_b);  		if (ACPI_SUCCESS(status)) {  			sleep_states[i] = 1; -			pr_cont(" S%d", i);  		}  	} @@ -742,7 +741,6 @@ static void acpi_sleep_hibernate_setup(void)  	hibernation_set_ops(old_suspend_ordering ?  			&acpi_hibernation_ops_old : &acpi_hibernation_ops);  	sleep_states[ACPI_STATE_S4] = 1; -	pr_cont(KERN_CONT " S4");  	if (nosigcheck)  		return; @@ -788,6 +786,9 @@ int __init acpi_sleep_init(void)  {  	acpi_status status;  	u8 type_a, type_b; +	char supported[ACPI_S_STATE_COUNT * 3 + 1]; +	char *pos = supported; +	int i;  	if (acpi_disabled)  		return 0; @@ -795,7 +796,6 @@ int __init acpi_sleep_init(void)  	acpi_sleep_dmi_check();  	sleep_states[ACPI_STATE_S0] = 1; -	pr_info(PREFIX "(supports S0");  	acpi_sleep_suspend_setup();  	acpi_sleep_hibernate_setup(); @@ -803,11 +803,17 @@ int __init acpi_sleep_init(void)  	status = acpi_get_sleep_type_data(ACPI_STATE_S5, &type_a, &type_b);  	if (ACPI_SUCCESS(status)) {  		sleep_states[ACPI_STATE_S5] = 1; -		pr_cont(" S5");  		pm_power_off_prepare = acpi_power_off_prepare;  		pm_power_off = acpi_power_off;  	} -	pr_cont(")\n"); + +	supported[0] = 0; +	for (i = 0; i < ACPI_S_STATE_COUNT; i++) { +		if (sleep_states[i]) +			pos += sprintf(pos, " S%d", i); +	} +	pr_info(PREFIX "(supports%s)\n", supported); +  	/*  	 * Register the tts_notifier to reboot notifier list so that the _TTS  	 * object can also be evaluated when the system enters S5.  |