There's a whole lot of misinformation on the web right now about reasons why HP had troubles with the TouchPad and eventually had to abandon the entire webOS hardware division. We'd moved on internally after yesterday's news but a bunch of stuff that popped up online today prompted a quick discussion about the realities of webOS hardware.

It's Not Qualcomm's Fault

Someone somewhere started this idea that by using Qualcomm hardware the TouchPad and presumably Veer/Pre 3 were handicapped. The theory is that by using Qualcomm hardware HP somehow limited performance of these devices and made it very difficult to run on devices that used other, non-Qualcomm SoCs.

Time for a reality check.

Palm's webOS launched on TI's OMAP 3. The original Palm Pre ran on an OMAP 3430. In fact, I did a quick head to head between it and the iPhone 3GS when it came out given the similar specs of the 3430 and Apple's 3rd generation SoC.

The Palm Pixi, on the other hand, used a Qualcomm MSM7x27 SoC. At the same time, the Palm Pre Plus was available with the same OMAP 3430 as the original Pre. Here we have two different SoCs which themselves implement different versions of the ARM instruction set (the MSM7x27 runs ARMv6, OMAP 3430 runs ARMv7), and yet it was possible to port the current version of webOS between two different SoCs from different vendors running different ARM instruction versions entirely. 

Morover, webOS 2.0 is fundamentally the same beast at an OS level as webOS 1.x. The Pre Plus and original Pre can run webOS 2.x just fine (with appropriately changed radio firmware), an OS originally intended for the OMAP 3630 in the Pre 2 and the HP Veer's MSM7230. Porting between different SoCs thus isn't entirely impossible - already we're up to webOS 1.x and 2.x running on 4 different SoCs. It's reasonable to say that porting is actually relatively easy. 

In fact, while doing the HP Veer review and poking around inside webOS 2.1.2, we found numerous references and plugins which were definite remnants of OMAP3 compatibility. This isn't a surprise at all considering that the Pre 2 likewise runs webOS 2.1.0.

It's not flip-a-switch trivial to port between SoCs, but it's not shoe-eating impossible, either. Apple, NVIDIA, TI and Qualcomm all implement the same ARMv7 instruction set in their latest SoCs (with the exception, again, of the Pixi's MSM7x27 which used ARMv6), and thus code compiled for one processor should run just fine on another. There are differences in terms of power management and what other instruction set extensions are supported (e.g. ARM's NEON SIMD extension, or thumb, vfpv3, and others) but these are minor in the big scheme of things. They require development time, but presumably the webOS team has (or is it had, now?) developers on staff whose responsibilities were to smooth over these differences.

Respective Extensions from cat /proc/cpuinfo:

MSM8x60/APQ8060:
Processor : ARMv7 Processor rev 2 (v7l)
Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3
 
OMAP3x30:
Processor : ARMv7 Processor rev 2 (v7l)
Features : swp half thumb fastmult vfp edsp neon vfpv3
 
MSM7x30:
Processor : ARMv7 Processor rev 1 (v7l)
Features : swp half thumb fastmult vfp edsp thumbee neon 
 
MSM7x27:
Processor : ARMv6-compatible processor rev 5 (v6l)
Features : swp half thumb fastmult vfp edsp java 

One of the bigger issues in porting between these SoCs has to do with graphics drivers. While all of the aforementioned companies implement the same ARM instruction set, they all use very different GPUs. Each GPU requires its own driver, no different than on an notebook or a desktop. In the Windows world it's like driver heaven, every major GPU has a driver available for every major version of Windows. In the mobile space it's a bit more complicated.

Because there's an Adreno 220 driver for Android doesn't mean that one exists for iOS or webOS. To a certain extent, each OS needs its own driver. Granted there can be a lot of code reuse thanks to similar standards existing across the OSes (OpenGL ES 2.0 for example is on all three OSes) but here's another area where development time is required.

