The following commit has been merged into the core/mm branch of tip: Commit-ID: 9bf6f7bab3bad4b30f108fca25aa5297dff0973f Gitweb: https://git.kernel.org/tip/9bf6f7bab3bad4b30f108fca25aa5297dff0973f Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx> AuthorDate: Tue, 03 Nov 2020 10:27:33 +01:00 Committer: Thomas Gleixner <tglx@xxxxxxxxxxxxx> CommitterDate: Fri, 06 Nov 2020 23:14:58 +01:00 Documentation/io-mapping: Remove outdated blurb The implementation details in the documentation are outdated and not really helpful. Remove them. Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx> Cc: Christoph Hellwig <hch@xxxxxx> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Link: https://lore.kernel.org/r/20201103095858.734064977@xxxxxxxxxxxxx --- Documentation/driver-api/io-mapping.rst | 22 ---------------------- 1 file changed, 22 deletions(-) diff --git a/Documentation/driver-api/io-mapping.rst b/Documentation/driver-api/io-mapping.rst index a966239..e33b882 100644 --- a/Documentation/driver-api/io-mapping.rst +++ b/Documentation/driver-api/io-mapping.rst @@ -73,25 +73,3 @@ for pages mapped with io_mapping_map_wc. At driver close time, the io_mapping object must be freed:: void io_mapping_free(struct io_mapping *mapping) - -Current Implementation -====================== - -The initial implementation of these functions uses existing mapping -mechanisms and so provides only an abstraction layer and no new -functionality. - -On 64-bit processors, io_mapping_create_wc calls ioremap_wc for the whole -range, creating a permanent kernel-visible mapping to the resource. The -map_atomic and map functions add the requested offset to the base of the -virtual address returned by ioremap_wc. - -On 32-bit processors with HIGHMEM defined, io_mapping_map_atomic_wc uses -kmap_atomic_pfn to map the specified page in an atomic fashion; -kmap_atomic_pfn isn't really supposed to be used with device pages, but it -provides an efficient mapping for this usage. - -On 32-bit processors without HIGHMEM defined, io_mapping_map_atomic_wc and -io_mapping_map_wc both use ioremap_wc, a terribly inefficient function which -performs an IPI to inform all processors about the new mapping. This results -in a significant performance penalty.
![]() |