Replace the swap_word() function with something more straightforward

I can see why the name swap_word() was chosen, words are indeed swapped
in this function, however having the signature showing a destination and
a source parameter it sounded like the data were swapped _between_ these
two buffers, and this is misleading.

The operation is more like a copy with swapped bytes, a better name
would be copy_swapped16() maybe, but it's even better to directly use
something resembling memcpy which is familiar to the reviewers.

The kernel offers a function to swap half of 32bit values which should
suit the case, its name is swahw32().

Signed-off-by: Antonio Ospite <ao2@amarulasolutions.com>
Don't call usb_set_interface() again in hiface_pcm_set_rate()

This is not necessary, usb_set_interface() is being called in
hiface_chip_probe() already, and the interface does not change since
then.

Signed-off-by: Antonio Ospite <ao2@amarulasolutions.com>
Rename device_short_name to device_name

This looks a little better because we don't have a device "long" name.

Signed-off-by: Antonio Ospite <ao2@amarulasolutions.com>
Sort entries in device_table

Group M2Tech devices together even if they have different Vendor IDs and
then sort by Product IDs.

Signed-off-by: Antonio Ospite <ao2@amarulasolutions.com>
Use lowercase hex digits for USB ids

This is how the majority of the drivers do it.

Signed-off-by: Antonio Ospite <ao2@amarulasolutions.com>
Add a comment about a doubt: is the format check really necessary?

Signed-off-by: Antonio Ospite <ao2@amarulasolutions.com>
Add a comment about a doubt: can we avoid assigning hw.rates?

Signed-off-by: Antonio Ospite <ao2@amarulasolutions.com>