• Srinivas Pandruvada's avatar
    ACPI: DPTF: Add new PCH FIVR methods · 7a6226db
    Srinivas Pandruvada authored
    Some additional information is required for updating PCH FIVR values
    upon WiFi channel changes.
    
    New attributes added to the existing sysfs:
    
    fivr_switching_freq_mhz	: Get the FIVR switching control frequency.
    			  Uses ACPI method GFCS.
    
    fivr_switching_fault_status: Read the FIVR switching frequency control
    			     fault status. Uses ACPI method GFFS.
    
    ssc_clock_info : Presents SSC (spread spectrum clock) information for
    		 EMI (Electro magnetic interference) control. Use ACPI
    		 method GEMI (refer to the description of GEMI method
    		 below).
    
    GFFS
    This ACPI method is used to read the FIVR switching frequency control
    fault status.
    Bits	Description
    [0:0]	Fault status when set to 1
    [31:1]	Reserved
    
    GFCS
    This ACPI method is used to read the FIVR switching control frequency.
    Bits	Description
    [11:0]	Actual Frequency = value * XTAL_FREQ / 128
    [31:12]	Reserved
    
    GEMI
    This ACPI method is used to read the programmed register value for
    EMI (Electro magnetic interference) control.
    
    Bits	Description
    [7:0]	Sets clock spectrum spread percentage:
    	0x00=0.2% , 0x3F=10%
    	1 LSB = 0.1% increase in spread (for
    	settings 0x01 thru 0x1C)
    	1 LSB = 0.2% increase in spread (for
    	settings 0x1E thru 0x3F)
    [8]	When set to 1, enables spread
    	spectrum clock
    [9]	0: Triangle mode. FFC frequency
    	walks around the Fcenter in a linear
    	fashion
    	1: Random walk mode. FFC frequency
    	changes randomly within the SSC
    	(Spread spectrum clock) range
    [10]	0: No white noise. 1: Add white noise
    	to spread waveform
    [11]	When 1, future writes are ignored.
    Signed-off-by: default avatarSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
    Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    7a6226db
dptf_pch_fivr.c 4.18 KB