Hello,

I am in the process of creating a Samsung S3C6410 Android kernel that is 
compatible with Gingerbread. The procedure that I am using seems to be working 
but there must be something more efficient given the power of GIT.

Goal: Create a S3C6410 Gingerbread kernel

Resources:
1. android/kernel/samsung - linux-2.6.35, S3C6410 does *not* compile
2. kernel.org/linux-2.6-samsung.git (master), S3C6410 *does* compile, this is 
linux-2.6.36-rc7
3. android/kernel/common - linux-2.6.36 branch

GIT Procedure Overview:

1. git clone git://android.git.kernel.org/kernel/samsung.git
        - retrieves linux-2.6.35 with a working "herring" configuration

2. git remote add kernel.org 
git://git.kernel.org/pub/scm/linux/kernel/git/kki_ap/linux-2.6-samsung.git
        - remote tracking of Samsung LSI kernel as *kernel.org*

3. git fetch kernel.org
        - retrieve the remote repository information

4. git remote add android-common git://android.git.kernel.org/kernel/common.git
        - remote tracking of Android common kernel as *android-common*

5. git fetch android-common
        - retrieve the remote repository information

6. git branches -r (shows the following)

          android-common/android-2.6.35
          android-common/android-2.6.36
          android-common/android-2.6.37
          android-common/android-2.6.38
          android-common/android-2.6.39
          android-common/archive/android-2.6.25
          android-common/archive/android-2.6.27
          android-common/archive/android-2.6.29
          android-common/archive/android-2.6.32
          android-common/archive/android-gldfish-2.6.29
          android-common/archive/android-goldfish-2.6.27
          android-common/linux-wl12xx-2.6.39
          kernel.org/2.6.24-samsung
          kernel.org/2.6.28-samsung
          kernel.org/2.6.29-samsung
          kernel.org/2.6.31-samsung
          kernel.org/2.6.32-samsung
          kernel.org/2.6.35-samsung
          kernel.org/2.6.36-samsung
          kernel.org/master
          origin/HEAD -> origin/android-samsung-2.6.35
          origin/android-samsung-2.6.35

7. To start the upgrade process, merge a S3C6410 kernel tree that compiles into 
the current Andoid Samsung tree:
        git merge kernel.org/master

8. Start resolving the conflicts.

This seems to be working but it also seems very inefficient. A preferred method 
would be something like.

        git merge android-common/android-2.6.36 into kernel/samsung
        git merge kernel.org/master/*s3c*  - merge anything that has to do with 
the Samsung S3C processors only

Problems to be resolved are:
a. How do you preserve the herring_defconfig Android kernel modifications. They 
only exist in android/kernel/samsung
b. How can you merge a portion of a GIT repository? For instance, only merge 
arch/arm from remote branch X.


Comments?

Recommendations?

Is this the right way?

TIA

-- 
unsubscribe: android-porting+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-porting

Reply via email to