Beaglebone Black + Yocto Dizzy (Versão 1.7)

yocto

A nova versão 1.7 (dizzy) do Yocto Project foi lançada recentemente e desde a versão 1.6 (daisy) a Beaglebone Black é oficialmente suportada pelo projeto.

Sendo assim, não precisamos utilizar a camada de BSP da Texas Instruments (meta-ti) para adicionarmos suporte a Beaglebone Black no Yocto. Porém se você deseja usar a aceleração 3D por hardware do processador AM3359 (presente na Beaglebone Black) você terá de recorrer a meta-ti.

Desde a versão 3.12 mainline do Kernel Linux a Beaglebone Black é suportada e nesta versão do Yocto o Kernel Linux construído é o 3.14, ou seja, uma versão bem recente. Mas existe uma limitação para a Beaglebone Black no mainline Linux Kernel: o suporte às capes não foi integrado ainda. Se você deseja usar as capes em seu projeto terá que usar o BSP da placa disponibilizado pela meta-beagleboard e a versão do Kernel Linux utilizada é a 3.8. 

Se você é novo no mundo do Yocto sugiro que dê uma lida na seção “O que é o Yocto” no artigo “Beaglebone Black + Yocto” escrito pelo Henrique Rossi.

Preparando o Host

O Yocto Project suporta oficialmente as seguintes distribuições GNU/Linux como ambiente de construção:

  • Ubuntu 12.04, 13.10 e 14.04;
  • Fedora 19 e 20;
  • CentOS 6.4 e 6.5;
  • Debian 7.0, 7.1, 7.2, 7.3 e 7.4;
  • openSUSE 12.2, 12.3 e 13.1.

Para que ele execute no Host alguns pacotes necessitam ser instalados.

Ubuntu e Debian:

Fedora:

openSUSE:

CentOS:

Montando o ambiente de construção

Após instalar os pacotes para o Host, vamos criar os diretórios e baixar os fontes necessários:

Agora vamos configurar o ambiente para gerarmos os artefatos de software:

Modifique e adicione as seguintes variáveis no arquivo ~/yocto/build-dizzy/conf/local.conf:

Note que configuramos nossa machine como sendo a beaglebone (serve tanto para a white como a black), mudamos o diretório de download para podermos reutilizar os fontes baixados em outros projetos e adicionamos os módulos e dtb nas imagens que iremos gerar.

Construindo as imagens

Vamos gerar uma imagem mínima sem suporte à interface gráfica (core-image-mininal) com o comando:

Esta é a configuração de build utilizada:

Vamos construir também uma imagem com suporte à interface gráfica (core-image-sato):

Gravando as imagens

Este procedimento é praticamente o mesmo utilizado no tutorial [5] do Henrique mencionado no começo deste post. 

Para a gravação das imagens no microSD card, o mesmo deve ser particionado e formatado de acordo o padrão aceito pelo placa. Para isso foi criado um script, que pode ser obtido com os seguintes comandos:

Insira um microSD card no computador PC ou notebook (sistema host) e descubra qual o device node criado pelo sistema operacional. Tente um dos seguintes comandos:

Caso, por exemplo, o device node criado seja /dev/sdb, use o seguinte comando:

Assim que o processo de particionamento e formatação terminar, duas partições no microSD card são criadas:

  • boot (FAT32);
  • rootfs (ext4).

Execute a “montagem” dessas duas partições no sistema de arquivos do sistema host. Caso esse faça uso da distribuição Ubuntu, basta remover e inserir novamente o dispositivo no seu conector. Dado que, por exemplo, os pontos de montagem criados sejam /media/boot e /media/rootfs, a imagem gerada anteriormente é copiada da seguinte forma para o microSD :

Este último comando é importante, pois sem ele os dispositivos conectados a USB não serão reconhecidos pelo kernel.

Testando as imagens

Remova o microSD do computador e insira-o na Beaglebone Black, conecte-a a uma TV por um cabo HDMI, e a um mouse através do conector USB. Se quiser monitorar o processo de boot, você também pode conectar um cabo serial [7].

