.. | .. |
---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-only |
---|
1 | 2 | /* |
---|
2 | 3 | * PS3 address space management. |
---|
3 | 4 | * |
---|
4 | 5 | * Copyright (C) 2006 Sony Computer Entertainment Inc. |
---|
5 | 6 | * Copyright 2006 Sony Corp. |
---|
6 | | - * |
---|
7 | | - * This program is free software; you can redistribute it and/or modify |
---|
8 | | - * it under the terms of the GNU General Public License as published by |
---|
9 | | - * the Free Software Foundation; version 2 of the License. |
---|
10 | | - * |
---|
11 | | - * This program is distributed in the hope that it will be useful, |
---|
12 | | - * but WITHOUT ANY WARRANTY; without even the implied warranty of |
---|
13 | | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
---|
14 | | - * GNU General Public License for more details. |
---|
15 | | - * |
---|
16 | | - * You should have received a copy of the GNU General Public License |
---|
17 | | - * along with this program; if not, write to the Free Software |
---|
18 | | - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
---|
19 | 7 | */ |
---|
20 | 8 | |
---|
21 | 9 | #include <linux/dma-mapping.h> |
---|
.. | .. |
---|
277 | 265 | int result; |
---|
278 | 266 | u64 muid; |
---|
279 | 267 | |
---|
280 | | - r->size = _ALIGN_DOWN(size, 1 << PAGE_SHIFT_16M); |
---|
| 268 | + r->size = ALIGN_DOWN(size, 1 << PAGE_SHIFT_16M); |
---|
281 | 269 | |
---|
282 | 270 | DBG("%s:%d requested %lxh\n", __func__, __LINE__, size); |
---|
283 | 271 | DBG("%s:%d actual %llxh\n", __func__, __LINE__, r->size); |
---|
.. | .. |
---|
409 | 397 | unsigned long bus_addr, unsigned long len) |
---|
410 | 398 | { |
---|
411 | 399 | struct dma_chunk *c; |
---|
412 | | - unsigned long aligned_bus = _ALIGN_DOWN(bus_addr, 1 << r->page_size); |
---|
413 | | - unsigned long aligned_len = _ALIGN_UP(len+bus_addr-aligned_bus, |
---|
| 400 | + unsigned long aligned_bus = ALIGN_DOWN(bus_addr, 1 << r->page_size); |
---|
| 401 | + unsigned long aligned_len = ALIGN(len+bus_addr-aligned_bus, |
---|
414 | 402 | 1 << r->page_size); |
---|
415 | 403 | |
---|
416 | 404 | list_for_each_entry(c, &r->chunk_list.head, link) { |
---|
.. | .. |
---|
438 | 426 | unsigned long lpar_addr, unsigned long len) |
---|
439 | 427 | { |
---|
440 | 428 | struct dma_chunk *c; |
---|
441 | | - unsigned long aligned_lpar = _ALIGN_DOWN(lpar_addr, 1 << r->page_size); |
---|
442 | | - unsigned long aligned_len = _ALIGN_UP(len + lpar_addr - aligned_lpar, |
---|
| 429 | + unsigned long aligned_lpar = ALIGN_DOWN(lpar_addr, 1 << r->page_size); |
---|
| 430 | + unsigned long aligned_len = ALIGN(len + lpar_addr - aligned_lpar, |
---|
443 | 431 | 1 << r->page_size); |
---|
444 | 432 | |
---|
445 | 433 | list_for_each_entry(c, &r->chunk_list.head, link) { |
---|
.. | .. |
---|
790 | 778 | struct dma_chunk *c; |
---|
791 | 779 | unsigned long phys_addr = is_kernel_addr(virt_addr) ? __pa(virt_addr) |
---|
792 | 780 | : virt_addr; |
---|
793 | | - unsigned long aligned_phys = _ALIGN_DOWN(phys_addr, 1 << r->page_size); |
---|
794 | | - unsigned long aligned_len = _ALIGN_UP(len + phys_addr - aligned_phys, |
---|
| 781 | + unsigned long aligned_phys = ALIGN_DOWN(phys_addr, 1 << r->page_size); |
---|
| 782 | + unsigned long aligned_len = ALIGN(len + phys_addr - aligned_phys, |
---|
795 | 783 | 1 << r->page_size); |
---|
796 | 784 | *bus_addr = dma_sb_lpar_to_bus(r, ps3_mm_phys_to_lpar(phys_addr)); |
---|
797 | 785 | |
---|
.. | .. |
---|
845 | 833 | struct dma_chunk *c; |
---|
846 | 834 | unsigned long phys_addr = is_kernel_addr(virt_addr) ? __pa(virt_addr) |
---|
847 | 835 | : virt_addr; |
---|
848 | | - unsigned long aligned_phys = _ALIGN_DOWN(phys_addr, 1 << r->page_size); |
---|
849 | | - unsigned long aligned_len = _ALIGN_UP(len + phys_addr - aligned_phys, |
---|
| 836 | + unsigned long aligned_phys = ALIGN_DOWN(phys_addr, 1 << r->page_size); |
---|
| 837 | + unsigned long aligned_len = ALIGN(len + phys_addr - aligned_phys, |
---|
850 | 838 | 1 << r->page_size); |
---|
851 | 839 | |
---|
852 | 840 | DBG(KERN_ERR "%s: vaddr=%#lx, len=%#lx\n", __func__, |
---|
.. | .. |
---|
904 | 892 | c = dma_find_chunk(r, bus_addr, len); |
---|
905 | 893 | |
---|
906 | 894 | if (!c) { |
---|
907 | | - unsigned long aligned_bus = _ALIGN_DOWN(bus_addr, |
---|
| 895 | + unsigned long aligned_bus = ALIGN_DOWN(bus_addr, |
---|
908 | 896 | 1 << r->page_size); |
---|
909 | | - unsigned long aligned_len = _ALIGN_UP(len + bus_addr |
---|
| 897 | + unsigned long aligned_len = ALIGN(len + bus_addr |
---|
910 | 898 | - aligned_bus, 1 << r->page_size); |
---|
911 | 899 | DBG("%s:%d: not found: bus_addr %llxh\n", |
---|
912 | 900 | __func__, __LINE__, bus_addr); |
---|
.. | .. |
---|
941 | 929 | c = dma_find_chunk(r, bus_addr, len); |
---|
942 | 930 | |
---|
943 | 931 | if (!c) { |
---|
944 | | - unsigned long aligned_bus = _ALIGN_DOWN(bus_addr, |
---|
| 932 | + unsigned long aligned_bus = ALIGN_DOWN(bus_addr, |
---|
945 | 933 | 1 << r->page_size); |
---|
946 | | - unsigned long aligned_len = _ALIGN_UP(len + bus_addr |
---|
| 934 | + unsigned long aligned_len = ALIGN(len + bus_addr |
---|
947 | 935 | - aligned_bus, |
---|
948 | 936 | 1 << r->page_size); |
---|
949 | 937 | DBG("%s:%d: not found: bus_addr %llxh\n", |
---|
.. | .. |
---|
989 | 977 | pr_info("%s:%d: forcing 16M pages for linear map\n", |
---|
990 | 978 | __func__, __LINE__); |
---|
991 | 979 | r->page_size = PS3_DMA_16M; |
---|
992 | | - r->len = _ALIGN_UP(r->len, 1 << r->page_size); |
---|
| 980 | + r->len = ALIGN(r->len, 1 << r->page_size); |
---|
993 | 981 | } |
---|
994 | 982 | } |
---|
995 | 983 | |
---|
.. | .. |
---|
1141 | 1129 | r->offset = lpar_addr; |
---|
1142 | 1130 | if (r->offset >= map.rm.size) |
---|
1143 | 1131 | r->offset -= map.r1.offset; |
---|
1144 | | - r->len = len ? len : _ALIGN_UP(map.total, 1 << r->page_size); |
---|
| 1132 | + r->len = len ? len : ALIGN(map.total, 1 << r->page_size); |
---|
1145 | 1133 | |
---|
1146 | 1134 | dev->core.dma_mask = &r->dma_mask; |
---|
1147 | 1135 | |
---|