在上一回合要搞刷机!从它的尸体上踏过去!钢板云路由!WPR003N复活!成功启动OPENWRT中,笔者成功的让一个4年前主流芯片搭上OS的快船,留下一段佳话。

今天看着抽屉里的WPR003N,回忆它之前的一番自研历程:

1. MAKE DTS

这里,在前前回合我们已经手到擒来,似乎没有悬念,事实上最后的觉悟了一番,领会了ar71XX->ath79的革演,奇妙的是我第一件想做的事情并不是一个健全的dts file, 而是变换一个74kc的toolchain, please go to 2. MAKE 74kc

DTS和arch match-xxx.c到底有什么联系,在WPR003N之前我一无所知,也毫不关心,因为习惯了懒惰,习惯了抛弃对事物发展没有必然内敛关系的旁枝细叶,但是当遇到一个新device,必然要按照套路审视device tree,必然要关心这些eth0, eth1, phy,switch, gpio, pin, voltage. 而这些是从来没有触碰的未知领域(hardware). 虽然是从软件的view,但是缺少了必要的常识,做什么,想什么,就变得奇怪而不可思议,这里,我问天,隐隐听到一声echo, 放飞自我。

既然有了提示,就要行动,磨蹭是不会让一切变的更美好。把DTS的前后关系理清了,对奇怪的dtsi也比对了,这样就树立了飞翔的基础,在度娘那里,查找网友的珍贵性德,很遗憾,查无音讯,有求必应呢?似乎也是一片和谐景象,看了几篇无关痛痒的资料后,困意徒生,上床开始做梦,梦到有一个仙人在地上丢了一张纸条,正面写着take me!

反面一看,哇,是无字天书,好像那就是打开openwrt的大门的秘籍,梦里一下子如获至宝,那个得意的笑容,只有梦里才是真实的。滴滴滴,闹钟把我拉出梦境,看着泛着星星的天空,哦,原来只是回到了第一层梦,当然不能捏一下脸,因为无字天书还没有记住啊!迷迷糊糊之间,我醒了,打开电脑,小冰open docker for vvindows. 小冰阴阳怪气地回答no way, can't understand your command. 鼠标一颤,作为资深鼠标党永远把超音速当作一件大事,华丽的开启power shell, cp刚刚在vs里edit的dts, 嚯,一下子编译通过了,心中一怔,该不会是天书灵验了吧。原来这就是ar71xx->ath79 migration. 而我要做的是从ath79全新的扑打翅膀,嚯,这样不就学会了飞?

2. MAKE 74kc

我一直很奇怪openwrt的一些发展方向,从每一个package definition到ui scripting, 从download.pl到common.mk,点点滴滴,中庸的气味让人陷入混沌中,这不是一个向上的能量,我渐渐的动摇起决心,改变必须即刻开始,从WPR003N开始!ar9341是一片made by弯弯的MIPS32® 74Kc™的处理器/SOC 平台, 为什么默认却是由熟悉的24kc编译器制作的image?我看了看想了想,啪啪啪把2改成777,这样就成功的在下一秒生成了一个74kc前缀的toolchain, 顺着大便,开启MIPS DSP ASE - Revision 2.0,让这个小盒子更加绿色,环保,用爱省电。

3. MAKE snipping

又到了想写什么又不想写什么环节,怎么办,用最简短的话述说吧。经历了种种不可以理喻的怪诞神谕后,get skill succeeded. led gpio正常,它一闪一闪的样子真可爱,lan wan工作正常,wireless工作正常, usb工作正常,i2s还没有试,这个line out也当作一个伏笔吧,和在密封袋里的散热片放到以后再议。

又到了看时间贴图,老少皆宜的识图环节。

补完!

2019.3

