I've got a new Precision 5520 running Ubuntu 16.04. After at least ten years using a MacBook Pro, my left hand demands that the Ctrl and Fn keys be swapped. I understand the Fn key is handled at the lowest level. Poking around in the BIOS, I could find no way to swap them at that level. Is there a way to accomplish this seemingly simple feat, perhaps using xmodmap (which I've not investigated yet, as it seems to be too high level)?
I've concluded swapping Ctrl and Fn is not possible. I did find a kind of workaround, though. In Preferences>Keyboard>Layout>Options there are a bazillion different checkboxes you can try to come up with a workaround which works for you. In my case, I made the Caps Lock key another Ctrl key. This harkens back to my old Sun Workstation days in the 1980s, but will still be an easier (re)learning process than the backward Ctrl/Fn positioning.