C2 Port Support - The Linux Kernel Documentation
Có thể bạn quan tâm
Copyright 2007 Rodolfo Giometti <giometti@enneenne.com>
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
Overview¶
This driver implements the support for Linux of Silicon Labs (Silabs) C2 Interface used for in-system programming of micro controllers.
By using this driver you can reprogram the in-system flash without EC2 or EC3 debug adapter. This solution is also useful in those systems where the micro controller is connected via special GPIOs pins.
References¶
The C2 Interface main references are at (https://www.silabs.com) Silicon Laboratories site], see:
AN127: FLASH Programming via the C2 Interface at https://www.silabs.com/Support Documents/TechnicalDocs/an127.pdf
C2 Specification at https://www.silabs.com/pages/DownloadDoc.aspx?FILEURL=Support%20Documents/TechnicalDocs/an127.pdf&src=SearchResults
however it implements a two wire serial communication protocol (bit banging) designed to enable in-system programming, debugging, and boundary-scan testing on low pin-count Silicon Labs devices. Currently this code supports only flash programming but extensions are easy to add.
Using the driver¶
Once the driver is loaded you can use sysfs support to get C2port’s info or read/write in-system flash:
# ls /sys/class/c2port/c2port0/ access flash_block_size flash_erase rev_id dev_id flash_blocks_num flash_size subsystem/ flash_access flash_data reset ueventInitially the C2port access is disabled since you hardware may have such lines multiplexed with other devices so, to get access to the C2port, you need the command:
# echo 1 > /sys/class/c2port/c2port0/accessafter that you should read the device ID and revision ID of the connected micro controller:
# cat /sys/class/c2port/c2port0/dev_id 8 # cat /sys/class/c2port/c2port0/rev_id 1However, for security reasons, the in-system flash access in not enabled yet, to do so you need the command:
# echo 1 > /sys/class/c2port/c2port0/flash_accessAfter that you can read the whole flash:
# cat /sys/class/c2port/c2port0/flash_data > imageerase it:
# echo 1 > /sys/class/c2port/c2port0/flash_eraseand write it:
# cat image > /sys/class/c2port/c2port0/flash_dataafter writing you have to reset the device to execute the new code:
# echo 1 > /sys/class/c2port/c2port0/resetTừ khóa » Cổng C2
-
Đăng Nhập Hệ Thống
-
OEM Nokia C2 Tava TA-1218 TA-1226 Charging Port Charger Plug ...
-
D-Link DUB-C2 2-Port USB 2.0 CardBus Adapter
-
Cheminert Analytical HPLC Injectors - Valco Instruments
-
Rotor Seal 6 Port 2-pos C2/C3-valve, 1/16 X .4mm, 75C/5000psi Liq, H
-
Port Hardware - C2 Paint
-
Rotor Seal, H-Assy, 6 Port 2-Position, Comparable To OEM # C2-20R6
-
Rotor Seal, 6 Port, Rear, Comparable To OEM # C2-10R6 - Sciencix
-
ORICO 3 Port Car Charger - Black (UCH-C2)
-
Port Of Call C2 - Townhome With Oceanview - Trivago
-
SMC SJ2160T-5NCZ-C2 Valve, 4/5 PORT SOLENOID VALVE
-
WV121S221NV-I-1S-C2 | 2-position, 2-port Direct-acting Solenoid ...
-
Pinnacle Port; Unit C2-502 | Panama City Beach, FL 32413