2016年7月24日 星期日

ERROR: Nothing RPROVIDES 'libX' (but .../oe-core/meta-Y/recipes/images/Z-image.bb RDEPENDS on or otherwise requires it)

This error occurs when libX is also a output of package P that is specified to be install in target rootfs by Z-image.bb
IMAGE_INSTALL += "libX"

To fix this error, add below lines in P_git.bb
PACKAGES =+ "libX"
FILES_libX = "${libdir}/libX.so*"


ERROR : QA issue : package AAAA rdepends on BBBB-dev

INSANE_SKIP_AAAA += "dev-deps" could be a workaround.


From : Paul Eggleton <paul.eggleton at linux.intel.com>
To : Kilou Zelabia <kilou_zellabia at yahoo.fr> 
Cc : yocto at yoctoproject.org 
Envoyé le : Mercredi 13 juin 2012 12h36
Objet : Re: [yocto] ERROR : QA issue : package AAAA rdepends on BBBB-dev
 
On Wednesday 13 June 2012 09:38:32 Kilou Zelabia wrote:
> What does this mean ? Why it is forbidden to have a run-time dependency on a
> "-dev" package ?

Because that's usually not correct. The -dev package includes headers and 
other development files for the target. Is that really what package AAAA needs 
at runtime?

> I'v seen some recipes setting INSANE_SKIP to "1" can this helps ?

You would need to use INSANE_SKIP_AAAA += "dev-deps". But I would encourage 
you to verify that this is what you really need before doing it.

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre

2016年5月19日 星期四

AT command

Copy from http://read-and-thinking.blogspot.tw/2010/03/at-command.html

一、 一般命令
1、 AT+CGMI 給出模塊廠商的標識。
2、 AT+CGMM 獲得模塊標識。
這個命令用來得到支持的頻帶(GSM 900,DCS 1800 或PCS 1900)。
當模塊有多頻帶時,回應可能是不同頻帶的結合。
3、 AT+CGMR 獲得改訂的軟件版本。
4、 AT+CGSN 獲得GSM模塊的IMEI(國際移動設備標識)序列號。
5、 AT+CSCS 選擇TE特徵設定。
這個命令報告TE用的是哪個狀態設定上的ME。
ME於是可以轉換每一個輸入的或顯示的字母。這個是用來發送、讀取或者撰寫短信。
6、 AT+WPCS 設定電話簿狀態。這個特殊的命令報告通過TE電話簿所用的狀態的ME。
ME於是可以轉換每一個輸入的或者顯示的字符串字母。
這個用來讀或者寫電話簿的入口。
7、 AT+CIMI 獲得IMSI。
這命令用來讀取或者識別SIM卡的IMSI(國際移動簽署者標識)。
在讀取IMSI之前應該先輸入PIN(如果需要PIN的話)。
8、 AT+CCID 獲得SIM卡的標識。這個命令使模塊讀取SIM卡上的EF-CCID文件。
9、 AT+GCAP 獲得能力表。(支持的功能)
10、 A/ 重複上次命令。只有A/命令不能重複。這命令重複前一個執行的命令。
11、 AT+CPOF 關機。這個特殊的命令停止GSM軟件堆棧和硬件層。命令AT+CFUN=0的功能與+CPOF相同。 12、 AT+CFUN 設定電話機能。這個命令選擇移動站點的機能水平。
13、 AT+CPAS 返回移動設備的活動狀態。
14、 AT+CMEE 報告移動設備的錯誤。
這個命令決定允許或不允許用結果碼「+CME ERROR:」或者「+CMS ERROR:」代替簡單的「ERROR」。
15、 AT+CKPD 小鍵盤控制。仿真ME小鍵盤執行命令。
16、 AT+CCLK 時鐘管理。這個命令用來設置或者獲得ME真實時鐘的當前日期和時間。
17、 AT+CALA 警報管理。這個命令用來設定在ME中的警報日期/時間。(鬧鈴)
18、 AT+CRMP 鈴聲旋律播放。這個命令在模塊的蜂鳴器上播放一段旋律。有兩種旋律可用:到來語音、數據或傳真呼叫旋律和到來短信聲音。
19、 AT+CRSL 設定或獲得到來的電話鈴聲的聲音級別。

二、 呼叫控制命令
1、 ATD 撥號命令。這個命令用來設置通話、數據或傳真呼叫。
2、 ATH 掛機命令。
3、 ATA 接電話。
4、 AT+CEER 擴展錯誤報告。這個命令給出當上一次通話設置失敗後中斷通話的原因。
5、 AT+VTD 給用戶提供應用GSM網絡發送DTMF(雙音多頻)雙音頻。這個命令用來定義雙音頻的長度(默認值是300毫秒)。
6、 AT+VTS 給用戶提供應用GSM網絡發送DTMF雙音頻。這個命令允許傳送雙音頻。
7、 ATDL 重撥上次電話號碼。
8、 AT%Dn 數據終端就緒(DTR)時自動撥號。
9、 ATS0 自動應答。
10、 AT+CICB 來電信差。
11、 AT+CSNS 單一編號方案。
12、 AT+VGR,AT+VGT 增益控制。這個命令應用於調節喇叭的接收增益和麥克風的傳輸增益。
13、 AT+CMUT 麥克風靜音控制。
14、 AT+SPEAKER 喇叭/麥克風選擇。這個特殊命令用來選擇喇叭和麥克風。
15、 AT+ECHO 回音取消。
16、 AT+SIDET 側音修正。
17、 AT+VIP 初始化聲音參數。
18、 AT+DUI 用附加的用戶信息撥號。
19、 AT+HUI 用附加的用戶信息掛機。
20、 AT+RUI 接收附加用戶信息。

三、 網絡服務命令
1、 AT+CSQ 信號質量。
2、 AT+COPS 服務商選擇。
3、 AT+CREG 網絡註冊。獲得手機的註冊狀態。
4、 AT+WOPN 讀取***作員名字。
5、 AT+CPOL 優先***作員列表。

四、 安全命令
1、 AT+CPIN 輸入PIN。
2、 AT+CPIN2 輸入PIN2。
3、 AT+CPINC PIN的剩餘的嘗試號碼。
4、 AT+CLCK 設備鎖。
5、 AT+CPWD 改變密碼。

五、 電話簿命令
1、 AT+CPBS 選擇電話簿記憶存儲。
2、 AT+CPBR 讀取電話簿表目。
3、 AT+CPBF 查找電話簿表目。
4、 AT+CPBW 寫電話簿表目。
5、 AT+CPBP 電話簿電話查詢。
6、 AT+CPBN 電話簿移動動作。
這個特殊命令使電話簿中的條目前移或後移(按字母順序)
7、 AT+CNUM 簽署者號碼。
8、 AT+WAIP 防止在下一次重起時初始化所有的電話簿。
9、 AT+WDCP 刪除呼叫電話號碼。
10、 AT+CSVM 設置語音郵件號碼。

六、 短消息命令
1、 AT+CSMS 選擇消息服務。
支持的服務有GSM-MO、SMS-MT、SMS-CB。
2、 AT+CNMA 新信息確認應答。
3、 AT+CPMS 優先信息存儲。這個命令定義用來讀寫信息的存儲區域。
4、 AT+CMGF 優先信息格式。執行格式有TEXT方式和PDU方式。
5、 AT+CSAS 保存設置。保存+CSAS和+CSMP的參數。
6、 AT+CRES 恢復設置。
7、 AT+CSDH 顯示文本方式的參數。
8、 AT+CNMI 新信息指示。這個命令選擇如何從網絡上接收短信息。
9、 AT+CMGR 讀短信。信息從+CPMS命令設定的存儲器讀取。
10、 AT+CMGL 列出存儲的信息。
11、 AT+CMGS 發送信息。
12、 AT+CMGW 寫短信息並存儲。
13、 AT+CMSS 從存儲器中發送信息。
14、 AT+CSMP 設置文本模式的參數。
15、 AT+CMGD 刪除短信息。刪除一個或多個短信息。
16、 AT+CSCA 短信服務中心地址。
17、 AT+CSCB 選擇單元廣播信息類型。
18、 AT+WCBM 單元廣播信息標識。
19、 AT+WMSC 信息狀態(是否讀過、是否發送等等)修正。
20、 AT+WMGO 信息覆蓋寫入。
21、 AT+WUSS 不改變SMS狀態。
在執行+CMGR或+CMGL後仍保持UNREAD。

