[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Ativar e desativar interface wireless



Em 28-06-2011 07:58, Flamarion Jorge escreveu:
On 06/27/2011 03:41 PM, Junior Polegato - Linux wrote:
Porém, ao trocar o Librix por Debian, o driver padrão entende
que o hardware está bloqueado, então tive que compilar o módulo do
kernel e retornar sempre desbloqueado na parte em que verifica se está
ou não bloqueado por hardware. Aí depois foi remapear essa tecla para
XF86WLAN para o Network Manager entender que é para alterar o modo da Wlan.
Até eu saber qual é o hardware de fato, pode me dizer qual módulo foi este?
Você fez isso com o modules-assistant ? ou baixou o fonte e fez na mão
mesmo?

Olá,

       Como o módulo era rtl8187 que estava incorporado ao kernel, baixei o fonte do kernel via "apt-get source linux-2.6", fui ao diretório "linux-source-2.6.39/drivers/net/wireless/rtl818x/rtl8187" e alterei os Makefile's para compilar localmente o módulo e o arquivo "rfkill.c", basicamente trocando o conteúdo:

static bool rtl8187_is_radio_enabled(struct rtl8187_priv *priv)
{
    u8 gpio;
    gpio = rtl818x_ioread8(priv, &priv->map->GPIO0);
    rtl818x_iowrite8(priv, &priv->map->GPIO0, gpio & ~priv->rfkill_mask);
    gpio = rtl818x_ioread8(priv, &priv->map->GPIO1);
    return gpio & priv->rfkill_mask;
}

por

static bool rtl8187_is_radio_enabled(struct rtl8187_priv *priv)
{
    return 1;
}

        Nos Makefile's troca-se "obj-$(CONFIG_*)" por "obj-m" e adiciona-se as linhas:

all:
	make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules

clean:
	make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean


        Executa o "make" para compilar e linkar os ".ko", aí sobrescreve os respectivos ".ko" em "/lib/modules/<caminho>" e faz-se um "rmmod <modulo>" e "modprobe <modulo>".


[]'s
         Junior Polegato


Reply to: