diff --git a/.claude/WIP.md b/.claude/WIP.md index 96e530ca..b1d5b1c9 100644 --- a/.claude/WIP.md +++ b/.claude/WIP.md @@ -4639,3 +4639,53 @@ These settings explicitly tell the VideoCore GPU how to drive the DPI display, b ### Testing - Awaiting confirmation that explicit DPI settings fix the display + +--- + +## 2026-05-06: Session 106 - Heartbeat, LEDs, GitHub Issues Workflow + +### Accomplished + +1. **GitHub Issues Workflow** ajouté à CLAUDE.md + - Synchronisation obligatoire WIP/TODO ↔ GitHub Issues + - Règle: jamais de fermeture automatique, validation manuelle user + +2. **LED Investigation (Issue #39)** + - `CONFIG_LEDS_IS31FL319X is not set` dans kernel Debian + - I2C bus errors (mv64xxx_i2c_fsm: Ctlr Error) + - DTB Factory GST n'a PAS la config IS31FL3199 + - Différence: GST kernel 5.4.163 vs mainline avec support LED + +3. **References GST intégrées** + - `docs/references/gst/mochabin-release-v4.10.txt` + - `docs/references/gst/MOCHABIN-BOX-block-diagram-Jan10-2020.pdf` + +4. **Issue #38 vérifiée** - Navbar health checks déployés + - `sidebar.js` avec healthEndpoints + - Classes status-dot active/warning/error/disabled + +### Technical References (memorized) + +| Doc | Location | +|-----|----------| +| GST Release Notes | ~/DEVEL/GST/ReleaseNote.txt | +| GST Downloads | ~/DEVEL/GST/Downloads/Mochabin/ | +| Marvell Datasheets | ~/DEVEL/ARMADA/*.pdf | +| MOCHAbin Images | ~/DEVEL/MOCHABIN/ | + +### LEDs - Root Cause + +Le DTB factory GST (v4.10) ne configure PAS le contrôleur LED IS31FL3199. +Le support a été ajouté dans le DTS upstream Linux (torvalds/linux) mais: +1. Kernel doit être compilé avec CONFIG_LEDS_IS31FL319X=y +2. DTS doit inclure le noeud is31fl3199 sur i2c@701100 +3. GPIO SDB (62) doit être contrôlé pour activer la puce + +### Next Steps + +- [ ] Compiler kernel avec CONFIG_LEDS_IS31FL319X +- [ ] Ou continuer avec userspace i2cset après fix I2C +- [ ] Privatiser repo gkerma/secubox-openwrt +- [ ] Mettre à jour licence secubox-openwrt +- [ ] Deploy live.maegia.tv + diff --git a/CLAUDE.md b/CLAUDE.md index d8deeb36..a38c950d 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -46,6 +46,97 @@ Quand créer une issue : - Feature request de l'utilisateur - Tâche à reporter pour plus tard +### Synchronisation GitHub Issues — Workflow Obligatoire + +**Principe fondamental** : Transparence maximale. Chaque plan/feature majeure doit être synchronisée avec une GitHub Issue pour traçabilité publique. + +#### Workflow complet (Open by Default) + +``` +┌─────────────────────────────────────────────────────────────────────┐ +│ 1. CRÉATION DU PLAN │ +│ ├─ Identifier la feature/bug dans WIP.md ou TODO.md │ +│ ├─ Créer GitHub Issue avec label approprié │ +│ │ gh issue create --title "..." --body "..." --label "..." │ +│ └─ Référencer l'issue # dans WIP.md/TODO.md │ +├─────────────────────────────────────────────────────────────────────┤ +│ 2. IMPLÉMENTATION │ +│ ├─ Mettre à jour WIP.md avec progression │ +│ ├─ Commenter l'issue avec avancement significatif │ +│ │ gh issue comment <#> --body "Progress: ..." │ +│ └─ Cocher les sous-tâches dans l'issue si applicable │ +├─────────────────────────────────────────────────────────────────────┤ +│ 3. COMPLÉTION (NE PAS FERMER) │ +│ ├─ Créer commit avec référence issue : "feat: X (ref #42)" │ +│ ├─ Mettre à jour HISTORY.md avec entrée datée │ +│ ├─ Déplacer vers "✅ Fait" dans WIP.md │ +│ ├─ Commenter l'issue : "Implementation complete, pending review"│ +│ └─ NE JAMAIS fermer automatiquement │ +├─────────────────────────────────────────────────────────────────────┤ +│ 4. VALIDATION MANUELLE (User uniquement) │ +│ ├─ User teste/valide la feature │ +│ ├─ User confirme : "Validated, closing" │ +│ └─ User ferme l'issue OU demande corrections │ +└─────────────────────────────────────────────────────────────────────┘ +``` + +#### Labels GitHub recommandés + +| Label | Usage | +|-------|-------| +| `migration` | Portage OpenWrt → Debian | +| `hardware` | LED, GPIO, I2C, board-specific | +| `api` | FastAPI endpoints | +| `frontend` | Dashboard, UI, CSS | +| `security` | CSPN, nftables, WAF | +| `infra` | HAProxy, nginx, systemd | +| `documentation` | README, CLAUDE.md | +| `wip` | Travail en cours | +| `blocked` | Bloqué par dépendance | + +#### Commandes rapides + +```bash +# Créer une issue depuis la ligne de commande +gh issue create --title "Port LED heartbeat from OpenWrt" \ + --body "$(cat <<'EOF' +## Context +Description du problème ou de la feature. + +## Tasks +- [ ] Task 1 +- [ ] Task 2 +- [ ] Task 3 + +## Files +- `path/to/file.py` + +## References +- Related: #XX +EOF +)" --label "migration,hardware" + +# Lister les issues ouvertes +gh issue list --state open + +# Commenter une issue +gh issue comment 42 --body "Progress: Backend completed, testing frontend" + +# Voir une issue +gh issue view 42 + +# Fermer (USER UNIQUEMENT après validation) +gh issue close 42 --comment "Validated and deployed" +``` + +#### Règles strictes + +1. **Jamais de fermeture automatique** — Seul le user peut valider et fermer +2. **Référencer dans les commits** — `feat: Add X (ref #42)` ou `fix: Y (closes #42)` si user a pré-validé +3. **Synchroniser WIP.md** — Chaque issue ouverte doit apparaître dans WIP.md +4. **Snapshot avant clôture** — Commit + tag si feature majeure +5. **Issues publiques** — Workflow open source, traçabilité maximale + --- ## 🏗️ Ce qu'est ce projet diff --git a/docs/references/gst/MOCHABIN-BOX-block-diagram-Jan10-2020.pdf b/docs/references/gst/MOCHABIN-BOX-block-diagram-Jan10-2020.pdf new file mode 100644 index 00000000..f22b7f93 Binary files /dev/null and b/docs/references/gst/MOCHABIN-BOX-block-diagram-Jan10-2020.pdf differ diff --git a/docs/references/gst/mochabin-release-v4.10.txt b/docs/references/gst/mochabin-release-v4.10.txt new file mode 100644 index 00000000..70e0a8c5 --- /dev/null +++ b/docs/references/gst/mochabin-release-v4.10.txt @@ -0,0 +1,103 @@ + +Globalscale MOCHAbin board release note +# Release date: 20220829 + +GTI version + - gti-v4.10 + +MV-DDR version + - mv_ddr-armada-18.12-gti-2e20f5d5e9f00335ddfb694b01e0d801c16e8429 + +ATF version + - atf-v1.5-armada-18.12-gti-277d4b6bae6cf0b265b22597dfc118946fba72f7 + +Firmware version + - binaries-marvell-armada-18.12-c6c529ea3d905a28cc77331964c466c3e2dc852e + +U-Boot version + - 8k-rtc-b794de0054ee62935c1f510dc8ea361bc92ef375 + +Linux Kernel version + - linux-5.4.163-gti-a7e9e3c22288e178dad71bfe950bee61922f81f1 + +Hardware + - Tested on MOCHAbin hw.v1.2 +# File list + - bootloader for DDR 2GB with ECC support + file: mochabin-bootloader-ddr4-2g-ecc-mvddr-2e20f5d-atf-277d4b6b-uboot-b794de0054-20220829-rel.bin + md5sum: 0b744da8ebf1c9a889ec8b514bc77226 + - bootloader for DDR 2GB + file: mochabin-bootloader-ddr4-2g-mvddr-2e20f5d-atf-277d4b6b-uboot-b794de0054-20220829-rel.bin + md5sum: 90722d5cde5fa6c781df7ecb53f0d90e + - bootloader for DDR 4GB with ECC support + file: mochabin-bootloader-ddr4-4g-ecc-mvddr-2e20f5d-atf-277d4b6b-uboot-b794de0054-20220829-rel.bin + md5sum: 6edc15f01580ce87abba4b60b25b8b2d + - bootloader for DDR 4GB + file: mochabin-bootloader-ddr4-4g-mvddr-2e20f5d-atf-277d4b6b-uboot-b794de0054-20220829-rel.bin + md5sum: 127a7eb14eb4b76b51d5db5289e13a04 + - bootloader for DDR 8GB with ECC support + file: mochabin-bootloader-ddr4-8g-ecc-mvddr-2e20f5d-atf-277d4b6b-uboot-b794de0054-20220829-rel.bin + md5sum: 1f91ff48cd43385ff7afbc7d8256269c + - bootloader for DDR 8GB + file: mochabin-bootloader-ddr4-8g-mvddr-2e20f5d-atf-277d4b6b-uboot-b794de0054-20220829-rel.bin + md5sum: 810abcecf4602692464139c794f1102b + - Linux kernel & modules + file: mochabin-kernel-modules-v4.10-20220829.tar.gz + md5sum: a2b990be86890eb084f5d29431e055e5 + - Ubuntu1804-rootfs + file: mochabin-rootfs-ubuntu1804-v4.10-20220829.tar.gz + md5sum: daad47db2f4949a792d85e17d98aaa88 + - recovery files + - mochabin-recovery.txt (recovery document) + - u-boot-env.txt (u-boot environment) + - ReleaseNote.txt + +# changed +v4.3: + - [atf]: revert "fix usb serdes power on hang issue" and add new patch to fix USB3 powering on when on lane#2 + - [kernel]: configure cfg80211 and mac80211 to module and fix CONFIG_CFG80211_WEXT=y missing assignment problem + - [kernel]: update mochabin kernel config to support SQUASHFS_XZ + - [kernel]: update mochabin kernel config to support USB_NET_RNDIS_HOST + - [kernel]: update mochabin kernel config to support multiple devices and device mapper driver + - [kernel]: update mochabin kernel config to remove gpio debug feature + - [rootfs]: add Haveged service to improve the low-entropy (<1000) issue in system + v4.4: + - [kernel]: upgrade linux codebase to Linux 5.4.53 + - [kernel]: use gti_generic_mvebu_defconfig to build kernel + - [kernel]: enable armada 7k/8k cpu clk driver + - [rootfs]: update 88w8997 wifi firmware (16.88.1.p193) + v4.5-testing: + - [kernel]: add support for 88w9098 wifi module + - [kernel]: add support for PL2303HXN + - [rootfs]: update wpa package to 2.9 (hostapd + wpasupplicant) to support 802.11ax + - [rootfs]: update iw package to support 802.11ax + v4.6: + - [atf]: update phy-porting-layer.h to mochabin hw v1.1 + - [u-boot]: update mochabin dts to mochabin hw v1.1 + - [kernel]: upgrade kernel version to linux-v5.4.108 + - [kernel]: update mochabin dts to mochabin hw v1.1 + - [kernel]: fix xlg port can't link up issue + - [kernel]: add pwm support for Armada 8K/7K +v4.7: + - [kernel]: upgrade kernel version to linux-v5.4.114 + - [kernel]: add missing quectel ec20 id to device list + - [kernel]: add CONFIG_NETFILTER_XT_MATCH_OWNER to generic config file + - [rootfs]: upgrade bridge-utils package to v1.6 + - [rootfs]: modify hostapd-conf to support fallback ax to ac htmode if device doesn't supoort ax +v4.8: + - [atf]: add 2GB/4GB/8GB DDR with ECC memory topology to support Mochabin hw v1.2 board + - [rootfs]: add fw_printf utility + - [kernel]: enable safexcel crypto module and add eip197 firmware to rootfs +v4.9: + - [kernel]: upgrade kernel version to linux-v5.4.163 + - [kernel]: upgrade 88w9098 driver to PCIE-UAPSTA-UART-BT-9098-U16-X86-17.68.1.p109.12-17.26.1.p109-MXM5X17312.P8_V0V1-MGPL + - [kernel]: update PCI#2 memory window mapping + - [kernel]: increase CMA size up to 64M Bytes + - [kernel]: enable more network feature options + - [rootfs]: add avahi-daemon and avahi-utils packages + - [rootfs]: fix machine-id issue +v4.10: + - [u-boot]: add Marvell rtc driver (for armada 7k/8k) + - [kernel]: add Qualcomm QCA6391 WiFi driver support + - [mv-ddr]: bootloader_for_mochabin_hw-rev-1-5-0_20220905 + - apn806: change CK_DELAY params from 160 to 190