Search Linux Wireless

RE: Lenovo LOQ rtw_8852be

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Ali Ghandour <gandour.ali@xxxxxxxxx>
> Sent: Tuesday, December 5, 2023 2:13 PM
> To: Ping-Ke Shih <pkshih@xxxxxxxxxxx>
> Cc: linux-wireless@xxxxxxxxxxxxxxx
> Subject: Re: Lenovo LOQ rtw_8852be
> 
> 
> > > > > > $ lspci -tv
> > > > > > -[0000:00]-+-00.0  Intel Corporation Device a715
> > > >> Can I know the type of your platoform Lenovo LOQ? Is it a regular notebook computer?
> > >
> > > LOQ 15IRH8 - Type 82XV
> > > I am using a dual boot with Windows and Ubuntu 22.04
> >
> > I still can't find information about the device a715 that I also can't find
> > this ID in kernel source code. I will dig kernel further when I have free time.
> 
> 
> According to the specs:
> 1x 13th Generation Intel Core i7-13620H Processor(Core i7-13620H)
> 

I have found the ID in kernel: 
  arch/x86/events/intel/uncore_snb.c:101:#define PCI_DEVICE_ID_INTEL_RPL_15_IMC           0xA715

But honestly I'm not familiar with PCI. I'll continue to dig to see if I can
find something...

> 
> 
> >
> > >
> > > >> The PCI EXT capabilities locate from 100h. Not sure if host controller driver limits to display them?
> > > I did not get your question. Can you say it again please?
> >
> > I meant offset 100h of PCI configuration space is a standard area [1].
> >
> > "PCI Express extends the Configuration Space to 4096 bytes per Function as compared to 256 bytes
> > allowed by PCI Local Bus Specification. PCI Express Configuration Space is divided into a PCI 3.0
> > compatible region, which consists of the first 256 bytes of a Function’s Configuration Space, and a
> > PCI Express Extended Configuration Space which consists of the remaining Configuration Space
> > 5 (see Figure 7-3)."
> >
> > I don't know why the PCI controller in your platform doesn't recognize the region,
> > and then _possibly_ cause driver failed to access 719h.
> >
> >
> > [1] https://blog.csdn.net/huangkangying/article/details/50570612
> 
> According to the specs:
> 2 x M.2 (PCI Express 4.0 x4) (1 free)
> 512 GB SSD M.2 2242 PCIe 4.0 x4 - NVM Express (NVMe)
> and I have actually inserted a second SSD myself
> 
> Is the driver compatible with PCI 4.0?

I think PCI should be backward compatible to older devices. 


I did trace PCI code and found pci_dev->cfg_size limit the access, so please try
below hack patch in driver and see pci_dev->cfg_size in your platform.

@@ -2111,6 +2111,11 @@ static int rtw89_pci_auto_refclk_cal(struct rtw89_dev *rtwdev, bool autook_en)
        u8 val8, bdr_ori;
        bool l1_flag = false;
        int ret = 0;
+       struct rtw89_pci *rtwpci = (struct rtw89_pci *)rtwdev->priv;
+       struct pci_dev *pdev = rtwpci->pdev;
+
+       printk("pdev->cfg_size=%d\n", pdev->cfg_size);  // in my computer, this is 4096 already
+       pdev->cfg_size = PCI_CFG_SPACE_EXP_SIZE; // 4096

        if (chip_id != RTL8852B && chip_id != RTL8851B)
                return 0;

Ping-Ke





[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux