View | Details | Raw Unified | Return to bug 229074 | Differences between
and this patch

Collapse All | Expand All

(-)file_not_specified_in_diff (-64 / +1 lines)
Line 77 Link Here
77
#define ACPI_IBM_METHOD_MIC_LED		15
Lines 179-182 Link Here
179
	/* Mic led handle */
180
	ACPI_HANDLE	mic_led_handle;
181
	int		mic_led_state;
182
Lines 266-270 Link Here
266
	{
261
267
		.name		= "mic_led",
268
		.method		= ACPI_IBM_METHOD_MIC_LED,
269
		.description	= "Mic led",
270
	},
271
--
Lines 383-411 Link Here
383
acpi_ibm_mic_led_set (struct acpi_ibm_softc *sc, int arg)
384
{
385
	ACPI_OBJECT_LIST input;
386
	ACPI_OBJECT params[1];
387
	ACPI_STATUS status;
388
389
	if (arg < 0 || arg > 1)
390
		return (EINVAL);
391
392
	if (sc->mic_led_handle) {
393
		params[0].Type = ACPI_TYPE_INTEGER;
394
		params[0].Integer.Value = 0;
395
		/* mic led: 0 off, 2 on */
396
		if (arg == 1)
397
			params[0].Integer.Value = 2;
398
399
		input.Pointer = params;
400
		input.Count = 1;
401
402
		status = AcpiEvaluateObject (sc->handle, "MMTS", &input, NULL);
403
		if (ACPI_SUCCESS(status))
404
			sc->mic_led_state = arg;
405
		return(status);
406
	}
407
408
	return (0);
409
}
410
411
static int
Lines 593-595 Link Here
593
	/* The mic led is does not turn back on sysctl_set is called in the above loop */
594
	acpi_ibm_mic_led_set(sc, sc->mic_led_state);
595
Lines 783-788 Link Here
783
	case ACPI_IBM_METHOD_MIC_LED:
784
		if (sc->mic_led_handle)
785
			return sc->mic_led_state;
786
		else
787
			val = -1;
788
		break;
Lines 833-836 Link Here
833
	case ACPI_IBM_METHOD_MIC_LED:
834
		return acpi_ibm_mic_led_set (sc, arg);
835
		break;
836
Lines 896-906 Link Here
896
	case ACPI_IBM_METHOD_MIC_LED:
897
		if (ACPI_SUCCESS(AcpiGetHandle(sc->handle, "MMTS", &sc->mic_led_handle)))
898
		{
899
			/* Turn off mic led by default */
900
			acpi_ibm_mic_led_set (sc, 0);
901
			return(TRUE);
902
		}
903
		else
904
			sc->mic_led_handle = NULL;
905
		return (FALSE);
906

Return to bug 229074