Skip to content
Snippets Groups Projects
  • Bin Meng's avatar
    6ce38364
    x86: tsc: Introduce config option for early timer frequency · 6ce38364
    Bin Meng authored
    
    So far the TSC timer driver supports trying hardware calibration first
    and using device tree as last resort for its running frequency as the
    normal timer.
    
    However when it is used as the early timer, it only supports hardware
    calibration and if it fails, the driver just panics. This introduces
    a new config option to specify the early timer frequency in MHz and
    it should be equal to the value described in the device tree.
    
    Without this patch, the travis-ci testing on QEMU x86_64 target fails
    each time after it finishes the 'bootefi selftest' as the test.py see
    an error was emitted on the console like this:
    
      TSC frequency is ZERO
      resetting ...
      ### ERROR ### Please RESET the board ###
    
    It's strange that this error is consistently seen on the travis-ci
    machine, but only occasionally seen on my local machine (maybe 1 out
    of 10). Since QEMU x86_64 target enables BOOTSTAGE support which uses
    early timer, with this fix it should work without any failure.
    
    Signed-off-by: default avatarBin Meng <bmeng.cn@gmail.com>
    Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
    6ce38364
    History
    x86: tsc: Introduce config option for early timer frequency
    Bin Meng authored
    
    So far the TSC timer driver supports trying hardware calibration first
    and using device tree as last resort for its running frequency as the
    normal timer.
    
    However when it is used as the early timer, it only supports hardware
    calibration and if it fails, the driver just panics. This introduces
    a new config option to specify the early timer frequency in MHz and
    it should be equal to the value described in the device tree.
    
    Without this patch, the travis-ci testing on QEMU x86_64 target fails
    each time after it finishes the 'bootefi selftest' as the test.py see
    an error was emitted on the console like this:
    
      TSC frequency is ZERO
      resetting ...
      ### ERROR ### Please RESET the board ###
    
    It's strange that this error is consistently seen on the travis-ci
    machine, but only occasionally seen on my local machine (maybe 1 out
    of 10). Since QEMU x86_64 target enables BOOTSTAGE support which uses
    early timer, with this fix it should work without any failure.
    
    Signed-off-by: default avatarBin Meng <bmeng.cn@gmail.com>
    Reviewed-by: default avatarSimon Glass <sjg@chromium.org>