Stejne jak je popsano u C1, tj:
v jadre v souboru drivers/usb/storage/transport.h je nutno zmenit definici US_BULK_CS_SIGN
z 0x53425355 na 0x55425355 a prekompilovat jadro.
C1: http://abclinuxu.cz/hardware/ViewRelation?relationId=1028
viz problémy výše.
Snažil jsem se neúspěšně přeložit moduly k jádru pro mdk 9.1 a tak jsem vygoogloval tohle:
http://software.jodda.de/camediac220.html
Pokud bude link zrušen, tak sem ještě přidám zdroják patchu inkriminovaného modulu:
---------------------
#include "stdio.h"
// buffer, must be large enough
#define BUFFER_SIZE 0x100000
char buffer[BUFFER_SIZE];
int main(int argc , char *argv[])
{
int i;
int i_Read ;
int i_Written ;
FILE *in,*out;
in = fopen("usb-storage.o","rb");
i_Read = fread(buffer,1,BUFFER_SIZE,in);
fclose(in);
fprintf(stderr,"Read %d Bytes\n",i_Read);
for(i=0; i< (i_Read -3); i++)
{
if(
buffer[i ] == 'U'
&& buffer[i+1] == 'S'
&& buffer[i+2] == 'B'
&& buffer[i+3] == 'S'
)
{
fprintf(stderr,"found at %d\n",i);
buffer[i+3] = 'U';
}
}
out = fopen("usb-storagex.o","wb");
i_Written = fwrite(buffer,1,i_Read,out);
fclose(out);
fprintf(stderr,"Wrote %d Bytes\n",i_Written);
}