I found the reason of the high number of L2_HSIC wakelocks in my environment.
I have a Canon multifunction scanner/printer, connected via WiFi to my home PC.
It turns out that when you install the "Canon IJ Network Scan Utilities", there's a process called CNMNSUT.EXE that wakes up every second and broadcasts a BJNP packet to the whole local network. These packets are precisely the reason why I used to get so many network-related wakelocks (yes, I also had WLAN_RX_WAKEs).
Now... this process is responsible for the communication between the scanner and the Canon driver running on the PC: more specifically, it's the process that allows you to scan a document entirely from the scanner's panel, without having to do anything on the computer.
So, here's what I did to work around the problem, while still preserving the ability to scan via the panel:
- I configured a fixed IP address for the multifunction printer/scanner on my router;
- I restricted the communication to and from CNMNSUT.EXE only from/to the printer/scanner's IP address, using a custom rule in my firewall.
In this way, all the broadcast BJNP packets sent by CNMNSUT.EXE are blocked by the firewall, except the ones directed to the printer, and my phone doesn't receive those packets anymore.
I hope this helps at least some of you...