From 7218a9965ac89046abaf4b8e516bc48065e5061e Mon Sep 17 00:00:00 2001 From: Markus Koch Date: Wed, 18 Dec 2024 13:52:47 +0100 Subject: [PATCH] Initial commit --- README.MD | 65 +++++++ linux/imx53-amx-mst701.dts | 353 ++++++++++++++++++++++++++++++++++ linux/sd_card_head.img.zst | Bin 0 -> 114186 bytes scripts/analyze_iomux.py | 36 ++++ scripts/build.sh | 22 +++ scripts/devmem/devmem2.c | 130 +++++++++++++ scripts/flash_sd.sh | 19 ++ scripts/on_target/boot.ld | 45 +++++ scripts/on_target/build.sh | 10 + scripts/on_target/main.c | 30 +++ scripts/on_target/send_image | 28 +++ scripts/open_serial.kermit | 21 ++ scripts/patch_sd.sh | 9 + scripts/reinstall_firstrun.sh | 12 ++ scripts/reinstall_sd.sh | 11 ++ scripts/test_patch.sh | 5 + scripts/upload_and_flash.sh | 6 + 17 files changed, 802 insertions(+) create mode 100644 README.MD create mode 100644 linux/imx53-amx-mst701.dts create mode 100644 linux/sd_card_head.img.zst create mode 100755 scripts/analyze_iomux.py create mode 100755 scripts/build.sh create mode 100644 scripts/devmem/devmem2.c create mode 100755 scripts/flash_sd.sh create mode 100644 scripts/on_target/boot.ld create mode 100755 scripts/on_target/build.sh create mode 100644 scripts/on_target/main.c create mode 100755 scripts/on_target/send_image create mode 100755 scripts/open_serial.kermit create mode 100755 scripts/patch_sd.sh create mode 100644 scripts/reinstall_firstrun.sh create mode 100755 scripts/reinstall_sd.sh create mode 100644 scripts/test_patch.sh create mode 100755 scripts/upload_and_flash.sh diff --git a/README.MD b/README.MD new file mode 100644 index 0000000..c5542d2 --- /dev/null +++ b/README.MD @@ -0,0 +1,65 @@ +# AMX MST701 Reverse Engineering + +The [AMX MST701](https://www.amx.com/en/products/mst-701) is a nice little tablet intended for media control in conference rooms. It features a nice full-color TFT, a speaker, and touchscreen for user input, all powered over PoE. + +This repository aims to document the hardware to allow repurposing as this device has now reached its end of life. + +## Hardware + +* LCD: Custom 1024x600 full-color TFT, connected over LVDS +* Touchscreen: TSC2048, connected over SPI +* Ethernet: AX88772BLF, connected over USB (usbh1) +* Ethernet (unused): SMSC8720A, connected via (R)MII+SMI +* USB: Internal USB-OTG port _or_ External USB-A port (via usbotg) +* Audio: SGTL5000 + Speaker amp + Microphone, connected over i2s/i2c +* Power: TPS65150, DA9053 +* CPU: i.MX53 (single-core @ 1 GHz) +* RAM: 512 MB, 327 MB usable (rest is for GPU/VPU) +* Storage: 4 GB Micro-SD card +* Power: PoE +* Misc: Power/User button on the top right, LED notification lights (unpopulated) +* Misc dev: Debug LED on SoM, UART header on J3: \[?, TX, GND, RX\] + +Note: The "generic" system components are placed on a little SoM mounted on the main PCB. + +## Original Software + +The original system runs on an ancient 2.6 kernel, with a giant monolithic binary for the official functionality. Audio runs through ALSA, display output is directly written to the framebuffer/DRM. The system is booted by a heavily modified U-Boot that also appears a little broken (e.g. passing kernel arguments doesn't really work). + +### How to Explore? + +* Passive: Open the device, grab the SD card, browse. +* Active: Remove the SD card, patch the root login password, boot the system, log in over serial. + +## Running Custom Linux + +All system components have mainline Linux support. The necessary device tree can be found in `linux`. + +To set up your custom SD card, follow these steps: + +1. Write `linux/sd_card_head.img` to an SD card. +2. Partition the SD card as needed for your distribution, keeping a 40 MB space before the first partition +3. Write rootfs to SD card (e.g. [ArchLinuxArm](http://fl.us.mirror.archlinuxarm.org/os/ArchLinuxARM-armv7-latest.tar.gz)) +4. Compile Linux kernel (see below) and use `scripts/flash_sd.sh /dev/sdX` to flash kernel to the SD card (it goes into that "empty" 40 MB space) +5. Copy Linux kernel modules to rootfs + +For future updates via SSH, look into `scripts/upload_and_flash.sh`. + +### Compiling Linux + +* Make sure to include the full cmdline hardcoded in the kernel as the U-Boot is a little flaky: + * `console=ttymxc0,115200 root=/dev/mmcblk0p1 rw fbcon=rotate:2` + * or for debugging: `earlyprintk=serial,ttymxc0,115200 console=ttymxc0,115200 root=/dev/mmcblk0p2 rw fbcon=rotate:2 loglevel=7` +* Make sure to include all drivers for the hardware +* Copy and compile the device tree provided in `linux/imx53-amx-mst701.dts` to the kernel dir and add it to the build system. +* Use build script `scripts/build.sh` to build a patched uImage with DTB attached to the kernel + +## Open Issues + +* Not yet implemented + * Backlight (configured active by bootloader for now) + * Notification LEDs (not populated on HW anyways) +* Broken + * Touchscreen does report any events + * Speaker-amp (gpiochip4,2) not turned on automatically (needs to be activated using gpioset for now) + diff --git a/linux/imx53-amx-mst701.dts b/linux/imx53-amx-mst701.dts new file mode 100644 index 0000000..9b4f380 --- /dev/null +++ b/linux/imx53-amx-mst701.dts @@ -0,0 +1,353 @@ +// SPDX-License-Identifier: GPL-2.0-or-later +/* + * Copyright (C) 2024 Markus Koch + */ + +/dts-v1/; +#include "imx53.dtsi" + +/ { + model = "AMX MST701"; + compatible = "amx,mst701", "fsl,imx53"; + + memory@70000000 { + device_type = "memory"; + reg = < + 0x70000000 0x10000000 + 0xb0000000 0x10000000 + >; + }; + + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + gpu_reserved_mem: gpu_mem@76000000 { + reg = <0x76000000 0x08000000>; + }; + mxc_sdc_fb_0_legacy: gpu_fbmem@7e000000 { + reg = <0x7e000000 0x02000000>; + }; + gpu_graphics_mem_sram: gpu_graphics_mem@1 { + reg = <0xf8020000 0x40000>; + }; + }; + + aliases { + display = &lvds0; + lvds0 = &lvds0; + }; + + sgtlsound: sound { + compatible = "fsl,imx53-amxtablet-sgtl5000", + "fsl,imx-audio-sgtl5000"; + model = "imx53-amxtablet-sgtl5000"; + simple-audio-card,aux-devs = <&speaker_amp>; + simple-audio-card,routing = + "Headphone Jack", "Speaker Amp OUTR", + "Speaker Amp INR", "HP_OUT"; + ssi-controller = <&ssi2>; + audio-codec = <&sgtl5000>; + audio-routing = + "Headphone Jack", "HP_OUT" + ; + mux-int-port = <2>; + mux-ext-port = <5>; + }; + + speaker_amp: speaker-amp { + compatible = "simple-audio-amplifier"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_spkamp>; + sound-name-prefix = "Speaker Amp"; + /* enable-gpios = <&gpio5 2 GPIO_ACTIVE_HIGH>; */ // TODO: I don't know how to link my "imx-audio-sgtl5000" to this amp node (see above) + }; + + reg_3p2v: regulator-3p2v { + compatible = "regulator-fixed"; + regulator-name = "3P2V"; + regulator-min-microvolt = <3200000>; + regulator-max-microvolt = <3200000>; + regulator-always-on; + }; + + reg_usbotg_vbus: regulator-usbotg-vbus { + compatible = "regulator-fixed"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usbotg_reg>; + regulator-name = "VCC_USB"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + gpio = <&gpio4 15 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + reg_usbh1_vbus: regulator-usbh1-vbus { + compatible = "regulator-fixed"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usbh1_reg>; + regulator-name = "VCC_USB_INT"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + gpio = <&gpio2 26 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + gpio-poweroff { /* In case you didn't see it, there's power button on the top left of the device. */ + compatible = "gpio-poweroff"; + gpios = <&gpio2 15 GPIO_ACTIVE_LOW>; + timeout-ms = <3000>; + // TODO: pinctrl + }; + + gpio-leds { + compatible = "gpio-leds"; + + system-status { + label = "Status"; + linux,default-trigger = "heartbeat"; + gpios = <&gpio3 15 GPIO_ACTIVE_HIGH>; + // TODO: pinctrl + }; + }; +}; + +&ecspi1 { + status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_ecspi1>; + + touchscreen0: tsc2046@1 { + reg = <1>; + + compatible = "ti,tsc2046"; + interrupt-parent = <&gpio1>; + interrupts = <8 0>; + pendown-gpio = <&gpio1 8 GPIO_ACTIVE_LOW>; + + spi-max-frequency = <1000000>; + + wakeup-source; + }; +}; + +&ldb { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_lvds0>; + status = "okay"; + + lvds0: lvds-channel@0 { + fsl,data-mapping = "spwg"; + fsl,data-width = <24>; + status = "okay"; + + display-timings { + native-mode = <&lvds0_timing0>; + + lvds0_timing0: timing-mst701disp { + clock-frequency = <48960000>; + hactive = <1024>; + vactive = <600>; + hback-porch = <144>; + hsync-len = <104>; + hfront-porch = <40>; + vback-porch = <18>; + vsync-len = <3>; + vfront-porch = <1>; + hsync-active = <0>; + vsync-active = <0>; + de-active = <1>; + pixelclk-active = <1>; + }; + }; + }; +}; + +&ssi2 { + fsl,mode = "i2s-master"; + status = "okay"; +}; + +&i2c1 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_i2c1>; + status = "okay"; +}; + +&i2c2 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_i2c2>; + status = "okay"; + sgtl5000: codec@a { + compatible = "fsl,sgtl5000"; + reg = <0x0a>; + #sound-dai-cells = <0>; + clocks = <&clks IMX5_CLK_SSI_EXT1_GATE>; + VDDA-supply = <®_3p2v>; + VDDIO-supply = <®_3p2v>; + }; +}; + +&i2c3 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_i2c3>; + status = "okay"; +}; + +&cpu0 { + operating-points = < + /* kHz */ + 166666 850000 + 400000 900000 + 800000 1050000 + 1000000 1200000 +// 1200000 1300000 // SKU does not support 1.2 GHz + >; +}; + +&audmux { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_audmux>; + status = "okay"; +}; + +&iomuxc { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_hog>; + + pinctrl_hog: hoggrp { + fsl,pins = < + MX53_PAD_GPIO_0__CCM_SSI_EXT1_CLK 0x80000000 /* SSI_MCLK */ + // MX53_PAD_DISP0_DAT8__WDOG1_WDOG_B TODO + // MX53_PAD_GPIO_1__PWM2_PWMO + // MX53_PAD_GPIO_9__PWM1_PWMO + >; + }; + + pinctrl_usbotg_reg: usbotgreggrp { + fsl,pins = < + MX53_PAD_EIM_DA15__GPIO3_15 0x0 /* VBUS_EN */ + >; + }; + + pinctrl_usbh1_reg: usbh1reggrp { + fsl,pins = < + MX53_PAD_EIM_RW__GPIO2_26 0x0 /* VBUS_EN (ETH) */ + >; + }; + + pinctrl_ecspi1: ecspi1grp { + fsl,pins = < + MX53_PAD_EIM_D16__ECSPI1_SCLK 0x80000000 + MX53_PAD_EIM_D17__ECSPI1_MISO 0x80000000 + MX53_PAD_EIM_D18__ECSPI1_MOSI 0x80000000 + MX53_PAD_EIM_D19__ECSPI1_SS1 0x80000000 + >; + }; + + pinctrl_audmux: audmuxgrp { + fsl,pins = < + MX53_PAD_KEY_COL0__AUDMUX_AUD5_TXC 0x80000000 + MX53_PAD_KEY_ROW0__AUDMUX_AUD5_TXD 0x80000000 + MX53_PAD_KEY_COL1__AUDMUX_AUD5_TXFS 0x80000000 + MX53_PAD_KEY_ROW1__AUDMUX_AUD5_RXD 0x80000000 + >; + }; + + pinctrl_spkamp: spkampgrp { + fsl,pins = < + MX53_PAD_GPIO_12__GPIO4_2 0x0 + >; + }; + + pinctrl_uart1: uart1grp { + fsl,pins = < + MX53_PAD_PATA_DIOW__UART1_TXD_MUX 0x1e4 + MX53_PAD_PATA_DMACK__UART1_RXD_MUX 0x1e4 + >; + }; + + pinctrl_esdhc1: esdhc1grp { + fsl,pins = < + MX53_PAD_SD1_DATA0__ESDHC1_DAT0 0x1d5 + MX53_PAD_SD1_DATA1__ESDHC1_DAT1 0x1d5 + MX53_PAD_SD1_DATA2__ESDHC1_DAT2 0x1d5 + MX53_PAD_SD1_DATA3__ESDHC1_DAT3 0x1d5 + MX53_PAD_SD1_CMD__ESDHC1_CMD 0x1d5 + MX53_PAD_SD1_CLK__ESDHC1_CLK 0x1d5 + >; + }; + + pinctrl_fec: fecgrp { + fsl,pins = < + MX53_PAD_FEC_MDC__FEC_MDC 0x80000000 + MX53_PAD_FEC_MDIO__FEC_MDIO 0x80000000 + MX53_PAD_FEC_REF_CLK__FEC_TX_CLK 0x80000000 + MX53_PAD_FEC_RX_ER__FEC_RX_ER 0x80000000 + MX53_PAD_FEC_CRS_DV__FEC_RX_DV 0x80000000 + MX53_PAD_FEC_RXD1__FEC_RDATA_1 0x80000000 + MX53_PAD_FEC_RXD0__FEC_RDATA_0 0x80000000 + MX53_PAD_FEC_TX_EN__FEC_TX_EN 0x80000000 + MX53_PAD_FEC_TXD1__FEC_TDATA_1 0x80000000 + MX53_PAD_FEC_TXD0__FEC_TDATA_0 0x80000000 + >; + }; + + pinctrl_i2c2: i2c2grp { + fsl,pins = < + MX53_PAD_KEY_ROW3__I2C2_SDA 0x400001e4 + MX53_PAD_KEY_COL3__I2C2_SCL 0x400001e4 + >; + }; + + pinctrl_i2c1: i2c1grp { + fsl,pins = < + MX53_PAD_EIM_D21__I2C1_SCL 0x400001e4 + MX53_PAD_EIM_D28__I2C1_SDA 0x400001e4 + >; + }; + + pinctrl_i2c3: i2c3grp { + fsl,pins = < + MX53_PAD_GPIO_6__I2C3_SDA 0x400001e4 + MX53_PAD_GPIO_5__I2C3_SCL 0x400001e4 + >; + }; + + pinctrl_lvds0: lvds0grp { + fsl,pins = < + MX53_PAD_LVDS0_TX3_P__LDB_LVDS0_TX3 0x80000000 + MX53_PAD_LVDS0_CLK_P__LDB_LVDS0_CLK 0x80000000 + MX53_PAD_LVDS0_TX2_P__LDB_LVDS0_TX2 0x80000000 + MX53_PAD_LVDS0_TX1_P__LDB_LVDS0_TX1 0x80000000 + MX53_PAD_LVDS0_TX0_P__LDB_LVDS0_TX0 0x80000000 + >; + }; +}; + +&esdhc1 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_esdhc1>; + status = "okay"; + //max-frequency = <25000000>; +}; + +&uart1 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_uart1>; + status = "okay"; +}; + +&usbotg { /* External USB port */ + dr_mode = "host"; + status = "okay"; + vbus-supply = <®_usbotg_vbus>; +}; + +&usbh1 { /* USB Ethernet controller */ + phy_type = "utmi"; + dr_mode = "host"; + vbus-supply = <®_usbh1_vbus>; + status = "okay"; +}; diff --git a/linux/sd_card_head.img.zst b/linux/sd_card_head.img.zst new file mode 100644 index 0000000000000000000000000000000000000000..4059a187f5826daae3082964e49d6c14c44aa514 GIT binary patch literal 114186 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⪚_*)g+NFYY(Y2LeB#e`%M24y=D}qO|sF@nL|S0D%q?^21Ymz zGv8O7e{Gs+&p)rkw5#_K$?j0UX9fS$OJJVRe$yRMx3~!kc7jyJ@-j13uJL(AOt4M^ z8hUwk86Kv_z z^MB~O{|`OCTZ~Fx6^6;T%DEhb3rhtI4N;cIVkk8Xw!oX$FaogXQ7`WPF#@~3hJVRH z#o2LuF0EOLnEQZn{bwI-!2U;&rse(cPVct6qx{iQR8zpOHqs>(g`f;O+RN{4)!2@l zOB(Bb#DBqu90w?hz@ zR2a@va(E3+*s$D`-HDLJN!F~%+-S)SxNdG#aKkT`)-=l0*W2SUy$l}a(5TH^nj-9h#hi%ESvgE{p) z!&7?bAL~lg2`}xRcS_wORvf-(v=~oZwU$DLS&sgn=UReIl?kLkD}tpE;0vo3spm(v zwY3RIEL=})kCy9dgyTgta7-4Ei)&5P*J!YKX(IbFIhHLmezPe1RLORLc{RmOTo@0b z_0?%tw&c9?k$I%GSa3SmhXhtu`WcwegxjwZMvl4Vre1PX?i2g~aTxqAqZxX@5*gq? z^}`!e=$^^r8CO+st%|%*)>VbC>1>D)3`I)_GyOFj%nFpyOaJl7`*QJiS6opZVLC$f z;f#~tc1#Vlneo}So$=zQu03R9YcSupG2m1zPv%ewTOAA4ky)`PDm=d-S@yw34ek2( zOhP8_*Zm!j_VnRHE@w3hCpqcApE1XP|L)O_tu!0wZ-bKJ<1WPM-eUW10SmlqR~XjR zoQf3IWhnEm@4f_b!`!A>JxNyHAKnCHByaAa2SG`f`k%GOFZQ^JA-?gZAE$k7}&8ee8ECcg9jMydo-y-$y@O}H&xN^0vpGzDSB zn(%_g@EWy;$S%6293`Q{3O1qJ%d{`|ZiW0+pabeH*6eSg`qOs2vm6Qj4j*8FGuE)y6Upj|M98pX%)}Y2D~l4o ze+sF{VNzs%Owv6?n_Tq6CR|Al@P(MWIY5Wl7z(zVRxO8wh4k*MTy&l*2Ya4=@FFsy z#{5V1;qCEq-SpCy#3Du9bKa>uB~MEdlnLoIl?jX9sxaON`xTF6&ATGL;m3D~J0|z4 zcK>iSmM&7HC3M!pb%ny(D!s%Qq-B&b9Rc$tOrS^MU!5J{57bWrGLV6$-Y#333>Y&$ zn2GWxR^e;i70O-H=4~4(#Xw3~_mY;r5i(4DQ=#1WIOFfwGSNI?U&rV;XtgfDCfzoD34bJEvKQ`I{3J#^F}@&o~y3uFLHiQ$YQ}+iC_Z_ zLvaer5ZI!_WG|KAuK#({(hQkWN0U2Sa4P{nH)QQqO`PWQqK1%mSOY0)BeVwhmgK~?~$6yef`Pw3*Vi_ zaRcSrxU7m4Z3P8I?f#k_9XBcDNB{s&xO+Ubjl5pLC1YuE1s`8^puxCD?IUJcn8mm8 zAZUm?SO3;|^P?8X(doqM6jX5P(0(o-(hl>bC&EWdY*@BI=*sh)UrcW4p;5sVV$0+p zV!u`#$4Sp+fD=?9MhmcXU!{0tVrFGzs%4>EU6~*Ghq%nCBfeQL6Y8^1P?&!6W<|cl zE`<7T48_WX<}iQ|WW~Fr@Oa@)-Y?yX!k3jF{jdQa^qiLuC@HCmjrpgvY%xK^uG+rF zk(?Bm{H;sjJs@TmVjOl;1^?q&NtCUp%uXfOF*FgWEw48F=}#Kk*D6foZ1o`%#{*p- zwa}EtJ}n&}hei?ac}eVO07`9k&f1k9f4G(XY=l^|ya&3I2|@$usNv+&t@H;hRmf9a zUtU%L(odDVwcm5c!9RIt&gzBU9Bqu)K~vU3HuMtqz;QDGz|$S-H%1xGoT znLC=niipX(l?J)Q_Ebjn)eMLbLab+H!Ys(h$mb@q078uY+{EhTYt5b8n>PhQwxv{^ z!%0ATZ`z)#OyZnDq62BWjJ%Z(+WaJm8d?87{JfgSHxtKZp;wP@QGI5e0^a7KBf}kS z9c?By6ysiKB*|87Z<93Ggd+27oB`g+sot@sY;ZoDOeFiS$*$5&xB{OoZ`_bR@l#aTk9kq5>O)*v3ueg&OP$K|Vny zGiEoM4VfDKW<@PZYp$v^ivmtPSY$y%_dzV=$A!Vi^;PD5dtKs0i@p5u_HD;siCvfs zU-uS&bp#u03x+z^o;&W`JG?45*Z8%;o-;eF5-3RBwW|~)But+>cE+jn^Z0+%7^q+u z$@yA}(gi4*=`T%iEB*6Ng+)kl+uEU_3s9ApmzT9PS7J@AhDhpBh*;EZX>2laY1eJH zU2$9hPPu80bVk4W2b8ms&wlc|JeBD-LM?LqzLxaKM(%HZrSJXb*>SSZ7l2RPmBhfj zkFV&Y0!Ku?djQv!wy_mr%ioVaZH*JsQc`z9Sz~5(=8@mJ)*qz-0#WhmS;q&ckd6+PVd!z_R4z=PEW1)B{ww`6 z#`&<>ASqr7MBQjDf{}WQr76y}^oSW#tQn0-ln$Z!=leFT&5sep8uSs!o%6@$oeOA6Q@5_Eb952(=DBty5_AW0d zCuYjheW829DBrZKKSV<%7@;a0C@(GFDNsI$+JkdUW1>^sD1D7Zel9KjAv!!zHgYQb zPl+JW951SST9Y=kpd0{kn#X8!$TtE>O?M=h$9CW_&=w&LOH~jzkM|2`y}fF#PfmP( zwSY-idt1_a8KWXXQp2WRgBsw(X99M5mPQ^ zNah3nQd#PtZ|^egtPFCI2u9hDpAJI(fi$`X%F2Be6=qv&?pthAk4xAES%(|&C{Jbd z{7KU_!f5GgKn1)U?W#9Tb}iBdZSJ%wHznd87Uz$DH!K(farj>8axw)CsT^nnQwKK& zekARjpMDP26q#Q9QW5C~uDC~3L6>?Pb@N;ze*QV}?f_R=dgr{tX5+q;W)Yg8xkul} z{YAFPvYDQK<6j90lLh3p)}^$n6JNIi~|pv`dpn2*CrFL4Ab&{oyN(- z8CQ$r3$CK$o~kGT&4zr#ax|=sZQHgZ6aN@#4!iSso;F#j_lXP#OidNLM^#K7OyEHpt290+qLi32g*S-Q;%MfBCUZZoSJGAS8{Aa}k|MS(M!sJ=8NdWqDQMRBeE89ReHh^7yL_z~EoM-_IY;BJ2LcIQo?# zn980s)(`{7nJ7psX~;4CLizll4?A0dH3JD6yLx8O>1O2qzRW3< zzKGynY7A3!@r`L`x7~lZ6#e;jdx2nH9iw_T+~DWx9H7APKkzZ=GdJa-QTTSzd}3OT{&lE)KY?Tw4hPRJ7*puoLc43xV}0XCYwS>ALayD)2b_dVxnZ~O9qvMA3JR~(lo@)Lli(Yn_8c{85xPQX<$6Sk% z#9)hETmS=%bGNN*sCfG>D~PkDEBA+^I2rbFJtpn zuyu7X0L!Gtn{w}MW~N<`zMkpd2PMy&Nnv%3qx3cGraY3Qoz6Vo=lAK%60#oK4)`yh z$cBj#>jFdsT?STH?}h^HNel4bT1YJr(BRw%Umr&N;Z-HwzxC+wZPVIxU)dr5D6e|5 zB~ecKsr9!6)*;;?&WnV7f1I|4teebUIcI{wya#Fc92oN4S(d_QgZZptAl{QwixOaE_NX=TW*yr#B|KU2R`w?W z&2291FgLPw36XH{op@Ns#Hi^lrot`4bsfvn|0~qu5jv{go8iDvDidJY%|ChsYdr=^ zedh`9@Pb5~V4{fWzW2$i+&m6m+!^EqMu#}|{{#)3nEG`xLqn$+F{tRNmvvtC6!dV= zT`?aJ>~2(Iqm_9{BxonqwK}js7;>v_?4g)0{o_Z*NV7b;!^?*MW(%0iN)lC}2rz?8 z;^mY1Ig<>AxGN|a13R}fhg0!HwEulCjhzu?djJ2)$1y+oB|Ba+TT*j_bY8kLViQFf z@4dgvM;Cn!=v@}Zf2?+;C@hRaGNjfI$1VP@v8i5L}NUxNNPLr?eSfEpvn@C~>k9cv|Y$46Cc@M(tgIWYJ9U zy`z#ck8HePG>s8Wg3)v8Tk>ESn3FDe9ZI_Zy41~tR3fwmpD&D5={MsyzuZ^wwADJk z^-IdKzEcz*S&5=H>E!AJuDZ%_)UG;?d8;UM!z#Pn$3Jd@3{QYrI{^IASBA)D?FO$>Q(%Vqe2t4V;zd z?Gz|6kg)lSQlVoSiN58GM_Ko?1BHdRBYn2C%J60Q6jb70TJ4_+@rU=jE9w^_+~8!r za5u)M?4UK{x~KP;*(~K*M#5y{<#>j3ITvvxnzaj~PqfcwcvR_duD&<}Z|)||s;~cw zgfuI0>gGIHxP)?YI$0XWV@%iYauM0X$0}T$Yg?)(wgxfm%~^60f0cOHVlMJd>`q^p zE#Zx(4;l&$lOoybKb+K0J6R&@n$1(@04M!yO${>lk*0K|TO_Z7-3RSI(D>;{{ldd> zdL?OrL$>_;HSY`wWr3X|wnHSO>K1spd}h>wz_*@WCg~xd5+^b9TcluI?7r0EfLE zBxl+M^IctP8A>wBCC5OAU9v$<+Z~5>SUlobvyY0=cSN_WVN#|a4*E2q?@E)?Ywnj| zxood_6RkTlQoA@0R}~N3{ueVMr{qd{Xu}2phA5agyBl?}q~sDz4QKso3N@(=YZPf# z!;ImX^ZI8h&zqjSWm=1F@AgB>SkHom|I`ojq~+@)54l^B)zqpUl2MTOTTrx3#&!Fu z)0I~3n2Zy^uQF(J2mulFC>Ivo7|}`v_!!D2l50FZs9sL?s6=?1?2N^+akCsQMDY0G zJ~?zk>OVY=CL_&yL4q?H&;iGP9ZnE!x4hcavyFm%ziGx3|3E)~;bO3j5yl-1{04Ue z!;aeF2aw!)QaPnz!5r3G0Mr*^78ZaKWt@L4HR89i zcFXt2it2e!W4D8xYPD7aj>!@19iGPQbTL>dxVP1)uO+_8*reHRJ4-COdAPnd513!gs0u^9rzc?4;lz29)|}vFw+k4 zAb#O-g9EP=L%}9q4mU3c44ml|7k#(jc&j|`Nu_DT77DL-Y}Yopf$*g!Q8Quol?zAP z#P!2lA2sc^`#wegXE$AoB?f!R+=W94>vty6Y7MLLuN*hL&Vr*_1_b(pf0yAJcprvE zJ(x;b#1Yv17lx(Pp{Ndv64}hS%ffE(^bUtK_%}A$B;Tb9@^U_P3Ti-(RQvtQl=665*dZliYvx1AAWx#pQG~( z4s7##(0^KS+)WOVY((e^Yi1@JToYQPx9E_wB>Gk&zLtS=!a zIaOGcj7XhJ_C5fuYLSas-VnF$Bd>FeVQ1%ow%NwP{fBR@z%F|Bs4^KJ0VHQfMtkUN z9}f4d9o~*SIxvHzL9v|ibLX}oH8P;;dj9d-RydoZuZQ3K#!9<*&+O`dEyP(u>-NSEwX5r0wwC2d#iFC|>tH=c_L zHq(IjM=TcYpOSwt(AIS~9VT>Z3HvbWCWwkQ3Ht7xD7Ifo@u{$**D^c2F~ck=njE0r$Gecy=?3;Z6;*R&h@)M6Ma!n|q-V0D zsS>OL#G}0e zXL84|M6Uk{$2mC0w^cy8)SZbBoF`%x7%LDILTRUpph?|HE3FXJFvn)T9XGCo#vxm0 zPnT~*7f4MCb=ZB_^)JED<-d=EhEaJ71&~%n==zc(?uWsDODnxr26)!u|8+NoA3#BA zL-jI30(g@1=vAcvZoa~ex4|wfAdZACixoZ-Av#rB9Ipr{LhZ2MjkR4CXA}b92SI2@ zTQ-~N<54X2Xrhy^%mZ%`vnb9S*CP#f5bpGN#ov@|+lR7>fjmFutlj#=o4glE16V5v zLn|5H(-7~}2ur4JK>ov3e*DN|W)$4%=@B^$F843<9-W~|TP~75>t2KMDOVejV^Luu zYGIm3L_%ZMk(Qp7=H&tTESGRN3&)Jos=|YvEdfv4@?Et%2T(xGgAPMo#wm}$!eS^-Np9@+30Ks|vsvKh{RFl|w*WuFrV zKcW#@yIi^JcIASlYNK>yfg^?no0ym0mZQ~oBW#WOB(cKNDn-+S+;$^bs&fvONIr{eTnKQdv#J7 zBU?0SUaxgNYZ_d^ps@h3m2~*e^i>6Cq1Z&~Y)J56i)d$fw|U`4J4IKG9CCl(kRsK% z(b|9Nf^tYl^|w{ME;C!rMaQ0?CU^+=jD{;>+T0#7^qL_L(j#eq%Iy**5rsG-6h)LT z8`v>uHXChP9Vd2*)*y2lQQc*orR;U%bCx#enY z${I9V=*iEJjOmV)3^U1MJKW2+;wiw^efoS50mrxnJ!iE^k0MTiKo&3I^(3Wa}! zJLZ7y0H+v&4Oy}vk_Ju(;H+SgS2E!}&;TlV z*(Ds%+c#K&=<5*dg)A5gpF5Xq5xpjRi;a#UVCJGDK5Xy}r z7ZTuf!>I)c)RVZlK-);~itV~fcP-WYe8e@RRz=FI}?!aJ2lp8?;W=%+1fd=*D|NV3YhR~Pg5Me}p?E2iuMT@>Op1ng|3#wPjW-iO zM&k50r>(@Av|((?G8hLG{=+F#lwCv41GSr~Xu)9RKPba<-K+y!Q|hc1lLl@Ns)0DO zes00RszG50tdDA}g5jPUoai27coUvAT`LbP{>Pa|Bof`AV&qQfKi9n!H*vidM|FC7 zU?UuKw0_1hpKh+ghB_Iq#5-21R;v0DzLJSI2(T`p(oCCrEJS}U?83V)14sn{&05K* zz`)k9eb+?7p77w5D!07uyD{OvURZ+SboAx%DkXMo;MR}jRbc=iV7W-Y)2JTl*?oH- zhitka_N4^MD};w^=(lGE_atV(P~+e!F~gqDn&b0wZ! zPa!9zfvV830gTRrg9P-Uh($To561^apQ^>Um{zf=NGBYdhPNatTiI+AwLcvv=c%Fv z6l&JH@;b=Pb5uic!{(x>#w{yMD1pKqgp!_|?h*;sU(Eh7nO{Z+rpg9V?u7zH>gUZB z>ii2jT)=+mUK0gG79CJ4nIBaDR+$;hW|c;#t+zkpP7D@}<-Qu4P$qX|3tE1aQFnbQ zTbZ7!pPyoSF7GmJVCh4-MyJu$O!FWLzKZGHPonUknTd*praNBhaOY9b0wL5$sx#XB zN}Rk%h^72Zqp!|QCTW~tzMR--!hQ6vlxeO9=Jd1YdSn`^kkX+Ozuj!szP_9tTAUT% z?n;({1pC#VOW0xq*@JbhfN&{t$$}=ngQB+1s|uwQcI(76G`d{(fO-F`;st4IlB`>^ zxe|R%%=kwpzG8iDcB3z5o%9skOrO;A0#uv&EEzsBBQ*(I*4*V+=;_4LS|76cEEkgt zqISiKS&Ytze6khRLemo={#nS+@Flj8{57CgRw+Kkmj~?OK&&Hq%caohxLtqk73%YWi%o3qPVFwTdNByZ)S+aew2UhuQUl zs?t=pRcErxM%ObiYrC^6GA!1h0>nU!BV8hPBk55S77uJ2;mzO99-4O8E)%8NvqWh< z{5VZF%rrOnskmS%4grhGkb8J`h8UoYx6JX1nO^XJDo;I7AFAlA@-@dK@PT90v!}Y@ zDKW|t?j0S;A~&HgS(poc_Qv%PMN@83jNt>7(n@y239-mrKdT1FwY-$(L)Y`CJBuRc z3rtL*#8>Q;4Y>MM>oqX}h|mBIBGa3-qKgUZ7oFB!t!k;(fU3DA=v#mGkuZR+xz}r* zBx(Yqxl+NxjJhr?jKT; z=dEb3$f|jDDYX^+%~N6DD62O?i=VTGU6lXfX+h(N;YE<{yL(>wc3yV4n4Om9g#wE4 zmL8M_>jEP3u+J+%)-SRLIF2f2N@0AS6G^JSw&X2236x`^)8bJIc!A4%{RBnN;mT z{`&pNMsP_W4Yb#QNpR{+$`2WQ1&D~IdgBHzXMhxCLm6uk1O&;z_j~r`7hz|&2x8a$ z{9s>2Y{Z5qlN%C~tN@5+Oe^IiA3}^Yk#TuI3|bQdnw4{65o^V?L4^=Q?2Tn*T91b% zGh$94@FlhtA#$bh(-%4bD!g%mjh^5zv z(m)Uf1ZUxD>DzQ<3#W9Hjy4(l@1H$n?Q0{~<(G9v10IR-l3tab4f{KIac_e=b7Fxr zLJo;km9Y4g@eNjrAS$&=BdJ0uoJ-S1vr9LF^)H)X8PK0xdB(RQ69d$7j2AIdGOYbU z1}O;BHH!0vM)U2tiN(1ZG!<%sCZyS z?hy$NU{7%^1VS&Qq3bvUFe}?)^JGc@L)zjb!vuUOq#7PlCiRT06-aTJWTGyH*m}pT zL4KuA_>YKSm~xBSUu!_@3(PPQR378}L25HQh()_L)k8cpw6~jkHHrLBsrKz0`w+ap zVAudXOHyY(Jr2%NpxHqJ9GbShP3 z#@GwJ19a%ffJk1Q89dn@L#44~ie;WP?Yf}+j}qxv!v5-kcw;)-25ib3c25fbIll5@?ly5Ahciomx3-E={eu+$#qEd3;m{?(FvsSNXOhQ zS7Z}6Rvdvb#tg6KrKqj(R7zV#Tv@NhpoEmPH=v|~ZHDGCxCFvc{9f3-X2$m8*mhTQ zT-=-OwtcGY-dk5W3lMTs3}lwZ+V5mIUoF2(j#S(2W3Txb&Wmj!Q?Ul)&~45HZB(F( zPY4#_ilO~-0yiiETh}jus{eLySSV_c5x{0`ZAz6WhFO zryyNV|NfM7a^nbjDsyKW;$vdE$(eV2am~q zVkX_;v1E4jm~rAp@2ZvDsWj)?1!OXl_FORu-gw|*2Iq+UMVLgfd8(a}0V5{Zq6&Pl z3x1bq9_8Oo1WJ*}W$150yp;`ZPsb-}B6%G=YIx<1quEKM$1-4Uwb`^qK@q@7q^N|E zh((%40CXd6FaJv%+O_uL0QW|QvdHRZC_&nvDIbcP()V2goFef{oPjY!X?g@+rv}04 zvz!wib_!fK)}!qqv-sO0CF~ykL}Kv+lRFb`m9KvKZ{FFA7(uIFqCo6z;!zJt z0s@}xM0pbZIz}qKSQbcl-riGBnaORA!Z5-#4#XLmP>CX4Z>Fhs@`y7|S%U^=OAVHU{=K z7!_s7IfzOA;6UEN-h@mDmd<})H=eN9q9=6C`mjSwaxG`^gx<+2ghulZCd5B zwFGAI>|=v2O`_tmNZlP)!iTReI=VD6pe48y?q)LaC7hknaVkY7Rw(+)1%6ESgp`075x| z^QJT>{!W8~^aNZY2gsW3{2z)oiOe^PM4?{&=XNgN9MKGPJx?u4*s+QO(bvk;<b$9e$R1)T-&FokK{j1)j%%Sp zJ^E*PR~Cc^k>3j5^Y&?|kr}LHX$WC9A``?RZ4ZFG{c4y+%bKGLLESLl{&$g!opZ)h zjnoMoa9QB#`U2Rb$qJiHLlw+94kJoD=GqnEkmLx&dBgr+bJJ&z&3ajrf18a)!`+bE zVUrlgVgK=fd3)vgd;Sm@L2x+XcC$qlOHHMCe5bI>82`N+& ze1ygHR!@uPH=Jf&S2x2HXSP)Tp7+3sg@Y-VkZ}C(bm;e2Rb(OC3%mO$O(1Pd zioDbuJR1E`g~~BEPdO8R+kzYEUgq)yXZ9ysyHVV04xV!6{<3v9%Kgpd>CWWuwsNDp z&)hxb%>8BSZj}3*%hR37-)-eacb~a?%9;Di*4-%gHr;;JyPLlU^!m)^Q+B%00jfTO zeaasD4v_1xwD;%L9hu1hf}iK&`TMC1{=g(w{X}B<6F+B!9ss0;RK;4e0Y0emCDqqF z^;t| z@B?6tvvn3_ibC}Z`mrzl(j+TK-7k0+T;ADo)H1cIG3F%<99;tWIOe?ZeJBgBe47*svxE5))wu#gQ=l@n^iv zK6KM%ajN7UT{rW@O&Metuao9<%Rcab7SMd>ackh?mOl&g-S7w-Jzm3WG(xzH!TGRR z27FhI=@mSbHSYgG=e_a*-nl?TD&+GIiy%v=*XX{vVlPrO9W(vET+=x&&HcW%mf5~S z=22|5_JFa}^_Ow;$3I|iT7)kB-8HK5z3@AsIr(`1!k(QOy@!L$-JGpv9W;eXb9uAA z?5G!av+DSmackz61@S1R#m(X)_>pr3nJw+oc)1UT(T{9maRChM{ z_F6r%9&H0woM`ZoU#{(lzU90cDE?lxuj}izjg;O<0bir)Su@^OI(l3L zhIv>Tvb=O}I@pkV$s^qjJ>)lxy&umX!@XTReAf~hiSpSAWh1cr|AC@%x0r|MyTq7f zMMr;miE(v?0@og~_}jPL_TR#_-$6EBO)dnupO|WRj&`2DX&$f2WByYw$}(D?e9{jc z$JW(Ko6hswe13YB<7wWKcL9aHcO|r^#~ZOHGCNCwA8Mdk>4V>yc;}~6471P*x8bMU zFLYvzkdHKR(<6Gv9Nqw)N6P-2ZrPEw6VF{s0pmr>{#4zI=iL4>v#*@{ z{{IbXe!4OnEH%rCwd-d=d9@^>ysMzzD!wwEwXW}~@p)ErjETdCv6M@`_7pIdca zzgdKtj=8D2vp_CP-X7&g=oP+wS*qqZCQq4m!^rTVx9|JahTMwCvWvv?1Vh7s5W6+b zTI7g)?_uid$Ybnm7~&fS@*iublPP45R?4i`xM3?}6W-t0pxS>&Oa1(TeSn;{+w0Sw zE7VOt`7QH(PCvHQ7FYRaIooWWu*ZPW&pYS7*Mx>zYRm@~yLq?fw}ILFE43BQ3>6nSY~}MZO2E9-zdW}!;cHa{!jX| z$eDjGFY5#-Ps6pn`lVk8*7|6f_vG={=ybOI6XW^Sy;)#$S>xz$wuC2HVU~e8WVZPn z>Vw~STa39eF3$_V@}Y`#5q6yVKEu2XgRFEOtwDb~(7th8So>SG{3IT|ju^b~`-s>A z_a|{ek`wRt_qq|@*P~sN_rb07!VWTW53JKn{4Po^7{rZ@ebwBapuK^jvgd!ZEU4Fv zpX$bGE*x8Wcpa0q^!`S?3xK9F?B$eFOivj;!F&1R(ZH#&WZ!gB4=UQJ6fF}uYve=)h%FBt>)wmJ3Q z9sBF}Z@IkHj#>p-A2kh}k8Rj%`olLF?j!q6x34pNkjW0_>Y-tt(Y!9woEuWP;ctJk zEfTzUpMnR~ca%P;y-qPE?}qwxt9I%I#=}Q+E#0@FPLtE0jPmKYaFvUex)1a_ijKDg zA63rLPSNKSeNNHm6n%cx()8mQZ_ZS5cRj&JrD^gPj;o#gxJqBCg^okc zZ+tQ!1ITbJ_USvHDHVtQ7-zlK8(?P@XP>e=1l=ER-_XatHL_e_U+sz0m01p7J+qN- z=asS7AJdLnb#3?>o$x|-f_dSZ6kp=f_TJ_M&{x%P1Os6?O4P8> za5bt@z6b5&^BeLT@lK3y{+aE7K~LZ6on5E??Zdj1E?=UN4`wOuc)wWrDkJKA2d57` za+zX)m+AQ6$7;^l0M?BC3I51vzr#Y2>S-cR*vC`f0;hYPFiVDfdu& zp77_GV5)(|&F-7%iFwP_Yzdq3zU^3g_pA2+XmuyO!0TAJtGt>Gqn2jriz@S|ZLG}o z;b`6ypx{C778Gnl*=mjm9gIkAtiSP%N&G}Dy2XF>18?X0?}L0F-wx|CBhJonjEM~} zwo}3S;(Y4YKjvHy#n)-+pyn_i;{H?K)-J_MGVo&goYVaT9P@J-M@jh8aa(XO^VOMq z2{vbf6Tp)iakj?kHlp`j`bNrkqswrwoY|j{`AM9G6BptcA#yYWIlh9uSfI6QsjXQ{ z`6E2Rub8?zgGJxz9{k$FxaActVg8ZVr(qrl=Wy*jooIof+ow3FJj$FP#+8)bSzyYE zj&;|=EvNW4E%Y0b$rv|vvC=bhDRhmt!cviuzT`u^UWL2(5j1+2SeDP*gzX%!dED z;>Z{)rS72-ReY))y8C+0C1tcNkTo^u|95stPdP{f!`+OV1di3TM28)<(YJeaw!>Km zt%B4BV|<-OTztcF_%I`ug3u`p^Xi(OBjyKX(LuCYuD=jVxx>#-=LHjnH%CdgA?J7g zA@W0|D1LvH`Oa|tR4?nrD5q2Qow$uRbB0Xiq7=Vq)G}oD-V4D?9u2EszIuSh!OFk5 zdCOMH`Gc4|lFr?X7`woh=MiL|Z(Li1B@KsH{|EBja2hP$^B*F=4*A(%Tg5QSdkcFP zX%3B){RSJFt%&Gl!_IrX?Smfoper|W_c6^s?~db-sm0?UPe;5g$`o?dh4_yl|2wUp z>hGA#^u(c8sAy-DxK1};M&tGSfFIzl`C_)Xq(g35poi(70WPOP{3hRb7pJPji61rq zwwBpSuBvkpv0A?`P|l+2H}|gd>9744i`0;`7g?7yK8`MKmAHLpfOn&(pMeE^bNn}- z_5X#1Ikpk0y(AdxJ)Cj&b!-F&?wZ25ZmXef-dIi#2N_=Q-z4Ha6rUlsb8vYV4+rq1 z9x%@X+KFjNaCY_h5L2<~tn7>0i9tRboiSVUJ|zGyCNsl;fpH+}$sTXLutfed>n>6t-3WCc0 z_n%{!y@U_>IYcUcJw=NG?OmyjTxFKRo}PpL@-M zZzqLtMYK$&c91{*xqP1(v6H`yt-d~i--eGh&+9Q84Kr~U6MnRwr#9+m?{svm0ej!u zg3p;3WyhtZws$MAi_2kcvC0e0ElUjitwn0~S^A>}S#C!8(zSYc-PK1OKmV<_v|yLY zZVJQweu%;d(Yv%9rv)p zhPQ>>VGljgL7cL?^t|NBq4(x3bx|qe^w8q3w z#OYiQ_NeucJ{O?1%Vj3*xzVmx4r@7l5A=orZ>bWzX}G}Om-eHzL!ahpqm%FeZ6CnJ z&p!;%V)nhKLy`DL+Yv%_k_z`A2sUwd=0#z3K{wwXdOdw#{m`(j_9SD!ErD&VmLOuTP@S14H0Y!&-x^v4f-eWl^^pzS#Br!NrOMd95@+us*d9urF$l~2;(B%8V4 z9$y#=m5-n5@J#+Ym3PYiVaXrgJ7Y2S|F@W~lec#I(RBii(J@}zH93S1Z<88ns+TJF zrTrCxzQ=}lVs|JlnR6a!9j!UPIR1IGOPOVize_yl`^`gZvAm9RK2KA`HhXNs$2`-& zyZsp&^-A5rkCVN8;AhS`kF?PPUS5t*hd^H+?D$?d9El1Kw!JKI+0T6RVbt9lrkEXQ zco>r>&gzu%6Ls5gs97aGhPyD6tYRgO5S#@x)-7oA?WYrYtpCDUeZ2(#Lr3TO{n2!L za?yE8TlZq1mT#kuses{kT=-Wl`Tc}a{_ZIptXjVME2c;JPgr>Ty_#uYJbPQ+pK{^H z6Y6ylURNsk58$UFxdZPG0sXTIbWBTRQw2B?&HV{tY}{=H2tl^ z|Ee!*D{aM|j@*o!<)YBi;M|3cQ2qu)?5RIrjy~tLBWUM!;dB2}M=`($ANHznQo`)R%wFBvWFwe1IXhf!luzY3a8it{S#x@KT|(hz@A)zZTg z?u0%nT~g>QI)=*0wI9LdZ}V)R&J@5yob>-251)WI{{-6@*Z{Ctf3?8=_d{YKa9hu9OF zmHHz%b*?;TUzm5^8Hk)9a);GaR0FN_8GwBn9VXrXNAuNJYDo#jh@uaC3U2z(FO*z zuis>H23$D1%!KhN=Qs%)ft**HPRw6>4hI+Xr&oNoPU-*f?A8;hyDuILjkkVrHsmxM zQ-wL7IQwy8aF$r})5uu$*B_qo;^;S$np~ghyLcvA`>RA6(P+I)9Dbz*3vg zEfsOT(t1doHhyn%p0j*&C$lZ^Xp6#vv}0Ngum0l=TlFG$IP1jo@^Ltw%dPU4M7&LN z7df(juQAEFKS6S2hAj;AMSObw!aZRysusGRa^iJy9;STBb;l}G zyTg2z-2eJ-$#>~Fqd@*2qfg@4%e*{|bj{c~oMPUgGzDIpBmBv@-yiREXr{?g*n_ir z*x6e=V5Z@hbA|w6IR|@mfjd)!{-@Sn_We6OIBAXBov?%L|9^G}cGc|c&)hq&Z@M6G zpikQEcQ4;J4kl_jz7(XjVnk0d;O3)>CB>i z3!EQ%`nH(BS)hYsxCamX{IR!V71UmUxtsn*y#J!!->9?y-dy^Rv@u<0GOPd#{fou) z3G694L&>E;o!2O@9E1GHGmQ)JnSTnoUQgUk@g#g=5C^GCHjO_zntwpVuQd=igTnic zr0WbH1UuzEW7sBNro*7*4>;;G5RDvHL-;@KgM#q(%3GcoeNc_vN$5>qx{kYqgE_a* zHcNfk)F0Bm&;JpM?m!Co{0QGnYB>sEknBcdjDMEGfC=80!lXw{tREaj>^2-;^nPB z3APb+(SfWsDe6?Q;FHnkgdIDDllJmJ!&rGk8Gpp#`9JsRUeC`Xc``K_?Wg1T*!m6e z)cHTvb!EVi*6=3UxX3WTE)-!$O&lSUV)BC9K6PCq!Et53L<1VzLEXeoBdxRc35IR* z-g1WaeZ8kTUwa)5F169&pxUp_A9#3GtGx@Psa5wbv{b3JT0GyiRW=kAnHJV9Q$q(% z&~fM!aTV{?<8_H&8u3G)|HJVd{yvEEYdtjqH30rQG#HV(3yW8XT zHWg8fsP~xl>=|fVAE&0xf9S@ZxBQ1P59+M;Z*}s;V@*=dfzD<780*KIu$%c7kmg1o z!h``g;hZk?wHvD&oht?4S1xnM!6;6SLm+P&Lh@d2jrT;xn!|K-E*VG^9Ac)soP1uv z(SN%4=W>A#c_Bnzjzafn`Y&DY;B4yoEZoc;X54ISzp_3d?$11Lp@!W@r#EVr4_PN4 z$i;Tum2pxx|A927v>3c+(LeP+s=%L}r}C5L<#`FXmPXI!0PWm71MmF&*NjIPH1$0p zEx#G#4c=Xd;o4ucxy5arMUuF~+BaOx`b7JD+s8`Dzr zH(8y;NtDx>webVL=YIHxqGs;!?%^eXiG6;1y8fjAJ4m1`zai;>UmnF*C;c)h@_=&Z zUgf{6Y@KPi*ZhUkyZCYcOfa2C9BS#sfN%E_*0nV^B&AjSPn>sh`*VqakBhm-=&JeF zZyOfIdA@!64F;oQe9T6m*$u&DAfz_klNYFS#%r7)&2^nKZk3T!>01IYyUp(zt3f5 zg724t{}+mF4{r8nFrV9;esa6fAq8he%SrroS*&TG+BJ0N5z9_I*nX(!uUDHHKds^) z?s4WI%(uF|_jB_NI&%R3v7p;$`Qs$``QLn&2PEyylKuA1^Go&3W!!IEW&TT;1hD&AF%hL+Yh$XOL3!oJ(PxVHo%dcxtofe zT|45K^x#3{j9%;T95UfLXcZ1)-mTJNYO_O2{o_u<^?d$lA1?ckc=;KALGM|=I$i$& z!WY{^-bnWyZ6m+0Ky%3uZeZbdQCiZ6zlJp6TCGR^ZSadbk3n1Sbo`lO45vfeZMOFN z7hLuAK|ClziFj_lC(kzBnE7Kr@bLYr;0ui8wz8A=PvZYN_%Y_`gKXjr z@BT6GX3kpR7CB=tl%gJ4Nv>~`_Ox>c*~x_%dC6@BkX_NWqnu_G4A1*>zRWi~YW&j1?EmKL z*jBwGBIC4#{hHG+#fyO$FZNmV$oTK}SNKh9o|?t~I+s3ieMjWp(Q@!_hw#uepI%@P zYp-C>`WF0xzXkp7`yVI$at6z!S4!xU3B0a?FAa3c*x!TkRQCy6n!!Gpe;TGA(*5I2 zhMnE*{&-7R^US(g%&hJgfbuv1XA)2NuhI9k z@f7T7@o^&0;ljpCruvA18#A#_ll(*h^;L7bJATQPcLJ3A489`F@B%S~<|OguwxR!x zQieZKhMU)}I|Ufq?T7bhil4+C&^{!>AAf%BQ`7g$F-KM;wasNYI9;1M$r`of{FILk zG*-xrgY486v<z@_s}AR$b>6?0WF?vo@tP&nG#K06V`GxKHiSTul8Z z3gmKNpYCSgq%A&y8NnaU;c!;pnx_K_Pc#hC!%_Uhv-v7|$HS$KXCZC^-F(1gVq1JH zmJACc?!No(*DG*6(z+TYz29V4@q5=|%KPyAn*qi{*d_8|#E)hwbDdQjhq(Bjc;Lr* zn|yzpd*V)GQuUK?Q+8xU_oZIcRpLW>C`GSwSGGnH@7^n0#M!Ai4sr8o~ z!-HNaS^YA_Ysv|a^)=*-|3egQaKheKx0n5J?vFlunK^O!?a@Q?(|DPF;@UI{#Q+N4CQw77T`<^yHY|fcdboj*ZpRmH97x$kc||05#K09zAnK` zTWZ#H)GezS1oLp^pO!hgHfX@@|2ula^wHU$r8ww!_QJkLc{e(aq?1>F`@_!RR=+

