Giter Site home page Giter Site logo

b2g's People

Contributors

allstarschh avatar andreasgal avatar arky avatar benfrancis avatar bsterne avatar changyihsin avatar codeworkx avatar dhylands avatar ehsan avatar eric30 avatar fabricedesre avatar jhford avatar jlebar avatar joneschrisg avatar justindarc avatar kanru avatar michaelwu avatar mkedwards avatar mneubrand avatar mrbkap avatar philikon avatar ppapadeas avatar qdot avatar shaver avatar shianyow avatar synodinos avatar thinkeryzu avatar timdream avatar tterribe avatar vingtetun avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

b2g's Issues

Make in-gecko shortcut to android settings

When gecko owns the home screen, it's not possible to get to the android system settings screen. This is inconvenient for now, while we don't have API to change settings. We should add a shortcut to settings from the UI.

INSTALL: Add 'make kernel'

I think 'make kernel' is not mentioned in the Qemu section of the install file.

make config-qemu
make
make kernel
./emu.sh

Expose low-level telephony interface to support Gecko impl

We need to strip out the android-Java stuff and get down to the C/C++ interface. If it proves more expedient, we could create our own TelephonyProvider in Java and postpone the complete strip-out, but if possible it would be better do both in one shot.

I may not be able to own this. I'll look through the code and try to analyze what's needed to do this, and post here.

Provide a script for emulator

It needs a lot of options to launch an instance of emulator for B2G. I think we had better to provide a script to help people to launch emulator for a built image. Where should we put the script? in gonk/device/qemu/? or somewhere?

Maybe we should add a tools/ sub-directory at the root of B2G source tree.

|make install-gecko| should work with b2g-gonk builds

It currently assumes b2g-android, which is going the way of the dinosaur. make install-gecko is even more useful for b2g-gonk because re-pushing gecko is much more of a PITA with b2g-gonk.

Best implemented by a |make install-gecko-$(WIDGET_BACKEND)| "dispatch" between -android and -gonk. -android will die soon.

Nothing displaying at all, system_server crashing

E/SurfaceFlinger( 2704): couldn't find an EGLConfig matching the screen format
E/libEGL ( 2704): validate_display_config:501 error 3005 (EGL_BAD_CONFIG)
E/libEGL ( 2704): eglQuerySurface:1075 error 300d (EGL_BAD_SURFACE)
E/libEGL ( 2704): validate_display_config:501 error 3005 (EGL_BAD_CONFIG)
E/libEGL ( 2704): call to OpenGL ES API with no current context (logged once per thread)
I/DEBUG ( 2577): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG ( 2577): Build fingerprint: 'samsung/full_galaxys2/galaxys2:2.3.5/GINGERBREAD/eng.cjones.20110818.212452:eng/test-keys'
I/DEBUG ( 2577): pid: 2704, tid: 2712 >>> system_server <<<
I/DEBUG ( 2577): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000000

I noticed that I had some hacks applied to my local build system. When I removed those, I get the error above, and never see anything drawn to screen. This is really bad.

/system/bin/mediaserver crash at system startup

This issue was separated from "#47: CPU pegged by debuggerd on startup".

/system/bin/mediaserver will crash at first time during system startup and automatically restart to work normally.

According to /data/tombstone, the crash point is android_atmoic_add(), called by SharedBuffer::acquired().

*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Build fingerprint: 'samsung/full_galaxys2/galaxys2:2.3.5/GINGERBREAD/eng.sywu.20111022.232821:eng/test-keys'
pid: 2593, tid: 2593  >>> /system/bin/mediaserver <<<
signal 7 (SIGBUS), code 128 (?), fault addr 00000000
 r0 00000001  r1 a9a081dd  r2 00000000  r3 00000001
 r4 00000001  r5 a9a081dd  r6 a9a081ed  r7 beb77790
 r8 00000000  r9 beb77808  10 beb77800  fp beb7778c
 ip a8129cb0  sp beb77780  lr af904b84  pc af904b84  cpsr a0000010
         #00  pc 00004b84  /system/lib/libcutils.so
android_atomic_add
system/core/include/cutils/atomic-arm.h:175

         #01  pc 0001b00e  /system/lib/libutils.so
android::SharedBuffer::acquire() const
frameworks/base/libs/utils/SharedBuffer.cpp:97

         #02  pc 0001c662  /system/lib/libutils.so
