Hi,

I have a message  in dmesg about SMI workaround :
Xenomai: SMI-enabled chipset found, but SMI workaround disabled
         (check CONFIG_XENO_HW_SMI_WORKAROUND). You may encounter
         high interrupt latencies!

My kernel should be configured properly and following the "In case of
high latencies" of
http://www.xenomai.org/index.php/Configuring_x86_kernels thread, I did
some tests.

Latency test is here (if it is us it should be ok no ?):

RTT|  00:00:22  (periodic user-mode task, 100 us period, priority 99)
RTH|----lat min|----lat avg|----lat max|-overrun|---msw|---lat best|--lat worst
RTD|      1.238|      1.365|      4.778|       0|     0|      0.605|      9.414
RTD|      1.238|      1.388|      5.292|       0|     0|      0.605|      9.414
RTD|      0.847|      1.365|      6.113|       0|     0|      0.605|      9.414
RTD|      1.238|      1.363|      4.676|       0|     0|      0.605|      9.414
RTD|      1.229|      1.365|      4.489|       0|     0|      0.605|      9.414
RTD|      1.237|      1.368|      4.194|       0|     0|      0.605|      9.414
RTD|      1.231|      1.386|      5.625|       0|     0|      0.605|      9.414
RTD|      0.681|      1.365|      6.020|       0|     0|      0.605|      9.414
RTD|      1.238|      1.365|      4.762|       0|     0|      0.605|      9.414
RTD|      1.165|      1.366|      6.987|       0|     0|      0.605|      9.414
RTD|      1.237|      1.364|      5.453|       0|     0|      0.605|      9.414
RTD|      1.093|      1.382|      5.567|       0|     0|      0.605|      9.414
RTD|      0.629|      1.365|      6.437|       0|     0|      0.605|      9.414
RTD|      1.236|      1.364|      4.584|       0|     0|      0.605|      9.414
RTD|      1.237|      1.366|      6.671|       0|     0|      0.605|      9.414
RTD|      1.238|      1.372|      4.436|       0|     0|      0.605|      9.414
RTD|      0.981|      1.384|      5.949|       0|     0|      0.605|      9.414
RTD|      0.626|      1.363|      5.844|       0|     0|      0.605|      9.414
RTD|      1.217|      1.364|      4.448|       0|     0|      0.605|      9.414
RTD|      1.237|      1.365|      4.451|       0|     0|      0.605|      9.414
RTD|      1.236|      1.368|      4.619|       0|     0|      0.605|      9.414

So I did a lspci -nn | grep LPC which gives :
00:1f.0 ISA bridge [0601]: Intel Corporation 82801HEM (ICH8M) LPC
Interface Controller [8086:2815] (rev 04)

It is adviced to edit the ksrc/arch/x86/smi.c file. Is it still up to
date ? If yes could you help me to edit it ? I suppose it is this
section :
static struct pci_device_id rthal_smi_pci_tbl[] = {
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801AA_0)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801AB_0)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801BA_0)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801BA_10)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801E_0)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801CA_0)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801CA_12)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801DB_0)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801DB_12)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801EB_0)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH6_0)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH6_1)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH6_2)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ESB2_0)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH7_0)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH7_1)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH8_4)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH9_1)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH9_5)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH10_1)},
        {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_PCH_LPC_MIN+7)},
        {0,},
};

I suppose I should add a line, with something from : pci_ids.h, but
it's not very clear to me which one to select.

_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to