七、 追加服務命令
1、 AT+CCFC 呼叫繼續。
2、 AT+CLCK 呼叫禁止。
3、 AT+CPWD 改變追加服務密碼。
4、 AT+CCWA 呼叫等待。
5、 AT+CLIR 呼叫線確認限制。
6、 AT+CLIP 呼叫線確認陳述。
7、 AT+COLP 聯絡線確認陳述。
8、 AT+CAOC 費用報告。
9、 AT+CACM 累計呼叫計量。
10、 AT+CAMM 累計呼叫計量最大值。
11、 AT+CPUC 單價和貨幣表。
12、 AT+CHLD 呼叫相關的追加服務。
13、 AT+CLCC 列出當前的呼叫。
14、 AT+CSSN 追加服務通知。
15、 AT+CUSD 無組織的追加服務數據。
16、 AT+CCUG 關閉的用戶組。

八、 數據命令
1、 AT+CBST 信差類型選擇。
2、 AT+FCLASS 選擇模式。
這個命令把模塊設置成數據或傳真***作的特殊模式。
3、 AT+CR 服務報告控制。這個命令允許更為詳細的服務報告。
4、 AT+CRC 劃分的結果代碼。這個命令在呼叫到來時允許更為詳細的鈴聲指示。
5、 AT+ILRR 本地DTE-DCE速率報告。
6、 AT+CRLP 無線電通信線路協議參數。
7、 AT+DOPT 其他無線電通信線路參數。
8、 AT%C 數據壓縮選擇。
9、 AT+DS 是否允許V42二度數據壓縮。
10、 AT+DR 是否報告V42二度數據壓縮。
11、 AT\N 數據糾錯選擇。

九、 傳真命令
1、 AT+FTM 傳送速率。
2、 AT+FRM 接收速率
3、 AT+FTH 用HDLC協議設置傳真傳送速率。
4、 AT+FRH 用HDLC協議設置傳真接收速率。
5、 AT+FTS 停止特定時期的傳送並等待。
6、 AT+FRS 接收沉默。

十、 第二類傳真命令
1、 AT+FDT 傳送數據。
2、 AT+FDR 接收數據。
3、 AT+FET 傳送頁標點。
4、 AT+FPTS 頁轉換狀態參數。
5、 AT+FK 終止會議。
6、 AT+FBOR 頁轉換字節順序。
7、 AT+FBUF 緩衝大小報告。
8、 AT+FCQ 控制拷貝質量檢驗。
9、 AT+FCR 控制接收傳真的能力。
10、 AT+FDIS 當前會議參數。
11、 AT+FDCC 設置DCE功能參數。
12、 AT+FLID 定義本地ID串。
13、 AT+FPHCTO 頁轉換超時參數。

十一、V24-V25命令
1、 AT+IPR 確定DTE速率。
2、 AT+ICF 確定DTE-DCE特徵結構。
3、 AT+IFC 控制DTE-DCE本地流量。
4、 AT&C 設置DCD(數據攜帶檢測)信號。
5、 AT&D 設置DTR(數據終端就緒)信號。
6、 AT&S 設置DST(數據設置就緒)信號。
7、 ATO 回到聯機模式。
8、 ATQ 決定手機是否發送結果代碼。
9、 ATV 決定DCE響應格式。
10、 ATZ 恢復為缺省設置。
11、 AT&W 保存設置。
12、 AT&T 自動測試。
13、 ATE 決定是否回顯字符。
14、 AT&F 回到出廠時的設定。
15、 AT&V 顯示模塊設置情況。
16、 ATI 要求確認信息。
這命令使GSM模塊傳送一行或多行特定的信息文字。
17、 AT+WMUX 數據/命令多路復用。

