On Wed, May 21, 2025 at 1:07 AM Kang Yang <quic_kangyang@xxxxxxxxxxx> wrote: > > > > On 5/21/2025 1:05 PM, Walt Holman wrote: > > On Thu, May 15, 2025 at 10:06 PM Kang Yang <quic_kangyang@xxxxxxxxxxx> wrote: > >> > >> > >> > >> On 5/16/2025 1:47 AM, Walt Holman wrote: > >>> On Thu, May 15, 2025 at 4:22 AM Kang Yang <quic_kangyang@xxxxxxxxxxx> wrote: > >>>> > >>>> > >>>> > >>>> On 5/15/2025 4:12 PM, Kang Yang wrote: > >>>>> > >>>>> On 4/20/2025 11:18 PM, Walt Holman wrote: > >>>>>> On Fri, Apr 18, 2025 at 4:18 PM Walt Holman <waltholman09@xxxxxxxxx> > >>>>>> wrote: > >>>>>>> On Tue, Apr 15, 2025 at 4:23 PM Walt Holman <waltholman09@xxxxxxxxx> > >>>>>>> wrote: > >>>>>>>> On Thu, Apr 10, 2025 at 10:32 AM Walt Holman > >>>>>>>> <waltholman09@xxxxxxxxx> wrote: > >>>>>>>>> On Thu, Apr 10, 2025 at 3:26 AM Kang Yang > >>>>>>>>> <kang.yang@xxxxxxxxxxxxxxxx> wrote: > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>> On 4/10/2025 3:37 AM, Walt Holman wrote: > >>>>>>>>>>> On Tue, Apr 8, 2025 at 4:17 AM Kang Yang > >>>>>>>>>>> <quic_kangyang@xxxxxxxxxxx> wrote: > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> On 4/8/2025 1:49 AM, Walt Holman wrote: > >>>>>>>>>>>>> Attached is a small packet capture where I did an 'iw wlp99s0 > >>>>>>>>>>>>> scan' > >>>>>>>>>>>>> and also deactivated and reactivated wireless while the scan was > >>>>>>>>>>>>> ongoing. Hopefully there's something interesting for you in there. > >>>>>>>>>>>>> Also, I've take 3 screenshots showing the configs of the > >>>>>>>>>>>>> wireless AP > >>>>>>>>>>>>> for the 6ghz network. The first screen is just the definition > >>>>>>>>>>>>> of the > >>>>>>>>>>>>> network. No advanced settings are used. The 2nd screen shows the > >>>>>>>>>>>>> channels and radio enabled. The 3rd screen has the advanced > >>>>>>>>>>>>> (professional) settings for the network. I believe I changed > >>>>>>>>>>>>> 'Agile > >>>>>>>>>>>>> Multiband' to enabled, but other settings are their defaults. Hope > >>>>>>>>>>>>> some of this helps. Let me know if you need anything else. Thanks, > >>>>>>>>>>>>> > >>>>>>>>>>>> Your packets are Ethernet packets. I need wireless packets. > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> Not sure if you know how to add a seperate monitor interface to > >>>>>>>>>>>> capture > >>>>>>>>>>>> 6 G channels' packet on your AP(you can google for specific > >>>>>>>>>>>> command). > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> Also, please capture firmware log: > >>>>>>>>>>>> > >>>>>>>>>>>> 1. sudo apt install trace-cmd > >>>>>>>>>>>> 2. sudo trace-cmd record -e ath12k_wmi_diag > >>>>>>>>>>>> 3. run test > >>>>>>>>>>>> 4. "ctrl c" to stop recording: > >>>>>>>>>>>> Hit Ctrl^C to stop recording > >>>>>>>>>>>> ^CCPU0 data recorded at offset=0xdf5000 > >>>>>>>>>>>> 2605056 bytes in size > >>>>>>>>>>>> Then share the trace.dat to us. > >>>>>>>>>>>> > >>>>>>>>>>>> So you need to: > >>>>>>>>>>>> 1. try to capture wireless packets. > >>>>>>>>>>>> 2. capture firmware log(trade.data). > >>>>>>>>>>>> 3. save kernel/wpa_supplicant/iw logs. > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>>> -Walt > >>>>>>>>>>>>> > >>>>>>>>>>>>> On Sun, Apr 6, 2025 at 8:58 PM Kang Yang > >>>>>>>>>>>>> <quic_kangyang@xxxxxxxxxxx> wrote: > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> On 4/4/2025 12:04 AM, Walt Holman wrote: > >>>>>>>>>>>>>>> On Thu, Apr 3, 2025 at 3:20 AM Kang Yang > >>>>>>>>>>>>>>> <quic_kangyang@xxxxxxxxxxx> wrote: > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> On 4/3/2025 1:48 AM, Walt Holman wrote: > >>>>>>>>>>>>>>>>> On Tue, Apr 1, 2025 at 9:48 PM Kang Yang > >>>>>>>>>>>>>>>>> <quic_kangyang@xxxxxxxxxxx> wrote: > >>>>>>>>>>>>>>>>>> Test on 6.14.0-rc5-wt-ath+, with the firmware you used. > >>>>>>>>>>>>>>>>>> I can get 6 GHz AP and connect to it. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> ath12k_pci 0000:03:00.0: fw_version 0x100301e1 > >>>>>>>>>>>>>>>>>> fw_build_timestamp > >>>>>>>>>>>>>>>>>> 2023-12-06 04:05 fw_build_id > >>>>>>>>>>>>>>>>>> QC_IMAGE_VERSION_STRING=WLAN.HMT.1.0.c5-00481- > >>>>>>>>>>>>>>>>>> QCAHMTSWPL_V1.0_V2.0_SILICONZ-3 > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> yk@yk-Mayan:~$ sudo iw wls1 scan | tee iw_scan.log: > >>>>>>>>>>>>>>>>>> BSS 62:03:7f:12:64:64(on wls1) -- associated > >>>>>>>>>>>>>>>>>> TSF: 606308271476 usec (7d, 00:25:08) > >>>>>>>>>>>>>>>>>> freq: 6275 > >>>>>>>>>>>>>>>>>> beacon interval: 100 TUs > >>>>>>>>>>>>>>>>>> capability: ESS Privacy SpectrumMgmt > >>>>>>>>>>>>>>>>>> ShortSlotTime (0x0511) > >>>>>>>>>>>>>>>>>> signal: -17.00 dBm > >>>>>>>>>>>>>>>>>> last seen: 52 ms ago > >>>>>>>>>>>>>>>>>> Information elements from Probe Response frame: > >>>>>>>>>>>>>>>>>> SSID: MLO-KANG-6G > >>>>>>>>>>>>>>>>>> and other 6 GHz APs: > >>>>>>>>>>>>>>>>>> SSID: 6G-gxia > >>>>>>>>>>>>>>>>>> SSID: NETGEAR97-6G > >>>>>>>>>>>>>>>>>> …… > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> kernel log: > >>>>>>>>>>>>>>>>>> [88158.033218] wls1: Inserted STA 62:03:7f:12:64:64 > >>>>>>>>>>>>>>>>>> [88158.033232] wls1: authenticate with 62:03:7f:12:64:64 > >>>>>>>>>>>>>>>>>> (local > >>>>>>>>>>>>>>>>>> address=00:03:7f:37:12:54) > >>>>>>>>>>>>>>>>>> [88158.033242] wls1: send auth to 62:03:7f:12:64:64 (try 1/3) > >>>>>>>>>>>>>>>>>> [88158.041895] wls1: authenticated > >>>>>>>>>>>>>>>>>> [88158.041914] wls1: moving STA 62:03:7f:12:64:64 to state 2 > >>>>>>>>>>>>>>>>>> [88158.044291] wls1: determined local STA to be EHT, BW > >>>>>>>>>>>>>>>>>> limited to 320 MHz > >>>>>>>>>>>>>>>>>> [88158.045719] wls1: associate with 62:03:7f:12:64:64 (try > >>>>>>>>>>>>>>>>>> 1/3) > >>>>>>>>>>>>>>>>>> [88158.067045] wls1: RX AssocResp from 62:03:7f:12:64:64 > >>>>>>>>>>>>>>>>>> (capab=0x511 > >>>>>>>>>>>>>>>>>> status=0 aid=4) > >>>>>>>>>>>>>>>>>> [88158.089090] wls1: associated > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> I can even connect to it by Ubuntu GUI. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> Can you update to 6.14.0-rc5-wt-ath+ and have a retry? > >>>>>>>>>>>>>>>>>> Also please make > >>>>>>>>>>>>>>>>>> sure that your wpa_supplicant/iw support 6 GHz(or directly > >>>>>>>>>>>>>>>>>> update to the > >>>>>>>>>>>>>>>>>> latest version). > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> If you still cannot find 6 GHz AP, you can set debug_mask > >>>>>>>>>>>>>>>>>> to 0xffffffff > >>>>>>>>>>>>>>>>>> to get ath12k logs. Then give it to us. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> -Walt > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> OK, I retested with the wt-ath 033125 tagged build. This > >>>>>>>>>>>>>>>>> included the > >>>>>>>>>>>>>>>>> patch the Jeff suggested I try, but the rest of the tree > >>>>>>>>>>>>>>>>> was clean. > >>>>>>>>>>>>>>>>> Still no 6ghz Wifi. I'm attaching a log file of the boot > >>>>>>>>>>>>>>>>> and first few > >>>>>>>>>>>>>>>>> seconds with the debug mask turned on. I noticed that if I > >>>>>>>>>>>>>>>>> rmmod the > >>>>>>>>>>>>>>>>> module and then modprobe it, it complains about not finding > >>>>>>>>>>>>>>>>> firmware-2.bin, however, I thought that was only for the > >>>>>>>>>>>>>>>>> qcn based > >>>>>>>>>>>>>>>>> chip? The HW info from dmesg looks like this: > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> I cannot find this tag... > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> From the log, the 6 GHz channel should work. When scan > >>>>>>>>>>>>>>>> is triggered, FW > >>>>>>>>>>>>>>>> shall send probe req on these channels. If AP send probe > >>>>>>>>>>>>>>>> resp, station > >>>>>>>>>>>>>>>> shall find the AP. > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> [ 6.070282] ath12k_pci 0000:63:00.0: BAR 0 [mem > >>>>>>>>>>>>>>>>> 0xdd800000-0xdd9fffff 64bit]: assigned > >>>>>>>>>>>>>>>>> [ 6.070310] ath12k_pci 0000:63:00.0: enabling device > >>>>>>>>>>>>>>>>> (0000 -> 0002) > >>>>>>>>>>>>>>>>> [ 6.071249] ath12k_pci 0000:63:00.0: MSI vectors: 16 > >>>>>>>>>>>>>>>>> [ 6.071254] ath12k_pci 0000:63:00.0: Hardware name: > >>>>>>>>>>>>>>>>> wcn7850 hw2.0 > >>>>>>>>>>>>>>>>> [ 6.596331] ath12k_pci 0000:63:00.0: qmi dma allocation > >>>>>>>>>>>>>>>>> failed > >>>>>>>>>>>>>>>>> (7077888 B type 1), will try later with sma > >>>>>>>>>>>>>>>>> ll size > >>>>>>>>>>>>>>>>> [ 6.604041] ath12k_pci 0000:63:00.0: chip_id 0x2 > >>>>>>>>>>>>>>>>> chip_family 0x4 > >>>>>>>>>>>>>>>>> board_id 0xff soc_id 0x40170200 > >>>>>>>>>>>>>>>>> [ 6.604044] ath12k_pci 0000:63:00.0: fw_version 0x100301e1 > >>>>>>>>>>>>>>>>> fw_build_timestamp 2023-12-06 04:05 fw_build_id > >>>>>>>>>>>>>>>>> QC_IMAGE_VERSION_STRING=WLAN.HMT.1.0.c5-00481- > >>>>>>>>>>>>>>>>> QCAHMTSWPL_V1.0_V2.0_SILICONZ- > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> Also, I noticed when looking through the debug logs there > >>>>>>>>>>>>>>>>> are the > >>>>>>>>>>>>>>>>> occasional WARNING statements from a BUG it appears. They > >>>>>>>>>>>>>>>>> trace back > >>>>>>>>>>>>>>>>> to the mac.c file inside the ath12k code. There should be > >>>>>>>>>>>>>>>>> some in the > >>>>>>>>>>>>>>>>> debug log that's attached. Let me know if I can do anything > >>>>>>>>>>>>>>>>> else. > >>>>>>>>>>>>>>>>> Thanks, > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> I have never seen this warning on my upstream setup...Not > >>>>>>>>>>>>>>>> sure if you > >>>>>>>>>>>>>>>> have changed anything or using the correct code base. > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> Jeff merged this patch-set into ath-202504021602. Can you > >>>>>>>>>>>>>>>> try on this > >>>>>>>>>>>>>>>> branch? > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> git clone https://git.kernel.org/pub/scm/linux/kernel/git/ > >>>>>>>>>>>>>>>> ath/ath.git/ > >>>>>>>>>>>>>>>> git pull > >>>>>>>>>>>>>>>> git reset --hard ath-202504021602 > >>>>>>>>>>>>>>>> compile and install... > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> Also make sure that the firmware you used is from the same > >>>>>>>>>>>>>>>> folder, don't > >>>>>>>>>>>>>>>> mix with other folders: > >>>>>>>>>>>>>>>> linux-firmware/ath12k/WCN7850/hw2.0 > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> 1. rmmod/insmod(debug_mask=0xffff) > >>>>>>>>>>>>>>>> 2. iw reg get > >>>>>>>>>>>>>>>> 3. iw reg set US > >>>>>>>>>>>>>>>> 4. iw xxx scan > >>>>>>>>>>>>>>>> wait and collect logs. > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> don't do anything else. > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> Also, can you show me your AP configuration. > >>>>>>>>>>>>>>>> If you have another 6 GHz AP, you can have a try(better > >>>>>>>>>>>>>>>> different brands). > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>> Thanks for testing. > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> Could you share your AP configuration? > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> If you have sniffer, could please capture packets during > >>>>>>>>>>>>>>>> testing? > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> Can you capture packets during the testing? I need to check > >>>>>>>>>>>>>> probe req > >>>>>>>>>>>>>> and probe resp. > >>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> Thanks! > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> -Walt > >>>>>>>>>>>>>>> OK, I cloned and built the kernel based on your instructions > >>>>>>>>>>>>>>> in your > >>>>>>>>>>>>>>> last email. Originally, the result was identical to my last > >>>>>>>>>>>>>>> email, > >>>>>>>>>>>>>>> including the WARNINGS. The .config I use is configured for a > >>>>>>>>>>>>>>> fully RT > >>>>>>>>>>>>>>> PREEMPT kernel, which I wondered if that was why I was > >>>>>>>>>>>>>>> receiving the > >>>>>>>>>>>>>>> WARNING. So I configured it as a Low Latency PREEMPT Desktop > >>>>>>>>>>>>>>> without > >>>>>>>>>>>>>>> the RT_PREEMPT and that eliminated the WARNING. However, > >>>>>>>>>>>>>>> still no 6Ghz > >>>>>>>>>>>>>>> networks. The firmware I'm using is straight from kernel.org > >>>>>>>>>>>>>>> GIT and I > >>>>>>>>>>>>>>> do a 'make install; make dedup' to install it. I believe it > >>>>>>>>>>>>>>> should be > >>>>>>>>>>>>>>> good. Attached is the latest log file. > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> -Walt > >>>>>>>>>>> > >>>>>>>>>>> Sorry for the top-post earlier. I can't figure out how to capture > >>>>>>>>>>> the > >>>>>>>>>>> wireless packets as my chip/driver combo doesn't support monitor > >>>>>>>>>>> mode. > >>>>>>>>>> Your AP also cannot capture wireless packets? > >>>>>>>>>> log in AP by usbserial or ssh. > >>>>>>>>>> Try to enter command line. use iw command to create monitor > >>>>>>>>>> interface. > >>>>>>>>>> Then use tcpdump to capture packets. > >>>>>>>>>> > >>>>>>>>>>> I've attached a tarball that contains the trace data and additional > >>>>>>>>>>> firmware logs from the kernel.log file. Anything else you need, just > >>>>>>>>>>> ask. Thanks for your help, > >>>>>>>>>> > >>>>>>>>>> Your AP mac address? > >>>>>>>>>> Need it to help check the fw log. > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>>> -Walt > >>>>>>>>> Sorry, the AP doesn't have tcpdump available on it. Also, this is a > >>>>>>>>> mesh setup with 3 nodes total. The main AP and 2 mesh nodes. I'm > >>>>>>>>> within 10 feet of one of the nodes and it's MAC for the wireless 6ghz > >>>>>>>>> network is: 10:7C:61:6F:2A:CA > >>>>>>>>> > >>>>>>>>> -Walt > >>>>>>>> The other 2 node 6ghz mac addresses are: > >>>>>>>> 10:7C:61:6F:1F:11 - Router > >>>>>>>> 10:7C:61:6F:32:92 - Node > >>>>>>>> > >>>>>>>> The first MAC address I gave you earlier was a node located > >>>>>>>> approximately 5 feet from where the laptop is. > >>>>>>>> > >>>>>>>> -Walt > >>>>>>> Well, I'm running into a brick wall it seems trying to get 6Ghz > >>>>>>> enabled on this. I tried the ath-next-20250418 tag just now and still > >>>>>>> don't see or connect to my 6Ghz network. I applied the patches in: > >>>>>>> https://lore.kernel.org/linux-wireless/20250418-ath12k-6g-lp-vlp- > >>>>>>> v1-0-c869c86cad60@xxxxxxxxxxx/T/#t > >>>>>>> > >>>>>>> hoping that would help, but alas, no 6Ghz networks. I see that MLO and > >>>>>>> other nice fixes are coming in 6.16, but without 6Ghz, they'll do me > >>>>>>> no good. I'm really wondering if it's a firmware issue that excludes > >>>>>>> my chip or something. Again, anything I can do to help, let me know. > >>>>>>> Thanks, > >>>>>>> > >>>>>>> -Walt > >>>>>> Well, I used the swiss army tools to look at the firmware, and my chip > >>>>>> is listed in the firmware, so it's not excluded or anything. Really > >>>>>> puzzlling issue as my other two laptops connect to the 6Ghz network > >>>>>> just fine, and this laptop does in Windows, just not in Linux. I > >>>>>> really don't use Windows at all though, so that does me no good. > >>>>>> > >>>>>> This laptop used to connect to the 6Ghz network around the Sep. - Oct. > >>>>>> 2024 timeframe. Something has changed and now it doesn't. I'm going to > >>>>>> boot off a live image of Ubuntu 24.10 and see if I can see the > >>>>>> network. It was always hit or miss so we'll see. > >>>>>> -Walt > >>>>> > >>>>> > >>>>> Can you find 6 GHz AP now? > >>>>> > >>>> > >>>> Our firmware team said you station device sent the probe request but > >>>> didn't receive the probe resp or beacon. > >>>> > >>>> Since your current configuration is single 6 GHz AP. Could you change > >>>> your AP configuration to 6 GHz + 2/5 GHz to have a retry? > >>>> > >>> I adedd another network with 2.4 / 5 / 6Ghz settings and still only > >>> connect to the 5Ghz network portion. This is verified through wavemon > >>> and the AP. I saw some patches recently to address 6 Ghz operatoins in > >>> various modes (https://lore.kernel.org/linux-wireless/1692f2f8-c77e-87ce-db70-00b4d9fc7c95@xxxxxxxxxxxxxxxx/), > >>> but the patch doesn't apply cleanly to current or ath-pending. Don't > >>> know that it would help, but it seemed interesting. > >>> > >>> When I went back to the older kernel / distro I still could not see > >>> the 6 Ghz band nor connect to it. I think something has changed on the > >>> AP as well, as this used to work intermittently. I think I have > >>> mentioned this before, but I have a dual-boot setup on this laptop and > >>> in Windows 11, it does see and connect to the 6 Ghz band and MLO works > >>> as well. Also, I have about 5 other devices (phones and laptops) that > >>> can all connect to the 6 Ghz band. I think it's a combination of the > >>> AP and the driver / firmware. > >> > >> > >> > >> > >> Do you have another WCN7850? > >> Our monitor mode is now in pending branch, and one fix is coming so that > >> you can use WCN7850 to capture 6 GHz management packects. So that our > >> firmware team can do further research. > > > > I've successfully put the wifi into monitor mode and captured some > > traffic. I used freq. 6615, which is the frequency my Holman-6G runs > > at with a width of 320Mhz. I can see beacons and other wifi related > > traffic, however, I did not have an encryption key set, so any traffic > > should still be encrypted. Hopefully the beacons and other things > > help. > > I took a chance that the patches were ready and used the most recent > > tag: ath-pending-202505201841 and it appeared to work OK. Let me know > > if this helps and if you need anything else. Thanks, > > > This is what we needed. > > But i didn't see probe req in this file. > Not sure if you didn't run the test? > > Can you put this monitor mode device between your test station device > and AP device(Try to ensure that it is on the connection line between > the two device), then start the full test? > Remember run "iw reg set US" before connecting step. > > > Also, please provide us the host/firmware log and the packets. > All logs/packets come from the same test, will make it easier for our > firmware team to debug. > 🙂 OK, I think I've got something here and I hope it's useful. I did a packet capture of the wifi traffic on Freq. 6615 @ 160Mhz from another host and then loaded the ath12k module on the problem host and logged it all. The wifi adapter for the ath12k is a Quectel model. Also, I shut off both mesh nodes so that only the AP was running to ensure we were on the same node. Please let me know if you need anything else. I did see some packets from the ath12k module in the source field of the capture so hopefully this helps. -Walt
Attachment:
wifi-capture-20250522.pcapng.gz
Description: application/gzip
Attachment:
firmware-log-20250522.txt.gz
Description: application/gzip