Is it possible to build a $10 phone?

Linux No Comments »

When $100 laptops are attempted, why not a $10 mobile phone - Linux again will be the OS. With just 3MB footprint for the OS, I beleive that with the falling prices in the memory, I bet it is not far from having a $10 phone.To reach the next 1 billion, it is important to keep the price down with limited features

What could be the minimal features for a $10 mobile?

Do you think this is possible?

Let me know your views

Share/Save/Bookmark

I got a GPE mobile Desktop

LinWizard, Linux, kernel No Comments »

I finally converted the mobile phone in to a desktop!

I borrowed the source code from Linwizard and cross compiled on my openSuse. I borrowed the initrd file also from linwizard.

I copied zImage and Initrd to my SD card and booted using HaRET.

The journey was smooth and in about 30 seconds, the HTC Wizard booted into Linux and the login prompt appeared. I logged in as root. There is no password for this account!!

When I issued the command “startx”, the GPE came alive with a touch screen caliberation screen. On completion, it started the GPE desktop - the GPE-enabled mobile phone is ready for operation, but without any phone functionality :-)

I am looking under the hood to understand the complexities involved.

One thing you can expect - I will log everything.

This is what I did to boot HTC Wizard using Linux

  1. git cloned gnimirror http://mirrors.gni.com/mirrors/linwizard/polaris/linwizard-kernel.git
  2. Created a local branch
  3. make htcwizard_defconfig
  4. Changed the CROSS_COMPILE option to reflect the prefix of the command
  5. Make zImage
  6. Copy the zImage to SD card
  7. Copy the initrd from linwizard site
  8. Booted using Haret

Share/Save/Bookmark

Struggle in compiling the kernel for OMAP850/OMAP730

Linux, kernel, tool chain No Comments »

Warning: I am newbie on embedded systems, kernels, etc. All disclaimers apply -read at yout own risk!

I hate to use binaries on Linux and I learnt I am not the only one who would like to make some changes to the code, compile it and use it. Many tell me that I am wasting time in doing so, but I love this. Old habits die hard. For the same reason, I do not want to use LinWizard. Is there a LinWizard source?

I decided to tread the difficult task of compiling the kernel and and ended up in downloading several versions and bookmarking various sites.

I found muru.com to be very useful.

This is what I did:

  1. Got the git tree from mvista and created a clone in my Linux box and created my branch “vairam” meaning diamond in Tamil. Then installed the GNU arm eabi tool chain from codesourcery.com. Created the .config file by selecting all default options using “make config”. 
  2. In the Makefile changed the prefix CROSS_COMPILE = arm-none-eabi. 
  3. Make menuconfig
  4. Selected OMAP Core type as OMAP=730 and OMAP board type FSAMPLE
  5. Make

I got the following error:

In file included from arch/arm/kernel/entry-armv.S:21:
arch/arm/plat-omap/include/mach/entry-macro.S:18:2: error: #error “FIXME: OMAP730 doesn’t support multiple-OMAP”

     6.  Then I reconfigured to exclude OMAP 15XX After the reconfiguration, .config shows

# CONFIG_ARCH_OMAP15XX is not set

     7. make 

This time I got the following error.

arch/arm/plat-omap/gpio.c: In function ‘_set_gpio_wakeup’:

arch/arm/plat-omap/gpio.c:848: warning: unused variable ‘flags’
arch/arm/plat-omap/gpio.c: In function ‘dbg_gpio_show’:
arch/arm/plat-omap/gpio.c:1834: error: ’struct gpio_bank’ has no member named ’suspend_wakeup’
arch/arm/plat-omap/gpio.c:1860: error: ’struct gpio_bank’ has no member named ’suspend_wakeup’

I tried to turn this switch off  in the .config and ended up corrupting it :-). I know I am blindly compiling the kernel, but I want to at least compile it with out any error.

I decided to patch the code with the CONFIG_ARCH_OMAP730 in the gpio_bank struct along with CONFIG_ARCH_OMAP16XX and CONFIG_ARCH_OMAP24XX. I am not sure whether it is right or wrong, but the error during kernel compilation went away.

I also got an error on related VGA_CONSOLE. I unset the VGA_CONSOLE=n and recompiled the kernel again.

With lot of struggle, I created the first kernel image vlinux (around 3.5MB) and ZImage (1.2MB) and it did not boot my HTC Wizard!  

Let me know if you have better ideas!

Share/Save/Bookmark

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Log in