十二、特殊AT命令
1、 AT+CCED 電池環境描述。
2、 AT+CCED 自動RxLev指示。
3、 AT+WIND 一般指示。
4、 AT+ALEA 在ME和MSC之間的數據密碼模式。
5、 AT+CRYPT 數據密碼模式。
6、 AT+EXPKEY 鍵管理。
7、 AT+CPLMN 在PLMN上的信息。
8、 AT+ADC 模擬數字轉換度量。
9、 AT+CMER 移動設備事件報告。
這個命令決定是否允許在鍵按下時是否主動發送結果代碼。
10、 AT+WLPR 讀取語言偏好。
11、 AT+WLPW 寫語言偏好。
12、 AT+WIOR 讀取GPIO值。
13、 AT+WIOW 寫GPIO值。
14、 AT+WIOM 輸入/輸出管理。
15、 AT+WAC 忽略命令。
這個特殊命令允許忽略SMS、SS和可用的PLMN。
16、 AT+WTONE 播放旋律。
17、 AT+WDTMF 播放DTMF旋律。
18、 AT+WDWL 下載模式。
19、 AT+WVR 配置信差的聲音速率。
20、 AT+WDR 配置數據速率。
21、 AT+WHWV 顯示硬件的版本。
22、 AT+WDOP 顯示產品的出廠日期。
23、 AT+WSVG 聲音增益選擇。
24、 AT+WSTR 返回指定狀態的狀態。
25、 AT+WSCAN 掃瞄。
26、 AT+WRIM 設置或返回鈴聲指示模式。
27、 AT+W32K 是否允許32kHz掉電方式。
28、 AT+WCDM 改變缺省旋律。
29、 AT+WSSW 顯示內部軟件版本。
30、 AT+WCCS 編輯或顯示訂製性質設置表。
31、 AT+WLCK 允許在特定的***作符上個性化ME。
32、 AT+CPHS 設置CPHS命令。
33、 AT+WBCM 電池充電管理。
34、 AT+WFM 特性管理。是否允許模塊的某些特性,如帶寬模式、SIM卡電壓等。
35、 AT+WCFM 商業特性管理。是否允許Wavecom特殊特性。
36、 AT+WMIR 允許從當前存儲的參數值創建定制的存儲鏡像。
37、 AT+WCDP 改變旋律的缺省播放器。
38、 AT+WMBN 設置SIM卡中的不同郵箱號碼。

十三、SIM卡工具箱命令
1、 AT+STSF 配置工具箱實用程序。
2、 AT+STIN 工具箱指示。
3、 AT+STGI 獲得從SIM卡發來的預期命令的信息。
4、 AT+STCR 主動提供的結果:工具箱控制反應。

2015年12月9日 星期三

ADB in Linux: cannot bind 'tcp:5037'

Problem: 
   ./adb start-server
   * daemon not running. starting it now on port 5037 *
   cannot bind 'tcp:5037'
   ADB server didn't ACK
   * failed to start daemon *
 
Solution #1:
   Kill processes using port 5037
      netstat -ap|grep "5037"
      kill -p 
 
Solution #2:
   strace ./adb start-server
   ...
   socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 3
   connect(3, {sa_family=AF_INET, sin_port=htons(5037),
   sin_addr=inet_addr("127.0.0.1")}, 16) = -1 ETIMEDOUT (Connection timed out) 
   ==> ifconfig lo up
 
 

2015年11月26日 星期四

How to debug makefile ?

1. info, error

SOME_VARIABLE := $(SOME_OTHER_VARIABLE)/$(ANOTHER_VARIABLE)
$(info SOME_VARIABLE = $(SOME_VARIABLE)) -> 相當於 echo $(error SOME_VARIABLE = $(SOME_VARIABLE)) -> echo + exit

2. make -n -p

可以把所有的 target 展開,方便追找不到的 rule

How to find only text files?

find . -type f -exec grep -Iq . {} \; -and -print
find . -type f -print0 | xargs -0 grep -I "needle text"

2015年11月25日 星期三

Handbook - GIT

--------------------------------------------------------------------------------------------------------------------
GIT DIFF
--------------------------------------------------------------------------------------------------------------------
List the file names only that changed between two commits:
$ git diff --name-only [commit1] [commit2] [file3]

List the file names (and some more detail) that changed between two commits:
$ git diff --stat svr/bl2 svr/bl3
$ git diff --name-status [SHA1 [SHA2]]
Show diff using graphics GUI:
$ git difftool -t meld  [commit1] [commit2] [file3]

git diff [-- folder/file] => workspace vs staged
git diff HEAD => workspace vs HEAD
git diff --cached [HEAD] => staged vs HEAD
git diff HEAD^ HEAD => HEAD^ vs HEAD

--------------------------------------------------------------------------------------------------------------------
GIT  all
--------------------------------------------------------------------------------------------------------------------
Remove local untracked files from workspace:
$ git clean -f -d -n         # -d to include folders;  -n for dry run
$ git clean -f -d -x         # -x to ignore .gitignore

