0

My system has an SMBus controller and a serial UART that appear as different PCI devices:

00:1e.3 Communication controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series LPIO1 HSUART Controller #1 (rev 11)
00:1f.3 SMBus: Intel Corporation Atom Processor E3800 Series SMBus Controller (rev 11)

However I notice in /proc/interrupts that they share an IRQ number. (Here i801_smbus refers to the SMBus and ttyS4 refers to the HSUART.)

18:          0          0          7          0   IO-APIC   18-fasteoi   i801_smbus, ttyS4

Is this a problem? If it is advisable to have them use separate IRQs, how can I reassign one of them?

rgov
  • 3,516
  • 1
  • 31
  • 51
  • 1
    It might be a problem if you have high speed traffic on both devices and interrupt handler of each is running on the same CPU (the latter can be modified by applying IRQ affinity). In general case switch to MSI (for PCI devices) is the best way to go, then they will have different IRQ descriptors and so on. You may check if MSI is supported by hardware by running `lspci -vv -nk -s 1e.3; lspci -vv -nk -s 1f.3`. – 0andriy Feb 16 '21 at 13:19
  • 1
    *8250_lpss* (the driver for Baytrail HSUART) started supporting MSI in v5.5 with the commit _254cc7743e84 ("serial: 8250_lpss: Switch over to MSI interrupts")_. – 0andriy Feb 16 '21 at 13:23
  • 1
    _i2c-i801_ (the driver for i801 SMBus controller) seems do not support it. Can be done, but needs some testing. – 0andriy Feb 16 '21 at 13:35

0 Answers0