2017年7月8日 星期六

linux serial port console

serial port 是很古老的硬體, 但現在一堆機器 console 開始走回 serial port console 的老路, 不管是從以前到現在都有的 network manager machine 還 UEFI BIOS, 也就是說, 要跟的上時代, 就是找回過去 serial port console 的使用方法, 雖然聽起來有點古怪.

修改 grub2 部份, /etc/default/grub
grub2:
#grub terminal. --port=? 參數我試不出來, 文件說預設是 COM1.
GRUB_TERMINAL="serial vga_text gfxterm"
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"

#kernel parameter
GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS1,115200n8 splash"

grub2 部份使用 update-grub 去 update grub, 順路檢查語法正不正確. 在 update kernel 時也會順路補上這些參數, 不需要去 /boot/grub/grub.conf 裡再改一次.

ubuntu linux 16.04: (或任何使用 systemd 的 distro. 這裡假設為 ttyS0)
# systemctl enable serial-getty@ttyS0.service
特別注意這行, 因為每臺機器都會有點不同, 要用它設定的路徑才會有效.
Created symlink from /etc/systemd/system/getty.target.wants/getty@ttyS0.service
# mkdir -p /etc/systemd/system/getty.target.wants/getty@ttyS0.service.d/
# pico /etc/systemd/system/getty.target.wants/getty@ttyS0.service.d/override.conf
---
[Service]
ExecStart=
ExecStart=-/sbin/agetty --noissue --autologin myusername %I $TERM
Type=idle
---
myusername 就是你的預設使用者名稱, 也可以是 root.
目前已知在 i386, AMD64 distro 版本上要另外打開, 但 arm64 / armhf 似乎會看 /proc/cmdline 裡有沒有特別指定 console serial port 另外叫 systemd 打開 serial-port getty serrvice, 並不需要特別 enable 它. 也就所以要特別在 systemctl 裡特別去看它叫啥名字, 否則自動登入功能無法連動.

使用 sysinitV 的部份下次再補上.

2017年7月7日 星期五

[不定時 update] AMD ryzen 一些筆記

一開始就是拿來跑 ubuntu + VM workstation 所以以下筆記全以 linux 為主. 目前僅知的幾點:

  • ASM1083 PCI bridge 有些先天的問題在 IOMMU v2 上只能用 kernel parameter "iommu=soft" 迴避. ASM1083 的問題也同樣出現在 Z87 VT-d 上過, IDT PES12N3A 就一點問題都沒有. 現在 IOMMU 開, PCI 全都不插東西.
  • AGESA 1004 以後對記憶體相容性有大幅度改善, 但後來交差驗證跟我碰到的問題無關.
  • kernel NMI 錯誤 ("NMI watchdog: BUG: soft lockup" 這個) 無法用設定 hung_task_timeout_secs (echo 0 > /proc/sys/kernel/hung_task_timeout_secs) 解, 兩者無關. 後來是換掉 power 後解決.
  • SATA 界面會跟 WD 藍標某特定款 power manager 衝突的問題, 後來不知道為什麼解決, 我懷疑也是那顆 Power 的關係... 換了一顆新巨 400w 就好了.
  • SVM 功能在 AGESA 1004a VMworkstation 12.5.5 會碰上  WinXP 不能開機的問題 (1004 可以), AGESA 1006 可以.
  • BIOS 中 C-state report 把它直接關掉. 我嚴重懷疑這個問題是 linux kernel 的 power manager 沒寫好出的包, 因為有不少 CPU (Summit-Ridge, Baytrail-I/T, Apollo-lake) 上都有一模一樣的問題. C-state 關掉後 cpufreq-info 裡仍舊可以看的到頻率仍舊可升降 (Baytrail 不行), 功耗實測上竟然也沒什麼變化..
  • 散熱器可以用舊有 socket754/939 兩爪扣具. 1700X 的熱度我用過去給 Athlon64 3000+ 的風扇是綽綽有餘... (這次用的板子是 asus prime B350 plus)
  • USB 3.1 因為沒設備我不確定 VM workstation 有沒有辦法 bridge 過去, 看 workstation 的文件是 guest 只有支援到 3.0....
目前環境 ubuntu 16.04.2LTS, kernel 4.10.0-26 (linux-image-extra-virtual-hwe-16.04-edge), VMware Workstation 12.5.6.

2017年5月13日 星期六

Windows 7 update 80080005

參考文章
https://www.ptt.cc/bbs/Windows/M.1348851971.A.FD7.html

講重點.
start -> search -> type "CMD" -> mouse right key click "Run as Administrator" -> terminal
"fsutil resource setautoreset true c:\"
work with did reboot.

download and install readiness tool, KB947821:
https://www.microsoft.com/en-us/download/details.aspx?id=3132

done.

2017年4月16日 星期日

debug

ACPI/PNPA000
這是 alcohol 52% virtual device (alcohol iSCSI), 所以一定找不到它的 driver...

google 能找到答案的問題都不叫問題, google 找不到答案的問題一樣一堆, 叫我去 google 我他媽的一定翻臉給你看

2017年3月31日 星期五

[Win32] 阻止 winsock.h

compile 多加一個定義 _WINSOCKAPI_
可以有效阻止 include windows.h 時順路把 winsock.h (不是 winsock2.h) include 進來 -_-
王八蛋......

2017年3月26日 星期日

tar with compresser

tar -I
ex: tar -I'lz4 -9' -cf target.tar.xz source_folder/
ex: tar -I'pixz -9' -cf target.tar.xz source_folder/

2017年2月6日 星期一

device tree for iBASE IB110/IB112

Already supported:
  • UART
  • CANbus
  • SD/MMC
  • VGA output
  • LVDS output
  • Ethernet (FEC)
  • USB (OTG not test)
  • HDMI
main_dtsi
dts_for_SDcard1_boot
dts_for_SDcard2_boot
dts_for_eMMC_boot

remember added the sii902x drm bridge driver into kernel (4.8.0+)

Device Drivers > Graphics support > Display Interface Bridges >  Silicon Image sii902x RGB/HDMI bridge

sil9022 RGBtoHDMI bridge driver added after kernel 4.8.2 (not sure), work on kernel 4.9.0 & 4.10rc6. In the imx ipuv3 drm driver, RGB bridge must be link-to "imx-parallel-display" port@1.

DTS free for used!

iBASE IB110/112 base on freescale i.MX53, so, maybe sii902x drm bridge driver can using on other i.MX6 platform, I haven't hardware, can not confirm it work or not.