List all branches/tag:
$ git branch -a
$ git tag
$ git ls-remote --tags
List all tags and their SHA:
$ git show-ref --tag

Remove a local branch:
$ git branch -d
$ git branch -D

Remove a local tag:
$ git tag -d &lt;tag>


Remove a remote branch/tag:
$ git push :&lt;branch/tag>

Fetch a repository from a remote (update database only):
$ git fetch --prune

Multiple remotes, pushed (and fetched) independently:$ cd myproject
$ git remote add bitbucket ssh://git@bitbucket.org/user/myproject.git
$ git push bitbucket master
Single remote with multiple URLs, pushed (and fetched) consecutively.
$ cd myproject
$ git remote set-url --add origin ssh://git@bitbucket.org/user/myproject.git 
$ git push origin master

Revoke recent 2 commits:
git reset HEAD~2

List SHA and comment, one line per one commit, from bl2 to bl3:
$ git log --pretty=oneline --author=flxm.com svr/bl2..svr/bl3

Replay the the patches, from the common ancestor of the bl2 and dev branches, onto dev2:
$ git rebase --onto dev2 svr/bl2 svr/dev1

Display history:
$ gitk --all --select-commit=svrX/branchY

Change commit author at one specific commit
For example, if your commit history is A-B-C-D-E-F with F as HEAD, and you want to change the author of C and D, then you would...
  1. Specify git rebase -i B
  2. change the lines for both C and D to edit
  3. Once the rebase started, it would first pause at C
  4. You would git commit --amend --author="Author Name "
  5. Then git rebase --continue
  6. It would pause again at D
  7. Then you would git commit --amend --author="Author Name " again
  8. git rebase --continue
  9. The rebase would complete.

