From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?B?UmFmYcWCIE1pxYJlY2tp?= Date: Fri, 18 Mar 2011 22:52:59 +0100 Subject: [RFC][PATCH] ssb: separate common scanning functions In-Reply-To: <1300478510.15393.45.camel@dev.znau.edu.ua> References: <1300449773-11255-1-git-send-email-zajec5@gmail.com> <1300453433.13499.18.camel@dev.znau.edu.ua> <1300463392.13499.110.camel@dev.znau.edu.ua> <1300471917.14872.28.camel@dev.znau.edu.ua> <1300478510.15393.45.camel@dev.znau.edu.ua> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: George Kashperko Cc: linux-wireless@vger.kernel.org, "John W. Linville" , =?UTF-8?Q?Michael_B=C3=BCsch?= , b43-dev@lists.infradead.org, Larry Finger 2011/3/18 George Kashperko : > ?- read pci revision id/vendor id (pci_read_config_word), if required > to decide if second window is sliding or sprom (actually rev_id should > be sufficient for that) read offset 0x0000 from bar0 offset to get > chipid register value Could you say something about WIN1 and WIN2? What are they for, can we use them somehow separately? What do you mean by second window being SPROM? We read sprom without any special window magic: sprom[i] = ioread16(bus->mmio + bus->sprom_offset + (i * 2)); My understanding is limited to that: If we want to use device with CORE_ADDR and WRAP_ADDR we have to write CORE_ADDR to BAR0_WIN and WRAP_ADDR to BAR0_WIN2. Then we can use readl/writel. -- Rafa?