android::String8::setTo(android::String8 const&)
frameworks/base/libs/utils/String8.cpp:297

         #03  pc 000343d4  /system/lib/libmedia.so
android::String8::operator=(android::String8 const&)
frameworks/base/include/utils/String8.h:360

         #04  pc 00008446  /system/lib/libaudiopolicy.so
android::AudioPolicyManager::getParamFromPolicy(android::String8 const&)

         #05  pc 0002c0a4  /system/lib/libaudioflinger.so
android::AudioPolicyService::getStrategyForStream(android::AudioSystem::stream_type)
frameworks/base/services/audioflinger/AudioPolicyService.cpp:354

         #06  pc 00035454  /system/lib/libmedia.so
android::AudioSystem::getStrategyForStream(android::AudioSystem::stream_type)
frameworks/base/media/libmedia/AudioSystem.cpp:677

         #07  pc 00026dd8  /system/lib/libaudioflinger.so
         #08  pc 000270a2  /system/lib/libaudioflinger.so
         #09  pc 0002e94c  /system/lib/libmedia.so
         #10  pc 0001f4d4  /system/lib/libaudioflinger.so
         #11  pc 000136a8  /system/lib/libbinder.so
         #12  pc 00016edc  /system/lib/libbinder.so
         #13  pc 000170d0  /system/lib/libbinder.so
         #14  pc 00008af8  /system/bin/mediaserver
         #15  pc 000150f6  /system/lib/libc.so

CPU pegged by debuggerd on startup, related to radio stack (exarcerbated by lack of SIM)

D/CallManager( 5807): registerPhone(GSM Handler{405b4638})
W/ActivityManager( 3186): Timeout executing service: ServiceRecord{40696e60 com.android.phone/.BluetoothHeadsetService}
I/Process ( 3186): Sending signal. PID: 5807 SIG: 3
I/dalvikvm( 5807): threadid=4: reacting to signal 3
I/dalvikvm( 5807): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 3186): Sending signal. PID: 3186 SIG: 3
I/dalvikvm( 3186): threadid=4: reacting to signal 3
I/dalvikvm( 3186): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 3186): Sending signal. PID: 3310 SIG: 3
I/dalvikvm( 3310): threadid=4: reacting to signal 3
I/dalvikvm( 3310): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 3186): Sending signal. PID: 3268 SIG: 3
I/dalvikvm( 3268): threadid=4: reacting to signal 3
I/dalvikvm( 3268): Wrote stack traces to '/data/anr/traces.txt'
D/dalvikvm( 3186): GC_EXPLICIT freed 1032K, 46% free 4612K/8519K, external 2873K/3338K, paused 40ms
I/Process ( 3186): Sending signal. PID: 5807 SIG: 9
E/ActivityManager( 3186): ANR in com.android.phone
E/ActivityManager( 3186): Reason: Executing service com.android.phone/.BluetoothHeadsetService
E/ActivityManager( 3186): Load: 1.26 / 1.23 / 1.18
E/ActivityManager( 3186): CPU usage from 15037ms to 0ms ago:
E/ActivityManager( 3186):   98% 2577/debuggerd: 10% user + 87% kernel
E/ActivityManager( 3186):   2.2% 3310/org.mozilla.fennec_jlebar: 1.2% user + 0.9% kernel
E/ActivityManager( 3186):   0.8% 1448/mmcqd: 0% user + 0.8% kernel
E/ActivityManager( 3186):   0.1% 2671/flush-179:0: 0% user + 0.1% kernel
E/ActivityManager( 3186):   0.1% 3186/system_server: 0% user + 0% kernel
E/ActivityManager( 3186):   0% 9/events/0: 0% user + 0% kernel
E/ActivityManager( 3186):   0% 525/kondemand/0: 0% user + 0% kernel
E/ActivityManager( 3186):   0% 546/kswapd0: 0% user + 0% kernel
E/ActivityManager( 3186):   0% 1268/file-storage: 0% user + 0% kernel
E/ActivityManager( 3186):   0% 2566/jbd2/mmcblk0p10: 0% user + 0% kernel
E/ActivityManager( 3186): 50% TOTAL: 5.7% user + 44% kernel + 0.1% iowait
E/ActivityManager( 3186): CPU usage from 137ms to 651ms later:
E/ActivityManager( 3186):   100% 2577/debuggerd: 13% user + 86% kernel
E/ActivityManager( 3186):   1.9% 3186/system_server: 0% user + 1.9% kernel
E/ActivityManager( 3186):     3.9% 3200/ActivityManager: 1.9% user + 1.9% kernel
E/ActivityManager( 3186):   1.6% 3310/org.mozilla.fennec_jlebar: 0% user + 1.6% kernel
E/ActivityManager( 3186):     1.6% 3376/Thread-12: 0% user + 1.6% kernel
E/ActivityManager( 3186):     1.6% 3406/Thread-12: 0% user + 1.6% kernel
E/ActivityManager( 3186): 51% TOTAL: 7.6% user + 44% kernel
W/DropBoxManagerService( 3186): Dropping: system_app_anr (10 > 0 bytes)
I/ActivityManager( 3186): Process com.android.phone (pid 5807) has died.
I/ServiceManager( 2574): service 'isms' died
I/ServiceManager( 2574): service 'simphonebook' died
I/ServiceManager( 2574): service 'iphonesubinfo' died
I/ServiceManager( 2574): service 'phone' died
W/ActivityManager( 3186): Canceling start item Intent { cmp=com.android.phone/.BluetoothHeadsetService } in service ComponentInfo{com.android.phone/com.android.phone.BluetoothHeadsetService}
W/ActivityManager( 3186): Scheduling restart of crashed service com.android.phone/.BluetoothHeadsetService in 41366ms
I/ActivityManager( 3186): Start proc com.android.phone for restart com.android.phone: pid=5825 uid=1001 gids={3002, 3001, 3003, 1015}
D/dalvikvm( 3176): GC_EXPLICIT freed 13K, 50% free 2716K/5379K, external 1625K/2137K, paused 30ms
D/dalvikvm( 3176): GC_EXPLICIT freed <1K, 50% free 2716K/5379K, external 1625K/2137K, paused 19ms
D/dalvikvm( 3176): GC_EXPLICIT freed <1K, 50% free 2716K/5379K, external 1625K/2137K, paused 37ms
I/ActivityThread( 5825): Pub mms: com.android.providers.telephony.MmsProvider
I/ActivityThread( 5825): Pub sms: com.android.providers.telephony.SmsProvider
I/ActivityThread( 5825): Pub telephony: com.android.providers.telephony.TelephonyProvider
I/ActivityThread( 5825): Pub icc: com.android.phone.IccProvider
I/ActivityThread( 5825): Pub mms-sms: com.android.providers.telephony.MmsSmsProvider
D/CallManager( 5825): registerPhone(GSM Handler{405b4b00})

It then hangs at registerPhone for 20s or so.

Make config-[phone] targets smarter about blob deps

(Being smarter about build deps is a general enhancement for the build system, but ...)

I've found myself switching between sgs2<-->nexuss4g dev a fair amount. Whenever I do that, I have to re-run the config-* targets. That part is fine; nothing needs to change there.

The problem is that both config targets always make me do the annoying "fetch blobs" step, whether or not I've already fetched them. It would be great to skip that step if it's already been run (and the blobs are still present).

Maybe a little sentinel file that gets cleared on an explicit |make clean| or |make realclean| would be a close enough approximation.

Multiple b2g .apk files causes "make flash" to fail

In the Makefile that was generated for the Samsung Galaxy SII, in the gecko-android-hack section there's the following line:

cp -p gecko/objdir-prof-android/dist/b2g-*.apk $(APP_OUT_DIR)/B2G.apk

My dist directory contained two matching .apk files "b2g-10.0a1.en-US.android-arm.apk" and "b2g-9.0a1.en-US.android-arm.apk"

As a result, this line attempts to copy multiple files to a single file target which generates the error "cp: target `~/Code/andreasgal/B2G/glue/gonk/out/target/product/galaxys2/system/app/B2G.apk' is not a directory" and stops make flash from running.

Removing the older .apk file fixes the problem, so perhaps this script should automatically pick the latest one somehow?

Improve config-galaxy-s2 process to make it without need for a real phone

In current make config-galaxy-s2 process, it extracts proprietary libraries from a real phone. You need to prepare a real phone loaded with stock firmware, connected to your PC.

If we extract those blobs from a downloaded 3rd party image (ex: CyanogenMod), then the process will be simpler and more reliable.

The idea was motivated from issue #56.

Fix Samsung-provided Galaxy S II kernel

