> -----Original Message----- > From: Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx> > Sent: Sunday, January 14, 2024 6:50 AM > To: Ping-Ke Shih <pkshih@xxxxxxxxxxx> > Cc: Viacheslav <adeep@xxxxxxxxx>; linux-wireless@xxxxxxxxxxxxxxx; Jernej Škrabec > <jernej.skrabec@xxxxxxxxx> > Subject: Re: rtw88: rtl8822cs AP mode not working > > Hi Ping-Ke, > > On Fri, Jan 12, 2024 at 1:40 AM Ping-Ke Shih <pkshih@xxxxxxxxxxx> wrote: > [...] > > > dmesg/journalctl is clean. No messages related to wifi. > > > > > > > Have you ever tried AP mode on SDIO interface wifi cards, like RTL8822CS? > > It seems no beacon issues properly, but no obvious errors during starting > > AP mode. > I haven't tried AP mode before (and I think* that Jernej also hasn't tried it). > > > I don't have this kind of wifi cards, could you help to check if AP mode > > works in your side? > I'll check that in the next few days. > Also I'm wondering where code enables beacons (is it > rtw_core_enable_beacon() or is there another relevant function?). > Knowing that would be helpful to analyze this further. > The main function to get and set beacon template to firmware is rtw_fw_download_rsvd_page(). The basic concept is to put beacon frame via qsel=BCN to a special TX FIFO area called "reserve page", and then hardware/firmware will send beacon in interval of 100ms. The TX FIFO look like +---------+ | | ^ | | | | | | | | | normal TX FIFO page | | | | | | | | v +---------+ <----------- BCN_HEAD | | ^ | | | reserve page | | v +---------+ The initial pages of reserve page is to store beacon, but latter one could be PS null frame that firmware uses it to notify AP. Ping-Ke