Lock spic(4) and mark it MPSAFE:
- Add a per-softc mutex as a driver lock.
- Use callout(9) instead of timeout(9).
- Set softc pointer in si_drv1 of cdev instead of looking softc
  up via devclass in cdev methods.

Tested by:	no one


git-svn-id: svn+ssh://svn.freebsd.org/base/head@274759 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f