aDukYg?JtyU%9i1=*#6L;?n9gUJUHyv zV&A_A8-5w6Jwv!lDfGI}^P~5`i$34eR9}_&$9<4E%){)~n;dw2wE=%m!LS1aI~8O9 zVpwF6TY`@d|76hbNxi1J?rs}(N{ZEBY3ZDN#L-Si=#;&fdwi)K#-;1km380TFJGgs zHJRSqoXItiF7u=9eU`(aulAcd`K(_@z&!c?xVj*=g?5~{3NP0J>(1)icfYaMLaY2Af5PXw5>&^4Bq84=H$mDNUvlsDZL5P>AoJMqx1B2y2!DZ`i5;;~*!a=;R z7VvJ7*_+{sT|l!!S{G>Cdeezn`3$xJR<*#h1`CVtiuAonz+WL_>#^tZI7XU>3f9v; z5Z6g&oE)?Rjh)oH`^PEXF4u12uc!YRS_mHr9{c2f21b5?%#`8yVo%Fm0FrCE*JWV5 zg1?{SWjXYW6F&w({RR0O;`GCQ6}-_W9_O~Am#M$r54v}m&RKFiz|ir@;;-#HC-L~( zXas4RdRi@$p!q(Q2Rt10lsSKgKcwxE&xoCWgw2}GuNb`8_{q#oRc{g)8?wVMUeXKf z`P2OLKP7oCla`aVc<0XDwIEb(ra?$ddBPaH8_l_gakxj6t5!^nZj}yt*0eRI-sAY^ zJ>HmLd`xnD?@hSPr@GOm-MnbN*88Sv2(j#SpennZSo9G;Xek)*M%hL8@;*U_^^Ez( z4>W=tu+xXUcH?oQxuw{Qzp^<|qObJbOZj(=Gsnv#Kc2f8mV5NZhG}gYF?TE4?~j?x zCj;;y=T_z_af94Axa48Gr_Z98+{mUV(i`DXjk0dC*}JG47RLu mpOkz>5O}9ZJ*?WzMh*`jVjuH35Jnn4W$|N998d+oG-%)V8>FQG literal 0 HcmV?d00001 diff --git a/scripts/analyze_iomux.py b/scripts/analyze_iomux.py new file mode 100755 index 0000000..7051770 --- /dev/null +++ b/scripts/analyze_iomux.py @@ -0,0 +1,36 @@ +#!/usr/bin/env python + +import re +import sys + + +baseaddr=0x53FA8000 +pinfunc="/home/markus/projects/amx-tablet/linux/arch/arm/boot/dts/nxp/imx/imx53-pinfunc.h" +memdump=sys.argv[1] + + +re_define = re.compile(r'^#define (\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+).*$') + +pinfuncs = {} +with open(pinfunc) as file: + for line in file: + m = re_define.match(line) + if m: + name = m.group(1) + offset = baseaddr + int(m.group(2), 16) + mux_mode = int(m.group(5), 16) + if not offset in pinfuncs: + pinfuncs[offset] = [None] * 8 + pinfuncs[offset][mux_mode] = name + + +with open(memdump) as file: + for line in file: + name = line.split() + addr = int(name[0], 16) + value = int(name[1], 16) + if addr in pinfuncs: + mux_mode = value & 7 + func_str = pinfuncs[addr][mux_mode] + func = func_str.split("__") + print(f"{func[0]}:\r\t\t\t\t{func[1]}") diff --git a/scripts/build.sh b/scripts/build.sh new file mode 100755 index 0000000..2f34fe1 --- /dev/null +++ b/scripts/build.sh @@ -0,0 +1,22 @@ +#!/bin/bash + +set -e + +echo "BUILDING KERNEL..." + +IMAGETYPE=zImage +LDA=0x70008000 + +rm -f zImage-with-dtb uImage-with-dtb +make LOADADDR=$LDA $IMAGETYPE dtbs + +cat arch/arm/boot/$IMAGETYPE arch/arm/boot/dts/nxp/imx/imx53-amxtablet.dtb > zImage-with-dtb +mkimage -A arm -O linux -T kernel -C none -a $LDA -e $LDA -n "Linux kernel" -d zImage-with-dtb uImage-with-dtb + + +echo "BUILDING INITRAMFS..." +RD_LDA=0x71008000 #+16M from kernel +mkimage -n 'Ramdisk Image' -A arm -O linux -T ramdisk -C gzip -d distro/initramfs-lts.cpio -a $RD_LDA initramfs.uImage + + +#make INSTALL_MOD_PATH=_install modules_install diff --git a/scripts/devmem/devmem2.c b/scripts/devmem/devmem2.c new file mode 100644 index 0000000..e84f045 --- /dev/null +++ b/scripts/devmem/devmem2.c @@ -0,0 +1,130 @@ +/* + * devmem2.c: Simple program to read/write from/to any location in memory. + * + * Copyright (C) 2000, Jan-Derk Bakker (J.D.Bakker@its.tudelft.nl) + * + * + * This software has been developed for the LART computing board + * (http://www.lart.tudelft.nl/). The development has been sponsored by + * the Mobile MultiMedia Communications (http://www.mmc.tudelft.nl/) + * and Ubiquitous Communications (http://www.ubicom.tudelft.nl/) + * projects. + * + * The author can be reached at: + * + * Jan-Derk Bakker + * Information and Communication Theory Group + * Faculty of Information Technology and Systems + * Delft University of Technology + * P.O. Box 5031 + * 2600 GA Delft + * The Netherlands + * + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define FATAL do { fprintf(stderr, "Error at line %d, file %s (%d) [%s]\n", \ + __LINE__, __FILE__, errno, strerror(errno)); exit(1); } while(0) + +#define MAP_SIZE 4096UL +#define MAP_MASK (MAP_SIZE - 1) + +int main(int argc, char **argv) { + int fd; + void *map_base, *virt_addr; + unsigned long read_result, writeval; + off_t target; + int access_type = 'w'; + + if(argc < 2) { + fprintf(stderr, "\nUsage:\t%s { address } [ type [ data ] ]\n" + "\taddress : memory address to act upon\n" + "\ttype : access operation type : [b]yte, [h]alfword, [w]ord\n" + "\tdata : data to be written\n\n", + argv[0]); + exit(1); + } + target = strtoul(argv[1], 0, 0); + + if(argc > 2) + access_type = tolower(argv[2][0]); + + + if((fd = open("/dev/mem", O_RDWR | O_SYNC)) == -1) FATAL; + printf("/dev/mem opened.\n"); + fflush(stdout); + + /* Map one page */ + map_base = mmap(0, MAP_SIZE, PROT_READ | PROT_WRITE, MAP_SHARED, fd, target & ~MAP_MASK); + if(map_base == (void *) -1) FATAL; + printf("Memory mapped at address %p.\n", map_base); + fflush(stdout); + + virt_addr = map_base + (target & MAP_MASK); + switch(access_type) { + case 'b': + read_result = *((unsigned char *) virt_addr); + break; + case 'h': + read_result = *((unsigned short *) virt_addr); + break; + case 'w': + read_result = *((unsigned long *) virt_addr); + break; + default: + fprintf(stderr, "Illegal data type '%c'.\n", access_type); + exit(2); + } + printf("Value at address 0x%X (%p): 0x%X\n", target, virt_addr, read_result); + fflush(stdout); + + if(argc > 3) { + writeval = strtoul(argv[3], 0, 0); + switch(access_type) { + case 'b': + *((unsigned char *) virt_addr) = writeval; + read_result = *((unsigned char *) virt_addr); + break; + case 'h': + *((unsigned short *) virt_addr) = writeval; + read_result = *((unsigned short *) virt_addr); + break; + case 'w': + *((unsigned long *) virt_addr) = writeval; + read_result = *((unsigned long *) virt_addr); + break; + } + printf("Written 0x%X; readback 0x%X\n", writeval, read_result); + fflush(stdout); + } + + if(munmap(map_base, MAP_SIZE) == -1) FATAL; + close(fd); + return 0; +} diff --git a/scripts/flash_sd.sh b/scripts/flash_sd.sh new file mode 100755 index 0000000..3ef879e --- /dev/null +++ b/scripts/flash_sd.sh @@ -0,0 +1,19 @@ +#!/bin/bash + +patch=uImage-with-dtb +rdpatch=initramfs.uImage +device=$1 +echo "Patch $patch/$rdpatch to $device. Sure?" +read + +echo "Flashing kernel..." +sudo dd if=$patch of=$device bs=512 seek=2048 conv=notrunc + +#echo "Flashing backup kernel..." +#sudo dd if=$patch of=$device bs=512 seek=40960 conv=notrunc + +echo "Flashing initrd..." +#sudo dd if=$rdpatch of=$device bs=512 seek=34816 conv=notrunc # 2048 + 16*1024*1024/512 +echo "skipped." + +sync diff --git a/scripts/on_target/boot.ld b/scripts/on_target/boot.ld new file mode 100644 index 0000000..cdbe3ee --- /dev/null +++ b/scripts/on_target/boot.ld @@ -0,0 +1,45 @@ +__heap_size = 0x80; +__stack_size = 0x80; + +MEMORY +{ + ROM (rwx) : ORIGIN = 0x72000000, LENGTH = 0x1000 + RAM (rwx) : ORIGIN = 0x73000000, LENGTH = 0x1000 +} +SECTIONS +{ + .text : + { + *(.boot) + *(.text) + *(.text) + *(.rodata*) + } > ROM + .data : + { + *(.sbss) + *(.data) + *(.bss) + *(.rela*) + *(COMMON) + } > RAM + + .heap : + { + . = ALIGN(4); + PROVIDE ( end = . ); + _sheap = .; + . = . + __heap_size; + . = ALIGN(4); + _eheap = .; + } >RAM + + .stack : + { + . = ALIGN(4); + _estack = .; + . = . + __stack_size; + . = ALIGN(4); + _sstack = .; + } >RAM +} diff --git a/scripts/on_target/build.sh b/scripts/on_target/build.sh new file mode 100755 index 0000000..3c95b9a --- /dev/null +++ b/scripts/on_target/build.sh @@ -0,0 +1,10 @@ +#!/bin/bash +set -e + +CC=arm-amx-linux-gnueabihf- +${CC}gcc -nostdlib -nostartfiles -ffreestanding -T boot.ld -Os -o bootrom.elf main.c +#riscv64-elf-objdump -D bootrom.elf +${CC}objcopy -O binary bootrom.elf bootrom.bin +r2 -A -c 'pdf @ sym._start' -q bootrom.elf + +mkimage -A arm -O linux -T kernel -C none -a 0x80000000 -e 0x80000000 -n "Linux kernel" -d bootrom.bin uImage diff --git a/scripts/on_target/main.c b/scripts/on_target/main.c new file mode 100644 index 0000000..3bfc05b --- /dev/null +++ b/scripts/on_target/main.c @@ -0,0 +1,30 @@ +#include + +#define UART0_BASE 0x53FBC000 +#define UART0_SR (*((volatile uint32_t *) (UART0_BASE + 0x00))) +#define UART0_DR (*((volatile uint32_t *) (UART0_BASE + 0x40))) + +#define UART0_SR_RX_DATA_EMPTY (1 << 0) +#define UART0_SR_TX_FULL (1 << 1) + +/* +// Set up stack pointer +asm("_start:\ + xor sp, sp, sp;\ + lui sp, 0x80100;\ + j main;\ +"); +*/ + +__attribute__((noreturn)) void _start() { + uint8_t state = 0; + uint8_t c='a'; + uint8_t opcode; + uint8_t *ptr; + uint32_t length; + uint32_t sr; + + while (1) { + UART0_DR = c++; + } +} diff --git a/scripts/on_target/send_image b/scripts/on_target/send_image new file mode 100755 index 0000000..9b50231 --- /dev/null +++ b/scripts/on_target/send_image @@ -0,0 +1,28 @@ +#!/usr/bin/ckermit +# usage: send_image FILE_NAME OFFSET +# e.g. send_image output.bin 1F00000 + +set port /dev/ttyUSB0 +set speed 115200 +set serial 8N1 +set carrier-watch off +set handshake none +set flow-control none +robust +set file type bin +set file name lit +set rec pack 1000 +set send pack 1000 +set window 5 +set prompt Kermit> + +out \13 +out loadb +out \13 +#send bootrom.bin +send uImage +out \13 +#in 10 ## Start Addr +connect +quit +exit 0 diff --git a/scripts/open_serial.kermit b/scripts/open_serial.kermit new file mode 100755 index 0000000..a183aaf --- /dev/null +++ b/scripts/open_serial.kermit @@ -0,0 +1,21 @@ +#!/usr/bin/ckermit +# usage: send_image FILE_NAME OFFSET +# e.g. send_image output.bin 1F00000 + +set port /dev/ttyUSB0 +set speed 115200 +set serial 8N1 +set carrier-watch off +set handshake none +set flow-control none +robust +set file type bin +set file name lit +set rec pack 1000 +set send pack 1000 +set window 5 +set prompt Kermit> + +connect +quit +exit 0 diff --git a/scripts/patch_sd.sh b/scripts/patch_sd.sh new file mode 100755 index 0000000..7da568d --- /dev/null +++ b/scripts/patch_sd.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +patch=$1 +device=$2 +echo "Patch $patch to $device. Sure?" +read + +sudo dd if=$patch of=$device bs=1 seek=1048576 conv=notrunc +sync diff --git a/scripts/reinstall_firstrun.sh b/scripts/reinstall_firstrun.sh new file mode 100644 index 0000000..0d75474 --- /dev/null +++ b/scripts/reinstall_firstrun.sh @@ -0,0 +1,12 @@ +echo "amx-tablet" > /etc/hostname + +pacman-key --init +pacman-key --populate archlinux +pacman-key --populate archlinuxarm + +pacman -Sy archlinux-keyring archlinuxarm-keyring +pacman -Su htop sudo tmux lxde mpv alsa-utils libgpiod bash-completion firmware-imx linux-firmware-qcom + +echo '%wheel ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers + +echo -e "MANUAL TODO:\n\t* Install SSH Keys" diff --git a/scripts/reinstall_sd.sh b/scripts/reinstall_sd.sh new file mode 100755 index 0000000..7e1eda5 --- /dev/null +++ b/scripts/reinstall_sd.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +umount /dev/sdb2 + +set -e +mkfs.ext4 /dev/sdb2 +mount /dev/sdb2 /mnt/temp +bsdtar -xpf /home/markus/Downloads/ArchLinuxARM-armv7-latest.tar.gz -C /mnt/temp +cp -r _install/lib/modules/6.12.0-rc7-00189-ge8bdb3c8be08-dirty /mnt/temp/lib/modules/ +umount /mnt/temp +sync diff --git a/scripts/test_patch.sh b/scripts/test_patch.sh new file mode 100644 index 0000000..5e9b48a --- /dev/null +++ b/scripts/test_patch.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +dd if=/dev/zero of=test.img bs=1k count=32 +dd if=/dev/urandom of=random.img bs=1k count=1 + diff --git a/scripts/upload_and_flash.sh b/scripts/upload_and_flash.sh new file mode 100755 index 0000000..7c58d7d --- /dev/null +++ b/scripts/upload_and_flash.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +echo "Uploading..." +scp uImage-with-dtb alarm@amx-tablet:/tmp/uImage +echo "Flashing and rebooting..." +ssh alarm@amx-tablet 'sudo dd if=/tmp/uImage of=/dev/mmcblk0 bs=512 seek=2048 conv=notrunc; sync; sudo reboot'