怎么移植rom
1个回答
展开全部
(1)下载他们自己的设备官方ROM(假设文件名为myrom.img),并要迁移的第三方定制ROM(假设文件名为newrom.img)
(2 )解压缩。
在网上找到unimg工具。该unimg和ROM文件myrom.img和newrom.img被放置在同一个目录下(假设D:\ ROM目录)。该myrom.img和newrom.img文件拖动到unimg可以开始解压。打开包装后,你可以得到一个myrom.img.dump和newrom.img.dump目录。
在d:\下的新的ROM两个目录,myrom和b目录。复制myrom.img.dump目录RFSFAT16_BOOT_00000000000文件myrom目录。复制newrom.img.dump目录RFSFAT16_BOOT_00000000000到newrom目录。
(3)更新引导分区的文件
在网上找到bootimg工具。也放到d:\目录下的rom。然后打开命令行窗口。输入下面的命令序列
D:
CD \ ROM \ myrom
.. \ bootimg.exe - 解压 - bootimg RFSFAT16_BOOT_00000000000
(此命令会输出一些重要的信息,请务必把它写下来,打包时的引导文件需要等待使用)
.. \ bootimg.exe - 解压 - RAMDISK
CD .. \ newrom
.. \ bootimg.exe - 解压 - bootimg RFSFAT16_BOOT_00000000000
.. \ bootimg.exe - 解压 - RAMDISK
这样您就可以在目录和newrom目录myrom看到解压缩文件
内核如下:Linux内核文件中,不同的设备有不同。那么,为什么我们直接帮别人刷ROM可能会出现白屏问题。
的initrd目录:这实际上是系统
cpiolist.txt根:记录的initrd目录的权限和用户信息的每个文件,这个文件是用来封装一分钟。我们不要忽略它。
现在,init.sun4i.rc目录myrom目录和newrom目录的initrd目录是开放的(请不要打开用记事本或写字板文件,因为它是一个UNIX文件格式,如果你用记事本或写字板打开,它会自动保存DOS格式后变成,会破坏文件格式)
找个地方来加载驱动程序,如下图所示。 Myrom init.sun4i.rc文件目录对应的内容,相应的内容newrom更换目录init.sun4i.rc。
并注意您要使用的文件的驱动器myrom文件名(当你需要一个时刻更新的系统分区时)。
################################
#insmod的振动器
用insmod /系统/ vendor/modules/sun4i-vibrator.ko(这是振动器驱动器,你不希望使用振动器,可以禁用此行)
CHMOD 777 / sys/class/timed_output/sun4i-vibrator/enable (如果被禁用振动器的驱动程序,但同时也禁用此行)
#insmod的关键&TP驱动
用insmod /系统/供应商/模块/ goodix_touch.ko(这是触摸驱动,往往更换驱动器有足够的)
用insmod / system/vendor/modules/sun4i-keyboard.ko
#insmod的马里驱动
用insmod /系统/供应商/模块/ ump.ko
用insmod /系统/供应商/模块/ mali.ko
#CSI模块
用insmod /系统/供应商/模块/ videobuf-core.ko
用insmod /系统/供应商/模块/ videobuf-DMA-contig.ko
用insmod / system/vendor/modules/gt2005.ko
用insmod / system/vendor/modules/sun4i_csi0.ko
#### ############################
newrom保存在更新文件init.sun4i的目录。 RC myrom目录下,替换相应文件myrom目录。
开始重新包装之后启动分区,打开命令行窗口,输入以下顺序:
D:
CD \ ROM \ myrom
.. \ bootimg.exe - 改装 - RAMDISK
.. \ bootimg.exe - 改装 - bootimg为0x40000000“控制台=为ttyS0,115200 RW的init = / init的日志级别= 8”2048 2048
(重新包装 - bootimg落后很多的参数是基于之前解压-bootimg得到,请请务必阅读相应的参数自己的设备,或者无法启动后)
打包顺利拿到的boot.img文件。该boot.img的文件改名为RFSFAT16_BOOT_00000000000,并复制到myrom.img.dump目录,替换原来的文件。
(4)更新系统分区时,以下操作需要在Ubuntu下完成。
复制myrom.img.dump和newrom.img.dump的RFSFAT16_SYSTEM_000000000文件到/ root目录下的Ubuntu系统被重新命名系统myrom和系统newrom,
互联网下载ext4_utils工具和编译simg2img,mkuserimg。 SH,make_ext4fs三个程序。并复制到/ root目录。
然后输入以下命令序列:
CD /根
./simg2img系统myrom系统myrom.img
./simg2img系统newrom系统newrom.img MKDIR到/ mnt / IMG / mnt/img2
安装邻环系统newrom.img到/ mnt / IMG
安装邻环系统myrom.img / mnt/img2
这时间你可以看到两个ROM的/系统分区中的内容。现在,我们可以在官方ROM驱动器中放入新的ROM。
CD的/ mnt / IMG /供应商/模块
CP-P / mnt/img2/vendor/modules /需要的文件。劫。 /
要复制的文件了,我们应该看到(3)中使用您的设备驱动。
#########################
以下文档需要更换,取决于与新的ROM的区别在设备上是没有这么大,我的第2版不会导致替换这些文件。
到/ mnt / IMG / lib中/ HW / *。 *
到/ mnt / IMG / lib中/ libhardware *。 *
#########################
更换后驱动完成后,启动填料。
CD /根/
。 / mkuserimg.sh-S的/ mnt / IMG RFSFAT16_SYSTEM_000000000 EXT4系统256M
最后一个参数被说成是打包成一个256MB的系统分区映像,如果你的系统大于256MB,程序执行就会出问题,尽量512M 。
RFSFAT16_SYSTEM_000000000复制回窗户,更换相应的文件myrom.img.dump目录。
最后一步,包装。打开命令行
D:
CD \ ROM
verifycalc myrom.img.dump \ RFSFAT16_SYSTEM_000000000 myrom.img.dump \ RFSFAT16_VSYSTEMFS_000000
verifycalc myrom.img.dump \ RFSFAT16_BOOT_00000000000 myrom。 IMG。转储\ RFSFAT16_VBOOT_0000000000
unimg-E myrom.img
打包后myrom.img可以使用livesuite刷机。
一个成功的开始之后,看看如果显示不正常,可能是因为移植的ROM与我们的设备的分辨率是不一样的。例如,我把极光ROM版本2领先移植后遇到这个问题。
我是通过添加以下设置,以新的ROM的/系统/ build.prop文件来解决。
################
ro.sf.lcd_density = 125
############### #
125我尝试了这个值是在第2版可以过正常显示。您可以更改值?像(在100-200改变)自己。
(2 )解压缩。
在网上找到unimg工具。该unimg和ROM文件myrom.img和newrom.img被放置在同一个目录下(假设D:\ ROM目录)。该myrom.img和newrom.img文件拖动到unimg可以开始解压。打开包装后,你可以得到一个myrom.img.dump和newrom.img.dump目录。
在d:\下的新的ROM两个目录,myrom和b目录。复制myrom.img.dump目录RFSFAT16_BOOT_00000000000文件myrom目录。复制newrom.img.dump目录RFSFAT16_BOOT_00000000000到newrom目录。
(3)更新引导分区的文件
在网上找到bootimg工具。也放到d:\目录下的rom。然后打开命令行窗口。输入下面的命令序列
D:
CD \ ROM \ myrom
.. \ bootimg.exe - 解压 - bootimg RFSFAT16_BOOT_00000000000
(此命令会输出一些重要的信息,请务必把它写下来,打包时的引导文件需要等待使用)
.. \ bootimg.exe - 解压 - RAMDISK
CD .. \ newrom
.. \ bootimg.exe - 解压 - bootimg RFSFAT16_BOOT_00000000000
.. \ bootimg.exe - 解压 - RAMDISK
这样您就可以在目录和newrom目录myrom看到解压缩文件
内核如下:Linux内核文件中,不同的设备有不同。那么,为什么我们直接帮别人刷ROM可能会出现白屏问题。
的initrd目录:这实际上是系统
cpiolist.txt根:记录的initrd目录的权限和用户信息的每个文件,这个文件是用来封装一分钟。我们不要忽略它。
现在,init.sun4i.rc目录myrom目录和newrom目录的initrd目录是开放的(请不要打开用记事本或写字板文件,因为它是一个UNIX文件格式,如果你用记事本或写字板打开,它会自动保存DOS格式后变成,会破坏文件格式)
找个地方来加载驱动程序,如下图所示。 Myrom init.sun4i.rc文件目录对应的内容,相应的内容newrom更换目录init.sun4i.rc。
并注意您要使用的文件的驱动器myrom文件名(当你需要一个时刻更新的系统分区时)。
################################
#insmod的振动器
用insmod /系统/ vendor/modules/sun4i-vibrator.ko(这是振动器驱动器,你不希望使用振动器,可以禁用此行)
CHMOD 777 / sys/class/timed_output/sun4i-vibrator/enable (如果被禁用振动器的驱动程序,但同时也禁用此行)
#insmod的关键&TP驱动
用insmod /系统/供应商/模块/ goodix_touch.ko(这是触摸驱动,往往更换驱动器有足够的)
用insmod / system/vendor/modules/sun4i-keyboard.ko
#insmod的马里驱动
用insmod /系统/供应商/模块/ ump.ko
用insmod /系统/供应商/模块/ mali.ko
#CSI模块
用insmod /系统/供应商/模块/ videobuf-core.ko
用insmod /系统/供应商/模块/ videobuf-DMA-contig.ko
用insmod / system/vendor/modules/gt2005.ko
用insmod / system/vendor/modules/sun4i_csi0.ko
#### ############################
newrom保存在更新文件init.sun4i的目录。 RC myrom目录下,替换相应文件myrom目录。
开始重新包装之后启动分区,打开命令行窗口,输入以下顺序:
D:
CD \ ROM \ myrom
.. \ bootimg.exe - 改装 - RAMDISK
.. \ bootimg.exe - 改装 - bootimg为0x40000000“控制台=为ttyS0,115200 RW的init = / init的日志级别= 8”2048 2048
(重新包装 - bootimg落后很多的参数是基于之前解压-bootimg得到,请请务必阅读相应的参数自己的设备,或者无法启动后)
打包顺利拿到的boot.img文件。该boot.img的文件改名为RFSFAT16_BOOT_00000000000,并复制到myrom.img.dump目录,替换原来的文件。
(4)更新系统分区时,以下操作需要在Ubuntu下完成。
复制myrom.img.dump和newrom.img.dump的RFSFAT16_SYSTEM_000000000文件到/ root目录下的Ubuntu系统被重新命名系统myrom和系统newrom,
互联网下载ext4_utils工具和编译simg2img,mkuserimg。 SH,make_ext4fs三个程序。并复制到/ root目录。
然后输入以下命令序列:
CD /根
./simg2img系统myrom系统myrom.img
./simg2img系统newrom系统newrom.img MKDIR到/ mnt / IMG / mnt/img2
安装邻环系统newrom.img到/ mnt / IMG
安装邻环系统myrom.img / mnt/img2
这时间你可以看到两个ROM的/系统分区中的内容。现在,我们可以在官方ROM驱动器中放入新的ROM。
CD的/ mnt / IMG /供应商/模块
CP-P / mnt/img2/vendor/modules /需要的文件。劫。 /
要复制的文件了,我们应该看到(3)中使用您的设备驱动。
#########################
以下文档需要更换,取决于与新的ROM的区别在设备上是没有这么大,我的第2版不会导致替换这些文件。
到/ mnt / IMG / lib中/ HW / *。 *
到/ mnt / IMG / lib中/ libhardware *。 *
#########################
更换后驱动完成后,启动填料。
CD /根/
。 / mkuserimg.sh-S的/ mnt / IMG RFSFAT16_SYSTEM_000000000 EXT4系统256M
最后一个参数被说成是打包成一个256MB的系统分区映像,如果你的系统大于256MB,程序执行就会出问题,尽量512M 。
RFSFAT16_SYSTEM_000000000复制回窗户,更换相应的文件myrom.img.dump目录。
最后一步,包装。打开命令行
D:
CD \ ROM
verifycalc myrom.img.dump \ RFSFAT16_SYSTEM_000000000 myrom.img.dump \ RFSFAT16_VSYSTEMFS_000000
verifycalc myrom.img.dump \ RFSFAT16_BOOT_00000000000 myrom。 IMG。转储\ RFSFAT16_VBOOT_0000000000
unimg-E myrom.img
打包后myrom.img可以使用livesuite刷机。
一个成功的开始之后,看看如果显示不正常,可能是因为移植的ROM与我们的设备的分辨率是不一样的。例如,我把极光ROM版本2领先移植后遇到这个问题。
我是通过添加以下设置,以新的ROM的/系统/ build.prop文件来解决。
################
ro.sf.lcd_density = 125
############### #
125我尝试了这个值是在第2版可以过正常显示。您可以更改值?像(在100-200改变)自己。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询