We're building the source that Samsung publishes through their website, but the kernel is apparently panicing early in startup. It's not clear what's going wrong yet. Something like kgdb over USB, plus rejiggering the USB startup order to make sure it's up soon enough, might be the right way to tackle this.

A11y Support

Meta bug to provide a11y support to B2G using ATK/DBUS based orca or similar screen reader

Incorrect orientation in emulator with Android backend

When launching the emulator after building B2G with the Android backend, the emulator window indicates portrait orientation, however, all display contents are rendered in landscape orientation as if the device were rotated 90 degrees clockwise.

Apparent race condition in initialization of GL stack

CC @mwu, @jlebar, @shianyow

@mwu and @jlebar have noticed a problem in the gonk widget backend in which gecko can't draw to the screen after startup, leaving a black screen. I've noticed a problem with the android widget backend in which gecko sometimes fails to create a GL layer manager, and has to fall back on CPU compositing (which destroys performance of the home screen).

They sound like they might both be caused by the same underlying problem: failure to create a GL context around the time of startup, possibly due to a race condition. I don't know what might cause this. It'd be interesting to look at the android GL implementation and see what it does. It might have a solution to this problem already.

Provide a script for emulator

It is complicated to launch an instance of emulator for B2G. We had better provide a script to help people launching it. But, where should it be? Should we add a new sub-directory scripts/ or tools/ at root of source tree?

Add a |make config-emu| target for android emulator

B2G should be testable on top of (an) emulator for folks who don't have compatible hardware. Right now using the android emulator seems like the quickest path to success, but unfortunately it only supports up to ARMv6. That's a problem because Gecko is officially unsupported on ARMv6 and below.

The other complications can be dealt with indepedently of the build-system work to support the emulator target though.

Configure Error: Snipped NDROID_NDK variable

$make fails with following error.
Error:
Adding client.mk options from /home/arky/src/B2G/gecko/mozconfig:
MOZ_OBJDIR=$(TOPSRCDIR)/objdir-prof-android
MOZ_MAKE_FLAGS=-s -j16
cd /home/arky/src/B2G/gecko/objdir-prof-android
/home/arky/src/B2G/gecko/configure
Adding configure options from /home/arky/src/B2G/gecko/mozconfig:
--with-android-sdk=NDROID_SDK/platforms/android-13
--with-android-ndk=NDROID_NDK
--with-android-toolchain=NDROID_NDK/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86
--with-android-platform=NDROID_NDK/platforms/android-5/arch-arm
--target=arm-linux-androideabi
--with-endian=little
--enable-raw
--enable-application=b2g
--disable-elf-hack
--enable-debug-symbols
--enable-profiling
--with-ccache
loading cache ./config.cache
checking host system type... i686-pc-linux-gnu
checking target system type... arm-linux-android
checking build system type... i686-pc-linux-gnu
checking for mawk... mawk
checking for perl5... no
checking for perl... /usr/bin/perl
configure: error: The path in --with-android-sdk isn't valid (source.properties hasn't been found).
*** Fix above errors and then restart with "make -f client.mk build"
make[3]: *** [configure] Error 1
make[2]: *** [/home/arky/src/B2G/gecko/objdir-prof-android/Makefile] Error 2
make[1]: *** [build] Error 2
make: *** [gecko] Error 2

mozconfig

$ cat gecko/mozconfig
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-prof-android

XXX our build system doesn't seem to respect toplevel -j ...

hard-coding this sucks

mk_add_options MOZ_MAKE_FLAGS="-s $MAKE_FLAGS"

XXX need a plan for toolchain and multi-dev-platform support

topdir="pwd/../.."
gonk="$topdir/glue/gonk"
sys=uname -s | tr "[[:upper:]]" "[[:lower:]]"

XXX need to figure out how to deal with SDKs ... this sucks.

ac_add_options --with-android-sdk="$ANDROID_SDK/platforms/$ANDROID_SDK_PLATFORM"
ac_add_options --with-android-ndk="$ANDROID_NDK"
ac_add_options --with-android-toolchain="$ANDROID_NDK/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86"
ac_add_options --with-android-platform="$ANDROID_NDK/platforms/android-5/arch-arm"
ac_add_options --target=arm-linux-androideabi
ac_add_options --with-endian=little
ac_add_options --enable-raw

ac_add_options --enable-application=b2g
ac_add_options --disable-elf-hack

