aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-07-26 14:14:49 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2012-07-26 14:14:49 -0400
commitb13bc8dda81c54a66a1c84e66f60b8feba659f28 (patch)
tree100a26eada424fa5d9b0e5eaaf4e23b8fa036fc8 /Documentation
parent9fc377799bc9bfd8d5cb35d0d1ea2e2458cbdbb3 (diff)
parent419e9266884fa853179ab726c27a63a9d3ae46e3 (diff)
Merge tag 'staging-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging
Pull staging tree patches from Greg Kroah-Hartman: "Here's the big staging tree merge for the 3.6-rc1 merge window. There are some patches in here outside of drivers/staging/, notibly the iio code (which is still stradeling the staging / not staging boundry), the pstore code, and the tracing code. All of these have gotten acks from the various subsystem maintainers to be included in this tree. The pstore and tracing patches are related, and are coming here as they replace one of the android staging drivers. Otherwise, the normal staging mess. Lots of cleanups and a few new drivers (some iio drivers, and the large csr wireless driver abomination.) Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>" Fixed up trivial conflicts in drivers/staging/comedi/drivers/s626.h and drivers/staging/gdm72xx/netlink_k.c * tag 'staging-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (1108 commits) staging: csr: delete a bunch of unused library functions staging: csr: remove csr_utf16.c staging: csr: remove csr_pmem.h staging: csr: remove CsrPmemAlloc staging: csr: remove CsrPmemFree() staging: csr: remove CsrMemAllocDma() staging: csr: remove CsrMemCalloc() staging: csr: remove CsrMemAlloc() staging: csr: remove CsrMemFree() and CsrMemFreeDma() staging: csr: remove csr_util.h staging: csr: remove CsrOffSetOf() stating: csr: remove unneeded #includes in csr_util.c staging: csr: make CsrUInt16ToHex static staging: csr: remove CsrMemCpy() staging: csr: remove CsrStrLen() staging: csr: remove CsrVsnprintf() staging: csr: remove CsrStrDup staging: csr: remove CsrStrChr() staging: csr: remove CsrStrNCmp staging: csr: remove CsrStrCmp ...
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/ABI/testing/sysfs-bus-iio54
-rw-r--r--Documentation/ABI/testing/sysfs-bus-iio-frequency-ad952337
-rw-r--r--Documentation/ABI/testing/sysfs-bus-iio-frequency-adf435021
-rw-r--r--Documentation/ABI/testing/sysfs-bus-iio-light-lm3533-als61
-rw-r--r--Documentation/ramoops.txt39
5 files changed, 186 insertions, 26 deletions
diff --git a/Documentation/ABI/testing/sysfs-bus-iio b/Documentation/ABI/testing/sysfs-bus-iio
index cfedf63cce15..2f06d40fe07d 100644
--- a/Documentation/ABI/testing/sysfs-bus-iio
+++ b/Documentation/ABI/testing/sysfs-bus-iio
@@ -40,9 +40,9 @@ Contact: linux-iio@vger.kernel.org
40Description: 40Description:
41 Some devices have internal clocks. This parameter sets the 41 Some devices have internal clocks. This parameter sets the
42 resulting sampling frequency. In many devices this 42 resulting sampling frequency. In many devices this
43 parameter has an effect on input filters etc rather than 43 parameter has an effect on input filters etc. rather than
44 simply controlling when the input is sampled. As this 44 simply controlling when the input is sampled. As this
45 effects datardy triggers, hardware buffers and the sysfs 45 effects data ready triggers, hardware buffers and the sysfs
46 direct access interfaces, it may be found in any of the 46 direct access interfaces, it may be found in any of the
47 relevant directories. If it effects all of the above 47 relevant directories. If it effects all of the above
48 then it is to be found in the base device directory. 48 then it is to be found in the base device directory.
@@ -74,7 +74,7 @@ What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_raw
74KernelVersion: 2.6.35 74KernelVersion: 2.6.35
75Contact: linux-iio@vger.kernel.org 75Contact: linux-iio@vger.kernel.org
76Description: 76Description:
77 Raw (unscaled no bias removal etc) voltage measurement from 77 Raw (unscaled no bias removal etc.) voltage measurement from
78 channel Y. In special cases where the channel does not 78 channel Y. In special cases where the channel does not
79 correspond to externally available input one of the named 79 correspond to externally available input one of the named
80 versions may be used. The number must always be specified and 80 versions may be used. The number must always be specified and
@@ -118,11 +118,11 @@ What: /sys/bus/iio/devices/iio:deviceX/in_temp_z_raw
118KernelVersion: 2.6.35 118KernelVersion: 2.6.35
119Contact: linux-iio@vger.kernel.org 119Contact: linux-iio@vger.kernel.org
120Description: 120Description:
121 Raw (unscaled no bias removal etc) temperature measurement. 121 Raw (unscaled no bias removal etc.) temperature measurement.
122 If an axis is specified it generally means that the temperature 122 If an axis is specified it generally means that the temperature
123 sensor is associated with one part of a compound device (e.g. 123 sensor is associated with one part of a compound device (e.g.
124 a gyroscope axis). Units after application of scale and offset 124 a gyroscope axis). Units after application of scale and offset
125 are milli degrees Celsuis. 125 are milli degrees Celsius.
126 126
127What: /sys/bus/iio/devices/iio:deviceX/in_tempX_input 127What: /sys/bus/iio/devices/iio:deviceX/in_tempX_input
128KernelVersion: 2.6.38 128KernelVersion: 2.6.38
@@ -148,10 +148,9 @@ KernelVersion: 2.6.35
148Contact: linux-iio@vger.kernel.org 148Contact: linux-iio@vger.kernel.org
149Description: 149Description:
150 Angular velocity about axis x, y or z (may be arbitrarily 150 Angular velocity about axis x, y or z (may be arbitrarily
151 assigned) Data converted by application of offset then scale to 151 assigned). Has all the equivalent parameters as per voltageY.
152 radians per second. Has all the equivalent parameters as 152 Units after application of scale and offset are radians per
153 per voltageY. Units after application of scale and offset are 153 second.
154 radians per second.
155 154
156What: /sys/bus/iio/devices/iio:deviceX/in_incli_x_raw 155What: /sys/bus/iio/devices/iio:deviceX/in_incli_x_raw
157What: /sys/bus/iio/devices/iio:deviceX/in_incli_y_raw 156What: /sys/bus/iio/devices/iio:deviceX/in_incli_y_raw
@@ -161,7 +160,7 @@ Contact: linux-iio@vger.kernel.org
161Description: 160Description:
162 Inclination raw reading about axis x, y or z (may be 161 Inclination raw reading about axis x, y or z (may be
163 arbitrarily assigned). Data converted by application of offset 162 arbitrarily assigned). Data converted by application of offset
164 and scale to Degrees. 163 and scale to degrees.
165 164
166What: /sys/bus/iio/devices/iio:deviceX/in_magn_x_raw 165What: /sys/bus/iio/devices/iio:deviceX/in_magn_x_raw
167What: /sys/bus/iio/devices/iio:deviceX/in_magn_y_raw 166What: /sys/bus/iio/devices/iio:deviceX/in_magn_y_raw
@@ -203,7 +202,7 @@ Contact: linux-iio@vger.kernel.org
203Description: 202Description:
204 If known for a device, offset to be added to <type>[Y]_raw prior 203 If known for a device, offset to be added to <type>[Y]_raw prior
205 to scaling by <type>[Y]_scale in order to obtain value in the 204 to scaling by <type>[Y]_scale in order to obtain value in the
206 <type> units as specified in <type>[y]_raw documentation. 205 <type> units as specified in <type>[Y]_raw documentation.
207 Not present if the offset is always 0 or unknown. If Y or 206 Not present if the offset is always 0 or unknown. If Y or
208 axis <x|y|z> is not present, then the offset applies to all 207 axis <x|y|z> is not present, then the offset applies to all
209 in channels of <type>. 208 in channels of <type>.
@@ -249,7 +248,7 @@ What: /sys/bus/iio/devices/iio:deviceX/in_proximity0_calibbias
249KernelVersion: 2.6.35 248KernelVersion: 2.6.35
250Contact: linux-iio@vger.kernel.org 249Contact: linux-iio@vger.kernel.org
251Description: 250Description:
252 Hardware applied calibration offset. (assumed to fix production 251 Hardware applied calibration offset (assumed to fix production
253 inaccuracies). 252 inaccuracies).
254 253
255What /sys/bus/iio/devices/iio:deviceX/in_voltageY_calibscale 254What /sys/bus/iio/devices/iio:deviceX/in_voltageY_calibscale
@@ -266,7 +265,7 @@ what /sys/bus/iio/devices/iio:deviceX/in_proximity0_calibscale
266KernelVersion: 2.6.35 265KernelVersion: 2.6.35
267Contact: linux-iio@vger.kernel.org 266Contact: linux-iio@vger.kernel.org
268Description: 267Description:
269 Hardware applied calibration scale factor. (assumed to fix 268 Hardware applied calibration scale factor (assumed to fix
270 production inaccuracies). If shared across all channels, 269 production inaccuracies). If shared across all channels,
271 <type>_calibscale is used. 270 <type>_calibscale is used.
272 271
@@ -276,10 +275,10 @@ What: /sys/.../iio:deviceX/in_voltage-voltage_scale_available
276What: /sys/.../iio:deviceX/out_voltageX_scale_available 275What: /sys/.../iio:deviceX/out_voltageX_scale_available
277What: /sys/.../iio:deviceX/out_altvoltageX_scale_available 276What: /sys/.../iio:deviceX/out_altvoltageX_scale_available
278What: /sys/.../iio:deviceX/in_capacitance_scale_available 277What: /sys/.../iio:deviceX/in_capacitance_scale_available
279KernelVersion: 2.635 278KernelVersion: 2.6.35
280Contact: linux-iio@vger.kernel.org 279Contact: linux-iio@vger.kernel.org
281Description: 280Description:
282 If a discrete set of scale values are available, they 281 If a discrete set of scale values is available, they
283 are listed in this attribute. 282 are listed in this attribute.
284 283
285What /sys/bus/iio/devices/iio:deviceX/out_voltageY_hardwaregain 284What /sys/bus/iio/devices/iio:deviceX/out_voltageY_hardwaregain
@@ -330,9 +329,11 @@ Contact: linux-iio@vger.kernel.org
330Description: 329Description:
331 Specifies the output powerdown mode. 330 Specifies the output powerdown mode.
332 DAC output stage is disconnected from the amplifier and 331 DAC output stage is disconnected from the amplifier and
333 1kohm_to_gnd: connected to ground via an 1kOhm resistor 332 1kohm_to_gnd: connected to ground via an 1kOhm resistor,
334 100kohm_to_gnd: connected to ground via an 100kOhm resistor 333 6kohm_to_gnd: connected to ground via a 6kOhm resistor,
335 three_state: left floating 334 20kohm_to_gnd: connected to ground via a 20kOhm resistor,
335 100kohm_to_gnd: connected to ground via an 100kOhm resistor,
336 three_state: left floating.
336 For a list of available output power down options read 337 For a list of available output power down options read
337 outX_powerdown_mode_available. If Y is not present the 338 outX_powerdown_mode_available. If Y is not present the
338 mode is shared across all outputs. 339 mode is shared across all outputs.
@@ -355,9 +356,10 @@ KernelVersion: 2.6.38
355Contact: linux-iio@vger.kernel.org 356Contact: linux-iio@vger.kernel.org
356Description: 357Description:
357 Writing 1 causes output Y to enter the power down mode specified 358 Writing 1 causes output Y to enter the power down mode specified
358 by the corresponding outY_powerdown_mode. Clearing returns to 359 by the corresponding outY_powerdown_mode. DAC output stage is
359 normal operation. Y may be suppressed if all outputs are 360 disconnected from the amplifier. Clearing returns to normal
360 controlled together. 361 operation. Y may be suppressed if all outputs are controlled
362 together.
361 363
362What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency 364What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency
363KernelVersion: 3.4.0 365KernelVersion: 3.4.0
@@ -421,12 +423,12 @@ Description:
421 different values, but the device can only enable both thresholds 423 different values, but the device can only enable both thresholds
422 or neither. 424 or neither.
423 Note the driver will assume the last p events requested are 425 Note the driver will assume the last p events requested are
424 to be enabled where p is however many it supports (which may 426 to be enabled where p is how many it supports (which may vary
425 vary depending on the exact set requested. So if you want to be 427 depending on the exact set requested. So if you want to be
426 sure you have set what you think you have, check the contents of 428 sure you have set what you think you have, check the contents of
427 these attributes after everything is configured. Drivers may 429 these attributes after everything is configured. Drivers may
428 have to buffer any parameters so that they are consistent when 430 have to buffer any parameters so that they are consistent when
429 a given event type is enabled a future point (and not those for 431 a given event type is enabled at a future point (and not those for
430 whatever event was previously enabled). 432 whatever event was previously enabled).
431 433
432What: /sys/.../iio:deviceX/events/in_accel_x_roc_rising_en 434What: /sys/.../iio:deviceX/events/in_accel_x_roc_rising_en
@@ -702,7 +704,7 @@ What: /sys/.../buffer/scan_elements/in_anglvel_type
702What: /sys/.../buffer/scan_elements/in_magn_type 704What: /sys/.../buffer/scan_elements/in_magn_type
703What: /sys/.../buffer/scan_elements/in_incli_type 705What: /sys/.../buffer/scan_elements/in_incli_type
704What: /sys/.../buffer/scan_elements/in_voltageY_type 706What: /sys/.../buffer/scan_elements/in_voltageY_type
705What: /sys/.../buffer/scan_elements/in_voltage-in_type 707What: /sys/.../buffer/scan_elements/in_voltage_type
706What: /sys/.../buffer/scan_elements/in_voltageY_supply_type 708What: /sys/.../buffer/scan_elements/in_voltageY_supply_type
707What: /sys/.../buffer/scan_elements/in_timestamp_type 709What: /sys/.../buffer/scan_elements/in_timestamp_type
708KernelVersion: 2.6.37 710KernelVersion: 2.6.37
@@ -723,7 +725,7 @@ Description:
723 the buffer output value appropriately. The storagebits value 725 the buffer output value appropriately. The storagebits value
724 also specifies the data alignment. So s48/64>>2 will be a 726 also specifies the data alignment. So s48/64>>2 will be a
725 signed 48 bit integer stored in a 64 bit location aligned to 727 signed 48 bit integer stored in a 64 bit location aligned to
726 a a64 bit boundary. To obtain the clean value, shift right 2 728 a 64 bit boundary. To obtain the clean value, shift right 2
727 and apply a mask to zero the top 16 bits of the result. 729 and apply a mask to zero the top 16 bits of the result.
728 For other storage combinations this attribute will be extended 730 For other storage combinations this attribute will be extended
729 appropriately. 731 appropriately.
diff --git a/Documentation/ABI/testing/sysfs-bus-iio-frequency-ad9523 b/Documentation/ABI/testing/sysfs-bus-iio-frequency-ad9523
new file mode 100644
index 000000000000..2ce9c3f68eee
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-bus-iio-frequency-ad9523
@@ -0,0 +1,37 @@
1What: /sys/bus/iio/devices/iio:deviceX/pll2_feedback_clk_present
2What: /sys/bus/iio/devices/iio:deviceX/pll2_reference_clk_present
3What: /sys/bus/iio/devices/iio:deviceX/pll1_reference_clk_a_present
4What: /sys/bus/iio/devices/iio:deviceX/pll1_reference_clk_b_present
5What: /sys/bus/iio/devices/iio:deviceX/pll1_reference_clk_test_present
6What: /sys/bus/iio/devices/iio:deviceX/vcxo_clk_present
7KernelVersion: 3.4.0
8Contact: linux-iio@vger.kernel.org
9Description:
10 Reading returns either '1' or '0'.
11 '1' means that the clock in question is present.
12 '0' means that the clock is missing.
13
14What: /sys/bus/iio/devices/iio:deviceX/pllY_locked
15KernelVersion: 3.4.0
16Contact: linux-iio@vger.kernel.org
17Description:
18 Reading returns either '1' or '0'. '1' means that the
19 pllY is locked.
20
21What: /sys/bus/iio/devices/iio:deviceX/store_eeprom
22KernelVersion: 3.4.0
23Contact: linux-iio@vger.kernel.org
24Description:
25 Writing '1' stores the current device configuration into
26 on-chip EEPROM. After power-up or chip reset the device will
27 automatically load the saved configuration.
28
29What: /sys/bus/iio/devices/iio:deviceX/sync_dividers
30KernelVersion: 3.4.0
31Contact: linux-iio@vger.kernel.org
32Description:
33 Writing '1' triggers the clock distribution synchronization
34 functionality. All dividers are reset and the channels start
35 with their predefined phase offsets (out_altvoltageY_phase).
36 Writing this file has the effect as driving the external
37 /SYNC pin low.
diff --git a/Documentation/ABI/testing/sysfs-bus-iio-frequency-adf4350 b/Documentation/ABI/testing/sysfs-bus-iio-frequency-adf4350
new file mode 100644
index 000000000000..d89aded01c5a
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-bus-iio-frequency-adf4350
@@ -0,0 +1,21 @@
1What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency_resolution
2KernelVersion: 3.4.0
3Contact: linux-iio@vger.kernel.org
4Description:
5 Stores channel Y frequency resolution/channel spacing in Hz.
6 The value given directly influences the MODULUS used by
7 the fractional-N PLL. It is assumed that the algorithm
8 that is used to compute the various dividers, is able to
9 generate proper values for multiples of channel spacing.
10
11What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_refin_frequency
12KernelVersion: 3.4.0
13Contact: linux-iio@vger.kernel.org
14Description:
15 Sets channel Y REFin frequency in Hz. In some clock chained
16 applications, the reference frequency used by the PLL may
17 change during runtime. This attribute allows the user to
18 adjust the reference frequency accordingly.
19 The value written has no effect until out_altvoltageY_frequency
20 is updated. Consider to use out_altvoltageY_powerdown to power
21 down the PLL and it's RFOut buffers during REFin changes.
diff --git a/Documentation/ABI/testing/sysfs-bus-iio-light-lm3533-als b/Documentation/ABI/testing/sysfs-bus-iio-light-lm3533-als
new file mode 100644
index 000000000000..22c5ea670971
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-bus-iio-light-lm3533-als
@@ -0,0 +1,61 @@
1What: /sys/.../events/in_illuminance0_thresh_either_en
2Date: April 2012
3KernelVersion: 3.5
4Contact: Johan Hovold <jhovold@gmail.com>
5Description:
6 Event generated when channel passes one of the four thresholds
7 in each direction (rising|falling) and a zone change occurs.
8 The corresponding light zone can be read from
9 in_illuminance0_zone.
10
11What: /sys/.../events/in_illuminance0_threshY_hysteresis
12Date: May 2012
13KernelVersion: 3.5
14Contact: Johan Hovold <jhovold@gmail.com>
15Description:
16 Get the hysteresis for thresholds Y, that is,
17 threshY_hysteresis = threshY_raising - threshY_falling
18
19What: /sys/.../events/illuminance_threshY_falling_value
20What: /sys/.../events/illuminance_threshY_raising_value
21Date: April 2012
22KernelVersion: 3.5
23Contact: Johan Hovold <jhovold@gmail.com>
24Description:
25 Specifies the value of threshold that the device is comparing
26 against for the events enabled by
27 in_illuminance0_thresh_either_en (0..255), where Y in 0..3.
28
29 Note that threshY_falling must be less than or equal to
30 threshY_raising.
31
32 These thresholds correspond to the eight zone-boundary
33 registers (boundaryY_{low,high}) and define the five light
34 zones.
35
36What: /sys/bus/iio/devices/iio:deviceX/in_illuminance0_zone
37Date: April 2012
38KernelVersion: 3.5
39Contact: Johan Hovold <jhovold@gmail.com>
40Description:
41 Get the current light zone (0..4) as defined by the
42 in_illuminance0_threshY_{falling,rising} thresholds.
43
44What: /sys/bus/iio/devices/iio:deviceX/out_currentY_raw
45Date: May 2012
46KernelVersion: 3.5
47Contact: Johan Hovold <jhovold@gmail.com>
48Description:
49 Get output current for channel Y (0..255), that is,
50 out_currentY_currentZ_raw, where Z is the current zone.
51
52What: /sys/bus/iio/devices/iio:deviceX/out_currentY_currentZ_raw
53Date: May 2012
54KernelVersion: 3.5
55Contact: Johan Hovold <jhovold@gmail.com>
56Description:
57 Set the output current for channel out_currentY when in zone
58 Z (0..255), where Y in 0..2 and Z in 0..4.
59
60 These values correspond to the ALS-mapper target registers for
61 ALS-mapper Y + 1.
diff --git a/Documentation/ramoops.txt b/Documentation/ramoops.txt
index 4ba7db231cb2..197ad59ab9bf 100644
--- a/Documentation/ramoops.txt
+++ b/Documentation/ramoops.txt
@@ -40,6 +40,12 @@ corrupt, but usually it is restorable.
40Setting the ramoops parameters can be done in 2 different manners: 40Setting the ramoops parameters can be done in 2 different manners:
41 1. Use the module parameters (which have the names of the variables described 41 1. Use the module parameters (which have the names of the variables described
42 as before). 42 as before).
43 For quick debugging, you can also reserve parts of memory during boot
44 and then use the reserved memory for ramoops. For example, assuming a machine
45 with > 128 MB of memory, the following kernel command line will tell the
46 kernel to use only the first 128 MB of memory, and place ECC-protected ramoops
47 region at 128 MB boundary:
48 "mem=128M ramoops.mem_address=0x8000000 ramoops.ecc=1"
43 2. Use a platform device and set the platform data. The parameters can then 49 2. Use a platform device and set the platform data. The parameters can then
44 be set through that platform data. An example of doing that is: 50 be set through that platform data. An example of doing that is:
45 51
@@ -70,6 +76,14 @@ if (ret) {
70 return ret; 76 return ret;
71} 77}
72 78
79You can specify either RAM memory or peripheral devices' memory. However, when
80specifying RAM, be sure to reserve the memory by issuing memblock_reserve()
81very early in the architecture code, e.g.:
82
83#include <linux/memblock.h>
84
85memblock_reserve(ramoops_data.mem_address, ramoops_data.mem_size);
86
733. Dump format 873. Dump format
74 88
75The data dump begins with a header, currently defined as "====" followed by a 89The data dump begins with a header, currently defined as "====" followed by a
@@ -80,3 +94,28 @@ timestamp and a new line. The dump then continues with the actual data.
80The dump data can be read from the pstore filesystem. The format for these 94The dump data can be read from the pstore filesystem. The format for these
81files is "dmesg-ramoops-N", where N is the record number in memory. To delete 95files is "dmesg-ramoops-N", where N is the record number in memory. To delete
82a stored record from RAM, simply unlink the respective pstore file. 96a stored record from RAM, simply unlink the respective pstore file.
97
985. Persistent function tracing
99
100Persistent function tracing might be useful for debugging software or hardware
101related hangs. The functions call chain log is stored in a "ftrace-ramoops"
102file. Here is an example of usage:
103
104 # mount -t debugfs debugfs /sys/kernel/debug/
105 # cd /sys/kernel/debug/tracing
106 # echo function > current_tracer
107 # echo 1 > options/func_pstore
108 # reboot -f
109 [...]
110 # mount -t pstore pstore /mnt/
111 # tail /mnt/ftrace-ramoops
112 0 ffffffff8101ea64 ffffffff8101bcda native_apic_mem_read <- disconnect_bsp_APIC+0x6a/0xc0
113 0 ffffffff8101ea44 ffffffff8101bcf6 native_apic_mem_write <- disconnect_bsp_APIC+0x86/0xc0
114 0 ffffffff81020084 ffffffff8101a4b5 hpet_disable <- native_machine_shutdown+0x75/0x90
115 0 ffffffff81005f94 ffffffff8101a4bb iommu_shutdown_noop <- native_machine_shutdown+0x7b/0x90
116 0 ffffffff8101a6a1 ffffffff8101a437 native_machine_emergency_restart <- native_machine_restart+0x37/0x40
117 0 ffffffff811f9876 ffffffff8101a73a acpi_reboot <- native_machine_emergency_restart+0xaa/0x1e0
118 0 ffffffff8101a514 ffffffff8101a772 mach_reboot_fixups <- native_machine_emergency_restart+0xe2/0x1e0
119 0 ffffffff811d9c54 ffffffff8101a7a0 __const_udelay <- native_machine_emergency_restart+0x110/0x1e0
120 0 ffffffff811d9c34 ffffffff811d9c80 __delay <- __const_udelay+0x30/0x40
121 0 ffffffff811d9d14 ffffffff811d9c3f delay_tsc <- __delay+0xf/0x20