I have an embedded linux device running a USB gadget kernel module to make the mmc available to the host PC(such as Windows or Linux). When I update the file in mmc, it won't sync with host PC unless I rmmod and insmod again. Is there any better way to update new files? And how can I detect a file is modified by host PC? I'm using C programming on my linux device. Thanks.
How does embedded linux detect file is modified through usb gadget & update files
612 Views Asked by Ming At
1
There are 1 best solutions below
Related Questions in LINUX
- How do I recursively find and replace only in files named index.php on Linux webserver?
- passing text with \n as one argument in shell
- kernel module does not print packet info
- How to send ESC/POS commands to thermal printer in Linux
- (x64 Nasm) Writeline function on Linux
- How do I set the Hive user to something different than the Spark user from within a Spark program?
- Default priority of thread with SCHED_FIFO
- Calling a python function with options from shell script
- How to split a directory into parts without compressing or archiving?
- Cross compile simple standard C program on Linux for Mac
- How to offload NAPI poll function to workqueue
- python netifaces - How to get currently used network interface
- Unexpected output from function
- mingw-64 conflicting declarations when cross-compiling
- Different behavior of async with Visual Studio 2013(Windows8.1) and GCC 4.9(Ubuntu14.10)
Related Questions in USB
- How to disable battery charging during ADB connection?
- USB to Serial, Port Name Changing Unexpectedly
- USB programming, transfer file from iOS device to Embedded os device?
- USB Full Speed polling interval
- Is it possible to limit data traffic in kernel USB drivers?
- communicationg to device using cdc usb protocol in c# windows application
- Shell file that finds a flash drive on my Raspberry Pi and executes a given program
- USB on board switching tools on Android 4.2.2
- Garmin USB driver grmnusb not compatible with chrome USB API on Windows
- STM32 USB HID reports
- Arduino Serial Monitor shows strange ASCII characters
- execute application mac os yosemite 10.10.3 when plugged in usb
- ISO/IEC 7816 commands over CCID
- How to start process on Linux OS in C, C++
- Install Android app on device through wifi - no usb or emulator
Related Questions in USB-MASS-STORAGE
- Is there a USB alternative to Mass Storage which works at the filesystem layer?
- X86-asm code to make a usb disk non-bootable
- Do I need FAT on both ends of a USB link?
- Named-pipe/ FIFO on USB Mass Storage Gadget to Stream Audio for Car, Docks etc.
- How to navigate to android USB Mass Storage Activity?
- How to distinguish USB hard drives and SSDs from USB keys / pen drives on macOS
- Why only one WM_DEVICECHANGE message when a multi-volume USB Device is removed?
- Mass Storage Memory Android Intent
- Read data from pen drive through android USB host mode
- access mass storage device on web browser with WEBUSB API
- Standard usb device into a MTP device
- Copy files form pen-drive using OTG cable in Xamarin.Android, Not able to get Path
- How can I determine whether a file is on a USB mass storage device?
- How does embedded linux detect file is modified through usb gadget & update files
- How to define device label name, g_mass_storage module
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
(1) There really isn't a better way to update new files. You need to take turns and only access the mmc from Linux or Windows, one at a time.
(2) You can't easily do that.
When you say "When I update the file in mmc", I assume that you have the mmc mounted in the linux device, and are updating files from linux at the same time that Windows has mounted the device. I don't think this is advisable. The host (Windows) may cache file and/or directory information from the mmc, and if the embedded Linux changes that information unexpectedly, it may produce errors from the Windows FS, and could corrupt the mmc.
If you want to share files between the embedded Linux and host Windows, and be able to modify them from either OS without taking turns, an alternative solution would be to use the network device gadget and run Samba file sharing on the embedded Linux side to export the filesystem where the mmc is mounted on the Linux side.