NOTA:

Se você tiver instalado algum outro sistema operacional no eMMC da BBB energize a placa pressionando a switch que fica próxima ao slot do microSD. Isso fará com que o processador busque o MLO e u-boot que estão contidos no microSD ao invés do eMMC.

A imagem core-image-minimal (sem interface gráfica) possui o seguinte log de boot:

Initialized drm 1.1.0 20060810 brd: module loaded mtdoops: mtd device (mtddev=name/number) must be supplied usbcore: registered new interface driver kaweth pegasus: v0.9.3 (2013/04/25), Pegasus/Pegasus II USB Ethernet driver usbcore: registered new interface driver pegasus usbcore: registered new interface driver rtl8150 usbcore: registered new interface driver asix usbcore: registered new interface driver ax88179_178a usbcore: registered new interface driver cdc_ether usbcore: registered new interface driver dm9601 usbcore: registered new interface driver smsc75xx usbcore: registered new interface driver smsc95xx usbcore: registered new interface driver net1080 usbcore: registered new interface driver cdc_subset usbcore: registered new interface driver zaurus usbcore: registered new interface driver MOSCHIP usb-ethernet driver usbcore: registered new interface driver int51x1 usbcore: registered new interface driver cdc_ncm ehci_hcd: USB 2.0 ‘Enhanced’ Host Controller (EHCI) Driver ehci-omap: OMAP-EHCI Host Controller driver usbcore: registered new interface driver usb-storage mousedev: PS/2 mouse device common for all mice omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0 i2c /dev entries driver omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec 48060000.mmc supply vmmc_aux not found, using dummy regulator 481d8000.mmc supply vmmc_aux not found, using dummy regulator mmc0: host does not support reading read-only switch. assuming write-enable. usbcore: registered new interface driver usbhid usbhid: USB HID core driver oprofile: using arm/armv7 mmc0: new high speed SDHC card at address b368 u32 classifier Actions configured TCP: cubic registered NET: Registered protocol family 10 mmcblk0: mmc0:b368 SD8GB 7.48 GiB mmcblk0: p1 p2 sit: IPv6 over IPv4 tunneling driver NET: Registered protocol family 17 Key type dns_resolver registered ThumbEE CPU extension supported. bio: create slab <bio-1> at 1 Btrfs loaded regulator-dummy: disabling slave hdmi.6: could not get i2c platform hdmi.6: Driver slave requests probe deferral platform 4830e000.lcdc: Driver tilcdc requests probe deferral DCDC1: at 1500 mV vdd_mpu: 925 <–> 1325 mV at 1100 mV vdd_core: 925 <–> 1150 mV at 1100 mV LDO1: at 1800 mV LDO2: at 3300 mV LDO3: 1800 mV LDO4: at 3300 mV tps65217 0-0024: TPS65217 ID 0xe version 1.2 omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz tilcdc 4830e000.lcdc: found TDA19988

Supports vblank timestamp caching Rev 2 (21.10.2013).

No driver support for vblank timestamp query. Console: switching to colour frame buffer device 240×67 tilcdc 4830e000.lcdc: fb0: frame buffer device tilcdc 4830e000.lcdc: registered panic notifier

