ASoC/qcom/arm64: Qualcomm ADSP DTS and binding fixes
Merge series from Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>: Hi, Dependencies/merging ==================== 1. The DTS patches are independent. 2. The binding patches should come together, because of context changes. Could be one of: Qualcomm SoC, ASoC or DT tree. Changes since v3 ================ 1. Patch 9-10: re-order, so first apr.yaml is corrected and then we convert to DT schema. This makes patchset fully bisectable in expense of changing the same lines twice. 2. Patch 11: New patch. Changes since v2 ================ 1. Patch 9: rename and extend commit msg. 2. Add Rb tags. Changes since v1 ================ 1. Patch 9: New patch. 2. Patch 10: Correct also sound/qcom,q6apm-dai.yaml (Rob). 2. Patch 13: New patch. 3. Add Rb/Tb tags. Best regards, Krzysztof Krzysztof Kozlowski (15): arm64: dts: qcom: sdm630: align APR services node names with dtschema arm64: dts: qcom: sdm845: align APR services node names with dtschema arm64: dts: qcom: sm8250: align APR services node names with dtschema arm64: dts: qcom: msm8996: fix APR services nodes arm64: dts: qcom: sdm845: align dai node names with dtschema arm64: dts: qcom: msm8996: align dai node names with dtschema arm64: dts: qcom: qrb5165-rb5: align dai node names with dtschema arm64: dts: qcom: sm8250: use generic name for LPASS clock controller dt-bindings: soc: qcom: apr: correct service children ASoC: dt-bindings: qcom,q6asm: convert to dtschema ASoC: dt-bindings: qcom,q6adm: convert to dtschema ASoC: dt-bindings: qcom,q6dsp-lpass-ports: cleanup example ASoC: dt-bindings: qcom,q6dsp-lpass-clocks: cleanup example ASoC: dt-bindings: qcom,q6apm-dai: adjust indentation in example dt-bindings: soc: qcom: apr: add missing properties .../bindings/soc/qcom/qcom,apr.yaml | 112 ++++++++++++++++-- .../bindings/sound/qcom,q6adm-routing.yaml | 52 ++++++++ .../devicetree/bindings/sound/qcom,q6adm.txt | 39 ------ .../bindings/sound/qcom,q6apm-dai.yaml | 21 ++-- .../bindings/sound/qcom,q6asm-dais.yaml | 112 ++++++++++++++++++ .../devicetree/bindings/sound/qcom,q6asm.txt | 70 ----------- .../sound/qcom,q6dsp-lpass-clocks.yaml | 36 +++--- .../sound/qcom,q6dsp-lpass-ports.yaml | 64 +++++----- arch/arm64/boot/dts/qcom/msm8996.dtsi | 10 +- arch/arm64/boot/dts/qcom/qrb5165-rb5.dts | 4 +- arch/arm64/boot/dts/qcom/sdm630.dtsi | 8 +- arch/arm64/boot/dts/qcom/sdm845-db845c.dts | 2 +- .../boot/dts/qcom/sdm845-xiaomi-beryllium.dts | 2 +- .../boot/dts/qcom/sdm845-xiaomi-polaris.dts | 4 +- arch/arm64/boot/dts/qcom/sdm845.dtsi | 8 +- arch/arm64/boot/dts/qcom/sm8250.dtsi | 10 +- 16 files changed, 346 insertions(+), 208 deletions(-) create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6adm-routing.yaml delete mode 100644 Documentation/devicetree/bindings/sound/qcom,q6adm.txt create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6asm-dais.yaml delete mode 100644 Documentation/devicetree/bindings/sound/qcom,q6asm.txt -- 2.34.1
This commit is contained in:
commit
12e51866c7
314 changed files with 3143 additions and 1854 deletions
|
|
@ -67,6 +67,7 @@ struct amba_device {
|
|||
struct clk *pclk;
|
||||
struct device_dma_parameters dma_parms;
|
||||
unsigned int periphid;
|
||||
struct mutex periphid_lock;
|
||||
unsigned int cid;
|
||||
struct amba_cs_uci_id uci;
|
||||
unsigned int irq[AMBA_NR_IRQS];
|
||||
|
|
|
|||
|
|
@ -137,6 +137,17 @@ BUFFER_FNS(Defer_Completion, defer_completion)
|
|||
|
||||
static __always_inline void set_buffer_uptodate(struct buffer_head *bh)
|
||||
{
|
||||
/*
|
||||
* If somebody else already set this uptodate, they will
|
||||
* have done the memory barrier, and a reader will thus
|
||||
* see *some* valid buffer state.
|
||||
*
|
||||
* Any other serialization (with IO errors or whatever that
|
||||
* might clear the bit) has to come from other state (eg BH_Lock).
|
||||
*/
|
||||
if (test_bit(BH_Uptodate, &bh->b_state))
|
||||
return;
|
||||
|
||||
/*
|
||||
* make it consistent with folio_mark_uptodate
|
||||
* pairs with smp_load_acquire in buffer_uptodate
|
||||
|
|
|
|||
|
|
@ -91,6 +91,8 @@ struct dentry *debugfs_create_automount(const char *name,
|
|||
void debugfs_remove(struct dentry *dentry);
|
||||
#define debugfs_remove_recursive debugfs_remove
|
||||
|
||||
void debugfs_lookup_and_remove(const char *name, struct dentry *parent);
|
||||
|
||||
const struct file_operations *debugfs_real_fops(const struct file *filp);
|
||||
|
||||
int debugfs_file_get(struct dentry *dentry);
|
||||
|
|
@ -225,6 +227,10 @@ static inline void debugfs_remove(struct dentry *dentry)
|
|||
static inline void debugfs_remove_recursive(struct dentry *dentry)
|
||||
{ }
|
||||
|
||||
static inline void debugfs_lookup_and_remove(const char *name,
|
||||
struct dentry *parent)
|
||||
{ }
|
||||
|
||||
const struct file_operations *debugfs_real_fops(const struct file *filp);
|
||||
|
||||
static inline int debugfs_file_get(struct dentry *dentry)
|
||||
|
|
|
|||
|
|
@ -139,7 +139,6 @@ int dma_mmap_attrs(struct device *dev, struct vm_area_struct *vma,
|
|||
void *cpu_addr, dma_addr_t dma_addr, size_t size,
|
||||
unsigned long attrs);
|
||||
bool dma_can_mmap(struct device *dev);
|
||||
int dma_supported(struct device *dev, u64 mask);
|
||||
bool dma_pci_p2pdma_supported(struct device *dev);
|
||||
int dma_set_mask(struct device *dev, u64 mask);
|
||||
int dma_set_coherent_mask(struct device *dev, u64 mask);
|
||||
|
|
@ -248,10 +247,6 @@ static inline bool dma_can_mmap(struct device *dev)
|
|||
{
|
||||
return false;
|
||||
}
|
||||
static inline int dma_supported(struct device *dev, u64 mask)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
static inline bool dma_pci_p2pdma_supported(struct device *dev)
|
||||
{
|
||||
return false;
|
||||
|
|
|
|||
|
|
@ -65,6 +65,7 @@ struct dmar_pci_notify_info {
|
|||
|
||||
extern struct rw_semaphore dmar_global_lock;
|
||||
extern struct list_head dmar_drhd_units;
|
||||
extern int intel_iommu_enabled;
|
||||
|
||||
#define for_each_drhd_unit(drhd) \
|
||||
list_for_each_entry_rcu(drhd, &dmar_drhd_units, list, \
|
||||
|
|
@ -88,7 +89,8 @@ extern struct list_head dmar_drhd_units;
|
|||
static inline bool dmar_rcu_check(void)
|
||||
{
|
||||
return rwsem_is_locked(&dmar_global_lock) ||
|
||||
system_state == SYSTEM_BOOTING;
|
||||
system_state == SYSTEM_BOOTING ||
|
||||
(IS_ENABLED(CONFIG_INTEL_IOMMU) && !intel_iommu_enabled);
|
||||
}
|
||||
|
||||
#define dmar_rcu_dereference(p) rcu_dereference_check((p), dmar_rcu_check())
|
||||
|
|
|
|||
|
|
@ -310,9 +310,11 @@ static inline u16 ieee80211_sn_sub(u16 sn1, u16 sn2)
|
|||
struct ieee80211_hdr {
|
||||
__le16 frame_control;
|
||||
__le16 duration_id;
|
||||
u8 addr1[ETH_ALEN];
|
||||
u8 addr2[ETH_ALEN];
|
||||
u8 addr3[ETH_ALEN];
|
||||
struct_group(addrs,
|
||||
u8 addr1[ETH_ALEN];
|
||||
u8 addr2[ETH_ALEN];
|
||||
u8 addr3[ETH_ALEN];
|
||||
);
|
||||
__le16 seq_ctrl;
|
||||
u8 addr4[ETH_ALEN];
|
||||
} __packed __aligned(2);
|
||||
|
|
|
|||
|
|
@ -1280,16 +1280,17 @@ enum {
|
|||
MLX5_TRIGGERED_CMD_COMP = (u64)1 << 32,
|
||||
};
|
||||
|
||||
static inline bool mlx5_is_roce_init_enabled(struct mlx5_core_dev *dev)
|
||||
{
|
||||
struct devlink *devlink = priv_to_devlink(dev);
|
||||
union devlink_param_value val;
|
||||
int err;
|
||||
bool mlx5_is_roce_on(struct mlx5_core_dev *dev);
|
||||
|
||||
err = devlink_param_driverinit_value_get(devlink,
|
||||
DEVLINK_PARAM_GENERIC_ID_ENABLE_ROCE,
|
||||
&val);
|
||||
return err ? MLX5_CAP_GEN(dev, roce) : val.vbool;
|
||||
static inline bool mlx5_get_roce_state(struct mlx5_core_dev *dev)
|
||||
{
|
||||
if (MLX5_CAP_GEN(dev, roce_rw_supported))
|
||||
return MLX5_CAP_GEN(dev, roce);
|
||||
|
||||
/* If RoCE cap is read-only in FW, get RoCE state from devlink
|
||||
* in order to support RoCE enable/disable feature
|
||||
*/
|
||||
return mlx5_is_roce_on(dev);
|
||||
}
|
||||
|
||||
#endif /* MLX5_DRIVER_H */
|
||||
|
|
|
|||
|
|
@ -2444,6 +2444,27 @@ static inline void skb_fill_page_desc(struct sk_buff *skb, int i,
|
|||
skb_shinfo(skb)->nr_frags = i + 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* skb_fill_page_desc_noacc - initialise a paged fragment in an skb
|
||||
* @skb: buffer containing fragment to be initialised
|
||||
* @i: paged fragment index to initialise
|
||||
* @page: the page to use for this fragment
|
||||
* @off: the offset to the data with @page
|
||||
* @size: the length of the data
|
||||
*
|
||||
* Variant of skb_fill_page_desc() which does not deal with
|
||||
* pfmemalloc, if page is not owned by us.
|
||||
*/
|
||||
static inline void skb_fill_page_desc_noacc(struct sk_buff *skb, int i,
|
||||
struct page *page, int off,
|
||||
int size)
|
||||
{
|
||||
struct skb_shared_info *shinfo = skb_shinfo(skb);
|
||||
|
||||
__skb_fill_page_desc_noacc(shinfo, i, page, off, size);
|
||||
shinfo->nr_frags = i + 1;
|
||||
}
|
||||
|
||||
void skb_add_rx_frag(struct sk_buff *skb, int i, struct page *page, int off,
|
||||
int size, unsigned int truesize);
|
||||
|
||||
|
|
|
|||
|
|
@ -469,6 +469,7 @@ extern struct spi_device *spi_new_ancillary_device(struct spi_device *spi, u8 ch
|
|||
* SPI_TRANS_FAIL_NO_START.
|
||||
* @queue_empty: signal green light for opportunistically skipping the queue
|
||||
* for spi_sync transfers.
|
||||
* @must_async: disable all fast paths in the core
|
||||
*
|
||||
* Each SPI controller can communicate with one or more @spi_device
|
||||
* children. These make a small bus, sharing MOSI, MISO and SCK signals
|
||||
|
|
@ -690,6 +691,7 @@ struct spi_controller {
|
|||
|
||||
/* Flag for enabling opportunistic skipping of the queue in spi_sync */
|
||||
bool queue_empty;
|
||||
bool must_async;
|
||||
};
|
||||
|
||||
static inline void *spi_controller_get_devdata(struct spi_controller *ctlr)
|
||||
|
|
|
|||
|
|
@ -70,6 +70,7 @@ struct udp_sock {
|
|||
* For encapsulation sockets.
|
||||
*/
|
||||
int (*encap_rcv)(struct sock *sk, struct sk_buff *skb);
|
||||
void (*encap_err_rcv)(struct sock *sk, struct sk_buff *skb, unsigned int udp_offset);
|
||||
int (*encap_err_lookup)(struct sock *sk, struct sk_buff *skb);
|
||||
void (*encap_destroy)(struct sock *sk);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue