找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 44455|回复: 123

从源码编译支持玩客云的openwrt

 火.. [复制链接]
本帖最后由 深蓝基因 于 2019-8-4 20:52 编辑

发现论坛各种大佬都在改造玩客云,就把之前研究玩客云改造openwrt的教程分享一下
废话不多说,按下述步骤从源码编译openwrt:

1.下载源码:
链接: https://pan.baidu.com/s/1jtmox_k9VQ81kS7NhEJQAg 提取码: ta1v

2.然后找台linux主机(建议kali 2.0)
解压源码,我将交叉编译链放在了/opt目录,如果主机空间不够的请自行安排,以免撑爆存储
  1. mkdir amlogic
  2. tar -xvf gnutools.tar.bz2 -C /opt
  3. tar -xvf CodeSourcery.tar.bz2 -C /opt
  4. tar -xvf arc-4.8-amlogic-20130904-r2.tar.bz2 -C /opt
  5. tar -xvf openwrt-2015-04-01-8ccfe85432.tar.gz
  6. tar -xvf packages-2015-04-01-6e8e14cd81.tar.gz
  7. tar -xvf oldpackages-2015-04-01-c18fb70da5.tar.gz
  8. export PATH=$PATH:/opt/gnutools/arc2.3-p0/elf32-4.2.1/bin:/opt/gnutools/arc2.3-p0/uclibc-4.2.1/bin:/opt/arc-4.8-amlogic-20130904-r2/bin:/opt/CodeSourcery/Sourcery_G++_Lite/bin:/opt/CodeSourcery/Sourcery_G++_Lite/arm-none-eabi/bin:/opt/CodeSourcery/Sourcery_G++_Lite/arm-none-linux-gnueabi/bin
复制代码

3.然后配置、编译
  1. cd openwrt
  2. make menucofig
  3. make V=s
复制代码

编译完成后,在bin目录下会有生成的kernel、rootfs、u-boot文件
  1. boot.img
  2. openwrt-meson-m8b-m201-rootfs.tar.gz
  3. openwrt-meson-m8b-m8b_m201_1G-u-boot.bin
复制代码

4.制作sd卡启动系统,插图sd卡,这里假设磁盘为sdb
  1. # 写u-boot
  2. dd if=./openwrt-meson-m8b-m8b_m201_1G-u-boot.bin of=/dev/sdb bs=1 count=442
  3. dd if=./openwrt-meson-m8b-m8b_m201_1G-u-boot.bin of=/dev/sdb bs=512 skip=1 seek=1
  4. # 写kernel和cp根文件系统
  5. fdisk /dev/sdb
  6. mkfs.ext2 /dev/sdb1mount /dev/sdb1 /mnt
  7. cp boot.img /mnt
  8. tar -xvf openwrt-meson-m8b-m201-rootfs.tar.gz -C /mnt
  9. sync
  10. umount /mnt
复制代码


5.接下来就是从sd卡启动外置openwrt了
短接emmc的黄圈两脚,加点,观察ttl输出


当出现,如下图字符串时候,可松开短接,不停按回车即可进入sd卡上的u-boot了
Boot from external device



6.然后可以用printenv bootsdcard命令看看有没有该变量,如果有运行
  1. run bootsdcard
复制代码

就可以启动openwrt
如果没有需要设置一下
  1. setenv bootsdargs "bootargs root=/dev/mmcblk0p1 rw rootfstype=ext2 rootwait init=/sbin/init console=ttyS0,115200n8 no_console_suspend cvbsdrv=${cvbs_drv} vdaccfg=${vdac_config} logo=osd1,loaded,${fb_addr},${outputmode},full hdmimode=${hdmimode} cvbsmode=${cvbsmode} hdmitx=${hdmimode}"
  2. setenv bootsdcard "echo Booting ...;run bootsdargs; mmcinfo;ext2load mmc 0 ${loadaddr} boot.img;bootm"
复制代码


然后再运行

至此就进入了openwrt系统


7.备份原系统
原系统分部有用的主要是bootloader、kernel、boot、system分区,backup及app0、app1、data都是升级时候的备份缓存分区
  1. dd if=/dev/mmcblk1 of=/onecloud.img bs=1M
复制代码
ps:我看到wz1024备份mmcblk1boot0、mmcblk1boot1分区是没用的,虽然写入BOOT Area Partition是可以做成不死u-boot(原理是),但是迅雷貌似没这么做
BOOT Area Partition 1 & 2里都空的,所以不用浪费时间

8.刷bootloader
由于我们可以甩开板载的emmc系统了,所以玩客云砖了也可以从外部启动恢复,前提是做好第7步的备份
这样可以将高版本屏蔽命令的u-boot降级
  1. dd if=u-boot.bin of=/dev/mmcblk1
复制代码

当然也可以按第4步将自己编译的u-boot刷进去,不过led灯可能不亮,我没试

尚存问题:
板载网卡工作不正常,可以起动,但是获取不了ip
按照@jocover 的patch修改了dtb文件,rtl8211f PHY驱动的代码检查了,换上迅雷系统原带的dtb文件也不行,源代码都有了,希望有大佬可以搞定