Initialized tilcdc 1.0.0 20121205 on minor 0 console [netcon0] enabled netconsole: network logging started mmc1: BKOPS_EN bit is not set mmc1: new high speed MMC card at address 0001 mmcblk1: mmc1:0001 MMC02G 1.78 GiB mmcblk1boot0: mmc1:0001 MMC02G partition 1 1.00 MiB davinci_mdio 4a101000.mdio: davinci mdio revision 1.6 davinci_mdio 4a101000.mdio: detected phy mask fffffffe mmcblk1boot1: mmc1:0001 MMC02G partition 2 1.00 MiB libphy: 4a101000.mdio: probed mmcblk1: p1 p2 p3 p4 davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver SMSC LAN8710/LAN8720 mmcblk1boot1: unknown partition table Detected MACID = c8:a0:30:b3:d5:d7 omap_rtc 44e3e000.rtc: setting system clock to 2000-01-01 00:00:01 UTC (946684801) mmcblk1boot0: unknown partition table EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null) VFS: Mounted root (ext4 filesystem) readonly on device 179:2. devtmpfs: mounted Freeing unused kernel memory: 488K (c09ed000 – c0a67000) INIT: version 2.88 booting Starting udev udevd[78]: starting version 182 47401300.usb-phy supply vcc not found, using dummy regulator 47401b00.usb-phy supply vcc not found, using dummy regulator omap_rng 48310000.rng: OMAP Random Number Generator ver. 20 random: nonblocking pool is initialized musb-hdrc musb-hdrc.0.auto: MUSB HDRC host driver musb-hdrc musb-hdrc.0.auto: new USB bus registered, assigned bus number 1 hub 1-0:1.0: USB hub found hub 1-0:1.0: 1 port detected musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 2 hub 2-0:1.0: USB hub found hub 2-0:1.0: 1 port detected EXT4-fs (mmcblk0p2): re-mounted. Opts: data=ordered Populating dev cache Sun Nov 2 10:41:07 UTC 2014 INIT: Entering runlevel: 5 Configuring network interfaces… net eth0: initializing cpsw version 1.12 (0) net eth0: phy found : id is : 0x7c0f1 libphy: PHY 4a101000.mdio:01 not found net eth0: phy 4a101000.mdio:01 not found on slave 1 IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready udhcpc (v1.22.1) started Sending discover… Sending discover… Sending discover… No lease, forking to background done. Starting syslogd/klogd: done Poky (Yocto Project Reference Distro) 1.7 beaglebone /dev/ttyO0 beaglebone login:

Para a imagem core-image-sato (com interface gráfica), temos o seguinte log de boot: 

Initialized drm 1.1.0 20060810 brd: module loaded mtdoops: mtd device (mtddev=name/number) must be supplied usbcore: registered new interface driver kaweth pegasus: v0.9.3 (2013/04/25), Pegasus/Pegasus II USB Ethernet driver usbcore: registered new interface driver pegasus usbcore: registered new interface driver rtl8150 usbcore: registered new interface driver asix usbcore: registered new interface driver ax88179_178a usbcore: registered new interface driver cdc_ether usbcore: registered new interface driver dm9601 usbcore: registered new interface driver smsc75xx usbcore: registered new interface driver smsc95xx usbcore: registered new interface driver net1080 usbcore: registered new interface driver cdc_subset usbcore: registered new interface driver zaurus usbcore: registered new interface driver MOSCHIP usb-ethernet driver usbcore: registered new interface driver int51x1 usbcore: registered new interface driver cdc_ncm ehci_hcd: USB 2.0 ‘Enhanced’ Host Controller (EHCI) Driver ehci-omap: OMAP-EHCI Host Controller driver usbcore: registered new interface driver usb-storage mousedev: PS/2 mouse device common for all mice omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0 i2c /dev entries driver omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec 48060000.mmc supply vmmc_aux not found, using dummy regulator 481d8000.mmc supply vmmc_aux not found, using dummy regulator mmc0: host does not support reading read-only switch. assuming write-enable. usbcore: registered new interface driver usbhid usbhid: USB HID core driver oprofile: using arm/armv7 mmc0: new high speed SDHC card at address b368 u32 classifier Actions configured TCP: cubic registered NET: Registered protocol family 10 mmcblk0: mmc0:b368 SD8GB 7.48 GiB mmcblk0: p1 p2 sit: IPv6 over IPv4 tunneling driver NET: Registered protocol family 17 Key type dns_resolver registered ThumbEE CPU extension supported. bio: create slab <bio-1> at 1 Btrfs loaded regulator-dummy: disabling slave hdmi.6: could not get i2c platform hdmi.6: Driver slave requests probe deferral platform 4830e000.lcdc: Driver tilcdc requests probe deferral DCDC1: at 1500 mV vdd_mpu: 925 <–> 1325 mV at 1100 mV vdd_core: 925 <–> 1150 mV at 1100 mV LDO1: at 1800 mV LDO2: at 3300 mV LDO3: 1800 mV LDO4: at 3300 mV tps65217 0-0024: TPS65217 ID 0xe version 1.2 omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz tilcdc 4830e000.lcdc: found TDA19988

Supports vblank timestamp caching Rev 2 (21.10.2013).

No driver support for vblank timestamp query. Console: switching to colour frame buffer device 240×67 tilcdc 4830e000.lcdc: fb0: frame buffer device tilcdc 4830e000.lcdc: registered panic notifier

Initialized tilcdc 1.0.0 20121205 on minor 0 console [netcon0] enabled netconsole: network logging started mmc1: BKOPS_EN bit is not set mmc1: new high speed MMC card at address 0001 mmcblk1: mmc1:0001 MMC02G 1.78 GiB mmcblk1boot0: mmc1:0001 MMC02G partition 1 1.00 MiB davinci_mdio 4a101000.mdio: davinci mdio revision 1.6 davinci_mdio 4a101000.mdio: detected phy mask fffffffe mmcblk1boot1: mmc1:0001 MMC02G partition 2 1.00 MiB libphy: 4a101000.mdio: probed mmcblk1: p1 p2 p3 p4 davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver SMSC LAN8710/LAN8720 mmcblk1boot1: unknown partition table Detected MACID = c8:a0:30:b3:d5:d7 omap_rtc 44e3e000.rtc: setting system clock to 2000-01-01 00:00:01 UTC (946684801) mmcblk1boot0: unknown partition table EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null) VFS: Mounted root (ext4 filesystem) readonly on device 179:2. devtmpfs: mounted Freeing unused kernel memory: 488K (c09ed000 – c0a67000) INIT: version 2.88 booting Starting udev udevd[81]: starting version 182 47401300.usb-phy supply vcc not found, using dummy regulator 47401b00.usb-phy supply vcc not found, using dummy regulator omap_rng 48310000.rng: OMAP Random Number Generator ver. 20 random: nonblocking pool is initialized EXT4-fs (mmcblk1p4): recovery complete FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck. EXT4-fs (mmcblk1p4): mounted filesystem with ordered data mode. Opts: (null) musb-hdrc musb-hdrc.0.auto: MUSB HDRC host driver musb-hdrc musb-hdrc.0.auto: new USB bus registered, assigned bus number 1 hub 1-0:1.0: USB hub found hub 1-0:1.0: 1 port detected musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 2 hub 2-0:1.0: USB hub found hub 2-0:1.0: 1 port detected EXT4-fs (mmcblk1p3): recovery complete EXT4-fs (mmcblk1p3): mounted filesystem with ordered data mode. Opts: (null) usb 2-1: new low-speed USB device number 2 using musb-hdrc input: Areson USB Device as /devices/ocp.3/47400000.usb/47401c00.usb/musb-hdrc.1.auto/usb2/2-1/2-1:1.0/0003:04B4:0060.0001/input/input0 hid-generic 0003:04B4:0060.0001: input: USB HID v1.00 Mouse [Areson USB Device] on usb-musb-hdrc.1.auto-1/input0 hid-generic 0003:04B4:0060.0002: device has no listeners, quitting EXT4-fs (mmcblk1p2): recovery complete EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Opts: (null) EXT4-fs (mmcblk0p2): re-mounted. Opts: data=ordered Populating dev cache ALSA: Restoring mixer settings… /usr/sbin/alsactl: load_state:1729: No soundcards found… Sun Nov 2 11:26:54 UTC 2014 INIT: Entering runlevel: 5 Configuring network interfaces… net eth0: initializing cpsw version 1.12 (0) net eth0: phy found : id is : 0x7c0f1 libphy: PHY 4a101000.mdio:01 not found net eth0: phy 4a101000.mdio:01 not found on slave 1 IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready done. Starting system message bus: dbus. Starting Connection Manager Starting Xserver Starting Dropbear SSH server: Generating key, this may take a while… X.Org X Server 1.15.1 Release Date: 2014-04-13 X Protocol Version 11, Revision 0 Build Operating System: Linux 3.13.0-29-generic x86_64 Current Operating System: Linux beaglebone 3.14.19-yocto-standard #1 PREEMPT Sun Nov 2 08:10:58 BRST 2014 armv7l Kernel command line: console=ttyO0,115200n8 root=/dev/mmcblk0p2 ro rootfstype=ext4 rootwait Build Date: 02 November 2014 09:07:29AM Current version of pixman: 0.32.6 Before reporting problems, check http://wiki.x.org to make sure that you have the latest version. Markers: (–) probed, (**) from config file, (==) default setting, (++) from command line, (!!) notice, (II) informational, (WW) warning, (EE) error, (NI) not implemented, (??) unknown. (==) Log file: “/var/log/Xorg.0.log”, Time: Sun Nov 2 11:26:55 2014 (==) Using system config directory “/usr/share/X11/xorg.conf.d” Initializing built-in extension Generic Event Extension Initializing built-in extension SHAPE Initializing built-in extension MIT-SHM Initializing built-in extension XInputExtension Initializing built-in extension XTEST Initializing built-in extension BIG-REQUESTS Initializing built-in extension SYNC Initializing built-in extension XKEYBOARD Initializing built-in extension XC-MISC Initializing built-in extension XFIXES Initializing built-in extension RENDER Initializing built-in extension RANDR Initializing built-in extension COMPOSITE Initializing built-in extension DAMAGE Initializing built-in extension MIT-SCREEN-SAVER Initializing built-in extension DOUBLE-BUFFER Initializing built-in extension DPMS Initializing built-in extension Present Initializing built-in extension X-Resource Initializing built-in extension XVideo Initializing built-in extension XVideo-MotionCompensation Initializing built-in extension XFree86-VidModeExtension Initializing built-in extension XFree86-DGA Initializing built-in extension XFree86-DRI Initializing built-in extension DRI2 tilcdc 4830e000.lcdc: timeout waiting for framedone D-BUS per-session daemon address is: unix:abstract=/tmp/dbus-o4klvcTnFA,guid=264da5d515f2d0ff5810b95f54561501 matchbox: Cant find a keycode for keysym 269025056 matchbox: ignoring key shortcut XF86Calendar=!$contacts matchbox: Cant find a keycode for keysym 2809 matchbox: ignoring key shortcut telephone=!$dates matchbox: Cant find a keycode for keysym 269025050 matchbox: ignoring key shortcut XF86Start=!matchbox-remote -desktop

Forking. run with -n to prevent fork ** (matchbox-panel:832): WARNING **: Failed to load applet “battery” (/usr/lib/matchbox-panel/libbattery.so: cannot open shared object file: No . Public key portion is: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCiUfu/dtU5S1006LGmsyQq2ipfKJ5UZ2OwyFMtI7g7+xyhyFtGONG+slzuHDqcdwTkQ5Kqjxzs+2I0FJq9wkKkrbjxC/6RvRWIq8HzDHase Fingerprint: md5 e3:f9:c0:21:8e:68:e7:0b:02:27:99:1a:1a:16:8b:46 dropbear. Starting rpcbind daemon…done. Starting syslogd/klogd: done * Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon …done. Starting Telephony daemon Starting Linux NFC daemon Poky (Yocto Project Reference Distro) 1.7 beaglebone /dev/ttyO0 beaglebone login:

E as seguintes imagens saindo pelo HDMI temos as seguintes telas (imagens):

bbb-daisy-boot

Figura 1

bbb-daisy-desktop

Figura 2

Para aprender mais

Embedded Linux Build Systems

Cozinhando com o Yocto Project

Desvendando Yocto Project – Primeiros passos

Pronto! Agora você já tem um ponto de partida para construir  e customizar as suas distribuições Linux embarcado com o Yocto Project.

Referências

https://www.embarcados.com.br/lancada-nova-versao-1-7-dizzy-yocto-project
https://www.embarcados.com.br/beaglebone-black-yocto-daisy/
http://elinux.org/Beagleboard:BeagleBone_Capes
https://github.com/beagleboard/meta-beagleboard
https://www.embarcados.com.br/beaglebone-black-yocto/
https://www.embarcados.com.br/author/henriqueprossi/
http://elinux.org/Beagleboard:BeagleBone_Black_Serial
Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

[wpseo_breadcrumb]
Comentários:
Notificações
Notificar
guest
5 Comentários
recentes
antigos mais votados
Inline Feedbacks
View all comments
Christian Schultz
Xultz
20/01/2015 20:35

Olá! Muito obrigado pelo texto! Eu segui o processo para gerar a imagem core-image-minimal, e a compilação ocorreu sem problemas. Porém, como resultado ele gerou imagens do tipo uImage ao invés de zImage, eu errei em algum ponto da configuração? Por este motivo eu copiei somente o MLO e u-boot.img para a partição boot. Ao dar boot na placa, ele carrega o kernel, porém o mesmo fica travado, conforme mostra a seguir: SD/MMC found on device 0 reading uEnv.txt ** Unable to read file uEnv.txt ** gpio: pin 55 (gpio 55) value is 1 5067360 bytes read in 875 ms… Leia mais »

Diego Sueiro
Diego Sueiro
Reply to  Xultz
21/01/2015 14:39

Xultz, Acabei de atualizar minha cópia local do poky (no branch dizzy) e gerei o sistema de novo e não tive nenhum problema. As mensagens de boot são: U-Boot SPL 2013.07 (Jan 21 2015 – 14:58:33) musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, HB-ISO Rx, HB-ISO Tx, SoftConn) musb-hdrc: MHDRC RTL version 2.0 musb-hdrc: setup fifo_mode 4 musb-hdrc: 28/31 max ep, 16384/16384 memory USB Peripheral mode controller at 47401000 using PIO, IRQ 0 musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, HB-ISO Rx, HB-ISO Tx, SoftConn) musb-hdrc: MHDRC RTL version 2.0 musb-hdrc: setup fifo_mode 4 musb-hdrc: 28/31 max ep, 16384/16384 memory USB Host mode controller… Leia mais »

Christian Schultz
Xultz
Reply to  Diego Sueiro
21/01/2015 15:16

Obrigado pela resposta, Diego.
Eu vou tentar o processo novamente, anotando com cuidado todos os passos tomados, e se tiver dificuldade novamente, eu coloco as informações que você solicitou. Mas isto só deve acontecer depois de amanhã, meu pobre computador demora quase 12 horas prá gerar a imagem 🙂

Christian Schultz
Xultz
Reply to  Diego Sueiro
22/01/2015 08:00

Olá, consegui fazer a imagem minimal rodar, eu liguei a BBB e não pressionei o botão user, assim pelo jeito o bootloader ficou confuso 🙂
Eu optei por apagar a mmc com os comandos
mmc dev 1
mmc erase 0 512

e desta forma ela está bootando sem precisar pressionar o botão.
Obrigado pela ajuda!
No momento estou procurando instruções de como instalo a imagem da SD Card para a mmc da BBB, mas não estou encontrando as informações, se tiver alguma dica a respeito, seria bem interessante!

Talvez você goste:

Séries

Menu
Privacy Settings saved!
Configurações de Privacidade

Entenda quais dados e informações usamos para ter melhor entrega de conteúdo personalizado para você.

These cookies are necessary for the website to function and cannot be switched off in our systems.

Para usar este site, usamos os seguintes cookies tecnicamente exigidos

  • wordpress_test_cookie
  • wordpress_logged_in_
  • wordpress_sec

Decline all Services
Accept all Services