Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3e5c5758 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "mhi: core: add support for 64bit doorbell address"

parents 938ea602 19ce9657
Loading
Loading
Loading
Loading
+7 −10
Original line number Diff line number Diff line
@@ -338,9 +338,8 @@ struct db_mode {
	u32 db_mode : 1;
	enum MHI_BRSTMODE brstmode;
	void (*process_db)(struct mhi_device_ctxt *mhi_dev_ctxt,
			   void __iomem *io_addr,
			   uintptr_t chan,
			   u32 val);
			   void __iomem *io_addr, unsigned int chan,
			   dma_addr_t val);
};

struct mhi_ring {
@@ -728,15 +727,13 @@ int mhi_set_bus_request(struct mhi_device_ctxt *mhi_dev_ctxt,
					int index);
int start_chan_sync(struct mhi_client_handle *client_handle);
void mhi_process_db_brstmode(struct mhi_device_ctxt *mhi_dev_ctxt,
			     void __iomem *io_addr,
			     uintptr_t chan,
			     u32 val);
			     void __iomem *io_addr, unsigned int chan,
			     dma_addr_t val);
void mhi_process_db_brstmode_disable(struct mhi_device_ctxt *mhi_dev_ctxt,
				     void __iomem *io_addr,
				     uintptr_t chan,
				     u32 val);
				     void __iomem *io_addr, unsigned int chan,
				     dma_addr_t val);
void mhi_process_db(struct mhi_device_ctxt *mhi_dev_ctxt, void __iomem *io_addr,
		  uintptr_t io_offset, u32 val);
		    unsigned int chan, dma_addr_t val);
void mhi_reg_write_field(struct mhi_device_ctxt *mhi_dev_ctxt,
			 void __iomem *io_addr,
			 uintptr_t io_offset,
+15 −13
Original line number Diff line number Diff line
@@ -91,7 +91,8 @@ dma_pool_error:

static void mhi_write_db(struct mhi_device_ctxt *mhi_dev_ctxt,
			 void __iomem *io_addr_lower,
		  uintptr_t chan, u64 val)
			 unsigned int chan,
			 dma_addr_t val)
{
	uintptr_t io_offset = chan * sizeof(u64);
	void __iomem *io_addr_upper =
@@ -1919,8 +1920,8 @@ EXPORT_SYMBOL(mhi_xfer_rddm);

void mhi_process_db_brstmode(struct mhi_device_ctxt *mhi_dev_ctxt,
			     void __iomem *io_addr,
			     uintptr_t chan,
			     u32 val)
			     unsigned int chan,
			     dma_addr_t val)
{
	struct mhi_ring *ring_ctxt =
		&mhi_dev_ctxt->mhi_local_chan_ctxt[chan];
@@ -1933,7 +1934,7 @@ void mhi_process_db_brstmode(struct mhi_device_ctxt *mhi_dev_ctxt,
			mhi_local_event_ctxt[chan];

	mhi_log(mhi_dev_ctxt, MHI_MSG_VERBOSE,
		"db.set addr: %p io_offset 0x%lx val:0x%x\n",
		"db.set addr: %p io_offset %u val:0x%llx\n",
		io_addr, chan, val);

	mhi_update_ctxt(mhi_dev_ctxt, io_addr, chan, val);
@@ -1943,7 +1944,7 @@ void mhi_process_db_brstmode(struct mhi_device_ctxt *mhi_dev_ctxt,
		ring_ctxt->db_mode.db_mode = 0;
	} else {
		mhi_log(mhi_dev_ctxt, MHI_MSG_INFO,
			"Not ringing xfer db, chan %ld, brstmode %d db_mode %d\n",
			"Not ringing xfer db, chan %u, brstmode %d db_mode %d\n",
			chan, ring_ctxt->db_mode.brstmode,
			ring_ctxt->db_mode.db_mode);
	}
@@ -1951,11 +1952,11 @@ void mhi_process_db_brstmode(struct mhi_device_ctxt *mhi_dev_ctxt,

void mhi_process_db_brstmode_disable(struct mhi_device_ctxt *mhi_dev_ctxt,
			     void __iomem *io_addr,
			     uintptr_t chan,
			     u32 val)
			     unsigned int chan,
			     dma_addr_t val)
{
	mhi_log(mhi_dev_ctxt, MHI_MSG_VERBOSE,
		"db.set addr: %p io_offset 0x%lx val:0x%x\n",
		"db.set addr: %p io_offset %u val:0x%llx\n",
		io_addr, chan, val);
	mhi_update_ctxt(mhi_dev_ctxt, io_addr, chan, val);
	mhi_write_db(mhi_dev_ctxt, io_addr, chan, val);
@@ -1963,11 +1964,12 @@ void mhi_process_db_brstmode_disable(struct mhi_device_ctxt *mhi_dev_ctxt,

void mhi_process_db(struct mhi_device_ctxt *mhi_dev_ctxt,
		    void __iomem *io_addr,
		  uintptr_t chan, u32 val)
		    unsigned int chan,
		    dma_addr_t val)
{

	mhi_log(mhi_dev_ctxt, MHI_MSG_VERBOSE,
		"db.set addr: %p io_offset 0x%lx val:0x%x\n",
		"db.set addr: %p io_offset %u val:0x%llx\n",
		io_addr, chan, val);

	mhi_update_ctxt(mhi_dev_ctxt, io_addr, chan, val);
@@ -1982,7 +1984,7 @@ void mhi_process_db(struct mhi_device_ctxt *mhi_dev_ctxt,
			chan_ctxt->db_mode.db_mode = 0;
		} else {
			mhi_log(mhi_dev_ctxt, MHI_MSG_INFO,
				"Not ringing xfer db, chan %ld, brstmode %d db_mode %d\n",
				"Not ringing xfer db, chan %u, brstmode %d db_mode %d\n",
				chan, chan_ctxt->db_mode.brstmode,
				chan_ctxt->db_mode.db_mode);
		}