Home
last modified time | relevance | path

Searched refs:pt_state (Results 1 – 12 of 12) sorted by relevance

/linux/drivers/iommu/generic_pt/
H A Dpt_common.h40 static inline void pt_attr_from_entry(const struct pt_state *pts,
50 static inline bool pt_can_have_leaf(const struct pt_state *pts);
58 static inline bool pt_can_have_table(const struct pt_state *pts) in pt_can_have_table()
73 static inline void pt_clear_entries(struct pt_state *pts,
84 static inline bool pt_entry_make_write_dirty(struct pt_state *pts);
99 static inline void pt_entry_make_write_clean(struct pt_state *pts);
109 static inline bool pt_entry_is_write_dirty(const struct pt_state *pts);
124 static inline unsigned int pt_entry_num_contig_lg2(const struct pt_state *pts);
138 static inline pt_oaddr_t pt_entry_oa(const struct pt_state *pts);
147 static inline unsigned int pt_entry_oa_lg2sz(const struct pt_state *pts) in pt_entry_oa_lg2sz()
[all …]
H A Dpt_fmt_defaults.h23 static inline unsigned int pt_table_item_lg2sz(const struct pt_state *pts) in pt_table_item_lg2sz()
47 static inline unsigned int pt_entry_num_contig_lg2(const struct pt_state *pts) in pt_entry_num_contig_lg2()
55 static inline unsigned short pt_contig_count_lg2(const struct pt_state *pts) in pt_contig_count_lg2()
63 static inline bool pt_entry_is_write_dirty(const struct pt_state *pts) in pt_entry_is_write_dirty()
68 static inline void pt_entry_make_write_clean(struct pt_state *pts) in pt_entry_make_write_clean()
87 static inline bool pt_entry_make_write_dirty(struct pt_state *pts) in pt_entry_make_write_dirty()
106 static inline pt_oaddr_t pt_item_oa(const struct pt_state *pts) in pt_item_oa()
115 static inline pt_oaddr_t pt_entry_oa(const struct pt_state *pts) in pt_entry_oa()
148 static inline unsigned short pt_contig_count_lg2(const struct pt_state *pts);
151 static inline pt_vaddr_t pt_possible_sizes(const struct pt_state *pts) in pt_possible_sizes()
[all …]
H A Dpt_iter.h56 static inline void pt_index_to_va(struct pt_state *pts) in pt_index_to_va()
69 static inline void _pt_advance(struct pt_state *pts, in _pt_advance()
85 static inline bool pt_entry_fully_covered(const struct pt_state *pts, in pt_entry_fully_covered()
108 static inline unsigned int pt_range_to_index(const struct pt_state *pts) in pt_range_to_index()
127 static inline unsigned int pt_range_to_end_index(const struct pt_state *pts) in pt_range_to_end_index()
153 static inline void _pt_iter_first(struct pt_state *pts) in _pt_iter_first()
160 static inline bool _pt_iter_load(struct pt_state *pts) in _pt_iter_load()
175 static inline void pt_next_entry(struct pt_state *pts) in pt_next_entry()
203 static inline enum pt_entry_type pt_load_single_entry(struct pt_state *pts) in pt_load_single_entry()
220 struct pt_state pts = { .range = &range, .level = range.top_level }; in _pt_top_range()
[all …]
H A Diommu_pt.h24 static void flush_writes_range(const struct pt_state *pts, in flush_writes_range()
34 static void flush_writes_item(const struct pt_state *pts) in flush_writes_item()
131 static inline unsigned int compute_best_pgsize(struct pt_state *pts, in compute_best_pgsize()
153 struct pt_state pts = pt_init(range, level, table); in __do_iova_to_phys()
207 static void record_dirty(struct pt_state *pts, in record_dirty()
245 struct pt_state pts = pt_init(range, level, table); in __read_and_clear_dirty()
311 struct pt_state pts = pt_init(range, level, table); in __set_dirty()
352 struct pt_state pts = pt_init(range, level, table); in __collect_tables()
415 static inline struct pt_table_p *table_alloc(const struct pt_state *parent_pts, in table_alloc()
418 struct pt_state child_pts = in table_alloc()
[all …]
H A Dkunit_generic_pt.h33 void (*fn)(struct kunit *test, struct pt_state *pts, void *arg);
39 struct pt_state pts = pt_init(range, level, table); in __check_all_levels()
105 struct pt_state *pts, void *arg), in check_all_levels()
329 static void test_lvl_table_ptr(struct kunit *test, struct pt_state *pts, in test_lvl_table_ptr()
373 static void test_lvl_radix(struct kunit *test, struct pt_state *pts, void *arg) in test_lvl_radix()
422 static unsigned int safe_pt_num_items_lg2(const struct pt_state *pts) in safe_pt_num_items_lg2()
425 struct pt_state top_pts = pt_init_top(&top_range); in safe_pt_num_items_lg2()
436 static void test_lvl_possible_sizes(struct kunit *test, struct pt_state *pts, in test_lvl_possible_sizes()
475 static void sweep_all_pgsizes(struct kunit *test, struct pt_state *pts, in sweep_all_pgsizes()
487 struct pt_state sub_pts = *pts; in sweep_all_pgsizes()
[all …]
H A Dpt_defs.h146 struct pt_state { struct
166 static inline bool pt_table_install64(struct pt_state *pts, u64 table_entry) in pt_table_install64() argument
185 static inline bool pt_table_install32(struct pt_state *pts, u32 table_entry) in pt_table_install32()
215 static __always_inline bool pts_feature(const struct pt_state *pts, in pts_feature()
328 static inline bool pt_check_install_leaf_args(struct pt_state *pts,
H A Dkunit_iommu_pt.h20 struct pt_state pts = pt_init(range, level, table); in __count_valids()
/linux/drivers/iommu/generic_pt/fmt/
H A Damdv1.h70 static inline pt_oaddr_t amdv1pt_table_pa(const struct pt_state *pts) in amdv1pt_table_pa()
81 static inline pt_oaddr_t amdv1pt_entry_oa(const struct pt_state *pts) in amdv1pt_entry_oa()
101 static inline bool amdv1pt_can_have_leaf(const struct pt_state *pts) in amdv1pt_can_have_leaf()
112 static inline unsigned int pt_table_item_lg2sz(const struct pt_state *pts);
115 amdv1pt_entry_num_contig_lg2(const struct pt_state *pts) in amdv1pt_entry_num_contig_lg2()
144 static inline unsigned int amdv1pt_num_items_lg2(const struct pt_state *pts) in amdv1pt_num_items_lg2()
156 static inline pt_vaddr_t amdv1pt_possible_sizes(const struct pt_state *pts) in amdv1pt_possible_sizes()
176 static inline enum pt_entry_type amdv1pt_load_entry_raw(struct pt_state *pts) in amdv1pt_load_entry_raw()
195 amdv1pt_install_leaf_entry(struct pt_state *pts, pt_oaddr_t oa, in amdv1pt_install_leaf_entry()
237 static inline bool amdv1pt_install_table(struct pt_state *pts, in amdv1pt_install_table()
[all …]
H A Dvtdss.h62 static inline pt_oaddr_t vtdss_pt_table_pa(const struct pt_state *pts) in vtdss_pt_table_pa()
69 static inline pt_oaddr_t vtdss_pt_entry_oa(const struct pt_state *pts) in vtdss_pt_entry_oa()
76 static inline bool vtdss_pt_can_have_leaf(const struct pt_state *pts) in vtdss_pt_can_have_leaf()
82 static inline unsigned int vtdss_pt_num_items_lg2(const struct pt_state *pts) in vtdss_pt_num_items_lg2()
88 static inline enum pt_entry_type vtdss_pt_load_entry_raw(struct pt_state *pts) in vtdss_pt_load_entry_raw()
104 vtdss_pt_install_leaf_entry(struct pt_state *pts, pt_oaddr_t oa, in vtdss_pt_install_leaf_entry()
124 static inline bool vtdss_pt_install_table(struct pt_state *pts, in vtdss_pt_install_table()
136 static inline void vtdss_pt_attr_from_entry(const struct pt_state *pts, in vtdss_pt_attr_from_entry()
144 static inline bool vtdss_pt_entry_is_write_dirty(const struct pt_state *pts) in vtdss_pt_entry_is_write_dirty()
152 static inline void vtdss_pt_entry_make_write_clean(struct pt_state *pts) in vtdss_pt_entry_make_write_clean()
[all …]
H A Driscv.h85 static inline pt_oaddr_t riscvpt_table_pa(const struct pt_state *pts) in riscvpt_table_pa()
91 static inline pt_oaddr_t riscvpt_entry_oa(const struct pt_state *pts) in riscvpt_entry_oa()
103 static inline bool riscvpt_can_have_leaf(const struct pt_state *pts) in riscvpt_can_have_leaf()
110 static inline unsigned int pt_table_item_lg2sz(const struct pt_state *pts);
113 riscvpt_entry_num_contig_lg2(const struct pt_state *pts) in riscvpt_entry_num_contig_lg2()
125 static inline unsigned int riscvpt_num_items_lg2(const struct pt_state *pts) in riscvpt_num_items_lg2()
132 riscvpt_contig_count_lg2(const struct pt_state *pts) in riscvpt_contig_count_lg2()
140 static inline enum pt_entry_type riscvpt_load_entry_raw(struct pt_state *pts) in riscvpt_load_entry_raw()
156 riscvpt_install_leaf_entry(struct pt_state *pts, pt_oaddr_t oa, in riscvpt_install_leaf_entry()
187 static inline bool riscvpt_install_table(struct pt_state *pts, in riscvpt_install_table()
[all …]
H A Dx86_64.h76 static inline pt_oaddr_t x86_64_pt_table_pa(const struct pt_state *pts) in x86_64_pt_table_pa()
87 static inline pt_oaddr_t x86_64_pt_entry_oa(const struct pt_state *pts) in x86_64_pt_entry_oa()
98 static inline bool x86_64_pt_can_have_leaf(const struct pt_state *pts) in x86_64_pt_can_have_leaf()
104 static inline unsigned int x86_64_pt_num_items_lg2(const struct pt_state *pts) in x86_64_pt_num_items_lg2()
110 static inline enum pt_entry_type x86_64_pt_load_entry_raw(struct pt_state *pts) in x86_64_pt_load_entry_raw()
126 x86_64_pt_install_leaf_entry(struct pt_state *pts, pt_oaddr_t oa, in x86_64_pt_install_leaf_entry()
147 static inline bool x86_64_pt_install_table(struct pt_state *pts, in x86_64_pt_install_table()
161 static inline void x86_64_pt_attr_from_entry(const struct pt_state *pts, in x86_64_pt_attr_from_entry()
/linux/Documentation/driver-api/
H A Dgeneric_pt.rst85 static inline pt_oaddr_t amdv1pt_entry_oa(const struct pt_state *pts)