kernel: i2c padconf workaround (work-in-progress)

The padconf library runs in user mode, but to actually affect the
padconf register contents, the processor has to be in privileged
mode. A full server based solution will be developed, but for now
just set the pinmux in the kernel at boot.
i2c: initial bus drivers for am335x and dm37xx
Importing usr.sbin/i2cscan

Change-Id: Ie3b55c898cf70521212bf519a572e6d7918b1d53
libi2cdriver: library for i2c device drivers

Change-Id: I1ff68aa310eda943a65e0efccf2d613d9f27458f
cat24c256: driver for the cat24c256 i2c eeprom

Change-Id: I8ba4e5ea6a3dbf35bf3a49b4342c5734918862dc
eepromread: simple program to view eeprom contents

This program uses the i2c /dev interface to read the
contents of EEPROMs and display it to the user in
HEX and ASCII. It also has a mode that can display
data in label:value pairs. That mode is used for
board detection in the rc script to start the right
i2c drivers for the board.