ac_add_options --enable-debug-symbols
ac_add_options --enable-profiling
ac_add_options --with-ccache
arky@Arky-Think:/src/B2G$ echo $ANDROID_NDK
/opt/android-ndk-r7/
arky@Arky-Think:
/src/B2G$ echo $ANDROID_SDK
/opt/android-sdk-linux/

Have installer ensure that package manager can work

People sometimes get a message at the end of the install-gecko process that says:
/sbin/sh pm not found
Then this refers to the android package manager not working properly on the device.
The reason it's not working is that it doesn't have permissions to write to /data/system.

I think that if the install-gecko target is modified to ensure this directory is writeable, we can save the user some headaches.

The install target would probably need to do:
adb shell chmod -R 666 /data/system

I have tested that 777 definitely works, but I doubt we need the directory to be executable.

Note that when I had this issue, I also had a further issue that pm was not being located by the system even though it was clearly in the path. To get around that, I had to do:
adb shell sh /system/bin/pm install -r

I'm not sure if the path issue was related to this, or due to some other misconfiguration on my system.

Reproducible crash with Contacts Manager and view-source

This should eventually be a gecko bug in mozilla bugzilla, but let's track it here for starters.

STR
(1) Load Contacts app
(2) Long-tap to view source
(3) Scroll down in source window

BUG: BOOM crash

I've only tried to reproduce this on the sgs2, but it's likely a more general problem. Any time web content crashes gecko, it's 100% gecko's fault.

Qemu boot error init: cannot find '/system/b2g/b2g', disabling 'b2g'

The ./emu.sh launch fails with this error.

