dwc_otg: Fix unsafe access of QTD during URB enqueue

In dwc_otg_hcd_urb_enqueue during qtd creation, it was possible that the
transaction could complete almost immediately after the qtd was assigned
to a host channel during URB enqueue, which meant the qtd pointer was no
longer valid having been completed and removed. Usually, this resulted in
an OOPS during URB submission. By predetermining whether transactions
need to be queued or not, this unsafe pointer access is avoided.

This bug was only evident on the Pi model A where a device was attached
that had no periodic endpoints (e.g. USB pendrive or some wlan devices).
dwc_otg: Fix incorrect URB allocation error handling

If the memory allocation for a dwc_otg_urb failed, the kernel would OOPS
because for some reason a member of the *unallocated* struct was set to
zero. Error handling changed to fail correctly.
Merge pull request #223 from P33M/rpi-3.6.y

dwc_otg: memory allocation/error handling bugfixes
Fixed build errors.

kernel/trace/trace_events_filter.c: In function "ftrace_function_set_filter_cb":
kernel/trace/trace_events_filter.c:2074:8: warning: "ret" may be used uninitialized in this function [-Wuninitialized]

Patch has been queued mainline commit 92d8d4a "tracing/filter: Add missing initialization

arch/arm/mach-bcm2708/bcm2708.c: In function "timer_set_mode":
arch/arm/mach-bcm2708/bcm2708.c:780:16: warning: unused variable "stc" [-Wunused-variable]
Removed unused variable.

drivers/usb/storage/realtek_cr.c: In function "init_realtek_cr":
drivers/usb/storage/realtek_cr.c:476:33: warning: "buf[15]" may be used uninitia
lized in this function [-Wuninitialized]
Change conditional.
Base PPS patch.
Spacing changed to meet kernel coding style guidelines.
PPS is now a configurable kernel option.
Default is "disabled".
The pin to use with PPS is now configurable.
Added a dmesg log on boot.
Fixed for coding style guidelines.