Posted by Michael Posner on July 8, 2016
Software developers constantly face the challenge of integrating more features into their designs, with fewer resources and shorter schedule for fast time-to-market products requiring USB interfaces. Developers programming in Linux have an additional challenge in that the Linux kernel mainline is officially released as a new version approximately every 2 to 3 months. Keeping up with the version changes and using them for a non-mainline kernel can waste weeks or months of development.
On the other hand, using USB driver code that resides in the upstream kernel does not have this issue, as kernel and Linux developers tend to simply grep the source, modify and use any driver that is impacted by a proposed application program interface (API) change. Using USB drivers from the upstream Linux kernel greatly simplifies the design process, freeing software developers to spend time on developing proprietary, differentiating code and applications for the product.
Want to understand how you can simplify your USB software development, read on here: https://www.chipestimate.com/tech-talks/2016/04/05/Synopsys-Simplifying-USB-Software-Development-with-Linux-Drivers
Off Topic ………. Have you noticed all those math quiz questions going around the internet? For example, what is the answer to 2×2+2/2=? (Typo’ed before, corrected in update)
Well in this case the answer is 5……………. Why not 3 or 4 you ask? Well it’s simple, there are rules applied to math like this to ensure the answer is always calculated in a uniform way. Just remember BODMAS!
B Brackets first
O Orders (i.e. Powers and Square Roots, etc.)
DM Division and Multiplication (left-to-right)
AS Addition and Subtraction (left-to-right)
So for our little equation there are no brackets, no orders so onto division and multiplication which are equal priority so handle from left to right (2×2=4 & 2/2=1) then onto the addition (4+1=5)