init: cannot open '/initlogo.rle'
yaffs: dev is 32505856 name is "mtdblock0"
yaffs: passed flags ""
yaffs: Attempting MTD mount on 31.0, "mtdblock0"
yaffs_read_super: isCheckpointed 0
save exit: isCheckpointed 0
yaffs: dev is 32505857 name is "mtdblock1"
yaffs: passed flags ""
yaffs: Attempting MTD mount on 31.1, "mtdblock1"
yaffs_read_super: isCheckpointed 0
yaffs: dev is 32505858 name is "mtdblock2"
yaffs: passed flags ""
yaffs: Attempting MTD mount on 31.2, "mtdblock2"
yaffs_read_super: isCheckpointed 0
init: cannot find '/system/b2g/b2g', disabling 'b2g'
init: cannot find '/system/etc/install-recovery.sh', disabling 'flash_recovery'
sh: can't access tty; job control turned off
$ eth0: link up
warning: `rild' uses 32-bit capabilities (legacy support in use)
binder: 32:32 refcount change on invalid ref 0
binder: 32:32 refcount change on invalid ref 0
binder: 32:32 transaction failed 29189, size124-4

|make flash| should flash the sgs2 b2g-gonk kernel (or add a make flash-kernel hack)

@michaelwu expressed concern over flashing the kernel unnecessarily, since it's been known to fail. However, the incantation for flashing the kernel is hard to remember and somewhat error prone, so we should add a make target for it. We can choose to not flash the kernel by default for the time being, or some other hack to that effect like leaving a .flashed-kernel pseudo-dependency file in the b2g/ directory after flashing for the first time. (Power users would have to manually reflash.)

Have |make config-galaxy-s2| work with a previously-b2g-flashed sgs2

The config-galaxy-s2 step needs to pull some blobs off device. The cyanogenmod script (from which b2g's is derived) expects the blobs to be named a certain way, but in the image created from those blobs, names them something different. That means that if the config-galaxy-s2 target is re-run on the b2g-flashed phone, the blob-pulling script won't find all the libraries it needs.

It would be nice to have the pull script understand the naming of the b2g blob layout, so it can pull from those images too.

gonk fails to start up on nexus s 4g

With the following error

E/libEGL ( 252): eglQuerySurface:1075 error 300d (EGL_BAD_SURFACE)
E/FramebufferNativeWindow( 252): couldn't open framebuffer HAL (Bad address)
I/DEBUG ( 250): debuggerd committing suicide to free the zombie!

Looks like we get a bad surface and then crash. b2g goes into a reload cycle after this.

Build error in frameworks/base/libs/utils/RefBase.cpp: passing const android::RefBase::weakref_impl as 'this' ‘void android::RefBase::weakref_impl::trackMe(bool, bool)’ discards qualifiers

I get the following, (during Gecko |make package|?) which I presume is unrelated:

printf "manifest components/interfaces.manifest\nmanifest components/components.manifest\nmanifest chrome/nonlocalized.manifest\nmanifest chrome/localized.manifest\n" > ../../dist/b2g//chrome.manifest
/usr/bin/python2.7 /home/jlebar/code/moz/B2G/gecko/config/optimizejars.py --optimize /home/jlebar/code/moz/B2G/gecko/objdir-prof-android/b2g/installer/../../jarlog//en-US ../../dist/bin/chrome ../../dist/b2g/chrome
Stripping package directory...
signing nss libraries
../../dist/bin/shlibsign: 1: Syntax error: word unexpected (expecting ")")
../../dist/bin/shlibsign: 1: Syntax error: word unexpected (expecting ")")
../../dist/bin/shlibsign: 1: Syntax error: word unexpected (expecting ")")

Then I later get the following build error:

frameworks/base/libs/utils/RefBase.cpp: In member function ‘void android::RefBase::weakref_type::trackMe(bool, bool)’:
frameworks/base/libs/utils/RefBase.cpp:507:67: error: passing ‘const android::RefBase::weakref_impl’ as ‘this’ argument of ‘void android::RefBase::weakref_impl::trackMe(bool, bool)’ discards qualifiers [-fpermissive]

It says "Host C++" -- could this be happening because I'm using GCC 4.6 (Ubuntu 11.10)?

Provide a script for emulator

It is complicated to launch an instance of emulator for B2G. We had better provide a script for it. Where should we put the script? Add a new sub-directory, tools/ or scripts/ at root of source tree?

Kill b2g-android (b2g on dalvik)

b2g-gonk has now passed the milestone of being more functional than b2g-android, and additonally (though somewhat concerningly ...) gaia on b2g-gonk is generally more reliable than gaia on b2g-android.

The two major missing pieces in b2g-gonk are a settings controller and wifi or 3g access. However, it's now quite clear that b2g-android isn't going to make it as our developer phone, so I think it can be safely killed off. The one major pain point when doing so will be hacking on the web browser, but the web browser can easily be hacked in a b2g build installed on vanilla android, or on desktop. Plus wifi should be working soon.

\o/

Gecko Cloning fails with git error

'make sync' (git submodule update --init ) fails with the following error.

fatal: destination path 'gecko' already exists and is not an empty directory.
Clone of 'git://github.com/cgjones/mozilla-central.git' into submodule path 'gecko' failed

gecko/mozconfig symlink causes this issue. Moving the file to somewhere else allows you to continue the update

Installing gecko to /system/app breaks install-gecko target

I did an install with latest and then |make install-gecko|. The install succeeded, but afterwards (after restarting)

pm path org.mozilla.fennec_cjones

package:/system/app/B2G.apk

cat /proc/3245/maps

[snip]
4697f000-46980000 r--s 00000000 b3:09 14 /system/app/B2G.apk
[snip]

it appears that the old /system/app version is being used.

@michaelwu any ideas? I would rather back out the system-install patch than break install-gecko.

QEMU sensor not working

Current QEMU sensor is not working, the logcat shows following error:
D/SensorService( 61): nuSensorService starting...
E/SensorService( 61): couldn't open device for module sensors (Invalid argument)

The reason is, QEMU sensor implementation sdk/emulator/sensors/sensors_qemu.c is using the deprecated HAL definition, it makes QEMU sensor registration failure.

Sensor HAL definition:
hardware/libhardware/include/hardware/sensors.h (use new structure: SENSORS_HARDWARE_POLL)
QEMU sensor implementation at HAL:
sdk/emulator/sensors/sensors_qemu.c (use deprecated structure: SENSORS_HARDWARE_CONTROL & SENSORS_HARDWARE_DATA)

To fix it, we need to update below 2 files from newer submodule sdk (branch tools_r13 or later).

  1. sdk/emulator/qemud/qemud.c
  2. sdk/emulator/sensors/sensors_qemu.c

Current submodule sdk is pointing to gingerbread-release of AOSP. Updating it to tools_r13 or later unfortunately forced to update another submodule "development" as well, it's a big change!!

A better approach maybe we maintain B2G's own submodule sdk with branch "gingerbread-release-b2g", and updating the 2 required files to make QEMU sensor working.

wifi isn't working on Galaxy S II

There's a message about not being able to find a /system/etc/wifi/bcm[something].cfg file, and after that there are error messages from the wpa_supplicant. Wifi acts like it's enabled, but no scans succeed.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.