展开隐形的翅膀,WPR003N补完篇的更多相关文章

  1. PHP函数补完:stream_context_create()模拟POST/GET

    PHP函数补完:stream_context_create()模拟POST/GET PHP流的创建 在 2011年01月08日 那天写的     已经有 9408 次阅读了 感谢 参考或原文   服务 ...

  2. JavaScript函数补完:toString()

    javascript中的toString()方法,主要用于Array.Boolean.Date.Error.Function.Number等对象.下面是这些方法的一些解析和简单应用,做个纪律,以作备忘 ...

  3. [TaskList] 省选前板子补完计划

    省选前本子补完计划 [ ] 带权并查集 [ ] 树上莫队 - UOJ58 [WC2013]糖果公园 loj2485「CEOI2017」Chase

  4. Codevs 2765 隐形的翅膀

    2765 隐形的翅膀   题目描述 Description 天使告诉小杉,每只翅膀都有长度,两只翅膀的长度之比越接近黄金分割比例(黄金分割比= 0.6180339887498949),就越完美. 现在 ...

  5. vijos 1237 隐形的翅膀

    隐形的翅膀 背景 小杉终于进入了天堂.他看到每个人都带着一双隐形翅膀,他也想要. (小杉是怎么看到的?……) 描述 天使告诉小杉,每只翅膀都有长度,两只翅膀的长度之比越接近黄金分割比例,就越完美. 现 ...

  6. NLP 开源形近字算法补完计划(完结篇)

    前言 所有的故事都有开始,也终将结束. 本文将作为 NLP 汉字相似度的完结篇,为该系列画上一个句号. 起-NLP 中文形近字相似度计算思路 承-中文形近字相似度算法实现,为汉字 NLP 尽一点绵薄之 ...

  7. bzoj Usaco补完计划(优先级 Gold>Silver>资格赛)

    听说KPM初二暑假就补完了啊%%% 先刷Gold再刷Silver(因为目测没那么多时间刷Silver,方便以后TJ2333(雾 按AC数降序刷 ---------------------------- ...

  8. QBXT 2017GoKing problems 补完计划

    10.11 Updata : 烦死了...麻烦死了...不补了..就这些吧 20171001 上: 100 + 90 + 90 = 280 = rank 8 T1 /* T1 从最大的数开始倒着枚举 ...

  9. ThreadStatic应用(Identity补完)

    关于Identity Identity自增序列/唯一断标识 起初做这个东西,是在一个内部组件中,用于在高并发的环境下得到一个较短的“相对”不重复标识字符串;(这里说的相对是指一定的数量下不重复) 灵感 ...

随机推荐

  1. js、jq事件绑定方式总结——以click事件为例

    一.JavaScript点击事件绑定方法 1.1 HTML onclick事件属性 <button onclick="clickMe(this)">click me&l ...

  2. .net中的线程同步基础(搬运自CLR via C#)

    线程安全 此类型的所有公共静态(Visual Basic 中为 Shared)成员对多线程操作而言都是安全的.但不保证任何实例成员是线程安全的. 在MSDN上经常会看到这样一句话.表示如果程序中有n个 ...

  3. java基础常见面试题,这是一篇超长的随笔!!!

    1. Java基础部分....................................................... 4 1.一个".java"源文件中是否可以包括 ...

  4. 分布式系统关注点(17)——先写DB还是「缓存」?

    如果第二次看到我的文章,欢迎右侧扫码订阅我哟~ 

  5. 蚂蚁通讯框架SOFABolt之私有通讯协议设计

    前言 SOFABolt 是蚂蚁金融服务集团开发的一套基于 Netty 实现的网络通信框架. 为了让 Java 程序员能将更多的精力放在基于网络通信的业务逻辑实现上,而不是过多的纠结于网络底层 NIO ...

  6. Mark一下~

    今天在cnblogs开通了博客,mark一下~ 上半年的Rebase阶段已经完成,希望下半年的Promotion阶段能收获满满,也希望自己能写出高质量的博客.

  7. 基于JavaMail开发邮件发送器工具类

    基于JavaMail开发邮件发送器工具类 在开发当中肯定会碰到利用Java调用邮件服务器的服务发送邮件的情况,比如账号激活.找回密码等功能.本人之前也碰到多次这样需求,为此特意将功能封装成一个简单易用 ...

  8. mysql报错mmap(137428992 bytes) failed; errno 12,Cannot allocate memory for the buffer pool

    mysql以`systemctl start mysqld.service`的方式启动一段时间后发现突然无法启动,尝试重新启动也不能解决问题,排查问题时,先后通过`systemctl status m ...

  9. MySQL - 扩展性 3 负载均衡:眼花缭乱迷人眼

    负载均衡的基本思路很简单: 在一个服务器集群中尽可能地的平均负载量. 基于这个思路,我们通常的做法是在服务器前端设置一个负载均衡器.负载均衡器的作用是将请求的连接路由到最空闲的可用服务器上.如图 1, ...

  10. 带着新人看java虚拟机02

    上一节是把大概的流程给过了一遍,但是还有很多地方没有说到,后续的慢慢会涉及到,敬请期待! 这次我们说说垃圾收集器,又名gc,顾名思义,就是收集垃圾的容器,那什么是垃圾呢?在我们这里指的就是堆中那些没人 ...