ps:迅雷原装内核是3.10.108的,试着移植了@jocover 的armbian内核,但是和armbian启动的效果一样,都是卡在了,之后乱码,不知道是不是和emmc、sd启动有关
[    3.580309@1] amlogic: Kernel Thermal management registered
[    3.585738@1] amlogic-thermal aml_thermal: amlogic thermal probe done

希望有大佬可以搞定

我编译的版本自取
游客,如果您要查看本帖隐藏内容请回复





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

点评

详细说一下 如何备份玩客云固件 以备恢复  发表于 2019-12-1 12:57

评分

参与人数 4恩山币 +4 收起 理由
炫*** + 1 奖励点小分,希望大神继续出手,早日成功
lucky*** + 1 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!
long*** + 1 不错不错,这个思路应该是可以root的
sunju*** + 1 强大的恩山!(以下重复1万次)

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
我觉得我越来越漂了,这么复杂的我竟然打开看了,然而还是没看懂。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

谢谢分享
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

来自手机 | 显示全部楼层
大哥的帖,全是经典,必须得顶
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

不错。 。。。。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

本帖最后由 jocover 于 2019-8-5 21:04 编辑

这个补丁你看看https://gitee.com/jiangwei0402/LibreELEC.tv/blob/f4f0215b36870b5479513c88dd99bd56fd35d33b/projects/S805/patches/linux/011-linux-fix-eth-MAC.patch
原来的dts
  1. ethmac: ethernet@0xc9410000{
  2. compatible = "amlogic,meson8b-rmii-dwmac", "snps,dwmac";
  3. reg = <0xc9410000 0x10000
  4. 0xc1108108 0x4>;
  5. interrupts = <0 8 1>;
  6. interrupt-names = "macirq";
  7. clocks = "clk81";
  8. clock-names = "stmmaceth";
  9. };
复制代码
千兆改成meson8m2-rgmii-dwmac或者meson8b-rgmii-dwmac(没试过)
  1. ethmac: ethernet@0xc9410000{
  2. compatible = "amlogic,meson8m2-rgmii-dwmac", "snps,dwmac";
  3. reg = <0xc9410000 0x10000
  4. 0xc1108108 0x4>;
  5. interrupts = <0 8 1>;
  6. interrupt-names = "macirq";
  7. clocks = "clk81";
  8. clock-names = "stmmaceth";
  9. };
  10. {
复制代码


我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

编译出错呀楼主。。好像报什么feed 25

点评

之前执行  详情 回复 发表于 2019-8-7 09:17
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

谢谢分享
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

本帖最后由 jec123456 于 2019-8-6 18:06 编辑

楼主您的板子不是玩客云3的吧 和我手上的ttl的位置也不同

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

点评

dzw
我的板和你一样,你有成功短接从sd卡启动吗  详情 回复 发表于 2019-12-27 13:58
好像是的,我的板子上写v1.2  详情 回复 发表于 2019-8-7 09:19
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

请问 这款 应该  短接emmc的哪些地方

点评

详情看这个帖子 https://www.right.com.cn/forum/thread-837057-1-1.html 只是我的机器没办法按他的步骤来。 我的需要加电同时插USB。  详情 回复 发表于 2019-8-7 09:45
百度TTL转usb接线,然后连上终端,插电同时插上USB,狂按回车,速度很快3秒内要按回车。 可能需要先进设备管理器观察一次看看是com多少再选择终端的com口。  详情 回复 发表于 2019-8-7 09:43
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

真能玩,况且这给无法root的提供个思路,挂载emmc可以直接把原系统root掉了
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

无法启动是怎么回事,,能详细说明下怎么制作SD卡启动吗

Booting ...
Unknown command 'bootargs' - try 'help'
Device: SDIO Port B
Manufacturer ID: 0
OEM: 0
Name: Tran Speed: 20000000
Rd Block Len: 512
SD version 2.0
High Capacity: Yes
Capacity: 15728640000
Boot Part Size: 0
Bus Width: 4-bit
** Can't read partition table on 0:0 **
** Bad partition 1 **
## ANDROID Format IMAGE
## Booting kernel from Legacy Image at 12000000 ...
   Image Name:   Linux-3.10.33
   Image Type:   ARM Linux Kernel Image (gzip compressed)
   Data Size:    6157838 Bytes = 5.9 MiB
   Load Address: 00208000
   Entry Point:  00208000
   Verifying Checksum ... Bad Data CRC
ERROR: can't get kernel image!

点评

参见第4步,你这个日志说u-boot启动成功,但是内核没从sd启动  详情 回复 发表于 2019-8-7 09:22
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
ClassHuang 发表于 2019-8-6 08:56
编译出错呀楼主。。好像报什么feed 25
make menucofig
make V=s

之前执行

  1. ./scripts/feeds update -a
  2. ./scripts/feeds install -a
复制代码
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
jec123456 发表于 2019-8-6 18:03
楼主您的板子不是玩客云3的吧 和我手上的ttl的位置也不同

好像是的,我的板子上写v1.2
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
ClassHuang 发表于 2019-8-7 00:20
无法启动是怎么回事,,能详细说明下怎么制作SD卡启动吗

Booting ...

参见第4步,你这个日志说u-boot启动成功,但是内核没从sd启动

点评

第四步的 fdisk /dev/sdb 会弹出 【 Welcome to fdisk (util-linux 2.33.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command  详情 回复 发表于 2019-8-7 09:36
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-27 05:45

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表