There are other differences as well between SoCs. Differences such as what video encoders the OS will use for camera input to encode both JPEG and MPEG video. What decoders onboard the SoC to use for video playback or flash video acceleration. Where and how big the SDRAM is. What interfaces (I2C, SPI, GPIO and USB) are to be used for accelerometer, ambient light, gyro, pressure, or compass sensors. Which of those I/O ports are used for controllers for the touch panel, backlight, LED, vibrate and WLAN. All of these are considerations that make moving an OS between not just SoCs but hardware platforms, something that initially seems daunting but really amounts to pointing things in the right direction and including the right kernel drivers. Thankfully since webOS is linux based, the kernel should take care of a huge percentage of that difficulty and largely make any SoC that Android runs on a potential host for webOS. 

In the end, while it does require work to port webOS to various SoCs it has not only been done in webOS history but it's a small part of the work required to bring a new tablet or phone to market. If this were an insurmountable task then we wouldn't see Android working on every single major SoC released.

It's Really Not Qualcomm's Fault
Comments Locked

79 Comments

View All Comments

  • Zink - Friday, August 19, 2011 - link

    Good job being though, I was kind of surprised at some of the stuff that got posted elsewhere .
  • Zink - Friday, August 19, 2011 - link

    *thorough
    HP never fully committed to fixing the OS and marketing that was already struggling in the hands of Palm so it is not really a surprise what happened.
  • Zink - Friday, August 19, 2011 - link

    I picked up an open box 16gb at futureshop in ontario for $89.99 and am using it right now. Try to snag one for $100 or $150 too. I don't really get it, why didn't they drop to $200, why go so low?
  • piiman - Saturday, August 20, 2011 - link

    are you complaining they made it too low? The only problem I see with them being 100.00 is they are flying off the shelf before I can get there. This may the the slowest pad out there but for 100.00 or less I bite!
  • Watwatwat - Sunday, August 21, 2011 - link

    because they burned the product which had already been failing, now who wants to buy that kind of discontinued failure for a small discount, you have to rip the bandaid off fast. it does them no good to drag it out, these things lose value by the day, and they need some money back asap, salvage what is left and be done with it. time is money, no time should be spent on a dead product line.
  • Zoomer - Monday, August 22, 2011 - link

    Not true, go look at ebay. People are buying them for alot more than $100. Given how fast they are selling at $100, HP could have priced them more, easy.

    Conclusion: That software guy is an idiot. Canning their pc division is a very risky move, considering it makes up about half their revenues. If this new direction fails, they are in deep shit. And enterprises usually wants to buy a package; how are they going to offer a package of servers + network + software + end clients (PCs) without their pc division?
  • boobot - Monday, August 29, 2011 - link

    Here are a few facts from HPs earnings - The PC division of HP (PSG) makes up 29-30% of HPs revenue not 50%. IPG (printing) brings in 20% revenue and Services+ESSN(Servers) pulls in a hefty 45% of HP's revenue. That's revenue but more importantly the focus is on profit. PSG is only gathering 12-15% of HP's total profit(not bad but not it's core) and that is forecasted to shrink. IPG is pulling 28% of HP's total profits while Services+ESSN is pulling in 55% of HP's profits. PSG is potentially not getting "canned". They are optioning selling off or spinning off the PSG division. A spin-off would likely maintain the HP brand and be backed by HP. Either way it's a low profit and risky market. As for packages of services, yes it would be nice to sell the whole package but appartently other comanies such as IBM and Accenture even Oracle can sell services with hardware and not have a leg in the pc market. That's what HP is focusing on. The earnings are high and the profits follow. Not many people understand that HP is the second largest IT services company in the world
  • javaflash - Saturday, August 20, 2011 - link

    Mr. Anand Lal Shimpi has been behaving like a Quadcomm salesman for quite some time.

    There is a clear pattern of bias among his reviews where Quadcomm was always favored, and other chipmakers were marginalized even criticized.

    I am concerned that there is an ulterior(financial) motive.
  • NCM - Saturday, August 20, 2011 - link

    Then, Mr. javaflash, you'd better have some actual data, other than your unsupported opinion, to back that up.
  • m.amitava - Saturday, August 20, 2011 - link

    QuaDcomm?? LOL...

Log in

Don't have an account? Sign up now