Diferenças de hardware sempre existiram, mas desde que instalei o Urubuntu, digo, Ubuntu no meu iBook e tudo funcionou exatamente igual ao meu PC, não prestei mais atenção nisso. Até o momento. Brincando com uma DWL-G122, placa Wi-Fi B/G via USB, com revisão de hardware A1, que não é chipset prism e por isso mesmo estava compilando o suporte via ndiswrapper, descobri um pequeno bug na compilação:

 


/usr/src/modules/ndiswrapper/misc_funcs.c:865: 
warning: `regparm' attribute directive ignored 
/usr/src/modules/ndiswrapper/misc_funcs.c:873: 
warning: `__stdcall__' attribute directive ignored 
/usr/src/modules/ndiswrapper/misc_funcs.c:873: 
warning: `regparm' attribute directive ignored 
{standard input}: Assembler messages: {standard input}:2719: Error: Unrecognized opcode: `movl' 
make[2]: *** [/usr/src/modules/ndiswrapper/misc_funcs.o] Error 1 make[1]: *** 
[_module_/usr/src/modules/ndiswrapper] 
Error 2 make[1]: Leaving directory `/usr/src/linux-source-2.6.12' 
make: *** [default] Error 2 

Buscando no arquivo misc_funcs.c, verifiquei que fazia parte da seguinte chamada:


#ifdef CONFIG_X86_64 __asm__ __volatile__("movq %%rsp, %0\n" : "=g"(i)); 
#else __asm__ __volatile__("movl %%esp, %0\n" : "=g"(i)); 
#endif return (void *)i; } 

 

Código assembly de X86... problema. Tentei compreender o dito e buscar um equivalente. Eis que encontrei o valioso link:

http://www-128.ibm.com/developerworks/linux/library/l-ppc/

Agora fica a questão: como reescrever isso para PPC???? Será que a brincadeira vale algum tempo em cima disso?

We use cookies

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.