展开隐形的翅膀,WPR003N补完篇
在上一回合要搞刷机!从它的尸体上踏过去!钢板云路由!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补完篇的更多相关文章
- PHP函数补完:stream_context_create()模拟POST/GET
PHP函数补完:stream_context_create()模拟POST/GET PHP流的创建 在 2011年01月08日 那天写的 已经有 9408 次阅读了 感谢 参考或原文 服务 ...
- JavaScript函数补完:toString()
javascript中的toString()方法,主要用于Array.Boolean.Date.Error.Function.Number等对象.下面是这些方法的一些解析和简单应用,做个纪律,以作备忘 ...
- [TaskList] 省选前板子补完计划
省选前本子补完计划 [ ] 带权并查集 [ ] 树上莫队 - UOJ58 [WC2013]糖果公园 loj2485「CEOI2017」Chase
- Codevs 2765 隐形的翅膀
2765 隐形的翅膀 题目描述 Description 天使告诉小杉,每只翅膀都有长度,两只翅膀的长度之比越接近黄金分割比例(黄金分割比= 0.6180339887498949),就越完美. 现在 ...
- vijos 1237 隐形的翅膀
隐形的翅膀 背景 小杉终于进入了天堂.他看到每个人都带着一双隐形翅膀,他也想要. (小杉是怎么看到的?……) 描述 天使告诉小杉,每只翅膀都有长度,两只翅膀的长度之比越接近黄金分割比例,就越完美. 现 ...
- NLP 开源形近字算法补完计划(完结篇)
前言 所有的故事都有开始,也终将结束. 本文将作为 NLP 汉字相似度的完结篇,为该系列画上一个句号. 起-NLP 中文形近字相似度计算思路 承-中文形近字相似度算法实现,为汉字 NLP 尽一点绵薄之 ...
- bzoj Usaco补完计划(优先级 Gold>Silver>资格赛)
听说KPM初二暑假就补完了啊%%% 先刷Gold再刷Silver(因为目测没那么多时间刷Silver,方便以后TJ2333(雾 按AC数降序刷 ---------------------------- ...
- QBXT 2017GoKing problems 补完计划
10.11 Updata : 烦死了...麻烦死了...不补了..就这些吧 20171001 上: 100 + 90 + 90 = 280 = rank 8 T1 /* T1 从最大的数开始倒着枚举 ...
- ThreadStatic应用(Identity补完)
关于Identity Identity自增序列/唯一断标识 起初做这个东西,是在一个内部组件中,用于在高并发的环境下得到一个较短的“相对”不重复标识字符串;(这里说的相对是指一定的数量下不重复) 灵感 ...
随机推荐
- 【英国毕业原版】-《博尔顿大学毕业证书》Bolton一模一样原件
☞博尔顿大学毕业证书[微/Q:2544033233◆WeChat:CC6669834]UC毕业证书/联系人Alice[查看点击百度快照查看][留信网学历认证&博士&硕士&海归& ...
- 【转】APP功能测试要领
也许大家从事APP功能测试已经有一段时间了,心中一定有一个疑问,怎么样才能提高测试的覆盖面呢,我今天把APP功能测试内容分为APP本身的功能,APP关联的事务.APP外部环境.APP其他四大块来给大家 ...
- 你不可不知的iOS与Android差异点!
1.运行机制的区别 Android:沙盒运行机制,采用真后台运行,将所有的应用都保存在RAM中,按home键,程序被挂在了后台,实际未退出,因程序在后台运行,所以可以收到推送消息,导致内存越用越低,越 ...
- Spring 系列之Spring常用注解总结
传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.实物,这么做有两个缺点: 1.如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大:如果按需求分开.xml文 ...
- 哎呀,我老大写Bug啦——记一次MessageQueue的优化
MessageQueue,顾名思义消息队列,在系统开发中也是用的比较多的一个中间件吧.我们这里主要用它来做日志管理和订单管理的,记得老老大(恩,是的,就是老老大,因为他已经跳槽了)还在的时候,当时也是 ...
- 微服务(入门四):identityServer的简单使用(客户端授权)
IdentityServer简介(摘自Identity官网) IdentityServer是将符合规范的OpenID Connect和OAuth 2.0端点添加到任意ASP.NET核心应用程序的中间件 ...
- 网页的cdn引用地址,js,react,bootstrap
react+----这三个够用了 <script src="https://cdn.bootcss.com/react/15.4.2/react.min.js">< ...
- [区块链] 密码学——Merkle 树
在计算机领域,Merkle树大多用来进行完整性验证处理.在处理完整性验证的应用场景中,特别是在分布式环境下进行这样的验证时,Merkle树会大大减少数据的传输量以及计算的复杂度. Merkle哈希树是 ...
- 学习python的第一天
2019.4.25自我总结 一.Typora 关于用Typora 自我感觉良好,基本快捷键也比较简单,ps:还是要多用用 二.编程 1.编程语言 是用来定义计算机程序的形式语言.它是一种被标准化的交流 ...
- 简单工厂模式(Simple Factory Pattern)
简单工厂模式概述 定义:定义一个工厂类,他可以根据参数的不同返回不同类的实例,被创建的实例通常都具有共同的父类 在简单工厂模式中用于被创建实例的方法通常为静态(static)方法,因此简单工厂模式又被 ...