List all authors
$ git log --format='%aN &lt;%aE>'
$ git log --format='%aN>' | sort -u
List everyone who committed to a particular project, listed alphabetically. To list by commits, add -n to the shortlog.
$ git shortlog -s | cut -c8-
Gets the authors, sorts by number of commits (as a vague way of estimating how much of the project is their work, i.e. the higher in the list, the more they've done) and then outputs the results.
$ git log --format='%aN &lt;%aE>' | awk '{arr[$0]++} END{for (i in arr){print arr[i], i;}}' | sort -rn | cut -d\  -f2-

Cherry-pick only changes to certain files
git cherry-pick -n 

# unstage modifications you don't want to keep, and remove the
# modifications from the work tree as well.
# this does work recursively!
git checkout HEAD 

# commit; the message will have been stored for you by cherry-pick
git commit
If the vast majority of modifications are things you don't want, instead of checking out individual paths (the middle step), you could reset everything back, then add in what you want:
# unstage everything
git reset HEAD

# stage the modifications you do want
git add 

# make the work tree match the index
# (do this from the top level of the repo)
git checkout .
Q: .gitignore doesn't work
A1: for every line, remove all invisible tailing characters, including SPACE; CR,LF,NULL are OK.
A2: use below commands.  If history was pushed to remotes, rework is needed to clean remote history.
git rm -r --cached .
git add .
git commit -m "fixed untracked files"
Q: List commits w/ logs containing a keyword.
A: git log --grep="keyword"

Q: fast forward to branch head
A: git merge /.

Q: find possible filenames in commits
A: git log --name-only | grep

Q: list commits modify a file
A: git log --follow --

Q: show SHA of the commit before a specific commit
A: git log ^1

Q: show SHA of all commits on a specific branch
A: git log --pretty=format:'%H'

Q: check if a given commit on a specific branch
A: git log --pretty=format:'%H' | grep

Q: show history for a sub directory
A: git log --

Q: show commit ID of tags/branches
A: git show-ref

Q: show commit ID of current commit
A: git log --pretty=format:'%h' -n 1

Q: list tags points to given commit ID
A: git tag --points-at

Q: list tags points to current commit
A: git tag --points-at `git log --pretty=format:'%h' -n 1`

Q: List all files currently under source control of a specific branch.
A: git ls-tree -r --name-only

Q: List of all files that ever existed
A: git log --pretty=format: --name-status | cut -f2- | sort -u

Q: checkout certain revision of a file under a new name
A: git show HEAD^:main.cpp > old_main.cpp

Q: Resolve Git merge conflicts in favor of their changes during a pull
A: git merge --strategy-option theirs

Q: How to checkout src/main.c to another filename?
A: git show HEAD~4:src/main.c > main.c.prev4

Q: How to view the change history of a file?
A: git log -- [filename]
    gitk --follow [filename]

Q: How to see remote tags?
A: git ls-remote --tags <remote>

Q: How to list branches that contain a given commit?
A: git branch --contains <commit>

Q: How to archive all files modified ?
A: git archive -o update.zip <dst_commit> $(git diff --name-only <src_commit> <dst_commit>)

Q: How to show stashes in gitk without `--all` option?
A: gitk `git stash list --format=%H` &

Q: How to show current branch?
A: git branch | grep '*'

--------------------------------------------------------------------------------------------------------------------
GIT patch create & apply
--------------------------------------------------------------------------------------------------------------------
  • git format-patch --root
    • 從root到指定commit的patch
  • git format-patch -n
    • 自起, 最近n個commit的patch
  • git format-patch 5e86795..f2b286a
    • 從指定起始commit到結束commit的patch
-o 可以設定輸出的資料夾
git am 0001-modify-page.patch


--------------------------------------------------------------------------------------------------------------------
GIT configuration
--------------------------------------------------------------------------------------------------------------------
git config --global commit.template $HOME/.gitmessage.txt
git config receive.denyDeleteCurrent false

--------------------------------------------------------------------------------------------------------------------
REPO
--------------------------------------------------------------------------------------------------------------------
Add remote for all repositories listed in the manifest.xml.
$ repo forall -c "git remote add ssh://@/home//\$REPO_PROJECT"

List tags points to current commit for all repositories
$ repo forall -c "pwd; git tag --points-at \`git log --pretty=format:'%h' -n 1\`"

Apply manifest to another work space
yulin@WNC:/HOUSE/yulin/mdm9607-le-2-1_amss_standard_oem_r00040p1_PostCS/apps_proc$ repo forall -c "cd /HOUSE/yulin/ptr9628/apps_proc/\$REPO_PATH; pwd; git tag LE201r00075.1 \$REPO_RREV"

--------------------------------------------------------------------------------------------------------------------
Account
--------------------------------------------------------------------------------------------------------------------

  • ssh-keygen -t rsa 或 ssh-keygen -d (dsa) => 產生出 id_rsa, id_rsa.pub
  • scp id_rsa.pub server_hostname:~/.ssh/
  • ssh server_hostname
  • cat .ssh/id_rsa.pub >> .ssh/authorized_keys 即可
  • 這樣子就可以 key 認證登入, 不需輸入密碼

--------------------------------------------------------------------------------------------------------------------
'git log' and 'git show-ref' show different SHA1
--------------------------------------------------------------------------------------------------------------------
~/9150w$ git show-ref --deref v00.07.2k.00
2c79b9c8211db8df33b3e3e387a41edd8a391b72 refs/tags/v00.07.2k.00
b1895be23436bd74642bbd7cc9b0177e70177848 refs/tags/v00.07.2k.00^{}

~/9150w$ git show-ref v00.07.2k.00
2c79b9c8211db8df33b3e3e387a41edd8a391b72 refs/tags/v00.07.2k.00

~/9150w$ git log -n 1  v00.07.2k.00 | grep commit
commit b1895be23436bd74642bbd7cc9b0177e70177848

Refer to https://stackoverflow.com/questions/2534773/what-is-dereference-in-the-context-of-git-show-ref-d,
command "git tag <tag> <branch or HEAD or alike>" is suspected to create an annotated tag.
command "git tag <tag>" creates a lightweight tag.



# Show commits that contains the code, then you can: git show <commit_sha>
git log -S "whatever you want to search for"

# An even easier way to show matches right there on the spot
git log -S "your search term" -p

# Same as above, except applied to all branches instead of the checked out branch
git log -S "something" -p --all

# Limit your search to only specific files in a specific directory
git log -S "something specific" -p -- **/models/user*.py

# Search for a regex instead of a string (note the -G instead of -S)
git log -G '^alias \w+=".*"$' -p

# a string or regular expression with the same flag
git log --grep "your search term"

# Same as above, except applied to all branches instead of the checked out branch
git log --grep "something else" --all