> How to write driver(s) for the device which: > 1) has multipurpose registers to control different devices. > 2) can connect to pci or pcib. > 3) some controlled devices overlap and are backwards compatible between > chipsets (smbus, iic, power management, gpio, etc) > 4) some can have chipset specific devices to control (like hw monitor > on VT8231) > 5) newer chipsets may have more devices to control than older. > 6) some controls may need to be exposed over sysctl.
maybe have a look at how x86 cpufeaturebus works. .mrg.